diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2013-08-31 12:37:14 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2013-08-31 13:17:56 +1000 |
commit | 22d2a735c473dfa260ffc6bcbb16a5115b8ed719 (patch) | |
tree | 297b571a8addeefc02a5705c297d398e5ce9ffd1 | |
parent | 2c101977b7830070bdbd18e696857c667e69dee0 (diff) |
Return -EBADF for functions that need the fd initialized
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
-rw-r--r-- | libevdev/libevdev.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libevdev/libevdev.c b/libevdev/libevdev.c index 1c99e1f..867e008 100644 --- a/libevdev/libevdev.c +++ b/libevdev/libevdev.c @@ -1130,6 +1130,9 @@ libevdev_kernel_set_abs_info(struct libevdev *dev, unsigned int code, const stru { int rc; + if (dev->fd < 0) + return -EBADF; + if (code > ABS_MAX) return -EINVAL; @@ -1147,6 +1150,9 @@ libevdev_grab(struct libevdev *dev, enum libevdev_grab_mode grab) { int rc = 0; + if (dev->fd < 0) + return -EBADF; + if (grab != LIBEVDEV_GRAB && grab != LIBEVDEV_UNGRAB) return -EINVAL; @@ -1250,6 +1256,9 @@ libevdev_kernel_set_led_values(struct libevdev *dev, ...) int rc = 0; size_t nleds = 0; + if (dev->fd < 0) + return -EBADF; + memset(ev, 0, sizeof(ev)); va_start(args, dev); |