VirtualBox

Changeset 31272 in vbox for trunk


Ignore:
Timestamp:
Aug 2, 2010 9:11:22 AM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
64298
Message:

RTNETCSUMTYPE -> PDMNETCSUMTYPE. Assert on invalid parameters.

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/pdmnetinline.h

    r31271 r31272  
    4343 * Checksum type.
    4444 */
    45 typedef enum RTNETCSUMTYPE
     45typedef enum PDMNETCSUMTYPE
    4646{
    4747    /** No checksum. */
    48     RTNETCSUMTYPE_NONE = 0,
     48    PDMNETCSUMTYPE_NONE = 0,
    4949    /** Normal TCP checksum. */
    50     RTNETCSUMTYPE_COMPLETE,
     50    PDMNETCSUMTYPE_COMPLETE,
    5151    /** Checksum on pseudo header (used with GSO). */
    52     RTNETCSUMTYPE_PSEUDO,
     52    PDMNETCSUMTYPE_PSEUDO,
    5353    /** The usual 32-bit hack. */
    54     RTNETCSUMTYPE_32_BIT_HACK = 0x7fffffff
    55 } RTNETCSUMTYPE;
     54    PDMNETCSUMTYPE_32_BIT_HACK = 0x7fffffff
     55} PDMNETCSUMTYPE;
    5656
    5757
     
    184184DECLINLINE(void) pdmNetGsoUpdateUdpHdr(uint32_t u32PseudoSum, uint8_t *pbSegHdrs, uint8_t offUdpHdr,
    185185                                       uint8_t const *pbPayload, uint32_t cbPayload, uint8_t cbHdrs,
    186                                        RTNETCSUMTYPE enmCsumType)
     186                                       PDMNETCSUMTYPE enmCsumType)
    187187{
    188188    PRTNETUDP pUdpHdr = (PRTNETUDP)&pbSegHdrs[offUdpHdr];
     
    190190    switch (enmCsumType)
    191191    {
    192         case RTNETCSUMTYPE_NONE:
     192        case PDMNETCSUMTYPE_NONE:
    193193            pUdpHdr->uh_sum = 0;
    194194            break;
    195         case RTNETCSUMTYPE_COMPLETE:
     195        case PDMNETCSUMTYPE_COMPLETE:
    196196            pUdpHdr->uh_sum = RTNetUDPChecksum(u32PseudoSum, pUdpHdr);
    197197            break;
    198         /* @todo: Implement:
    199         case RTNETCSUMTYPE_PSEUDO:
    200             pUdpHdr->uh_sum = RTNetUDPChecksum(u32PseudoSum, pUdpHdr);
     198        /** @todo: Implement:
     199        case PDMNETCSUMTYPE_PSEUDO:
     200            pUdpHdr->uh_sum = ???;
    201201            break; */
    202202        default:
    203             Log(("pdmNetGsoUpdateUdpHdr: Invalid checksum type: %d\n", enmCsumType));
     203            AssertFailed();
    204204            break;
    205205    }
     
    226226DECLINLINE(void) pdmNetGsoUpdateTcpHdr(uint32_t u32PseudoSum, uint8_t *pbSegHdrs, uint8_t offTcpHdr,
    227227                                       uint8_t const *pbPayload, uint32_t cbPayload, uint32_t offPayload, uint8_t cbHdrs,
    228                                        bool fLastSeg, RTNETCSUMTYPE enmCsumType)
     228                                       bool fLastSeg, PDMNETCSUMTYPE enmCsumType)
    229229{
    230230    PRTNETTCP pTcpHdr = (PRTNETTCP)&pbSegHdrs[offTcpHdr];
     
    234234    switch (enmCsumType)
    235235    {
    236         case RTNETCSUMTYPE_NONE:
     236        case PDMNETCSUMTYPE_NONE:
    237237            pTcpHdr->th_sum = 0;
    238238            break;
    239         case RTNETCSUMTYPE_COMPLETE:
     239        case PDMNETCSUMTYPE_COMPLETE:
    240240            pTcpHdr->th_sum = RTNetTCPChecksum(u32PseudoSum, pTcpHdr, pbPayload, cbPayload);
    241241            break;
    242         case RTNETCSUMTYPE_PSEUDO:
     242        case PDMNETCSUMTYPE_PSEUDO:
    243243            pTcpHdr->th_sum = ~RTNetIPv4FinalizeChecksum(u32PseudoSum);
    244244            break;
    245245        default:
    246             Log(("pdmNetGsoUpdateTcpHdr: Invalid checksum type: %d\n", enmCsumType));
     246            AssertFailed();
    247247            break;
    248248    }
     
    353353            pdmNetGsoUpdateTcpHdr(pdmNetGsoUpdateIPv4Hdr(pbSegHdrs, pGso->offHdr1, cbSegPayload, iSeg, pGso->cbHdrs),
    354354                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, iSeg * pGso->cbMaxSeg,
    355                                   pGso->cbHdrs, iSeg + 1 == cSegs, RTNETCSUMTYPE_COMPLETE);
     355                                  pGso->cbHdrs, iSeg + 1 == cSegs, PDMNETCSUMTYPE_COMPLETE);
    356356            break;
    357357        case PDMNETWORKGSOTYPE_IPV4_UDP:
    358358            pdmNetGsoUpdateUdpHdr(pdmNetGsoUpdateIPv4Hdr(pbSegHdrs, pGso->offHdr1, cbSegPayload, iSeg, pGso->cbHdrs),
    359                                   pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, RTNETCSUMTYPE_COMPLETE);
     359                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, PDMNETCSUMTYPE_COMPLETE);
    360360            break;
    361361        case PDMNETWORKGSOTYPE_IPV6_TCP:
     
    363363                                                         pGso->offHdr2, RTNETIPV4_PROT_TCP),
    364364                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, iSeg * pGso->cbMaxSeg,
    365                                   pGso->cbHdrs, iSeg + 1 == cSegs, RTNETCSUMTYPE_COMPLETE);
     365                                  pGso->cbHdrs, iSeg + 1 == cSegs, PDMNETCSUMTYPE_COMPLETE);
    366366            break;
    367367        case PDMNETWORKGSOTYPE_IPV6_UDP:
    368368            pdmNetGsoUpdateUdpHdr(pdmNetGsoUpdateIPv6Hdr(pbSegHdrs, pGso->offHdr1, cbSegPayload, pGso->cbHdrs,
    369369                                                         pGso->offHdr2, RTNETIPV4_PROT_UDP),
    370                                   pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, RTNETCSUMTYPE_COMPLETE);
     370                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, PDMNETCSUMTYPE_COMPLETE);
    371371            break;
    372372        case PDMNETWORKGSOTYPE_IPV4_IPV6_TCP:
     
    375375                                                         cbSegPayload, pGso->cbHdrs, pGso->offHdr2, RTNETIPV4_PROT_TCP),
    376376                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, iSeg * pGso->cbMaxSeg,
    377                                   pGso->cbHdrs, iSeg + 1 == cSegs, RTNETCSUMTYPE_COMPLETE);
     377                                  pGso->cbHdrs, iSeg + 1 == cSegs, PDMNETCSUMTYPE_COMPLETE);
    378378            break;
    379379        case PDMNETWORKGSOTYPE_IPV4_IPV6_UDP:
     
    381381            pdmNetGsoUpdateUdpHdr(pdmNetGsoUpdateIPv6Hdr(pbSegHdrs, pgmNetGsoCalcIpv6Offset(pbSegHdrs, pGso->offHdr1),
    382382                                                         cbSegPayload, pGso->cbHdrs, pGso->offHdr2, RTNETIPV4_PROT_UDP),
    383                                   pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, RTNETCSUMTYPE_COMPLETE);
     383                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, PDMNETCSUMTYPE_COMPLETE);
    384384            break;
    385385        case PDMNETWORKGSOTYPE_INVALID:
     
    446446            pdmNetGsoUpdateTcpHdr(pdmNetGsoUpdateIPv4Hdr(pbSegHdrs, pGso->offHdr1, cbSegPayload, iSeg, pGso->cbHdrs),
    447447                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, iSeg * pGso->cbMaxSeg,
    448                                   pGso->cbHdrs, iSeg + 1 == cSegs, RTNETCSUMTYPE_COMPLETE);
     448                                  pGso->cbHdrs, iSeg + 1 == cSegs, PDMNETCSUMTYPE_COMPLETE);
    449449            break;
    450450        case PDMNETWORKGSOTYPE_IPV4_UDP:
    451451            pdmNetGsoUpdateUdpHdr(pdmNetGsoUpdateIPv4Hdr(pbSegHdrs, pGso->offHdr1, cbSegPayload, iSeg, pGso->cbHdrs),
    452                                   pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, RTNETCSUMTYPE_COMPLETE);
     452                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, PDMNETCSUMTYPE_COMPLETE);
    453453            break;
    454454        case PDMNETWORKGSOTYPE_IPV6_TCP:
     
    456456                                                         pGso->offHdr2, RTNETIPV4_PROT_TCP),
    457457                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, iSeg * pGso->cbMaxSeg,
    458                                   pGso->cbHdrs, iSeg + 1 == cSegs, RTNETCSUMTYPE_COMPLETE);
     458                                  pGso->cbHdrs, iSeg + 1 == cSegs, PDMNETCSUMTYPE_COMPLETE);
    459459            break;
    460460        case PDMNETWORKGSOTYPE_IPV6_UDP:
    461461            pdmNetGsoUpdateUdpHdr(pdmNetGsoUpdateIPv6Hdr(pbSegHdrs, pGso->offHdr1, cbSegPayload, pGso->cbHdrs,
    462462                                                         pGso->offHdr2, RTNETIPV4_PROT_UDP),
    463                                   pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, RTNETCSUMTYPE_COMPLETE);
     463                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, PDMNETCSUMTYPE_COMPLETE);
    464464            break;
    465465        case PDMNETWORKGSOTYPE_IPV4_IPV6_TCP:
     
    468468                                                         cbSegPayload, pGso->cbHdrs, pGso->offHdr2, RTNETIPV4_PROT_TCP),
    469469                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, iSeg * pGso->cbMaxSeg,
    470                                   pGso->cbHdrs, iSeg + 1 == cSegs, RTNETCSUMTYPE_COMPLETE);
     470                                  pGso->cbHdrs, iSeg + 1 == cSegs, PDMNETCSUMTYPE_COMPLETE);
    471471            break;
    472472        case PDMNETWORKGSOTYPE_IPV4_IPV6_UDP:
     
    474474            pdmNetGsoUpdateUdpHdr(pdmNetGsoUpdateIPv6Hdr(pbSegHdrs, pgmNetGsoCalcIpv6Offset(pbSegHdrs, pGso->offHdr1),
    475475                                                         cbSegPayload, pGso->cbHdrs, pGso->offHdr2, RTNETIPV4_PROT_UDP),
    476                                   pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, RTNETCSUMTYPE_COMPLETE);
     476                                  pbSegHdrs, pGso->offHdr2, pbSegPayload, cbSegPayload, pGso->cbHdrs, PDMNETCSUMTYPE_COMPLETE);
    477477            break;
    478478        case PDMNETWORKGSOTYPE_INVALID:
     
    496496 *                              header or nothing.
    497497 */
    498 DECLINLINE(void) PDMNetGsoPrepForDirectUse(PCPDMNETWORKGSO pGso, void *pvFrame, size_t cbFrame, RTNETCSUMTYPE enmCsumType)
     498DECLINLINE(void) PDMNetGsoPrepForDirectUse(PCPDMNETWORKGSO pGso, void *pvFrame, size_t cbFrame, PDMNETCSUMTYPE enmCsumType)
    499499{
    500500    /*
  • trunk/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c

    r31271 r31272  
    11201120# endif
    11211121        if (!fDstWire)
    1122             PDMNetGsoPrepForDirectUse(&pSG->GsoCtx, pPkt->data, pSG->cbTotal, RTNETCSUMTYPE_PSEUDO);
     1122            PDMNetGsoPrepForDirectUse(&pSG->GsoCtx, pPkt->data, pSG->cbTotal, PDMNETCSUMTYPE_PSEUDO);
    11231123    }
    11241124#endif /* VBOXNETFLT_WITH_GSO_XMIT_WIRE || VBOXNETFLT_WITH_GSO_XMIT_HOST */
     
    14531453#endif /* !VBOXNETFLT_WITH_GRO */
    14541454    }
    1455     else 
     1455    else
    14561456    {
    14571457        /*
  • trunk/src/VBox/NetworkServices/NetLib/VBoxNetUDP.cpp

    r31271 r31272  
    123123     */
    124124    if (pGso)
    125         PDMNetGsoPrepForDirectUse(pGso, (void *)pvFrame, cbFrame, RTNETCSUMTYPE_NONE);
     125        PDMNetGsoPrepForDirectUse(pGso, (void *)pvFrame, cbFrame, PDMNETCSUMTYPE_NONE);
    126126
    127127    /*
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette