iptables: fix segfault in xtables_parse_protocol() if an unknown protocol is specifie...
authorJo-Philipp Wich <jow@openwrt.org>
Sun, 3 May 2009 14:31:36 +0000 (14:31 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Sun, 3 May 2009 14:31:36 +0000 (14:31 +0000)
SVN-Revision: 15573

package/iptables/patches/1.4.3.2/010-xtables-parse-protocol-crash.patch [new file with mode: 0644]

diff --git a/package/iptables/patches/1.4.3.2/010-xtables-parse-protocol-crash.patch b/package/iptables/patches/1.4.3.2/010-xtables-parse-protocol-crash.patch
new file mode 100644 (file)
index 0000000..e779aaa
--- /dev/null
@@ -0,0 +1,13 @@
+diff -ur iptables-1.4.3.2.orig/xtables.c iptables-1.4.3.2/xtables.c
+--- iptables-1.4.3.2.orig/xtables.c    2009-05-03 16:17:53.000000000 +0200
++++ iptables-1.4.3.2/xtables.c 2009-05-03 16:27:37.000000000 +0200
+@@ -1502,7 +1502,8 @@
+               else {
+                       unsigned int i;
+                       for (i = 0; i < ARRAY_SIZE(xtables_chain_protos); ++i) {
+-                              if (strcmp(s, xtables_chain_protos[i].name) == 0) {
++                              if ((xtables_chain_protos[i].name != NULL) &&
++                                  (strcmp(s, xtables_chain_protos[i].name) == 0)) {
+                                       proto = xtables_chain_protos[i].num;
+                                       break;
+                               }