summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2010-02-24 01:59:32 +0000
committerJo-Philipp Wich <jow@openwrt.org>2010-02-24 01:59:32 +0000
commit0ab4d7e848ead11fcc85c04834519861682cd9ef (patch)
tree3d43b21d188acc9e0757feae707ff41bbf72ea0d
parentb57690432c90c356d3f2d6edd3bbc565dc72a61c (diff)
downloadmaster-31e0f0ae-0ab4d7e848ead11fcc85c04834519861682cd9ef.tar.gz
master-31e0f0ae-0ab4d7e848ead11fcc85c04834519861682cd9ef.tar.bz2
master-31e0f0ae-0ab4d7e848ead11fcc85c04834519861682cd9ef.zip
iptables: fix a segfault when iptables tries to use modprobe, force it to use insmod
SVN-Revision: 19827
-rw-r--r--package/iptables/Makefile4
-rw-r--r--package/iptables/patches/020-iptables-force-modprobe-util.patch20
2 files changed, 24 insertions, 0 deletions
diff --git a/package/iptables/Makefile b/package/iptables/Makefile
index 20e4b315ca..68ccc76282 100644
--- a/package/iptables/Makefile
+++ b/package/iptables/Makefile
@@ -254,6 +254,10 @@ TARGET_CPPFLAGS := \
-I$(LINUX_DIR)/arch/$(LINUX_KARCH)/include \
$(TARGET_CPPFLAGS)
+TARGET_CFLAGS := \
+ $(TARGET_CFLAGS) \
+ -DFORCE_MODPROBE_PROGRAM="\\\"/sbin/insmod\\\""
+
CONFIGURE_ARGS += \
--enable-shared \
--enable-devel \
diff --git a/package/iptables/patches/020-iptables-force-modprobe-util.patch b/package/iptables/patches/020-iptables-force-modprobe-util.patch
new file mode 100644
index 0000000000..32c9fcd515
--- /dev/null
+++ b/package/iptables/patches/020-iptables-force-modprobe-util.patch
@@ -0,0 +1,20 @@
+--- a/xtables.c
++++ b/xtables.c
+@@ -285,6 +285,7 @@ void *xtables_realloc(void *ptr, size_t
+
+ static char *get_modprobe(void)
+ {
++#ifndef FORCE_MODPROBE_PROGRAM
+ int procfile;
+ char *ret;
+
+@@ -309,6 +310,9 @@ static char *get_modprobe(void)
+ free(ret);
+ close(procfile);
+ return NULL;
++#else
++ return strdup(FORCE_MODPROBE_PROGRAM);
++#endif
+ }
+
+ int xtables_insmod(const char *modname, const char *modprobe, bool quiet)