From ea1fa120ebe599be6aaef05185be2efe99775996 Mon Sep 17 00:00:00 2001 From: angt Date: Wed, 9 Dec 2015 20:27:40 +0100 Subject: [PATCH] Allow IPv6 --- src/ip-static.h | 20 +++----------------- src/main.c | 6 +----- 2 files changed, 4 insertions(+), 22 deletions(-) diff --git a/src/ip-static.h b/src/ip-static.h index 8b541e0..368048d 100644 --- a/src/ip-static.h +++ b/src/ip-static.h @@ -10,30 +10,16 @@ static inline int ip_get_version (const uint8_t *data, size_t size) return data[0]>>4; } -static inline void ip_set_size (uint8_t *data, size_t size) -{ - data[2] = 0xFF&(size>>8); - data[3] = 0xFF&(size); -} - static inline ssize_t ip_get_size (const uint8_t *data, size_t size) { switch (ip_get_version(data, size)) { case 4: - return (data[2]<<8)|data[3]; + return ((data[2]<<8)|data[3]); + case 6: + return ((data[4]<<8)|data[5])+40; case -1: return -1; } return 0; } - -static inline int ip_get_dscp (const uint8_t *data, size_t size) -{ - switch (ip_get_version(data, size)) { - case 4: - return data[1]>>2; - } - - return 0; -} diff --git a/src/main.c b/src/main.c index 52a68dc..7966b87 100644 --- a/src/main.c +++ b/src/main.c @@ -929,11 +929,7 @@ int main (int argc, char **argv) if _0_(ip_size!=r) { dump_ip_header(data, r); - - if (r>ip_size) - continue; - - ip_set_size(data, r); + continue; } blks[blk_write++].size = r;