你怎么能拥有一个隐藏设备?

Cat*_*kul 23 unix linux terminal input-devices hid

我想拥有一个可能已经插入的隐藏设备的所有权,消耗它的输出,同时防止其他人(X11或终端)消耗它.

如果我可以提供帮助,我不想伪装成终端,而是垄断某个特定的隐藏或角色设备.这个想法是一些隐藏设备可能被x /终端识别为鼠标/键盘,但是第二个鼠标或键盘可以用于其他东西,但要做到这一点,你需要确保它们不会发送虚假输入到开放式终端.

有没有人对如何做到这一点有任何见解?

caf*_*caf 25

我已经这样做了 - 我的特定应用程序是一个守护程序,它从USB HID条形码阅读器(它呈现为USB HID键盘设备)中读取事件.

为此,我使用了事件设备界面,打开了与之后/dev/input/event*设备相对应的设备.然后,您可以EVIOCGRAB在设备上发出ioctl,将其抓取以供独占使用,并在设备可用时从设备读取事件(代表按键,鼠标移动等).

(当设备被专用时,只有您的应用程序才能看到它的事件).

  • 听起来正是我所需要的RFID读取器的功能,该读取器从标签中读取10位数字,并将信息显示为键盘输入,以便与Raspberry Pi家庭自动化项目结合用作访问控制设备,并且仍然可以能够使用键盘/鼠标/显示器登录以进行其他(调试)用途。 (2认同)