dnsmasq: mark global ubus context as closed after fork
authorSven Eckelmann <sven@narfation.org>
Sat, 18 Nov 2023 15:29:09 +0000 (16:29 +0100)
committerRISCi_ATOM <bob@bobcall.me>
Wed, 20 Mar 2024 15:35:07 +0000 (11:35 -0400)
commitf671dfe3ad1d8b44bb10fc8202cda016530b68f8
tree81d98ee532461815825b6e597aee2f9b0f773b84
parent3ffee5b374ce26b681782397b45fa2870bd20560
dnsmasq: mark global ubus context as closed after fork

If the dnsmasq process forks to handle TCP connections, it closes the ubus
context. But instead of changing the daemon wide pointer to NULL, only the
local variable was adjusted - and this portion of the code was even dropped
(dead store) by some optimizing compilers.

It makes more sense to change the daemon->ubus pointer because various
functions are already checking it for NULL. It is also the behavior which
ubus_destroy() implements.

Fixes: d8b33dad0bb7 ("dnsmasq: add support for monitoring and modifying dns lookup results via ubus")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
(cherry picked from commit 711dcb77630e96e75413b5cdbe3ddb5432f394f6)
package/network/services/dnsmasq/patches/200-ubus_dns.patch