snac2

Fork of https://codeberg.org/grunfink/snac2
git clone https://git.inz.fi/snac2
Log | Files | Refs | README | LICENSE

commit 836b66358dac3abdf5e81b441db1bf40055ac57b
parent ee63e2a78cc8a9ab448349920be932c738e1f19e
Author: default <nobody@localhost>
Date:   Wed, 18 Sep 2024 20:05:22 +0200

Use webfinger_request_fake() in export_csv().

Diffstat:
Mutils.c | 23++++++-----------------
Mwebfinger.c | 8+++++---
2 files changed, 11 insertions(+), 20 deletions(-)

diff --git a/utils.c b/utils.c @@ -605,13 +605,9 @@ void export_csv(snac *user) xs_list_foreach(l, actor) { xs *uid = NULL; - int status; - if (valid_status((status = webfinger_request(actor, NULL, &uid)))) { - fprintf(f, "%s\n", uid); - } - else - snac_log(user, xs_fmt("Error resolving muted user %s %d", actor, status)); + webfinger_request_fake(actor, NULL, &uid); + fprintf(f, "%s\n", uid); } fclose(f); @@ -639,12 +635,9 @@ void export_csv(snac *user) if (valid_status(object_get_by_md5(md5, &actor))) { const char *id = xs_dict_get(actor, "id"); xs *uid = NULL; - int status; - if (valid_status((status = webfinger_request(id, NULL, &uid)))) - fprintf(f, "%s,%s\n", ltitle, uid); - else - snac_log(user, xs_fmt("Error resolving list member %s %d", id, status)); + webfinger_request_fake(id, NULL, &uid); + fprintf(f, "%s,%s\n", ltitle, uid); } } } @@ -665,13 +658,9 @@ void export_csv(snac *user) xs_list_foreach(fwing, actor) { xs *uid = NULL; - int status; - if (valid_status((status = webfinger_request(actor, NULL, &uid)))) { - fprintf(f, "%s,%s,false,\n", uid, limited(user, actor, 0) ? "false" : "true"); - } - else - snac_log(user, xs_fmt("Error resolving followed account %s %d", actor, status)); + webfinger_request_fake(actor, NULL, &uid); + fprintf(f, "%s,%s,false,\n", uid, limited(user, actor, 0) ? "false" : "true"); } fclose(f); diff --git a/webfinger.c b/webfinger.c @@ -133,9 +133,11 @@ int webfinger_request_fake(const char *qs, xs_str **actor, xs_str **user) if (xs_startswith(qs, "https:/") || xs_startswith(qs, "http:/")) { xs *l = xs_split(qs, "/"); - /* i'll end up in hell for this */ - *user = xs_fmt("%s@%s", xs_list_get(l, 2), xs_list_get(l, -1)); - status = HTTP_STATUS_RESET_CONTENT; + if (xs_list_len(l) > 3) { + /* i'll end up in hell for this */ + *user = xs_fmt("%s@%s", xs_list_get(l, -1), xs_list_get(l, 2)); + status = HTTP_STATUS_RESET_CONTENT; + } } }