Searched refs:pGso (Results 1 - 20 of 20) sorted by relevance

/vbox/include/VBox/vmm/
H A Dpdmnetinline.h61 * @param pGso The GSO context.
66 DECLINLINE(bool) PDMNetGsoIsValid(PCPDMNETWORKGSO pGso, size_t cbGsoMax, size_t cbFrame) argument
70 if (RT_UNLIKELY(cbGsoMax < sizeof(*pGso)))
73 enmType = (PDMNETWORKGSOTYPE)pGso->u8Type;
78 if (RT_UNLIKELY( pGso->offHdr1 < sizeof(RTNETETHERHDR) ))
80 if (RT_UNLIKELY( pGso->offHdr2 <= pGso->offHdr1 ))
82 if (RT_UNLIKELY( pGso->cbHdrsTotal <= pGso->offHdr2 ))
90 if (RT_UNLIKELY( (unsigned)pGso
153 pdmNetSegHdrLen(PCPDMNETWORKGSO pGso, uint32_t iSeg) argument
171 pdmNetSegPayloadLen(PCPDMNETWORKGSO pGso, uint32_t iSeg, uint32_t cSegs, uint32_t cbFrame) argument
186 PDMNetGsoCalcSegmentCount(PCPDMNETWORKGSO pGso, size_t cbFrame) argument
400 PDMNetGsoCarveSegmentQD(PCPDMNETWORKGSO pGso, uint8_t *pbFrame, size_t cbFrame, uint8_t *pbHdrScatch, uint32_t iSeg, uint32_t cSegs, uint32_t *pcbSegFrame) argument
501 PDMNetGsoCarveSegment(PCPDMNETWORKGSO pGso, const uint8_t *pbFrame, size_t cbFrame, uint32_t iSeg, uint32_t cSegs, uint8_t *pbSegHdrs, uint32_t *pcbSegHdrs, uint32_t *pcbSegPayload) argument
584 PDMNetGsoPrepForDirectUse(PCPDMNETWORKGSO pGso, void *pvFrame, size_t cbFrame, PDMNETCSUMTYPE enmCsumType) argument
[all...]
H A Dpdmnetifs.h147 * @param pGso Segmentation context.
151 DECLR3CALLBACKMEMBER(int, pfnReceiveGso,(PPDMINETWORKDOWN pInterface, const void *pvBuf, size_t cb, PCPDMNETWORKGSO pGso));
241 * @param pGso Pointer to a GSO context (only reference while in
245 * pointing to a copy of @a pGso.
251 DECLR3CALLBACKMEMBER(int, pfnAllocBuf,(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso,
333 DECLR0CALLBACKMEMBER(int, pfnAllocBuf,(PPDMINETWORKUPR0 pInterface, size_t cbMin, PCPDMNETWORKGSO pGso,
351 DECLRCCALLBACKMEMBER(int, pfnAllocBuf,(PPDMINETWORKUPRC pInterface, size_t cbMin, PCPDMNETWORKGSO pGso,
/vbox/src/VBox/Devices/Network/
H A DPcap.h28 int PcapStreamGsoFrame(PRTSTREAM pStream, uint64_t StartNanoTS, PCPDMNETWORKGSO pGso,
33 int PcapFileGsoFrame(RTFILE File, uint64_t StartNanoTS, PCPDMNETWORKGSO pGso,
H A DDevVirtioNet.cpp785 PCPDMNETWORKGSO pGso)
791 if (pGso)
794 " off1=0x%x off2=0x%x\n", INSTANCE(pThis), pGso->u8Type,
795 pGso->cbHdrsTotal, pGso->cbHdrsSeg, pGso->cbMaxSeg, pGso->offHdr1, pGso->offHdr2));
797 switch (pGso->u8Type)
814 Hdr.Hdr.u16HdrLen = pGso
784 vnetHandleRxPacket(PVNETSTATE pThis, const void *pvBuf, size_t cb, PCPDMNETWORKGSO pGso) argument
915 vnetNetworkDown_ReceiveGso(PPDMINETWORKDOWN pInterface, const void *pvBuf, size_t cb, PCPDMNETWORKGSO pGso) argument
1080 vnetSetupGsoCtx(PPDMNETWORKGSO pGso, VNETHDR const *pHdr) argument
1208 PDMNETWORKGSO Gso, *pGso; local
[all...]
H A DPcap.cpp142 * @param pGso Pointer to the GSO context.
148 int PcapStreamGsoFrame(PRTSTREAM pStream, uint64_t StartNanoTS, PCPDMNETWORKGSO pGso, argument
156 uint32_t const cSegs = PDMNetGsoCalcSegmentCount(pGso, cbFrame);
160 uint32_t offSegPayload = PDMNetGsoCarveSegment(pGso, pbFrame, cbFrame, iSeg, cSegs, abHdrs, &cbHdrs, &cbSegPayload);
222 * @param pGso Pointer to the GSO context.
228 int PcapFileGsoFrame(RTFILE File, uint64_t StartNanoTS, PCPDMNETWORKGSO pGso, argument
236 uint32_t const cSegs = PDMNetGsoCalcSegmentCount(pGso, cbFrame);
240 uint32_t offSegPayload = PDMNetGsoCarveSegment(pGso, pbFrame, cbFrame, iSeg, cSegs, abHdrs, &cbHdrs, &cbSegPayload);
H A DDrvIntNet.cpp361 PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf)
391 if (pGso)
392 rc = IntNetRingAllocateGsoFrame(&pThis->CTX_SUFF(pBuf)->Send, (uint32_t)cbMin, pGso,
402 if (pGso)
403 rc = IntNetRingAllocateGsoFrame(&pThis->CTX_SUFF(pBuf)->Send, (uint32_t)cbMin, pGso,
419 pSgBuf->pvUser = pGso ? (PPDMNETWORKGSO)pSgBuf->aSegs[0].pvSeg - 1 : NULL;
746 PCPDMNETWORKGSO pGso = IntNetHdrGetGsoContext(pHdr, pBuf); local
747 if (PDMNetGsoIsValid(pGso, cbFrame, cbFrame - sizeof(PDMNETWORKGSO)))
751 (uint8_t *)(pGso + 1),
753 pGso)))
360 drvIntNetUp_AllocBuf(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf) argument
[all...]
H A DDrvUDPTunnel.cpp127 PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf)
139 + (pGso ? RT_ALIGN_Z(sizeof(*pGso), 16) : 0));
150 if (!pGso)
155 *(PPDMNETWORKGSO)pSgBuf->pvUser = *pGso;
221 PCPDMNETWORKGSO pGso = (PCPDMNETWORKGSO)pSgBuf->pvUser; local
222 uint32_t const cSegs = PDMNetGsoCalcSegmentCount(pGso, pSgBuf->cbUsed); Assert(cSegs > 1);
227 void *pvSegFrame = PDMNetGsoCarveSegmentQD(pGso, (uint8_t *)pbFrame, pSgBuf->cbUsed, abHdrScratch,
126 drvUDPTunnelUp_AllocBuf(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf) argument
H A DDrvVDE.cpp136 PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf)
148 + (pGso ? RT_ALIGN_Z(sizeof(*pGso), 16) : 0));
159 if (!pGso)
164 *(PPDMNETWORKGSO)pSgBuf->pvUser = *pGso;
233 PCPDMNETWORKGSO pGso = (PCPDMNETWORKGSO)pSgBuf->pvUser; local
234 uint32_t const cSegs = PDMNetGsoCalcSegmentCount(pGso, pSgBuf->cbUsed); Assert(cSegs > 1);
239 void *pvSegFrame = PDMNetGsoCarveSegmentQD(pGso, (uint8_t *)pbFrame, pSgBuf->cbUsed, abHdrScratch,
135 drvVDENetworkUp_AllocBuf(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf) argument
H A DDrvDedicatedNic.cpp194 PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf)
225 if (!pGso)
233 pThis->XmitGso = *pGso;
193 drvDedicatedNicUp_AllocBuf(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf) argument
H A DDrvNetShaper.cpp122 PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf)
141 return pThis->CTX_SUFF(pIBelowNet)->pfnAllocBuf(pThis->CTX_SUFF(pIBelowNet), cbMin, pGso, ppSgBuf);
231 static DECLCALLBACK(int) drvR3NetShaperDown_ReceiveGso(PPDMINETWORKDOWN pInterface, const void *pvBuf, size_t cb, PCPDMNETWORKGSO pGso) argument
235 return pThis->pIAboveNet->pfnReceiveGso(pThis->pIAboveNet, pvBuf, cb, pGso);
121 drvNetShaperUp_AllocBuf(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf) argument
H A DDrvTAP.cpp167 PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf)
179 + (pGso ? RT_ALIGN_Z(sizeof(*pGso), 16) : 0));
190 if (!pGso)
195 *(PPDMNETWORKGSO)pSgBuf->pvUser = *pGso;
262 PCPDMNETWORKGSO pGso = (PCPDMNETWORKGSO)pSgBuf->pvUser; local
263 uint32_t const cSegs = PDMNetGsoCalcSegmentCount(pGso, pSgBuf->cbUsed); Assert(cSegs > 1);
268 void *pvSegFrame = PDMNetGsoCarveSegmentQD(pGso, (uint8_t *)pbFrame, pSgBuf->cbUsed, abHdrScratch,
166 drvTAPNetworkUp_AllocBuf(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf) argument
H A DDrvNAT.cpp417 PCPDMNETWORKGSO pGso = (PCPDMNETWORKGSO)pSgBuf->pvUser; local
418 uint32_t const cSegs = PDMNetGsoCalcSegmentCount(pGso, pSgBuf->cbUsed); Assert(cSegs > 1);
423 m = slirp_ext_m_get(pThis->pNATState, pGso->cbHdrsTotal + pGso->cbMaxSeg, &pvSeg, &cbSeg);
429 uint32_t offPayload = PDMNetGsoCarveSegment(pGso, pbFrame, pSgBuf->cbUsed,
436 void *pvSegFrame = PDMNetGsoCarveSegmentQD(pGso, (uint8_t *)pbFrame, pSgBuf->cbUsed, abHdrScratch,
469 PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf)
489 if (!pGso)
515 if (pGso->cbHdrsTotal + pGso
468 drvNATNetworkUp_AllocBuf(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf) argument
[all...]
H A DDrvNetSniffer.cpp103 PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf)
108 return pThis->pIBelowNet->pfnAllocBuf(pThis->pIBelowNet, cbMin, pGso, ppSgBuf);
102 drvNetSnifferUp_AllocBuf(PPDMINETWORKUP pInterface, size_t cbMin, PCPDMNETWORKGSO pGso, PPPDMSCATTERGATHER ppSgBuf) argument
H A DDevE1000.cpp3364 * @param pGso The GSO context to setup.
3367 DECLINLINE(void) e1kSetupGsoCtx(PPDMNETWORKGSO pGso, E1KTXCTX const *pCtx) argument
3369 pGso->u8Type = PDMNETWORKGSOTYPE_INVALID;
3437 pGso->u8Type = PDMNETWORKGSOTYPE_IPV4_TCP;
3438 pGso->cbHdrsSeg = pCtx->dw3.u8HDRLEN;
3442 pGso->u8Type = PDMNETWORKGSOTYPE_IPV4_UDP;
3443 pGso->cbHdrsSeg = pCtx->tu.u8CSS; /* IP header only */
3450 pGso->cbHdrsSeg = pCtx->dw3.u8HDRLEN; /* @todo IPv6 UFO */
3452 pGso->u8Type = PDMNETWORKGSOTYPE_IPV6_TCP;
3454 pGso
3473 e1kCanDoGso(PE1KSTATE pThis, PCPDMNETWORKGSO pGso, E1KTXDAT const *pData, E1KTXCTX const *pCtx) argument
[all...]
H A DSrvIntNetR0.cpp3894 PPDMNETWORKGSO pGso = IntNetHdrGetGsoContext(pHdr, pIf->pIntBuf);
3895 uint32_t cbFrame = pHdr->cbFrame - sizeof(*pGso);
3896 if (RT_LIKELY(PDMNetGsoIsValid(pGso, pHdr->cbFrame, cbFrame)))
3898 void *pvCurFrame = pGso + 1;
3899 IntNetSgInitTempGso(&Sg, pvCurFrame, cbFrame, pGso);
/vbox/src/VBox/NetworkServices/NetLib/
H A DVBoxNetUDP.cpp70 PCPDMNETWORKGSO pGso = NULL; local
73 pGso = (PCPDMNETWORKGSO)pvFrame;
74 if (!PDMNetGsoIsValid(pGso, cbFrame, cbFrame - sizeof(*pGso)))
78 if (pGso->u8Type != PDMNETWORKGSOTYPE_IPV4_UDP)
80 pvFrame = pGso + 1;
81 cbFrame -= sizeof(*pGso);
124 if (pGso)
125 PDMNetGsoPrepForDirectUse(pGso, (void *)pvFrame, cbFrame, PDMNETCSUMTYPE_NONE);
140 if (!RTNetIPv4IsHdrValid(pIpHdr, cbFrame - offIpHdr, cbFrame - offIpHdr, !pGso /*fChecksu
[all...]
H A DVBoxNetBaseService.cpp745 PCPDMNETWORKGSO pGso = IntNetHdrGetGsoContext(pHdr, m->m_pIfBuf); local
746 rc = processGSO(pGso, cbFrame);
/vbox/include/VBox/
H A Dintnetinline.h103 * @param pGso The GSO context.
106 unsigned cSegsUsed, PCPDMNETWORKGSO pGso)
114 pSG->GsoCtx.u8Type = pGso->u8Type;
115 pSG->GsoCtx.cbHdrsTotal = pGso->cbHdrsTotal;
116 pSG->GsoCtx.cbHdrsSeg = pGso->cbHdrsSeg;
117 pSG->GsoCtx.cbMaxSeg= pGso->cbMaxSeg;
118 pSG->GsoCtx.offHdr1 = pGso->offHdr1;
119 pSG->GsoCtx.offHdr2 = pGso->offHdr2;
156 * @param pGso The GSO context.
158 DECLINLINE(void) IntNetSgInitTempGso(PINTNETSG pSG, void *pvFrame, uint32_t cbFrame, PCPDMNETWORKGSO pGso) argument
105 IntNetSgInitTempSegsGso(PINTNETSG pSG, uint32_t cbTotal, unsigned cSegs, unsigned cSegsUsed, PCPDMNETWORKGSO pGso) argument
353 PPDMNETWORKGSO pGso = (PPDMNETWORKGSO)((uint8_t *)pHdr + pHdr->offFrame); local
516 IntNetRingAllocateGsoFrame(PINTNETRINGBUF pRingBuf, uint32_t cbFrame, PCPDMNETWORKGSO pGso, PINTNETHDR *ppHdr, void **ppvFrame) argument
[all...]
/vbox/src/VBox/Devices/Network/testcase/
H A DtstIntNet-1.cpp544 PCPDMNETWORKGSO pGso = IntNetHdrGetGsoContext(pHdr, pBuf); local
546 if (PDMNetGsoIsValid(pGso, cbFrame, cbFrame - sizeof(*pGso)))
548 const void *pvFrame = pGso + 1;
550 cbFrame -= sizeof(pGso);
553 PcapStreamGsoFrame(pFileRaw, g_StartTS, pGso, pvFrame, cbFrame, 0xffff);
565 RTPrintf("tstIntNet-1: Bad GSO frame: %Rhxs\n", sizeof(*pGso), pGso);
/vbox/src/VBox/NetworkServices/NAT/
H A DVBoxNetLwipNAT.cpp1025 int VBoxNetLwipNAT::processGSO(PCPDMNETWORKGSO pGso, size_t cbFrame)
1027 if (!PDMNetGsoIsValid(pGso, cbFrame,
1033 uint32_t const cSegs = PDMNetGsoCalcSegmentCount(pGso,
1039 PDMNetGsoCarveSegmentQD(pGso,
1040 (uint8_t *)(pGso + 1),

Completed in 2357 milliseconds