summaryrefslogtreecommitdiff
path: root/src/VBox/RDP/client/vrdp/rdpusb.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/VBox/RDP/client/vrdp/rdpusb.c')
-rw-r--r--src/VBox/RDP/client/vrdp/rdpusb.c21
1 files changed, 8 insertions, 13 deletions
diff --git a/src/VBox/RDP/client/vrdp/rdpusb.c b/src/VBox/RDP/client/vrdp/rdpusb.c
index b0b1aa22f..028af77d1 100644
--- a/src/VBox/RDP/client/vrdp/rdpusb.c
+++ b/src/VBox/RDP/client/vrdp/rdpusb.c
@@ -887,21 +887,16 @@ rdpusb_check_fds(fd_set * rfds, fd_set * wfds)
RD_BOOL
rdpusb_init(void)
{
- /** @todo re-use the proxy service code */
- if (USBProxyLinuxCheckDeviceRoot("/dev/vboxusb", true))
+ bool fUseUsbfs;
+ if (RT_SUCCESS(USBProxyLinuxChooseMethod(&fUseUsbfs, &g_pcszDevicesRoot)))
{
- g_fUseSysfs = true;
- g_pcszDevicesRoot = "/dev/vboxusb";
+ g_fUseSysfs = !fUseUsbfs;
+ rdpusb_channel =
+ channel_register("vrdpusb", CHANNEL_OPTION_INITIALIZED | CHANNEL_OPTION_ENCRYPT_RDP,
+ rdpusb_process);
+ return (rdpusb_channel != NULL);
}
- else
- {
- g_fUseSysfs = false;
- g_pcszDevicesRoot = "/proc/bus/usb";
- }
- rdpusb_channel =
- channel_register("vrdpusb", CHANNEL_OPTION_INITIALIZED | CHANNEL_OPTION_ENCRYPT_RDP,
- rdpusb_process);
- return (rdpusb_channel != NULL);
+ return false;
}
void