diff options
author | nico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-05-24 07:18:36 +0000 |
---|---|---|
committer | nico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-05-24 07:18:36 +0000 |
commit | a8f632da6583439bddf8b41341f2d4f51ae884bb (patch) | |
tree | 800679feddb9e7cb3a37c276b91df8435f37ccae /package/libpcap/patches/102-alt-ether.patch | |
parent | 2ad098c840f9e110fa30bd63093349bb26cb0b89 (diff) |
import libpcap from trunk and convert it to -ng.
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@3825 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/libpcap/patches/102-alt-ether.patch')
-rw-r--r-- | package/libpcap/patches/102-alt-ether.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/package/libpcap/patches/102-alt-ether.patch b/package/libpcap/patches/102-alt-ether.patch new file mode 100644 index 000000000..347265d6e --- /dev/null +++ b/package/libpcap/patches/102-alt-ether.patch @@ -0,0 +1,40 @@ +diff -urN libpcap-0.9.4.orig/nametoaddr.c libpcap-0.9.4/nametoaddr.c +--- libpcap-0.9.4.orig/nametoaddr.c 2005-04-20 13:13:51.000000000 +0200 ++++ libpcap-0.9.4/nametoaddr.c 2006-02-05 16:58:46.000000000 +0100 +@@ -410,7 +410,7 @@ + e = ep = (u_char *)malloc(6); + + while (*s) { +- if (*s == ':') ++ if (*s == ':' || *s == '.') + s += 1; + d = xdtoi(*s++); + if (isxdigit((unsigned char)*s)) { +diff -urN libpcap-0.9.4.orig/scanner.l libpcap-0.9.4/scanner.l +--- libpcap-0.9.4.orig/scanner.l 2005-09-05 11:08:07.000000000 +0200 ++++ libpcap-0.9.4/scanner.l 2006-02-05 17:00:13.000000000 +0100 +@@ -80,6 +80,7 @@ + N ([0-9]+|(0X|0x)[0-9A-Fa-f]+) + B ([0-9A-Fa-f][0-9A-Fa-f]?) + W ([0-9A-Fa-f][0-9A-Fa-f]?[0-9A-Fa-f]?[0-9A-Fa-f]?) ++X [0-9A-Fa-f] + + %a 16000 + %o 19000 +@@ -306,7 +307,7 @@ + {N} { yylval.i = stoi((char *)yytext); return NUM; } + ({N}\.{N})|({N}\.{N}\.{N})|({N}\.{N}\.{N}\.{N}) { + yylval.s = sdup((char *)yytext); return HID; } +-{B}:{B}:{B}:{B}:{B}:{B} { yylval.e = pcap_ether_aton((char *)yytext); ++({B}:{B}:{B}:{B}:{B}:{B})|({B}\.{B}\.{B}\.{B}\.{B}\.{B}) { yylval.e = pcap_ether_aton((char *)yytext); + return EID; } + {V6} { + #ifdef INET6 +@@ -324,6 +325,7 @@ + #endif /*INET6*/ + } + {B}:+({B}:+)+ { bpf_error("bogus ethernet address %s", yytext); } ++{X}{12} { yylval.e = pcap_ether_aton((char *)yytext); return EID;} + icmptype { yylval.i = 0; return NUM; } + icmpcode { yylval.i = 1; return NUM; } + icmp-echoreply { yylval.i = 0; return NUM; } |