Просмотр исходного кода

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

default 2 лет назад
Родитель
Сommit
63e0ca5aba
1 измененных файлов с 8 добавлено и 1 удалено
  1. 8 1
      webfinger.c

+ 8 - 1
webfinger.c

@@ -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");
 
                     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"));
                         break;
                     }
@@ -189,6 +190,12 @@ int webfinger_get_handler(xs_dict *req, char *q_path,
 
         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, "type", "text/html");
         prof = xs_dict_append(prof, "href", snac.actor);