pktbuff: fix pktb_push, _pull and _put function
authorPablo Neira Ayuso <pablo@netfilter.org>
Mon, 20 Aug 2012 17:34:31 +0000 (19:34 +0200)
committerr.kubiak <r.kubiak@samsung.com>
Mon, 16 Nov 2015 13:12:06 +0000 (14:12 +0100)
Fix wrong arithmetics and missing pktb->len update

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/extra/pktbuff.c

index af2e7a6..0989f60 100644 (file)
@@ -100,17 +100,20 @@ void pktb_free(struct pkt_buff *pktb)
 
 void pktb_push(struct pkt_buff *pktb, unsigned int len)
 {
-       pktb->data += len;
+       pktb->data -= len;
+       pktb->len += len;
 }
 
 void pktb_pull(struct pkt_buff *pktb, unsigned int len)
 {
-       pktb->data -= len;
+       pktb->data += len;
+       pktb->len -= len;
 }
 
 void pktb_put(struct pkt_buff *pktb, unsigned int len)
 {
        pktb->tail += len;
+       pktb->len += len;
 }
 
 void pktb_trim(struct pkt_buff *pktb, unsigned int len)