summaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
authordefault <nobody@localhost>2023-09-29 10:34:22 +0200
committerdefault <nobody@localhost>2023-09-29 10:34:22 +0200
commit60e8953a699b528a18e56be3e6a0c4f39e13feff (patch)
tree4aa7cb149c8c42588de0cd2b687219bec18b2c10 /data.c
parent9cce2ee1195cb08e2c27be7c9047e78be57425a3 (diff)
Give more retry time to timedout connections.
Diffstat (limited to 'data.c')
-rw-r--r--data.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/data.c b/data.c
index 3b22114..cf4d39b 100644
--- a/data.c
+++ b/data.c
@@ -2041,13 +2041,16 @@ void enqueue_input(snac *snac, const xs_dict *msg, const xs_dict *req, int retri
void enqueue_output_raw(const char *keyid, const char *seckey,
- xs_dict *msg, xs_str *inbox, int retries)
+ xs_dict *msg, xs_str *inbox, int retries, int p_status)
/* enqueues an output message to an inbox */
{
xs *qmsg = _new_qmsg("output", msg, retries);
char *ntid = xs_dict_get(qmsg, "ntid");
xs *fn = xs_fmt("%s/queue/%s.json", srv_basedir, ntid);
+ xs *ns = xs_number_new(p_status);
+ qmsg = xs_dict_append(qmsg, "p_status", ns);
+
qmsg = xs_dict_append(qmsg, "inbox", inbox);
qmsg = xs_dict_append(qmsg, "keyid", keyid);
qmsg = xs_dict_append(qmsg, "seckey", seckey);
@@ -2062,7 +2065,7 @@ void enqueue_output_raw(const char *keyid, const char *seckey,
}
-void enqueue_output(snac *snac, xs_dict *msg, xs_str *inbox, int retries)
+void enqueue_output(snac *snac, xs_dict *msg, xs_str *inbox, int retries, int p_status)
/* enqueues an output message to an inbox */
{
if (xs_startswith(inbox, snac->actor)) {
@@ -2072,7 +2075,7 @@ void enqueue_output(snac *snac, xs_dict *msg, xs_str *inbox, int retries)
char *seckey = xs_dict_get(snac->key, "secret");
- enqueue_output_raw(snac->actor, seckey, msg, inbox, retries);
+ enqueue_output_raw(snac->actor, seckey, msg, inbox, retries, p_status);
}
@@ -2082,7 +2085,7 @@ void enqueue_output_by_actor(snac *snac, xs_dict *msg, const xs_str *actor, int
xs *inbox = get_actor_inbox(snac, actor);
if (!xs_is_null(inbox))
- enqueue_output(snac, msg, inbox, retries);
+ enqueue_output(snac, msg, inbox, retries, 0);
else
snac_log(snac, xs_fmt("enqueue_output_by_actor cannot get inbox %s", actor));
}