From 0f15e9f2f176d9a04260804ba00444ef21a23c8b Mon Sep 17 00:00:00 2001 From: pertusus Date: Mon, 15 Jan 2007 23:50:51 +0000 Subject: [PATCH] add checksum patch --- libnet-1.1.2.1-odd_chksum.patch | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 libnet-1.1.2.1-odd_chksum.patch diff --git a/libnet-1.1.2.1-odd_chksum.patch b/libnet-1.1.2.1-odd_chksum.patch new file mode 100644 index 0000000..8da9205 --- /dev/null +++ b/libnet-1.1.2.1-odd_chksum.patch @@ -0,0 +1,23 @@ +--- libnet-1.1.2.1.orig/src/libnet_checksum.c ++++ libnet-1.1.2.1/src/libnet_checksum.c +@@ -42,8 +42,10 @@ + libnet_in_cksum(u_int16_t *addr, int len) + { + int sum; ++ u_int16_t last_byte; + + sum = 0; ++ last_byte = 0; + + while (len > 1) + { +@@ -52,7 +54,8 @@ + } + if (len == 1) + { +- sum += *(u_int16_t *)addr; ++ *(u_int8_t*)&last_byte = *(u_int8_t*)addr; ++ sum += last_byte; + } + + return (sum);