Changeset 45047 in vbox
- Timestamp:
- Mar 15, 2013 9:19:16 AM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 84297
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/cidr.h
r44529 r45047 30 30 #include <iprt/cdefs.h> 31 31 #include <iprt/types.h> 32 #include <iprt/net.h> 32 33 33 34 /** @defgroup grp_rt_cidr RTCidr - Classless Inter-Domain Routing notation … … 36 37 */ 37 38 RT_C_DECLS_BEGIN 38 39 /** An IPv4 address. */40 typedef uint32_t RTIPV4ADDR;41 /** Pointer to an IPv4 address. */42 typedef RTIPV4ADDR *PRTIPV4ADDR;43 /** Pointer to a const IPv4 address. */44 typedef RTIPV4ADDR const *PCRTIPV4ADDR;45 46 39 47 40 /** … … 54 47 * @param pNetmask The determined netmask. 55 48 */ 56 RTDECL(int) RTCidrStrToIPv4(const char *pszAddress, PRT IPV4ADDR pNetwork, PRTIPV4ADDRpNetmask);49 RTDECL(int) RTCidrStrToIPv4(const char *pszAddress, PRTNETADDRIPV4 pNetwork, PRTNETADDRIPV4 pNetmask); 57 50 58 51 RT_C_DECLS_END -
trunk/src/VBox/Devices/Network/DrvNAT.cpp
r44528 r45047 1030 1030 * @param pCfg The configuration handle. 1031 1031 */ 1032 static int drvNATConstructRedir(unsigned iInstance, PDRVNAT pThis, PCFGMNODE pCfg, RTIPV4ADDRNetwork)1032 static int drvNATConstructRedir(unsigned iInstance, PDRVNAT pThis, PCFGMNODE pCfg, PRTNETADDRIPV4 pNetwork) 1033 1033 { 1034 1034 RTMAC Mac; … … 1089 1089 /* guest address */ 1090 1090 struct in_addr GuestIP; 1091 /* @todo (vvl) use CTL_* */ 1092 GETIP_DEF(rc, pThis, pNode, GuestIP, htonl(Network | CTL_GUEST)); 1091 GETIP_DEF(rc, pThis, pNode, GuestIP, RT_H2N_U32(pNetwork->u | CTL_GUEST)); 1093 1092 1094 1093 /* Store the guest IP for re-establishing the port-forwarding rules. Note that GuestIP … … 1267 1266 pDrvIns->iInstance, szNetwork); 1268 1267 1269 RT IPV4ADDR Network;1270 RTIPV4ADDR Netmask; 1268 RTNETADDRIPV4 Network, Netmask; 1269 1271 1270 rc = RTCidrStrToIPv4(szNetwork, &Network, &Netmask); 1272 1271 if (RT_FAILURE(rc)) … … 1278 1277 * Initialize slirp. 1279 1278 */ 1280 rc = slirp_init(&pThis->pNATState, RT_H2N_U32(Network ), Netmask,1279 rc = slirp_init(&pThis->pNATState, RT_H2N_U32(Network.u), Netmask.u, 1281 1280 fPassDomain, !!fUseHostResolver, i32AliasMode, 1282 1281 iIcmpCacheLimit, pThis); … … 1327 1326 } 1328 1327 #endif 1329 rc = drvNATConstructRedir(pDrvIns->iInstance, pThis, pCfg, Network);1328 rc = drvNATConstructRedir(pDrvIns->iInstance, pThis, pCfg, &Network); 1330 1329 if (RT_SUCCESS(rc)) 1331 1330 { -
trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp
r44529 r45047 63 63 QString strDigits("(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]?|0)"); 64 64 QRegExp intRegExp(QString("^(%1?(%2(%1?(%2(%1?(%2%1?)?)?)?)?)?)?$").arg(strDigits).arg(strDot)); 65 uint uNetwork, uMask;66 if (strStringToValidate == "..." || RTCidrStrToIPv4(strStringToValidate.toLatin1().constData(), & uNetwork, &uMask) == VINF_SUCCESS)65 RTNETADDRIPV4 Network, Mask; 66 if (strStringToValidate == "..." || RTCidrStrToIPv4(strStringToValidate.toLatin1().constData(), &Network, &Mask) == VINF_SUCCESS) 67 67 return QValidator::Acceptable; 68 68 else if (intRegExp.indexIn(strStringToValidate) != -1) -
trunk/src/VBox/Runtime/common/misc/cidr.cpp
r44528 r45047 38 38 39 39 40 RTDECL(int) RTCidrStrToIPv4(const char *pszAddress, PRT IPV4ADDR pNetwork, PRTIPV4ADDRpNetmask)40 RTDECL(int) RTCidrStrToIPv4(const char *pszAddress, PRTNETADDRIPV4 pNetwork, PRTNETADDRIPV4 pNetmask) 41 41 { 42 42 uint8_t cBits; … … 111 111 return VERR_INVALID_PARAMETER; 112 112 113 *pNetmask= u32Netmask;114 *pNetwork= u32Network;113 pNetmask->u = u32Netmask; 114 pNetwork->u = u32Network; 115 115 return VINF_SUCCESS; 116 116 } -
trunk/src/VBox/Runtime/testcase/tstRTCidr.cpp
r44528 r45047 41 41 #define CHECKNETWORK(String, rcExpected, ExpectedNetwork, ExpectedNetMask) \ 42 42 do { \ 43 RT IPV4ADDRNetwork, NetMask; \43 RTNETADDRIPV4 Network, NetMask; \ 44 44 int rc2 = RTCidrStrToIPv4(String, &Network, &NetMask); \ 45 45 if ((rcExpected) && !rc2) \ … … 50 50 else if ( (rcExpected) != rc2 \ 51 51 || ( rc2 == VINF_SUCCESS \ 52 && ( (ExpectedNetwork) != Network \53 || (ExpectedNetMask) != NetMask ))) \52 && ( (ExpectedNetwork) != Network.u \ 53 || (ExpectedNetMask) != NetMask.u))) \ 54 54 { \ 55 RTTestIFailed("at line %d: '%s': expected %Rrc got %Rrc, expected network % 08x got %08x, expected netmask %08x got %08x\n", \56 __LINE__, String, rcExpected, rc2, (ExpectedNetwork), Network , (ExpectedNetMask), NetMask); \55 RTTestIFailed("at line %d: '%s': expected %Rrc got %Rrc, expected network %RTnaipv4 got %RTnaipv4, expected netmask %RTnaipv4 got %RTnaipv4\n", \ 56 __LINE__, String, rcExpected, rc2, (ExpectedNetwork), Network.u, (ExpectedNetMask), NetMask.u); \ 57 57 } \ 58 58 } while (0)
Note:
See TracChangeset
for help on using the changeset viewer.