bool USBProxyServiceOs2::updateDeviceState(HostUSBDevice *aDevice, PUSBDEVICE aUSBDevice, bool *aRunFilters, SessionMachine **aIgnoreMachine) { AssertReturn(aDevice, false); AssertReturn(!aDevice->isWriteLockOnCurrentThread(), false); return updateDeviceStateFake(aDevice, aUSBDevice, aRunFilters, aIgnoreMachine); }
bool USBProxyServiceDarwin::updateDeviceState(HostUSBDevice *aDevice, PUSBDEVICE aUSBDevice, bool *aRunFilters, SessionMachine **aIgnoreMachine) { AssertReturn(aDevice, false); AssertReturn(!aDevice->isWriteLockOnCurrentThread(), false); #ifndef VBOX_WITH_NEW_USB_CODE_ON_DARWIN /* We're faking async state stuff. */ return updateDeviceStateFake(aDevice, aUSBDevice, aRunFilters, aIgnoreMachine); #else /* Nothing special here so far, so fall back on parent */ return USBProxyService::updateDeviceState(aDevice, aUSBDevice, aRunFilters, aIgnoreMachine); #endif }
bool USBProxyBackendUsbIp::updateDeviceState(HostUSBDevice *aDevice, PUSBDEVICE aUSBDevice, bool *aRunFilters, SessionMachine **aIgnoreMachine) { AssertReturn(aDevice, false); AssertReturn(!aDevice->isWriteLockOnCurrentThread(), false); AutoReadLock devLock(aDevice COMMA_LOCKVAL_SRC_POS); if ( aUSBDevice->enmState == USBDEVICESTATE_USED_BY_HOST_CAPTURABLE && aDevice->i_getUsbData()->enmState == USBDEVICESTATE_USED_BY_HOST) LogRel(("USBProxy: Device %04x:%04x (%s) has become accessible.\n", aUSBDevice->idVendor, aUSBDevice->idProduct, aUSBDevice->pszAddress)); devLock.release(); return updateDeviceStateFake(aDevice, aUSBDevice, aRunFilters, aIgnoreMachine); }