From: Felix Fietkau Date: Wed, 29 Sep 2021 12:03:55 +0000 (+0200) Subject: wireless: process and close script file descriptor when rerunning setup X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=fac471c4934a960b30118fa6a45651532cdb6e81;p=project%2Fnetifd.git wireless: process and close script file descriptor when rerunning setup On reloading, setup is called without a teardown, so the previous fd might still be open. Clear it to avoid a leak. Signed-off-by: Felix Fietkau --- diff --git a/wireless.c b/wireless.c index 9c49da0..dafd49a 100644 --- a/wireless.c +++ b/wireless.c @@ -431,6 +431,9 @@ wireless_device_run_handler(struct wireless_device *wdev, bool up) argv[i] = NULL; if (up && pipe(fds) == 0) { + if (wdev->script_proc_fd.fd >= 0) + wireless_close_script_proc_fd(wdev); + wdev->script_proc_fd.fd = fds[0]; uloop_fd_add(&wdev->script_proc_fd, ULOOP_READ | ULOOP_EDGE_TRIGGER);