guacamole-server
guacamole-server copied to clipboard
GUACAMOLE-522: USB Device Redirection.
This PR implements the server-side protocol support for Web USB device redirection, complementing the client-side PR. This provides the infrastructure for Guacamole protocol plugins (RDP, VNC, etc.) to handle USB device redirection from browser clients.
Data Flow
- Server receives
usbconnectwith device descriptors and interface/endpoint data - Protocol plugin's
usbconnect_handleris invoked to establish redirection -
usbdatamessages flow between client device and server handler - Either side can initiate disconnection via
usbdisconnect
New Protocol Instructions
-
Server → Client: Added
usbdataandusbdisconnectinstructions for sending data to USB devices and requesting disconnection -
Client → Server: Added handlers for receiving
usbconnect,usbdata, andusbdisconnectinstructions
Handlers
-
guac_user_usbconnect_handler: Processes USB device connections with full device metadata (vendor/product IDs, interfaces, endpoints) -
guac_user_usbdata_handler: Handles USB data transfer from the client with USB endpoint and transfer type information. -
guac_user_usbdisconnect_handler: Manages USB device disconnection events.
Extremely interested in this PR, what is blocking it, since this is a awesome added feature :D
Extremely interested in this PR, what is blocking it, since this is a awesome added feature :D
Nothing is blocking it - just the time required to review the PR.