commit a55a54d
grunfink
·
2026-06-24 11:08:20 +0000 UTC
parent 1920562
Improved error archiving.
1 files changed,
+13,
-9
+13,
-9
1@@ -2977,8 +2977,9 @@ int process_input_message(snac *snac, const xs_dict *msg, const xs_dict *req)
2 snac_debug(snac, 1, xs_dup("ignored 'Accept' + 'Create'"));
3 }
4 else {
5- srv_archive_error("accept", "ignored Accept", req, msg);
6- snac_debug(snac, 1, xs_fmt("ignored 'Accept' for object type '%s'", utype));
7+ xs_str *e = xs_fmt("ignored 'Accept' for object type '%s'", utype);
8+ srv_archive_error("accept", e, req, msg);
9+ snac_debug(snac, 1, e);
10 }
11 }
12 else
13@@ -3074,8 +3075,9 @@ int process_input_message(snac *snac, const xs_dict *msg, const xs_dict *req)
14 snac_log(snac, xs_fmt("updated actor %s", actor));
15 }
16 else {
17- srv_log(xs_fmt("Update: mismatched actor '%s' and key '%s'", actor, key_id));
18- srv_archive_error("update_actor_key_mismatch", "bad keyId", req, msg);
19+ xs_str *e = xs_fmt("Update: mismatched actor '%s' and key '%s'", actor, key_id);
20+ srv_archive_error("update_actor_key_mismatch", e, req, msg);
21+ snac_log(snac, e);
22 }
23 }
24 else
25@@ -3092,8 +3094,9 @@ int process_input_message(snac *snac, const xs_dict *msg, const xs_dict *req)
26 snac_log(snac, xs_fmt("ignored post 'Update' with no attributedTo %s", id));
27 else
28 if (strcmp(atto, key_id) != 0) {
29- snac_log(snac, xs_fmt("Update: mismatched attributedTo '%s' and key '%s'", atto, key_id));
30- srv_archive_error("update_post_key_mismatch", "bad keyId", req, msg);
31+ xs_str *e = xs_fmt("Update: mismatched attributedTo '%s' and key '%s'", atto, key_id);
32+ srv_archive_error("update_post_key_mismatch", e, req, msg);
33+ snac_log(snac, e);
34 }
35 else
36 if (xs_startswith(id, srv_baseurl) && !xs_startswith(id, actor))
37@@ -3148,8 +3151,8 @@ int process_input_message(snac *snac, const xs_dict *msg, const xs_dict *req)
38 snac_log(snac, xs_fmt("ignored 'Delete' for object without attributedTo %s", object));
39 else
40 if (strcmp(atto, key_id) != 0) {
41+ /* don't call srv_archive_error() on this, because it can be a delete from a relay */
42 snac_log(snac, xs_fmt("Delete: mismatched attributedTo '%s' and key '%s'", atto, key_id));
43- srv_archive_error("delete_post_key_mismatch", "bad keyId", req, msg);
44 }
45 else
46 if (xs_startswith(object, srv_baseurl) && !is_msg_mine(snac, object))
47@@ -3197,8 +3200,9 @@ int process_input_message(snac *snac, const xs_dict *msg, const xs_dict *req)
48
49 if (xs_is_string(old_account) && xs_is_string(new_account)) {
50 if (strcmp(old_account, key_id) != 0) {
51- snac_log(snac, xs_fmt("'Move': mismatched old_account %s and key %s", old_account, key_id));
52- srv_archive_error("move_old_account_key_mismatch", "bad keyId", req, msg);
53+ xs_str *e = xs_fmt("'Move': mismatched old_account %s and key %s", old_account, key_id);
54+ srv_archive_error("move_old_account_key_mismatch", e, req, msg);
55+ snac_log(snac, e);
56 }
57 else
58 if (following_check(snac, old_account)) {