VirtualBox

Changeset 93279 in vbox


Ignore:
Timestamp:
Jan 17, 2022 6:58:27 PM (3 years ago)
Author:
vboxsync
Message:

VBoxManage/NATNetwork: Move the code for "list natnetworks" into
VBoxManageNATNetwork.cpp so that it can be refactored w.r.t code for
"natnetwork list". This commit just moves it as-as with only minimal
necessary adaptations. bugref:8124.

Location:
trunk/src/VBox/Frontends/VBoxManage
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManage.h

    r93115 r93279  
    392392/* VBoxManageNATNetwork.cpp */
    393393RTEXITCODE handleNATNetwork(HandlerArg *a);
    394 
     394RTEXITCODE listNATNetworks(bool fLong, bool fSorted,
     395                           const ComPtr<IVirtualBox> &pVirtualBox);
    395396
    396397/* VBoxManageBandwidthControl.cpp */
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManageList.cpp

    r93115 r93279  
    21822182
    21832183        case kListNatNetworks:
    2184         {
    2185             com::SafeIfaceArray<INATNetwork> nets;
    2186             CHECK_ERROR(pVirtualBox, COMGETTER(NATNetworks)(ComSafeArrayAsOutParam(nets)));
    2187             for (size_t i = 0; i < nets.size(); ++i)
    2188             {
    2189                 ComPtr<INATNetwork> net = nets[i];
    2190                 Bstr netName;
    2191                 net->COMGETTER(NetworkName)(netName.asOutParam());
    2192                 RTPrintf(List::tr("NetworkName:    %ls\n"), netName.raw());
    2193                 Bstr gateway;
    2194                 net->COMGETTER(Gateway)(gateway.asOutParam());
    2195                 RTPrintf("IP:             %ls\n", gateway.raw());
    2196                 Bstr network;
    2197                 net->COMGETTER(Network)(network.asOutParam());
    2198                 RTPrintf(List::tr("Network:        %ls\n"), network.raw());
    2199                 BOOL fEnabled;
    2200                 net->COMGETTER(IPv6Enabled)(&fEnabled);
    2201                 RTPrintf(List::tr("IPv6 Enabled:   %s\n"), fEnabled ? List::tr("Yes") : List::tr("No"));
    2202                 Bstr ipv6prefix;
    2203                 net->COMGETTER(IPv6Prefix)(ipv6prefix.asOutParam());
    2204                 RTPrintf(List::tr("IPv6 Prefix:    %ls\n"), ipv6prefix.raw());
    2205                 net->COMGETTER(NeedDhcpServer)(&fEnabled);
    2206                 RTPrintf(List::tr("DHCP Enabled:   %s\n"), fEnabled ? List::tr("Yes") : List::tr("No"));
    2207                 net->COMGETTER(Enabled)(&fEnabled);
    2208                 RTPrintf(List::tr("Enabled:        %s\n"), fEnabled ? List::tr("Yes") : List::tr("No"));
    2209 
    2210 #define PRINT_STRING_ARRAY(title) \
    2211                 if (strs.size() > 0)    \
    2212                 { \
    2213                     RTPrintf(title); \
    2214                     size_t j = 0; \
    2215                     for (;j < strs.size(); ++j) \
    2216                         RTPrintf("        %s\n", Utf8Str(strs[j]).c_str()); \
    2217                 }
    2218 
    2219                 com::SafeArray<BSTR> strs;
    2220 
    2221                 CHECK_ERROR(nets[i], COMGETTER(PortForwardRules4)(ComSafeArrayAsOutParam(strs)));
    2222                 PRINT_STRING_ARRAY(List::tr("Port-forwarding (ipv4)\n"));
    2223                 strs.setNull();
    2224 
    2225                 CHECK_ERROR(nets[i], COMGETTER(PortForwardRules6)(ComSafeArrayAsOutParam(strs)));
    2226                 PRINT_STRING_ARRAY(List::tr("Port-forwarding (ipv6)\n"));
    2227                 strs.setNull();
    2228 
    2229                 CHECK_ERROR(nets[i], COMGETTER(LocalMappings)(ComSafeArrayAsOutParam(strs)));
    2230                 PRINT_STRING_ARRAY(List::tr("loopback mappings (ipv4)\n"));
    2231                 strs.setNull();
    2232 
    2233 #undef PRINT_STRING_ARRAY
    2234                 RTPrintf("\n");
    2235             }
    2236             break;
    2237         }
     2184            rc = listNATNetworks(fOptLong, fOptSorted, pVirtualBox);
     2185            break;
    22382186
    22392187        case kListVideoInputDevices:
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManageNATNetwork.cpp

    r93278 r93279  
    566566
    567567
     568/*
     569 * VBoxManage natnetwork ...
     570 */
    568571RTEXITCODE handleNATNetwork(HandlerArg *a)
    569572{
     
    589592}
    590593
     594
     595/*
     596 * VBoxManage list natnetworks ...
     597 */
     598RTEXITCODE listNATNetworks(bool fLong, bool fSorted,
     599                           const ComPtr<IVirtualBox> &pVirtualBox)
     600{
     601    int rc;
     602
     603    RT_NOREF(fLong);
     604    RT_NOREF(fSorted);
     605
     606    com::SafeIfaceArray<INATNetwork> nets;
     607    CHECK_ERROR(pVirtualBox, COMGETTER(NATNetworks)(ComSafeArrayAsOutParam(nets)));
     608    for (size_t i = 0; i < nets.size(); ++i)
     609    {
     610        ComPtr<INATNetwork> net = nets[i];
     611        Bstr netName;
     612        net->COMGETTER(NetworkName)(netName.asOutParam());
     613        RTPrintf(Nat::tr("NetworkName:    %ls\n"), netName.raw());
     614        Bstr gateway;
     615        net->COMGETTER(Gateway)(gateway.asOutParam());
     616        RTPrintf("IP:             %ls\n", gateway.raw());
     617        Bstr network;
     618        net->COMGETTER(Network)(network.asOutParam());
     619        RTPrintf(Nat::tr("Network:        %ls\n"), network.raw());
     620        BOOL fEnabled;
     621        net->COMGETTER(IPv6Enabled)(&fEnabled);
     622        RTPrintf(Nat::tr("IPv6 Enabled:   %s\n"), fEnabled ? Nat::tr("Yes") : Nat::tr("No"));
     623        Bstr ipv6prefix;
     624        net->COMGETTER(IPv6Prefix)(ipv6prefix.asOutParam());
     625        RTPrintf(Nat::tr("IPv6 Prefix:    %ls\n"), ipv6prefix.raw());
     626        net->COMGETTER(NeedDhcpServer)(&fEnabled);
     627        RTPrintf(Nat::tr("DHCP Enabled:   %s\n"), fEnabled ? Nat::tr("Yes") : Nat::tr("No"));
     628        net->COMGETTER(Enabled)(&fEnabled);
     629        RTPrintf(Nat::tr("Enabled:        %s\n"), fEnabled ? Nat::tr("Yes") : Nat::tr("No"));
     630
     631#define PRINT_STRING_ARRAY(title)                                       \
     632            if (strs.size() > 0)                                        \
     633            {                                                           \
     634                RTPrintf(title);                                        \
     635                size_t j = 0;                                           \
     636                for (;j < strs.size(); ++j)                             \
     637                    RTPrintf("        %s\n", Utf8Str(strs[j]).c_str()); \
     638            }
     639
     640        com::SafeArray<BSTR> strs;
     641
     642        CHECK_ERROR(nets[i], COMGETTER(PortForwardRules4)(ComSafeArrayAsOutParam(strs)));
     643        PRINT_STRING_ARRAY(Nat::tr("Port-forwarding (ipv4)\n"));
     644        strs.setNull();
     645
     646        CHECK_ERROR(nets[i], COMGETTER(PortForwardRules6)(ComSafeArrayAsOutParam(strs)));
     647        PRINT_STRING_ARRAY(Nat::tr("Port-forwarding (ipv6)\n"));
     648        strs.setNull();
     649
     650        CHECK_ERROR(nets[i], COMGETTER(LocalMappings)(ComSafeArrayAsOutParam(strs)));
     651        PRINT_STRING_ARRAY(Nat::tr("loopback mappings (ipv4)\n"));
     652        strs.setNull();
     653
     654#undef PRINT_STRING_ARRAY
     655
     656        RTPrintf("\n");
     657    }
     658
     659    return RTEXITCODE_SUCCESS;
     660}
     661
    591662#endif /* !VBOX_ONLY_DOCS */
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