summaryrefslogtreecommitdiff
path: root/libubus.h
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2017-02-03 18:39:11 +0100
committerFelix Fietkau <nbd@nbd.name>2017-02-03 18:39:15 +0100
commit91acde66b963e238aba35fb4f2030a147df84cd4 (patch)
tree6ca0a469c0a0d3d861b9b8ea3c398e929b0f10f6 /libubus.h
parent763b9b2cf293fb60b5c2ddf34e2500f95200b6b5 (diff)
downloadubus-91acde66b963e238aba35fb4f2030a147df84cd4.tar.gz
libubus: do not modify uloop_cancelled
uloop_cancelled was used for two purposes within ubus_complete_request: - interrupting recursive requests on SIGINT/SIGTERM - breaking out of the poll loop in a recursive request that completed Saving/restorung uloop_cancelled was buggy, leading to SIGTERM not being processed properly. Simplify the logic by using a separate field for internal use Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'libubus.h')
-rw-r--r--libubus.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/libubus.h b/libubus.h
index ea53272..4e45cb6 100644
--- a/libubus.h
+++ b/libubus.h
@@ -155,6 +155,7 @@ struct ubus_context {
uint32_t local_id;
uint16_t request_seq;
+ bool cancel_poll;
int stack_depth;
void (*connection_lost)(struct ubus_context *ctx);