Changeset 85146 in vbox for trunk/include/VBox/vmm
- Timestamp:
- Jul 9, 2020 10:20:38 AM (5 years ago)
- svn:sync-xref-src-repo-rev:
- 139093
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/pdmnetinline.h
r82968 r85146 542 542 case PDMNETWORKGSOTYPE_IPV4_UDP: 543 543 if (iSeg == 0) 544 { 545 if (pGso->offHdr2 + sizeof(RTNETUDP::uh_ulen) > cbFrame) 546 return 0; /* Incomplete UDP header! */ 547 /* uh_ulen cannot exceed cbFrame - pGso->offHdr2 (offset of UDP header) */ 548 if ((unsigned)(pGso->offHdr2 + RT_BE2H_U16(((PCRTNETUDP)&pbFrame[pGso->offHdr2])->uh_ulen)) > cbFrame) 549 if (cbFrame > UINT16_MAX) 550 ((PRTNETUDP)&pbFrame[pGso->offHdr2])->uh_ulen = 0xFFFF; 551 else 552 ((PRTNETUDP)&pbFrame[pGso->offHdr2])->uh_ulen = RT_H2BE_U16((uint16_t)(cbFrame - pGso->offHdr2)); 553 Assert((unsigned)(pGso->offHdr2 + ((PCRTNETUDP)&pbFrame[pGso->offHdr2])->uh_ulen) <= cbFrame); 544 554 pdmNetGsoUpdateUdpHdrUfo(RTNetIPv4PseudoChecksum((PRTNETIPV4)&pbFrame[pGso->offHdr1]), 545 555 pbSegHdrs, pbFrame, pGso->offHdr2); 556 } 546 557 pdmNetGsoUpdateIPv4HdrUfo(pbSegHdrs, pGso->offHdr1, cbSegPayload, iSeg * pGso->cbMaxSeg, 547 558 cbSegHdrs, iSeg + 1 == cSegs);
Note:
See TracChangeset
for help on using the changeset viewer.