diff options
Diffstat (limited to 'activitypub.c')
| -rw-r--r-- | activitypub.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/activitypub.c b/activitypub.c index 720e83a..ff568c8 100644 --- a/activitypub.c +++ b/activitypub.c | |||
| @@ -468,11 +468,16 @@ int is_msg_for_me(snac *snac, const xs_dict *c_msg) | |||
| 468 | return following_check(snac, actor); | 468 | return following_check(snac, actor); |
| 469 | } | 469 | } |
| 470 | 470 | ||
| 471 | /* if it's an Undo, it must be from someone we follow */ | 471 | /* if it's an Undo + Follow, it must be from someone we follow */ |
| 472 | if (xs_match(type, "Undo")) { | 472 | if (xs_match(type, "Undo")) { |
| 473 | return following_check(snac, actor); | 473 | return following_check(snac, actor); |
| 474 | } | 474 | } |
| 475 | 475 | ||
| 476 | /* if it's an Accept + Follow, it must be for a Follow we created */ | ||
| 477 | if (xs_match(type, "Accept")) { | ||
| 478 | return following_check(snac, actor); | ||
| 479 | } | ||
| 480 | |||
| 476 | /* if it's not a Create or Update, allow as is */ | 481 | /* if it's not a Create or Update, allow as is */ |
| 477 | if (!xs_match(type, "Create|Update")) { | 482 | if (!xs_match(type, "Create|Update")) { |
| 478 | return 1; | 483 | return 1; |