VirtualBox

Changeset 22166 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Aug 11, 2009 1:56:40 PM (15 years ago)
Author:
vboxsync
Message:

ConsoleImpl2.cpp: More cleanup.

Location:
trunk/src/VBox/Main
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/ConsoleImpl2.cpp

    r22165 r22166  
    170170    int             rc;
    171171    HRESULT         hrc;
    172     char           *psz = NULL;
    173172    BSTR            str = NULL;
    174173
    175     Bstr            bstr; /* use this bstr when calling COM methods instead
    176                              of str as it manages memory! */
    177 
    178 #define STR_CONV()  do { rc = RTUtf16ToUtf8(str, &psz); RC_CHECK(); } while (0)
    179 #define STR_FREE()  do { if (str) { SysFreeString(str); str = NULL; } if (psz) { RTStrFree(psz); psz = NULL; } } while (0)
    180 #define RC_CHECK()  do { if (RT_FAILURE(rc)) { AssertMsgFailed(("rc=%Rrc\n", rc)); STR_FREE(); return rc; } } while (0)
    181 #define H()         do { if (FAILED(hrc)) { AssertMsgFailed(("hrc=%#x\n", hrc)); STR_FREE(); return VERR_GENERAL_FAILURE; } } while (0)
     174#define STR_FREE()  do { if (str) { SysFreeString(str); str = NULL; } } while (0)
     175#define RC_CHECK()  do { if (RT_FAILURE(rc)) { AssertMsgFailed(("rc=%Rrc\n", rc));  STR_FREE(); return rc;                   } } while (0)
     176#define H()         do { if (FAILED(hrc))    { AssertMsgFailed(("hrc=%#x\n", hrc)); STR_FREE(); return VERR_GENERAL_FAILURE; } } while (0)
    182177
    183178    /*
     
    196191    hrc = pMachine->COMGETTER(BIOSSettings)(biosSettings.asOutParam());             H();
    197192
    198     Bstr id;
    199     hrc = pMachine->COMGETTER(Id)(id.asOutParam());                               H();
    200     Guid uuid(id);
    201     PCRTUUID pUuid = uuid.raw();
     193    hrc = pMachine->COMGETTER(Id)(&str);                                            H();
     194    Guid MachineUuid(str);
     195    PCRTUUID pUuid = MachineUuid.raw();
     196    STR_FREE();
    202197
    203198    ULONG cRamMBs;
     
    633628            rc = CFGMR3InsertNode(pLunL1,   "Config", &pCfg);                       RC_CHECK();
    634629            hrc = floppyImage->COMGETTER(Location)(&str);                           H();
    635             STR_CONV();
    636             rc = CFGMR3InsertString(pCfg,   "Path",             psz);               RC_CHECK();
     630            rc = CFGMR3InsertStringW(pCfg,  "Path",             str);               RC_CHECK();
    637631            STR_FREE();
    638632        }
     
    647641                rc = CFGMR3InsertNode(pLunL0,   "Config", &pCfg);                   RC_CHECK();
    648642                hrc = hostFloppyDrive->COMGETTER(Name)(&str);                       H();
    649                 STR_CONV();
    650                 rc = CFGMR3InsertString(pCfg,   "Path",         psz);               RC_CHECK();
     643                rc = CFGMR3InsertStringW(pCfg,  "Path",         str);               RC_CHECK();
    651644                STR_FREE();
    652645            }
     
    812805    {
    813806        char szExtraDataKey[sizeof("CustomVideoModeXX")];
    814         RTStrPrintf(szExtraDataKey, sizeof(szExtraDataKey), "CustomVideoMode%d", iMode);
     807        RTStrPrintf(szExtraDataKey, sizeof(szExtraDataKey), "CustomVideoMode%u", iMode);
    815808        hrc = pMachine->GetExtraData(Bstr(szExtraDataKey), &str);                   H();
    816809        if (!str || !*str)
    817810            break;
    818         rc = CFGMR3InsertStringW(pCfg, szExtraDataKey, str);
     811        rc = CFGMR3InsertStringW(pCfg, szExtraDataKey, str);                        RC_CHECK();
     812        STR_FREE();
    819813        cModes++;
    820814    }
     
    846840     */
    847841    com::SafeIfaceArray<IStorageController> ctrls;
    848     hrc = pMachine->
    849         COMGETTER(StorageControllers) (ComSafeArrayAsOutParam (ctrls));             H();
     842    hrc = pMachine->COMGETTER(StorageControllers)(ComSafeArrayAsOutParam(ctrls));   H();
    850843
    851844    for (size_t i = 0; i < ctrls.size(); ++ i)
     
    994987                        rc = CFGMR3InsertNode(pLunL0,   "Config", &pCfg);                       RC_CHECK();
    995988                        hrc = hostDvdDrive->COMGETTER(Name)(&str);                              H();
    996                         STR_CONV();
    997                         rc = CFGMR3InsertString(pCfg,   "Path",         psz);                   RC_CHECK();
     989                        rc = CFGMR3InsertStringW(pCfg,  "Path",         str);                   RC_CHECK();
    998990                        STR_FREE();
    999991                        BOOL fPassthrough;
     
    10181010                            rc = CFGMR3InsertNode(pLunL1,   "Config", &pCfg);                   RC_CHECK();
    10191011                            hrc = dvdImage->COMGETTER(Location)(&str);                          H();
    1020                             STR_CONV();
    1021                             rc = CFGMR3InsertString(pCfg,   "Path",             psz);           RC_CHECK();
     1012                            rc = CFGMR3InsertStringW(pCfg,  "Path",             str);           RC_CHECK();
    10221013                            STR_FREE();
    10231014                        }
     
    10331024
    10341025        /* At the moment we only support one controller per type. So the instance id is always 0. */
    1035         rc = ctrls[i]->COMSETTER(Instance)(0);                                     H();
     1026        rc = ctrls[i]->COMSETTER(Instance)(0);                                  H();
    10361027
    10371028        /* Attach the hard disks. */
    10381029        com::SafeIfaceArray<IHardDiskAttachment> atts;
    1039         hrc = pMachine->
    1040             GetHardDiskAttachmentsOfController (controllerName,
    1041                                                 ComSafeArrayAsOutParam (atts)); H();
     1030        hrc = pMachine->GetHardDiskAttachmentsOfController(controllerName,
     1031                                                           ComSafeArrayAsOutParam(atts)); H();
    10421032
    10431033        for (size_t j = 0; j < atts.size(); ++ j)
    10441034        {
    10451035            ComPtr<IHardDisk> hardDisk;
    1046             hrc = atts [j]->COMGETTER(HardDisk) (hardDisk.asOutParam());        H();
     1036            hrc = atts[j]->COMGETTER(HardDisk)(hardDisk.asOutParam());          H();
    10471037            LONG lDev;
    1048             hrc = atts [j]->COMGETTER(Device) (&lDev);                          H();
     1038            hrc = atts[j]->COMGETTER(Device)(&lDev);                            H();
    10491039            LONG lPort;
    1050             hrc = atts [j]->COMGETTER(Port) (&lPort);                           H();
     1040            hrc = atts[j]->COMGETTER(Port)(&lPort);                             H();
    10511041
    10521042            int iLUN = 0;
     
    10871077            }
    10881078
    1089             char szLUN[16];
    1090             RTStrPrintf (szLUN, sizeof(szLUN), "LUN#%u", iLUN);
    1091 
    1092             rc = CFGMR3InsertNode (pCtlInst, szLUN, &pLunL0);                       RC_CHECK();
     1079            rc = CFGMR3InsertNodeF(pCtlInst, &pLunL0, "LUN#%u", iLUN);          RC_CHECK();
    10931080            /* SCSI has a another driver between device and block. */
    10941081            if (fSCSI)
    10951082            {
    1096                 rc = CFGMR3InsertString (pLunL0, "Driver", "SCSI");             RC_CHECK();
    1097                 rc = CFGMR3InsertNode (pLunL0, "Config", &pCfg);                RC_CHECK();
    1098 
    1099                 rc = CFGMR3InsertNode (pLunL0, "AttachedDriver", &pLunL0);      RC_CHECK();
    1100             }
    1101             rc = CFGMR3InsertString (pLunL0, "Driver", "Block");                RC_CHECK();
    1102             rc = CFGMR3InsertNode (pLunL0, "Config", &pCfg);                    RC_CHECK();
    1103             rc = CFGMR3InsertString (pCfg, "Type", "HardDisk");                 RC_CHECK();
    1104             rc = CFGMR3InsertInteger (pCfg, "Mountable", 0);                    RC_CHECK();
    1105 
    1106             rc = CFGMR3InsertNode (pLunL0, "AttachedDriver", &pLunL1);          RC_CHECK();
    1107             rc = CFGMR3InsertString (pLunL1, "Driver", "VD");                   RC_CHECK();
    1108             rc = CFGMR3InsertNode (pLunL1, "Config", &pCfg);                    RC_CHECK();
    1109 
    1110             hrc = hardDisk->COMGETTER(Location) (bstr.asOutParam());            H();
    1111             rc = CFGMR3InsertString (pCfg, "Path", Utf8Str (bstr));             RC_CHECK();
    1112 
    1113             hrc = hardDisk->COMGETTER(Format) (bstr.asOutParam());              H();
    1114             rc = CFGMR3InsertString (pCfg, "Format", Utf8Str (bstr));           RC_CHECK();
     1083                rc = CFGMR3InsertString(pLunL0, "Driver", "SCSI");              RC_CHECK();
     1084                rc = CFGMR3InsertNode(pLunL0, "Config", &pCfg);                 RC_CHECK();
     1085
     1086                rc = CFGMR3InsertNode(pLunL0, "AttachedDriver", &pLunL0);       RC_CHECK();
     1087            }
     1088            rc = CFGMR3InsertString(pLunL0, "Driver", "Block");                 RC_CHECK();
     1089            rc = CFGMR3InsertNode(pLunL0, "Config", &pCfg);                     RC_CHECK();
     1090            rc = CFGMR3InsertString(pCfg, "Type", "HardDisk");                  RC_CHECK();
     1091            rc = CFGMR3InsertInteger(pCfg, "Mountable", 0);                     RC_CHECK();
     1092
     1093            rc = CFGMR3InsertNode(pLunL0, "AttachedDriver", &pLunL1);           RC_CHECK();
     1094            rc = CFGMR3InsertString(pLunL1, "Driver", "VD");                    RC_CHECK();
     1095            rc = CFGMR3InsertNode(pLunL1, "Config", &pCfg);                     RC_CHECK();
     1096
     1097            hrc = hardDisk->COMGETTER(Location)(&str);                          H();
     1098            rc = CFGMR3InsertStringW(pCfg, "Path", str);                        RC_CHECK();
     1099            STR_FREE();
     1100
     1101            hrc = hardDisk->COMGETTER(Format)(&str);                            H();
     1102            rc = CFGMR3InsertStringW(pCfg, "Format", str);                      RC_CHECK();
     1103            STR_FREE();
    11151104
    11161105            /* Pass all custom parameters. */
     
    11181107            SafeArray<BSTR> names;
    11191108            SafeArray<BSTR> values;
    1120             hrc = hardDisk->GetProperties (NULL,
    1121                                            ComSafeArrayAsOutParam (names),
    1122                                            ComSafeArrayAsOutParam (values));    H();
     1109            hrc = hardDisk->GetProperties(NULL,
     1110                                          ComSafeArrayAsOutParam(names),
     1111                                          ComSafeArrayAsOutParam(values));      H();
    11231112
    11241113            if (names.size() != 0)
    11251114            {
    11261115                PCFGMNODE pVDC;
    1127                 rc = CFGMR3InsertNode (pCfg, "VDConfig", &pVDC);                RC_CHECK();
     1116                rc = CFGMR3InsertNode(pCfg, "VDConfig", &pVDC);                 RC_CHECK();
    11281117                for (size_t ii = 0; ii < names.size(); ++ ii)
    11291118                {
    11301119                    if (values[ii] && *values[ii])
    11311120                    {
    1132                         Utf8Str name = names [ii];
    1133                         Utf8Str value = values [ii];
    1134                         rc = CFGMR3InsertString (pVDC, name, value);
     1121                        Utf8Str name = names[ii];
     1122                        Utf8Str value = values[ii];
     1123                        rc = CFGMR3InsertString(pVDC, name, value);
    11351124                        if (    !(name.compare("HostIPStack"))
    11361125                            &&  !(value.compare("0")))
     
    11441133            for (PCFGMNODE pParent = pCfg;;)
    11451134            {
    1146                 hrc = parentHardDisk->
    1147                     COMGETTER(Parent) (hardDisk.asOutParam());                  H();
     1135                hrc = parentHardDisk->COMGETTER(Parent)(hardDisk.asOutParam()); H();
    11481136                if (hardDisk.isNull())
    11491137                    break;
    11501138
    11511139                PCFGMNODE pCur;
    1152                 rc = CFGMR3InsertNode (pParent, "Parent", &pCur);               RC_CHECK();
    1153                 hrc = hardDisk->COMGETTER(Location) (bstr.asOutParam());        H();
    1154                 rc = CFGMR3InsertString (pCur, "Path", Utf8Str (bstr));         RC_CHECK();
    1155 
    1156                 hrc = hardDisk->COMGETTER(Format) (bstr.asOutParam());          H();
    1157                 rc = CFGMR3InsertString (pCur, "Format", Utf8Str (bstr));       RC_CHECK();
     1140                rc = CFGMR3InsertNode(pParent, "Parent", &pCur);                RC_CHECK();
     1141                hrc = hardDisk->COMGETTER(Location)(&str);                      H();
     1142                rc = CFGMR3InsertStringW(pCur, "Path", str);                    RC_CHECK();
     1143                STR_FREE();
     1144
     1145                hrc = hardDisk->COMGETTER(Format)(&str);                        H();
     1146                rc = CFGMR3InsertStringW(pCur, "Format", str);                  RC_CHECK();
     1147                STR_FREE();
    11581148
    11591149                /* Pass all custom parameters. */
    11601150                SafeArray<BSTR> names;
    11611151                SafeArray<BSTR> values;
    1162                 hrc = hardDisk->GetProperties (NULL,
    1163                                                 ComSafeArrayAsOutParam (names),
    1164                                                 ComSafeArrayAsOutParam (values));H();
     1152                hrc = hardDisk->GetProperties(NULL,
     1153                                              ComSafeArrayAsOutParam(names),
     1154                                              ComSafeArrayAsOutParam(values));  H();
    11651155
    11661156                if (names.size() != 0)
    11671157                {
    11681158                    PCFGMNODE pVDC;
    1169                     rc = CFGMR3InsertNode (pCur, "VDConfig", &pVDC);            RC_CHECK();
    1170                     for (size_t ii = 0; ii < names.size(); ++ ii)
     1159                    rc = CFGMR3InsertNode(pCur, "VDConfig", &pVDC);             RC_CHECK();
     1160                    for (size_t ii = 0; ii < names.size(); ++ii)
    11711161                    {
    1172                         if (values [ii])
     1162                        if (values[ii])
    11731163                        {
    1174                             Utf8Str name = names [ii];
    1175                             Utf8Str value = values [ii];
     1164                            Utf8Str name = names[ii];
     1165                            Utf8Str value = values[ii];
    11761166                            rc = CFGMR3InsertString (pVDC, name, value);
    1177                             if (    !(name.compare("HostIPStack"))
    1178                                 &&  !(value.compare("0")))
     1167                            if (    name.compare("HostIPStack") == 0
     1168                                &&  value.compare("0") == 0)
    11791169                                fHostIP = false;
    11801170                        }
     
    11861176                if (!fHostIP)
    11871177                {
    1188                     rc = CFGMR3InsertInteger (pCfg, "HostIPStack", 0);          RC_CHECK();
     1178                    rc = CFGMR3InsertInteger(pCfg, "HostIPStack", 0);           RC_CHECK();
    11891179                }
    11901180
     
    12471237        }
    12481238
    1249         char szInstance[4]; Assert(ulInstance <= 999);
    1250         RTStrPrintf(szInstance, sizeof(szInstance), "%lu", ulInstance);
    1251         rc = CFGMR3InsertNode(pDev, szInstance, &pInst);                            RC_CHECK();
     1239        rc = CFGMR3InsertNodeF(pDev, &pInst, "%u", ulInstance);                     RC_CHECK();
    12521240        rc = CFGMR3InsertInteger(pInst, "Trusted",              1); /* boolean */   RC_CHECK();
    12531241        /* the first network card gets the PCI ID 3, the next 3 gets 8..10,
     
    13581346         */
    13591347
    1360         rc = configNetwork(pConsole, pszAdapterName, ulInstance, 0, networkAdapter, pCfg, pLunL0, pInst, false);
     1348        rc = configNetwork(pConsole, pszAdapterName, ulInstance, 0, networkAdapter,
     1349                           pCfg, pLunL0, pInst, false /*fAttachDetach*/);
    13611350        RC_CHECK();
    13621351    }
     
    13761365            continue;
    13771366
    1378         char szInstance[4]; Assert(ulInstance <= 999);
    1379         RTStrPrintf(szInstance, sizeof(szInstance), "%lu", ulInstance);
    1380 
    1381         rc = CFGMR3InsertNode(pDev, szInstance, &pInst);                            RC_CHECK();
     1367        rc = CFGMR3InsertNodeF(pDev, &pInst, "%u", ulInstance);                     RC_CHECK();
    13821368        rc = CFGMR3InsertNode(pInst, "Config", &pCfg);                              RC_CHECK();
    13831369
     
    14361422            continue;
    14371423
    1438         char szInstance[4]; Assert(ulInstance <= 999);
    1439         RTStrPrintf(szInstance, sizeof(szInstance), "%lu", ulInstance);
    1440 
    1441         rc = CFGMR3InsertNode(pDev, szInstance, &pInst);                            RC_CHECK();
     1424        rc = CFGMR3InsertNodeF(pDev, &pInst, "%u", ulInstance);                     RC_CHECK();
    14421425        rc = CFGMR3InsertNode(pInst, "Config", &pCfg);                              RC_CHECK();
    14431426
     
    16151598        }
    16161599        hrc = pMachine->COMGETTER(Name)(&str);                                      H();
    1617         STR_CONV();
    1618         rc = CFGMR3InsertString(pCfg,  "StreamName", psz);                          RC_CHECK();
     1600        rc = CFGMR3InsertStringW(pCfg, "StreamName", str);                          RC_CHECK();
    16191601        STR_FREE();
    16201602    }
     
    17061688    {
    17071689        ClipboardMode_T mode = ClipboardMode_Disabled;
    1708         hrc = pMachine->COMGETTER(ClipboardMode) (&mode);                               H();
     1690        hrc = pMachine->COMGETTER(ClipboardMode)(&mode);                                H();
    17091691
    17101692        if (mode != ClipboardMode_Disabled)
     
    17701752    {
    17711753        BOOL fEnabled = false;
    1772         hrc = pMachine->COMGETTER(Accelerate3DEnabled) (&fEnabled);                              H();
     1754        hrc = pMachine->COMGETTER(Accelerate3DEnabled)(&fEnabled); H();
    17731755
    17741756        if (fEnabled)
     
    18101792
    18111793#ifdef VBOX_WITH_GUEST_PROPS
     1794    /** @todo r=bird: functions! methods! */
    18121795    /*
    18131796     * Guest property service
     
    20512034    }
    20522035
     2036#undef STR_FREE
    20532037#undef H
    20542038#undef RC_CHECK
    2055 #undef STR_FREE
    2056 #undef STR_CONV
    20572039
    20582040    /* Register VM state change handler */
     
    20942076 *  @note Locks the Console object for writing.
    20952077 */
    2096 DECLCALLBACK(int) Console::configNetwork(Console *pThis, const char *pszDevice,
    2097                                           unsigned uInstance, unsigned uLun,
    2098                                           INetworkAdapter *aNetworkAdapter,
    2099                                           PCFGMNODE pCfg, PCFGMNODE pLunL0,
    2100                                           PCFGMNODE pInst, bool fAttachDetach)
     2078/*static*/ int Console::configNetwork(Console *pThis, const char *pszDevice,
     2079                                      unsigned uInstance, unsigned uLun,
     2080                                      INetworkAdapter *aNetworkAdapter,
     2081                                      PCFGMNODE pCfg, PCFGMNODE pLunL0,
     2082                                      PCFGMNODE pInst, bool fAttachDetach)
    21012083{
    21022084    int rc = VINF_SUCCESS;
     
    21142096    PVM     pVM = pThis->mpVM;
    21152097    BSTR    str = NULL;
    2116     char   *psz = NULL;
    2117 
    2118 #define STR_CONV()  do { rc = RTUtf16ToUtf8(str, &psz); RC_CHECK(); } while (0)
    2119 #define STR_FREE()  do { if (str) { SysFreeString(str); str = NULL; } if (psz) { RTStrFree(psz); psz = NULL; } } while (0)
    2120 #define RC_CHECK()  do { if (RT_FAILURE(rc)) { AssertMsgFailed(("rc=%Rrc\n", rc)); STR_FREE(); return rc; } } while (0)
    2121 #define H()         do { if (FAILED(hrc)) { AssertMsgFailed(("hrc=%#x\n", hrc)); STR_FREE(); return VERR_GENERAL_FAILURE; } } while (0)
     2098
     2099#define STR_FREE()  do { if (str) { SysFreeString(str); str = NULL; } } while (0)
     2100#define RC_CHECK()  do { if (RT_FAILURE(rc)) { AssertMsgFailed(("rc=%Rrc\n", rc));  STR_FREE(); return rc;                   } } while (0)
     2101#define H()         do { if (FAILED(hrc))    { AssertMsgFailed(("hrc=%#x\n", hrc)); STR_FREE(); return VERR_GENERAL_FAILURE; } } while (0)
    21222102
    21232103    HRESULT hrc;
     
    21612141        if (str) /* check convention for indicating default file. */
    21622142        {
    2163             STR_CONV();
    2164             rc = CFGMR3InsertString(pCfg, "File", psz);                 RC_CHECK();
    2165             STR_FREE();
    2166         }
     2143            rc = CFGMR3InsertStringW(pCfg, "File", str);                RC_CHECK();
     2144        }
     2145        STR_FREE();
    21672146    }
    21682147
    21692148    Bstr networkName, trunkName, trunkType;
    21702149    NetworkAttachmentType_T eAttachmentType;
    2171     hrc = aNetworkAdapter->COMGETTER(AttachmentType)(&eAttachmentType);
    2172     H();
     2150    hrc = aNetworkAdapter->COMGETTER(AttachmentType)(&eAttachmentType); H();
    21732151    switch (eAttachmentType)
    21742152    {
     
    21902168
    21912169            /* Configure TFTP prefix and boot filename. */
    2192             hrc = virtualBox->COMGETTER(HomeFolder)(&str);
    2193             H();
    2194             STR_CONV();
    2195             if (psz && *psz)
    2196             {
    2197                 rc = CFGMR3InsertStringF(pCfg, "TFTPPrefix", "%s%c%s", psz, RTPATH_DELIMITER, "TFTP"); RC_CHECK();
     2170            hrc = virtualBox->COMGETTER(HomeFolder)(&str);              H();
     2171            if (str && *str)
     2172            {
     2173                rc = CFGMR3InsertStringF(pCfg, "TFTPPrefix", "%ls%c%s", str, RTPATH_DELIMITER, "TFTP"); RC_CHECK();
    21982174            }
    21992175            STR_FREE();
    2200             hrc = pMachine->COMGETTER(Name)(&str);
    2201             H();
    2202             STR_CONV();
    2203             rc = CFGMR3InsertStringF(pCfg, "BootFile", "%s.pxe", psz); RC_CHECK();
     2176            hrc = pMachine->COMGETTER(Name)(&str);                      H();
     2177            rc = CFGMR3InsertStringF(pCfg, "BootFile", "%ls.pxe", str); RC_CHECK();
    22042178            STR_FREE();
    22052179
    2206             hrc = aNetworkAdapter->COMGETTER(NATNetwork)(&str);
    2207             H();
    2208             if (str)
    2209             {
    2210                 STR_CONV();
    2211                 if (psz && *psz)
    2212                 {
    2213                     rc = CFGMR3InsertString(pCfg, "Network", psz);      RC_CHECK();
    2214                     /* NAT uses its own DHCP implementation */
    2215                     //networkName = Bstr(psz);
    2216                 }
    2217 
    2218                 STR_FREE();
    2219             }
     2180            hrc = aNetworkAdapter->COMGETTER(NATNetwork)(&str);         H();
     2181            if (str && *str)
     2182            {
     2183                rc = CFGMR3InsertStringW(pCfg, "Network", str);         RC_CHECK();
     2184                /* NAT uses its own DHCP implementation */
     2185                //networkName = Bstr(psz);
     2186            }
     2187            STR_FREE();
    22202188            break;
    22212189        }
     
    23102278            }
    23112279
    2312             HostNetworkInterfaceType_T ifType;
    2313             hrc = hostInterface->COMGETTER(InterfaceType)(&ifType);
     2280            HostNetworkInterfaceType_T eIfType;
     2281            hrc = hostInterface->COMGETTER(InterfaceType)(&eIfType);
    23142282            if (FAILED(hrc))
    23152283            {
     
    23182286            }
    23192287
    2320             if (ifType != HostNetworkInterfaceType_Bridged)
     2288            if (eIfType != HostNetworkInterfaceType_Bridged)
    23212289            {
    23222290                return VMSetError(pVM, VERR_INTERNAL_ERROR, RT_SRC_POS,
     
    23252293            }
    23262294
    2327             Bstr hostIFGuid_;
    2328             hrc = hostInterface->COMGETTER(Id)(hostIFGuid_.asOutParam());
     2295            hrc = hostInterface->COMGETTER(Id)(&str);
    23292296            if (FAILED(hrc))
    23302297            {
     
    23322299                H();
    23332300            }
    2334             Guid hostIFGuid(hostIFGuid_);
     2301            Guid hostIFGuid(str);
     2302            STR_FREE(str);
    23352303
    23362304            INetCfg              *pNc;
     
    24052373
    24062374# elif defined(RT_OS_LINUX)
    2407             /* @todo Check for malformed names. */
     2375            /** @todo Check for malformed names. */
    24082376            const char *pszTrunk = pszHifName;
    24092377
     
    25542522        case NetworkAttachmentType_Internal:
    25552523        {
    2556             hrc = aNetworkAdapter->COMGETTER(InternalNetwork)(&str);        H();
    2557             if (str)
    2558             {
    2559                 STR_CONV();
    2560                 if (psz && *psz)
    2561                 {
    2562                     if (fSniffer)
    2563                     {
    2564                         rc = CFGMR3InsertNode(pLunL0, "AttachedDriver", &pLunL0);
    2565                         RC_CHECK();
    2566                     }
    2567                     else
    2568                     {
    2569                         rc = CFGMR3InsertNode(pInst, "LUN#0", &pLunL0);
    2570                         RC_CHECK();
    2571                     }
    2572                     rc = CFGMR3InsertString(pLunL0, "Driver", "IntNet");    RC_CHECK();
    2573                     rc = CFGMR3InsertNode(pLunL0, "Config", &pCfg);         RC_CHECK();
    2574                     rc = CFGMR3InsertString(pCfg, "Network", psz);          RC_CHECK();
    2575                     rc = CFGMR3InsertInteger(pCfg, "TrunkType", kIntNetTrunkType_WhateverNone); RC_CHECK();
    2576                     networkName = Bstr(psz);
    2577                     trunkType = Bstr(TRUNKTYPE_WHATEVER);
    2578                 }
    2579                 STR_FREE();
    2580             }
     2524            hrc = aNetworkAdapter->COMGETTER(InternalNetwork)(&str);    H();
     2525            if (str && *str)
     2526            {
     2527                if (fSniffer)
     2528                {
     2529                    rc = CFGMR3InsertNode(pLunL0, "AttachedDriver", &pLunL0);
     2530                    RC_CHECK();
     2531                }
     2532                else
     2533                {
     2534                    rc = CFGMR3InsertNode(pInst, "LUN#0", &pLunL0);
     2535                    RC_CHECK();
     2536                }
     2537                rc = CFGMR3InsertString(pLunL0, "Driver", "IntNet");    RC_CHECK();
     2538                rc = CFGMR3InsertNode(pLunL0, "Config", &pCfg);         RC_CHECK();
     2539                rc = CFGMR3InsertStringW(pCfg, "Network", str);         RC_CHECK();
     2540                rc = CFGMR3InsertInteger(pCfg, "TrunkType", kIntNetTrunkType_WhateverNone); RC_CHECK();
     2541                networkName = str;
     2542                trunkType = Bstr(TRUNKTYPE_WHATEVER);
     2543            }
     2544            STR_FREE();
    25812545            break;
    25822546        }
     
    26302594            /** @todo r=bird: Put this in a function. */
    26312595
    2632             HostNetworkInterfaceType_T ifType;
    2633             hrc = hostInterface->COMGETTER(InterfaceType)(&ifType);
     2596            HostNetworkInterfaceType_T eIfType;
     2597            hrc = hostInterface->COMGETTER(InterfaceType)(&eIfType);
    26342598            if (FAILED(hrc))
    26352599            {
     
    26382602            }
    26392603
    2640             if (ifType != HostNetworkInterfaceType_HostOnly)
     2604            if (eIfType != HostNetworkInterfaceType_HostOnly)
    26412605                return VMSetError(pVM, VERR_INTERNAL_ERROR, RT_SRC_POS,
    26422606                                  N_("Interface ('%ls') is not a Host-Only Adapter interface"),
    26432607                                  HifName.raw());
    26442608
    2645             Bstr hostIFGuid_;
    2646             hrc = hostInterface->COMGETTER(Id)(hostIFGuid_.asOutParam());
     2609            hrc = hostInterface->COMGETTER(Id)(&str);
    26472610            if (FAILED(hrc))
    26482611            {
     
    26502613                H();
    26512614            }
    2652             Guid hostIFGuid(hostIFGuid_);
     2615            Guid hostIFGuid(str);
     2616            STR_FREE(str);
    26532617
    26542618            INetCfg *pNc;
     
    28552819
    28562820#undef STR_FREE
    2857 #undef STR_CONV
    28582821#undef H
    28592822#undef RC_CHECK
  • trunk/src/VBox/Main/include/ConsoleImpl.h

    r22162 r22166  
    429429
    430430    static DECLCALLBACK(int) configConstructor(PVM pVM, void *pvConsole);
    431     static DECLCALLBACK(int) configNetwork(Console *pThis, const char *pszDevice,
    432                                            unsigned uInstance, unsigned uLun,
    433                                            INetworkAdapter *aNetworkAdapter,
    434                                            PCFGMNODE pCfg, PCFGMNODE pLunL0,
    435                                            PCFGMNODE pInst, bool fAttachDetach);
     431    static int configNetwork(Console *pThis, const char *pszDevice,
     432                             unsigned uInstance, unsigned uLun,
     433                             INetworkAdapter *aNetworkAdapter,
     434                             PCFGMNODE pCfg, PCFGMNODE pLunL0,
     435                             PCFGMNODE pInst, bool fAttachDetach);
    436436    static DECLCALLBACK(void) vmstateChangeCallback(PVM aVM, VMSTATE aState,
    437437                                                    VMSTATE aOldState, void *aUser);
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