diff --git a/src/core/cntlr.c b/src/core/cntlr.c index 8e8bb2d77f38961da98e52104317f1f4130ae90a..63a58ed86811db28d12cc255856ea9b0812c1d3a 100644 --- a/src/core/cntlr.c +++ b/src/core/cntlr.c @@ -1780,6 +1780,12 @@ static void cntlr_ieee1905_cmdu_event_handler(void *cntlr, uint8_t srcmac[6], origin[6]; uint16_t mid = 0; int len = 0; + sigset_t waiting_mask; + + sigpending(&waiting_mask); + if (sigismember(&waiting_mask, SIGINT) || + sigismember(&waiting_mask, SIGTERM)) + return; blobmsg_parse(cmdu_attrs, 6, tb, blob_data(msg), blob_len(msg));