Changeset 73097 in vbox for trunk/src/VBox/HostDrivers/VBoxNetFlt
- Timestamp:
- Jul 12, 2018 9:06:33 PM (7 years ago)
- svn:sync-xref-src-repo-rev:
- 123672
- Location:
- trunk/src/VBox/HostDrivers/VBoxNetFlt
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/HostDrivers/VBoxNetFlt/VBoxNetFlt.c
r69500 r73097 278 278 *********************************************************************************************************************************/ 279 279 #define IFPORT_2_VBOXNETFLTINS(pIfPort) \ 280 ( (PVBOXNETFLTINS)((uint8_t *) pIfPort - RT_OFFSETOF(VBOXNETFLTINS, MyPort)) )280 ( (PVBOXNETFLTINS)((uint8_t *)(pIfPort) - RT_UOFFSETOF(VBOXNETFLTINS, MyPort)) ) 281 281 282 282 … … 999 999 int rc; 1000 1000 size_t const cchName = strlen(pszName); 1001 PVBOXNETFLTINS pNew = (PVBOXNETFLTINS)RTMemAllocZ(RT_ OFFSETOF(VBOXNETFLTINS, szName[cchName + 1]));1001 PVBOXNETFLTINS pNew = (PVBOXNETFLTINS)RTMemAllocZ(RT_UOFFSETOF_DYN(VBOXNETFLTINS, szName[cchName + 1])); 1002 1002 if (!pNew) 1003 1003 return VERR_INTNET_FLT_IF_FAILED; … … 1239 1239 PINTNETTRUNKIFPORT *ppIfPort) 1240 1240 { 1241 PVBOXNETFLTGLOBALS pGlobals = (PVBOXNETFLTGLOBALS)((uint8_t *)pIfFactory - RT_ OFFSETOF(VBOXNETFLTGLOBALS, TrunkFactory));1241 PVBOXNETFLTGLOBALS pGlobals = (PVBOXNETFLTGLOBALS)((uint8_t *)pIfFactory - RT_UOFFSETOF(VBOXNETFLTGLOBALS, TrunkFactory)); 1242 1242 PVBOXNETFLTINS pCur; 1243 1243 int rc; … … 1326 1326 static DECLCALLBACK(void) vboxNetFltFactoryRelease(PINTNETTRUNKFACTORY pIfFactory) 1327 1327 { 1328 PVBOXNETFLTGLOBALS pGlobals = (PVBOXNETFLTGLOBALS)((uint8_t *)pIfFactory - RT_ OFFSETOF(VBOXNETFLTGLOBALS, TrunkFactory));1328 PVBOXNETFLTGLOBALS pGlobals = (PVBOXNETFLTGLOBALS)((uint8_t *)pIfFactory - RT_UOFFSETOF(VBOXNETFLTGLOBALS, TrunkFactory)); 1329 1329 1330 1330 int32_t cRefs = ASMAtomicDecS32(&pGlobals->cFactoryRefs); … … 1346 1346 const char *pszInterfaceUuid) 1347 1347 { 1348 PVBOXNETFLTGLOBALS pGlobals = (PVBOXNETFLTGLOBALS)((uint8_t *)pSupDrvFactory - RT_ OFFSETOF(VBOXNETFLTGLOBALS, SupDrvFactory));1348 PVBOXNETFLTGLOBALS pGlobals = (PVBOXNETFLTGLOBALS)((uint8_t *)pSupDrvFactory - RT_UOFFSETOF(VBOXNETFLTGLOBALS, SupDrvFactory)); 1349 1349 1350 1350 /* -
trunk/src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp
r69500 r73097 932 932 if (cSegs < VBOXNETFLT_DARWIN_MAX_SEGS) 933 933 { 934 PINTNETSG pSG = (PINTNETSG)alloca(RT_ OFFSETOF(INTNETSG, aSegs[cSegs]));934 PINTNETSG pSG = (PINTNETSG)alloca(RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs])); 935 935 vboxNetFltDarwinMBufToSG(pThis, pMBuf, pvFrame, pSG, cSegs, fSrc); 936 936 -
trunk/src/VBox/HostDrivers/VBoxNetFlt/freebsd/VBoxNetFlt-freebsd.c
r57358 r73097 451 451 452 452 /* Create a copy and deliver to the virtual switch */ 453 pSG = RTMemTmpAlloc(RT_ OFFSETOF(INTNETSG, aSegs[cSegs]));453 pSG = RTMemTmpAlloc(RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs])); 454 454 vboxNetFltFreeBSDMBufToSG(pThis, m, pSG, cSegs, 0); 455 455 fDropIt = pThis->pSwitchPort->pfnRecv(pThis->pSwitchPort, NULL /* pvIf */, pSG, INTNETTRUNKDIR_WIRE); … … 495 495 #endif 496 496 /* Create a copy and deliver to the virtual switch */ 497 pSG = RTMemTmpAlloc(RT_ OFFSETOF(INTNETSG, aSegs[cSegs]));497 pSG = RTMemTmpAlloc(RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs])); 498 498 vboxNetFltFreeBSDMBufToSG(pThis, m, pSG, cSegs, 0); 499 499 fDropIt = pThis->pSwitchPort->pfnRecv(pThis->pSwitchPort, NULL /* pvIf */, pSG, INTNETTRUNKDIR_HOST); -
trunk/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
r70708 r73097 653 653 else if (pSG->cbTotal >= sizeof(RTNETETHERHDR)) 654 654 { 655 uint32_t off = RT_ OFFSETOF(RTNETETHERHDR, EtherType);655 uint32_t off = RT_UOFFSETOF(RTNETETHERHDR, EtherType); 656 656 uint32_t i; 657 657 for (i = 0; i < pSG->cSegsUsed; ++i) … … 768 768 pPkt->csum_start = skb_headroom(pPkt) + pSG->GsoCtx.offHdr2; 769 769 if (fGsoType & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6)) 770 pPkt->csum_offset = RT_ OFFSETOF(RTNETTCP, th_sum);770 pPkt->csum_offset = RT_UOFFSETOF(RTNETTCP, th_sum); 771 771 else 772 pPkt->csum_offset = RT_ OFFSETOF(RTNETUDP, uh_sum);772 pPkt->csum_offset = RT_UOFFSETOF(RTNETUDP, uh_sum); 773 773 # else 774 774 pPkt->h.raw = pPkt->data + pSG->GsoCtx.offHdr2; 775 775 if (fGsoType & (SKB_GSO_TCPV4 | SKB_GSO_TCPV6)) 776 pPkt->csum = RT_ OFFSETOF(RTNETTCP, th_sum);776 pPkt->csum = RT_UOFFSETOF(RTNETTCP, th_sum); 777 777 else 778 pPkt->csum = RT_ OFFSETOF(RTNETUDP, uh_sum);778 pPkt->csum = RT_UOFFSETOF(RTNETUDP, uh_sum); 779 779 # endif 780 780 if (!fDstWire) … … 1457 1457 unsigned cbExtra; 1458 1458 unsigned cSegs = vboxNetFltLinuxCalcSGSegments(pSkb, &cbExtra); 1459 PINTNETSG pSG = (PINTNETSG)alloca(RT_ OFFSETOF(INTNETSG, aSegs[cSegs]) + cbExtra);1459 PINTNETSG pSG = (PINTNETSG)alloca(RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs]) + cbExtra); 1460 1460 if (RT_LIKELY(pSG)) 1461 1461 { … … 1491 1491 unsigned cbExtra; 1492 1492 unsigned cSegs = vboxNetFltLinuxCalcSGSegments(pBuf, &cbExtra); 1493 PINTNETSG pSG = (PINTNETSG)alloca(RT_ OFFSETOF(INTNETSG, aSegs[cSegs]) + cbExtra);1493 PINTNETSG pSG = (PINTNETSG)alloca(RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs]) + cbExtra); 1494 1494 if (RT_LIKELY(pSG)) 1495 1495 { -
trunk/src/VBox/HostDrivers/VBoxNetFlt/solaris/VBoxNetFlt-solaris.c
r69500 r73097 3522 3522 */ 3523 3523 unsigned cSegs = vboxNetFltSolarisMBlkCalcSGSegs(pThis, pMsg); 3524 PINTNETSG pSG = (PINTNETSG)alloca(RT_ OFFSETOF(INTNETSG, aSegs[cSegs]));3524 PINTNETSG pSG = (PINTNETSG)alloca(RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs])); 3525 3525 int rc = vboxNetFltSolarisMBlkToSG(pThis, pMsg, pSG, cSegs, fSrc); 3526 3526 if (RT_SUCCESS(rc)) -
trunk/src/VBox/HostDrivers/VBoxNetFlt/solaris/VBoxNetFltBow-solaris.c
r69500 r73097 688 688 { 689 689 unsigned cSegs = vboxNetFltSolarisMBlkCalcSGSegs(pThis, pCurMsg); 690 PINTNETSG pSG = (PINTNETSG)alloca(RT_ OFFSETOF(INTNETSG, aSegs[cSegs]));690 PINTNETSG pSG = (PINTNETSG)alloca(RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs])); 691 691 int rc = vboxNetFltSolarisMBlkToSG(pThis, pMsg, pSG, cSegs, fSrc); 692 692 if (RT_SUCCESS(rc)) -
trunk/src/VBox/HostDrivers/VBoxNetFlt/win/drv/VBoxNetFltRt-win.cpp
r69500 r73097 138 138 *********************************************************************************************************************************/ 139 139 #define LIST_ENTRY_2_JOB(pListEntry) \ 140 ( (PVBOXNETFLT_JOB)((uint8_t *)(pListEntry) - RT_ OFFSETOF(VBOXNETFLT_JOB, ListEntry)) )140 ( (PVBOXNETFLT_JOB)((uint8_t *)(pListEntry) - RT_UOFFSETOF(VBOXNETFLT_JOB, ListEntry)) ) 141 141 142 142 … … 388 388 { 389 389 PINTNETSG pSG; 390 NTSTATUS Status = vboxNetFltWinMemAlloc((PVOID*)&pSG, RT_ OFFSETOF(INTNETSG, aSegs[cSegs]));390 NTSTATUS Status = vboxNetFltWinMemAlloc((PVOID*)&pSG, RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs])); 391 391 if (Status == STATUS_SUCCESS) 392 392 { -
trunk/src/VBox/HostDrivers/VBoxNetFlt/win/drv/VBoxNetFltRt-win.h
r69500 r73097 41 41 42 42 #define LIST_ENTRY_2_PACKET_INFO(pListEntry) \ 43 ( (PVBOXNETFLT_PACKET_INFO)((uint8_t *)(pListEntry) - RT_ OFFSETOF(VBOXNETFLT_PACKET_INFO, ListEntry)) )43 ( (PVBOXNETFLT_PACKET_INFO)((uint8_t *)(pListEntry) - RT_UOFFSETOF(VBOXNETFLT_PACKET_INFO, ListEntry)) ) 44 44 45 45 #if !defined(VBOX_LOOPBACK_USEFLAGS) || defined(DEBUG_NETFLT_PACKETS) 46 46 47 47 #define VBOX_SLE_2_PKTRSVD_PT(_pEntry) \ 48 ( (PVBOXNETFLT_PKTRSVD_PT)((uint8_t *)(_pEntry) - RT_ OFFSETOF(VBOXNETFLT_PKTRSVD_PT, ListEntry)) )48 ( (PVBOXNETFLT_PKTRSVD_PT)((uint8_t *)(_pEntry) - RT_UOFFSETOF(VBOXNETFLT_PKTRSVD_PT, ListEntry)) ) 49 49 50 50 #define VBOX_SLE_2_SENDPACKET(_pEntry) \ 51 ( (PNDIS_PACKET)((uint8_t *)(VBOX_SLE_2_PKTRSVD_PT(_pEntry)) - RT_ OFFSETOF(NDIS_PACKET, ProtocolReserved)) )51 ( (PNDIS_PACKET)((uint8_t *)(VBOX_SLE_2_PKTRSVD_PT(_pEntry)) - RT_UOFFSETOF(NDIS_PACKET, ProtocolReserved)) ) 52 52 53 53 #endif -
trunk/src/VBox/HostDrivers/VBoxNetFlt/win/drv/VBoxNetLwf-win.cpp
r72275 r73097 1597 1597 /* Allocate and initialize SG */ 1598 1598 PINTNETSG pSG = (PINTNETSG)NdisAllocateMemoryWithTagPriority(pModule->hFilter, 1599 RT_ OFFSETOF(INTNETSG, aSegs[cSegs]),1599 RT_UOFFSETOF_DYN(INTNETSG, aSegs[cSegs]), 1600 1600 VBOXNETLWF_MEM_TAG, 1601 1601 NormalPoolPriority);
Note:
See TracChangeset
for help on using the changeset viewer.