summaryrefslogtreecommitdiff
path: root/activitypub.c
diff options
context:
space:
mode:
Diffstat (limited to 'activitypub.c')
-rw-r--r--activitypub.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/activitypub.c b/activitypub.c
index 8127e8d..51ae6fa 100644
--- a/activitypub.c
+++ b/activitypub.c
@@ -564,6 +564,7 @@ int process_message(snac *snac, char *msg, char *req)
char *actor = xs_dict_get(msg, "actor");
char *type = xs_dict_get(msg, "type");
xs *actor_o = NULL;
+ int a_status;
char *object, *utype;
@@ -574,8 +575,17 @@ int process_message(snac *snac, char *msg, char *req)
utype = "(null)";
/* bring the actor */
- if (!valid_status(actor_request(snac, actor, &actor_o))) {
- snac_log(snac, xs_fmt("error requesting actor %s -- retry later", actor));
+ a_status = actor_request(snac, actor, &actor_o);
+
+ /* if it's a 410 Gone, it's a Delete crap that can be ignored */
+ if (a_status == 410) {
+ return 1;
+ }
+
+ if (!valid_status(a_status)) {
+ snac_log(snac,
+ xs_fmt("error requesting actor %s %d -- retry later", actor, a_status));
+
return 0;
}