USB Raw Gadget is available, a Linux module for emulating USB devices.

Andrei Konovalov from Google is developing a new module USB Raw Gadget, has been added to emulate USB devices in user space. It is currently under review for inclusion of this module in the core Linux kernel. USB Raw Gadget is already at Google to simplify fuzz testing the USB stack of the kernel using the tool is conducted syzkaller The module adds a new programming interface to the kernel's.

USB Gadget and is being developed as an alternative to GadgetFS. The creation of the new API is driven by the need for low-level and direct access to the USB Gadget subsystem from user space, allowing the handling of all possible USB requests (GadgetFS handles some requests on its own without passing to user space). Control over the USB Raw Gadget is managed through the device /dev/raw-gadget similar to /dev/gadget in GadgetFS, but for interaction, an interface based on ioctl() is used instead of a pseudo-FS. In addition to directly handling all USB requests by the user space process, the new interface also differs in its ability to return any data in response to a USB request (GadgetFS verifies the correctness of USB descriptors and filters certain responses, which hampers error detection during fuzz testing of the USB stack). Raw Gadget also allows selecting a specific UDC (USB Device Controller) and a driver for attachment, while GadgetFS attaches to the first available UDC. Predictable names are assigned to different UDCs

to separate different types of data communication channels within a single device. endpoint Ubuntu 18.04.4 LTS has been released

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster