VirtualBox

Ignore:
Timestamp:
Mar 18, 2016 10:51:02 AM (9 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
106086
Message:

Main,VBoxManage: Add API to IHost for adding and removing USB device sources in addition to the default host one (only USB/IP backend supported so far which will be used in the future for automatic USB testing). Add support for it in VBoxManage

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-server/generic/USBProxyBackendUsbIp.cpp

    r60068 r60089  
    265265 * Initialize data members.
    266266 */
    267 USBProxyBackendUsbIp::USBProxyBackendUsbIp(USBProxyService *aUsbProxyService)
    268     : USBProxyBackend(aUsbProxyService)
    269 {
    270     LogFlowThisFunc(("aUsbProxyService=%p\n", aUsbProxyService));
     267USBProxyBackendUsbIp::USBProxyBackendUsbIp()
     268    : USBProxyBackend()
     269{
     270}
     271
     272USBProxyBackendUsbIp::~USBProxyBackendUsbIp()
     273{
     274
    271275}
    272276
     
    276280 * @returns S_OK on success and non-fatal failures, some COM error otherwise.
    277281 */
    278 int USBProxyBackendUsbIp::init(void)
     282int USBProxyBackendUsbIp::init(USBProxyService *aUsbProxyService, const com::Utf8Str &strId, const com::Utf8Str &strAddress)
    279283{
    280284    int rc = VINF_SUCCESS;
    281285
     286    USBProxyBackend::init(aUsbProxyService, strId, strAddress);
     287
    282288    m = new Data;
    283289
    284     /** @todo: Pass in some config like host and port to connect to. */
     290    /* Split address into hostname and port. */
     291    RTCList<RTCString> lstAddress = strAddress.split(":");
     292    if (lstAddress.size() < 1)
     293        return VERR_INVALID_PARAMETER;
     294    m->pszHost = RTStrDup(lstAddress[0].c_str());
     295    if (!m->pszHost)
     296        return VERR_NO_STR_MEMORY;
     297    if (lstAddress.size() == 2)
     298    {
     299        m->uPort = lstAddress[1].toUInt32();
     300        if (!m->uPort)
     301            return VERR_INVALID_PARAMETER;
     302    }
    285303
    286304    /* Setup wakeup pipe and poll set first. */
     
    330348 * Stop all service threads and free the device chain.
    331349 */
    332 USBProxyBackendUsbIp::~USBProxyBackendUsbIp()
     350void USBProxyBackendUsbIp::uninit()
    333351{
    334352    LogFlowThisFunc(("\n"));
     
    363381
    364382    delete m;
     383    USBProxyBackend::uninit();
    365384}
    366385
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette