[Bug 218625] [PATCH] Evdev ioctls EVIOCGRAB and EVIOCREVOKE don't work together with cuse
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Thu Apr 13 10:45:01 UTC 2017
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218625
Bug ID: 218625
Summary: [PATCH] Evdev ioctls EVIOCGRAB and EVIOCREVOKE don't
work together with cuse
Product: Base System
Version: CURRENT
Hardware: Any
OS: Any
Status: New
Keywords: patch
Severity: Affects Only Me
Priority: ---
Component: kern
Assignee: freebsd-bugs at FreeBSD.org
Reporter: jan.kokemueller at gmail.com
Keywords: patch
Created attachment 181752
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=181752&action=edit
patch to change type of EVIOCGRAB and EVIOCREVOKE ioctls to _IO
EVIOCGRAB and EVIOCREVOKE from dev/evdev/input.h are defined as _IOWINT.
Those ioctls don't actually write an integer, though. What matters is the value
of the data pointer. Cuse, however, only passes along the value of the data
pointer when the length of the ioctl is 0 (see
https://github.com/freebsd/freebsd/blob/master/sys/fs/cuse/cuse.c#L1669).
One solution would be to define those two ioctls as _IO (see attached patch).
I've tested this with my cuse-based evdev implementation
(https://github.com/jiixyj/evdevfbsd).
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list