diff options
author | Derek Foreman <derekf@osg.samsung.com> | 2015-04-30 11:43:28 -0500 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2015-05-01 08:56:11 +1000 |
commit | 28ed7a62653f1e257bba22b792ec785e9200d40e (patch) | |
tree | 934eeb8536f1b872cc71f64fe0cf1f5283502927 | |
parent | 8e667070ff3cd468121ecc0960d51210ae4b9ef8 (diff) |
Set O_CLOEXEC when opening devices
We'd rather keep these out of the hands of children.
Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
Reviewed-by: David Herrmann <dh.herrmann@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r-- | src/evdev.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/evdev.c b/src/evdev.c index d997d24..af36127 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1953,7 +1953,8 @@ evdev_device_create(struct libinput_seat *seat, /* Use non-blocking mode so that we can loop on read on * evdev_device_data() until all events on the fd are * read. mtdev_get() also expects this. */ - fd = open_restricted(libinput, devnode, O_RDWR | O_NONBLOCK); + fd = open_restricted(libinput, devnode, + O_RDWR | O_NONBLOCK | O_CLOEXEC); if (fd < 0) { log_info(libinput, "opening input device '%s' failed (%s).\n", @@ -2436,7 +2437,8 @@ evdev_device_resume(struct evdev_device *device) return -ENODEV; devnode = udev_device_get_devnode(device->udev_device); - fd = open_restricted(libinput, devnode, O_RDWR | O_NONBLOCK); + fd = open_restricted(libinput, devnode, + O_RDWR | O_NONBLOCK | O_CLOEXEC); if (fd < 0) return -errno; |