/[lwip]/lwip/src/core/inet.c
ViewVC logotype

Diff of /lwip/src/core/inet.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.6 by likewise, Wed Jan 8 15:36:25 2003 UTC revision 1.7 by davidhaas, Thu Feb 6 22:18:56 2003 UTC
# Line 55  lwip_chksum(void *dataptr, int len) Line 55  lwip_chksum(void *dataptr, int len)
55            
56    DEBUGF(INET_DEBUG, ("lwip_chksum(%p, %d)\n", dataptr, len));    DEBUGF(INET_DEBUG, ("lwip_chksum(%p, %d)\n", dataptr, len));
57    for(acc = 0; len > 1; len -= 2) {    for(acc = 0; len > 1; len -= 2) {
58  //    acc = acc + *((u16_t *)dataptr)++;        /*    acc = acc + *((u16_t *)dataptr)++;*/
59      acc += *(u16_t *)dataptr;      acc += *(u16_t *)dataptr;
60      dataptr = (void *)((u16_t *)dataptr + 1);      dataptr = (void *)((u16_t *)dataptr + 1);
61    }    }
# Line 94  inet_chksum_pseudo(struct pbuf *p, Line 94  inet_chksum_pseudo(struct pbuf *p,
94    swapped = 0;    swapped = 0;
95    /* iterate through all pbuf in chain */    /* iterate through all pbuf in chain */
96    for(q = p; q != NULL; q = q->next) {        for(q = p; q != NULL; q = q->next) {    
97      DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): checksumming pbuf %p (has next %p) \n", q, q->next));      DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): checksumming pbuf %p (has next %p) \n", (void *) q, (void *)q->next));
98      acc += lwip_chksum(q->payload, q->len);      acc += lwip_chksum(q->payload, q->len);
99      //DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): unwrapped lwip_chksum()=%lx \n", acc));      /*DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): unwrapped lwip_chksum()=%lx \n", acc));*/
100      while(acc >> 16) {      while(acc >> 16) {
101        acc = (acc & 0xffffUL) + (acc >> 16);        acc = (acc & 0xffffUL) + (acc >> 16);
102      }      }
# Line 104  inet_chksum_pseudo(struct pbuf *p, Line 104  inet_chksum_pseudo(struct pbuf *p,
104        swapped = 1 - swapped;        swapped = 1 - swapped;
105        acc = ((acc & 0xff) << 8) | ((acc & 0xff00UL) >> 8);        acc = ((acc & 0xff) << 8) | ((acc & 0xff00UL) >> 8);
106      }      }
107      //DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): wrapped lwip_chksum()=%lx \n", acc));      /*DEBUGF(INET_DEBUG, ("inet_chksum_pseudo(): wrapped lwip_chksum()=%lx \n", acc));*/
108    }    }
109    
110    if(swapped) {    if(swapped) {

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26