Changeset 1311310


Ignore:
Timestamp:
11/27/08 17:42:40 (13 years ago)
Author:
Perry Lorier <perry@…>
Branches:
4.0.1-hotfixes, cachetimestamps, develop, dpdk-ndag, etsilive, getfragoff, help, libtrace4, master, ndag_format, pfring, rc-4.0.1, rc-4.0.2, rc-4.0.3, rc-4.0.4, ringdecrementfix, ringperformance, ringtimestampfixes
Children:
db161c0
Parents:
1b0fb63
Message:

Start using the TRACE_ETHERTYPE enum where possible for code clarity

Location:
lib
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • lib/protocols_l2.c

    r9b25f5f r1311310  
    6464        if ((((char*)ethernet)[2]&0x01)==0) {
    6565                /* The MPLS Stack bit is set */
    66                 *type = 0x8847;
     66                *type = TRACE_ETHERTYPE_MPLS;
    6767        }
    6868        else {
     
    7070                        switch (((char*)ethernet)[4]&0xF0) {
    7171                                case 0x40:      /* IPv4 */
    72                                         *type = 0x0800;
     72                                        *type = TRACE_ETHERTYPE_IP;
    7373                                        break;
    7474                                case 0x60:      /* IPv6 */
    75                                         *type = 0x86DD;
     75                                        *type = TRACE_ETHERTYPE_IPV6;
    7676                                        break;
    7777                                default:        /* VPLS */
     
    176176        if (type) {
    177177                switch(ntohs(ppp->protocol)) {
    178                         case 0x0021: *type = 0x0800; break;
     178                        case 0x0021: *type = TRACE_ETHERTYPE_IP; break;
    179179                        /* If it isn't IP, then it is probably PPP control and
    180180                         * I can't imagine anyone caring about that too much
     
    228228                switch(ntohs(chdlc->ethertype)) {
    229229                        case 0x0021: /* IP */
    230                                 *type = 0x0800;
     230                                *type = TRACE_ETHERTYPE_IP;
    231231                                break;
    232232                        default:
     
    342342                case TRACE_TYPE_NONE:
    343343                        if ((*(char*)link&0xF0) == 0x40)
    344                                 *ethertype=0x0800;      /* IPv4 */
     344                                *ethertype=TRACE_ETHERTYPE_IP;  /* IPv4 */
    345345                        else if ((*(char*)link&0xF0) == 0x60)
    346                                 *ethertype=0x86DD;      /* IPv6 */
     346                                *ethertype=TRACE_ETHERTYPE_IPV6;        /* IPv6 */
    347347                        return link; /* I love the simplicity */
    348348                case TRACE_TYPE_PPP:
  • lib/protocols_l3.c

    r871281c r1311310  
    1414        ret = trace_get_layer3(packet,&ethertype,&remaining);
    1515
    16         if (!ret || ethertype!=0x0800)
     16        if (!ret || ethertype!=TRACE_ETHERTYPE_IP)
    1717                return NULL;
    1818
     
    3737        ret = trace_get_layer3(packet,&ethertype,&remaining);
    3838
    39         if (!ret || ethertype!=0x86DD)
     39        if (!ret || ethertype!=TRACE_ETHERTYPE_IPV6)
    4040                return NULL;
    4141
     
    161161                        break;
    162162                switch(*ethertype) {
    163                 case 0x8100: /* VLAN */
     163                case TRACE_ETHERTYPE_8021Q: /* VLAN */
    164164                        iphdr=trace_get_payload_from_vlan(
    165165                                          iphdr,ethertype,remaining);
    166166                        continue;
    167                 case 0x8847: /* MPLS */
     167                case TRACE_ETHERTYPE_MPLS: /* MPLS */
    168168                        iphdr=trace_get_payload_from_mpls(
    169169                                          iphdr,ethertype,remaining);
     
    174174                        }
    175175                        continue;
    176                 case 0x8864: /* PPPoE */
     176                case TRACE_ETHERTYPE_PPP_SES: /* PPPoE */
    177177                        iphdr = trace_get_payload_from_pppoe(iphdr, ethertype,
    178178                                        remaining);
     
    263263
    264264        switch (ethertype) {
    265                 case 0x0800: /* IPv4 */
     265                case TRACE_ETHERTYPE_IP: /* IPv4 */
    266266                {
    267267                        struct sockaddr_in *addr4=(struct sockaddr_in*)addr;
     
    277277                        return addr;
    278278                }
    279                 case 0x86DD: /* IPv6 */
     279                case TRACE_ETHERTYPE_IPV6: /* IPv6 */
    280280                {
    281281                        struct sockaddr_in6 *addr6=(struct sockaddr_in6*)addr;
     
    315315
    316316        switch (ethertype) {
    317                 case 0x0800: /* IPv4 */
     317                case TRACE_ETHERTYPE_IP: /* IPv4 */
    318318                {
    319319                        struct sockaddr_in *addr4=(struct sockaddr_in*)addr;
     
    329329                        return addr;
    330330                }
    331                 case 0x86DD: /* IPv6 */
     331                case TRACE_ETHERTYPE_IPV6: /* IPv6 */
    332332                {
    333333                        struct sockaddr_in6 *addr6=(struct sockaddr_in6*)addr;
  • lib/protocols_transport.c

    r871281c r1311310  
    2525
    2626        switch (ethertype) {
    27                 case 0x0800: /* IPv4 */
     27                case TRACE_ETHERTYPE_IP: /* IPv4 */
    2828                        transport=trace_get_payload_from_ip(
    2929                                (libtrace_ip_t*)transport, proto, remaining);
     
    3434                        }
    3535                        return transport;
    36                 case 0x86DD: /* IPv6 */
     36                case TRACE_ETHERTYPE_IPV6: /* IPv6 */
    3737                        return trace_get_payload_from_ip6(
    3838                                (libtrace_ip6_t*)transport, proto, remaining);
Note: See TracChangeset for help on using the changeset viewer.