summaryrefslogtreecommitdiffstats
path: root/kernel/patch_kernel
diff options
context:
space:
mode:
author/C=EU/ST=EU/CN=Jozsef Kadlecsik/emailAddress=kadlec@blackhole.kfki.hu </C=EU/ST=EU/CN=Jozsef Kadlecsik/emailAddress=kadlec@blackhole.kfki.hu>2008-07-03 09:26:50 +0000
committer/C=EU/ST=EU/CN=Jozsef Kadlecsik/emailAddress=kadlec@blackhole.kfki.hu </C=EU/ST=EU/CN=Jozsef Kadlecsik/emailAddress=kadlec@blackhole.kfki.hu>2008-07-03 09:26:50 +0000
commit87c406c4962ea52f467b9807daf66e3652bd0e9b (patch)
tree31bc9528cc8360ed486fcbcd971130bb5cbf5800 /kernel/patch_kernel
parent871d699f171cf7fe7a80d6b5d2437706d2aeef0b (diff)
Support statically linked kernel - no need for pom-ng anymore for ipset at all.
Diffstat (limited to 'kernel/patch_kernel')
-rwxr-xr-xkernel/patch_kernel41
1 files changed, 41 insertions, 0 deletions
diff --git a/kernel/patch_kernel b/kernel/patch_kernel
new file mode 100755
index 0000000..f5b800b
--- /dev/null
+++ b/kernel/patch_kernel
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+# set -e
+
+kconfig() {
+ file=$1/net/ipv4/netfilter/Kconfig
+ if [ "`grep 'config IP_NF_SET' $file`" ]; then
+ return
+ fi
+ mv $file $file.orig
+ grep -v endmenu $file.orig > $file
+ cat Kconfig.ipset >> $file
+ echo "endmenu" >> $file
+}
+
+makefile() {
+ file=$1/net/ipv4/netfilter/Makefile
+ if [ "`grep CONFIG_IP_NF_SET $file`" ]; then
+ return
+ fi
+ cp $file $file.orig
+ cat Makefile.ipset >> $file
+}
+
+tree() {
+ cp include/linux/netfilter_ipv4/* $1/include/linux/netfilter_ipv4/
+ cp *.c $1/net/ipv4/netfilter/
+}
+
+if [ -z "$1" ]; then
+ echo "Error: missing kernel directory parameter."
+ exit 1
+fi
+if [ ! -f $1/net/ipv4/netfilter/Kconfig ]; then
+ echo "Error: the directory $1 doesn't look like a Linux 2.6.x kernel source tree."
+ exit 1
+fi
+
+tree $1
+kconfig $1
+makefile $1