summaryrefslogtreecommitdiff
path: root/udev/lib/libudev-monitor.c
diff options
context:
space:
mode:
authorAlan Jenkins <alan-jenkins@tuffmail.co.uk>2009-04-06 10:18:41 +0100
committerKay Sievers <kay.sievers@vrfy.org>2009-04-06 07:23:35 -0700
commit4b09a2fc4383f191d96a8d6134b95a4b84aef931 (patch)
treed1e4d4d29a4e147b296de120aa3ec5ddccd59517 /udev/lib/libudev-monitor.c
parent52761bb0a99cb80ccb19c9edf23963fdad67060d (diff)
avoid leaking netlink socket fd to external programs
The netlink socket is now used by udev event processes. We should take care not to pass it to the programs they execute. This is the same way the inotify fd was handled. Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Diffstat (limited to 'udev/lib/libudev-monitor.c')
-rw-r--r--udev/lib/libudev-monitor.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/udev/lib/libudev-monitor.c b/udev/lib/libudev-monitor.c
index d006596e07..a8b1a4e2e5 100644
--- a/udev/lib/libudev-monitor.c
+++ b/udev/lib/libudev-monitor.c
@@ -92,6 +92,8 @@ struct udev_monitor *udev_monitor_new_from_socket(struct udev *udev, const char
free(udev_monitor);
return NULL;
}
+ util_set_fd_cloexec(udev_monitor->sock);
+
dbg(udev, "monitor %p created with '%s'\n", udev_monitor, socket_path);
return udev_monitor;
}
@@ -125,6 +127,7 @@ struct udev_monitor *udev_monitor_new_from_netlink(struct udev *udev, const char
free(udev_monitor);
return NULL;
}
+ util_set_fd_cloexec(udev_monitor->sock);
udev_monitor->snl.nl_family = AF_NETLINK;
udev_monitor->snl.nl_groups = group;