aboutsummaryrefslogtreecommitdiffstats
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
commit0a72720a3c14ec4865eaf09e6a36c4e620df3a07 (patch)
tree1a229aaf2e4fb7472d875d3d1521611d71c5e779
parent572fbb89f10cad018caa91503909ef705f930f8c (diff)
downloadupstream-0a72720a3c14ec4865eaf09e6a36c4e620df3a07.tar.gz
upstream-0a72720a3c14ec4865eaf09e6a36c4e620df3a07.tar.bz2
upstream-0a72720a3c14ec4865eaf09e6a36c4e620df3a07.zip
[package] iptables: fix a segfault when iptables tries to use modprobe, force it to use insmod
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19827 3c298f89-4303-0410-b956-a3cf2f4a3e73
-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)