Also return an application/ld+json object in webfinger.

This commit is contained in:
default 2024-05-22 16:14:58 +02:00
parent 76f20bb79e
commit 63e0ca5aba

View File

@ -103,7 +103,8 @@ int webfinger_request_signed(snac *snac, const char *qs, char **actor, char **us
const char *type = xs_dict_get(v, "type"); const char *type = xs_dict_get(v, "type");
if (type && (strcmp(type, "application/activity+json") == 0 || if (type && (strcmp(type, "application/activity+json") == 0 ||
strcmp(type, "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") == 0)) { strcmp(type, "application/ld+json; profile=\"https:/"
"/www.w3.org/ns/activitystreams\"") == 0)) {
*actor = xs_dup(xs_dict_get(v, "href")); *actor = xs_dup(xs_dict_get(v, "href"));
break; break;
} }
@ -189,6 +190,12 @@ int webfinger_get_handler(xs_dict *req, char *q_path,
links = xs_list_append(links, aaj); links = xs_list_append(links, aaj);
/* duplicate with the ld+json type */
aaj = xs_dict_set(aaj, "type", "application/ld+json; profile=\"https:/"
"/www.w3.org/ns/activitystreams\"");
links = xs_list_append(links, aaj);
prof = xs_dict_append(prof, "rel", "http://webfinger.net/rel/profile-page"); prof = xs_dict_append(prof, "rel", "http://webfinger.net/rel/profile-page");
prof = xs_dict_append(prof, "type", "text/html"); prof = xs_dict_append(prof, "type", "text/html");
prof = xs_dict_append(prof, "href", snac.actor); prof = xs_dict_append(prof, "href", snac.actor);