Changeset 35782f6 for lib/protocols_l3.c


Ignore:
Timestamp:
05/29/08 11:44:54 (13 years ago)
Author:
Shane Alcock <salcock@…>
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:
3a87f4f
Parents:
ae8ec56
Message:
  • Updated all get_payload_from_X functions to set remaining to zero if they are returning NULL rather than have remaining be "undefined" upon return
File:
1 edited

Legend:

Unmodified
Added
Removed
  • lib/protocols_l3.c

    ra78665c r35782f6  
    1717
    1818        /* Make sure we have at least a base IPv4 header */
    19         if (remaining < sizeof(libtrace_ip_t))
     19        if (remaining < sizeof(libtrace_ip_t)) 
    2020                return NULL;
    2121       
     
    5050
    5151        if ((ntohs(ipptr->ip_off) & SW_IP_OFFMASK) != 0) {
     52                *remaining = 0;         /* Not sure if this is right but
     53                                           consistency is a good thing, right?
     54                                         */
    5255                return NULL;
    5356        }
     
    5558        if (remaining) {
    5659                if (*remaining<=(ipptr->ip_hl*4U)) {
     60                        *remaining = 0;
    5761                        return NULL;
    5862                }
     
    7478
    7579        if (remaining) {
    76                 if (*remaining<sizeof(libtrace_ip6_t))
    77                         return NULL;
     80                if (*remaining<sizeof(libtrace_ip6_t)) {
     81                        *remaining = 0;
     82                        return NULL;
     83                }
    7884                *remaining-=sizeof(libtrace_ip6_t);
    7985        }
     
    94100                                                if (*remaining < len) {
    95101                                                        /* Snap too short */
     102                                                        *remaining = 0;
    96103                                                        return NULL;
    97104                                                }
Note: See TracChangeset for help on using the changeset viewer.