ipset: Initial commit
authorVladimir Sorokin <sorokin@altell.ru>
Tue, 20 Apr 2010 11:36:09 +0000 (15:36 +0400)
committerRoman I Khimov <khimov@altell.ru>
Wed, 9 Jun 2010 06:39:09 +0000 (10:39 +0400)
If you want to
 * store multiple IP addresses or port numbers and match against the collection
   by iptables at one swoop;
 * dynamically update iptables rules against IP addresses or ports without
   performance penalty;
 * express complex IP address and ports based rulesets with one single iptables
   rule and benefit from the speed of IP sets
then ipset may be the proper tool for you.

Signed-off-by: Vladimir Sorokin <sorokin@altell.ru>
Signed-off-by: Roman I Khimov <khimov@altell.ru>
recipes/ipset/files/Makefile.patch [new file with mode: 0644]
recipes/ipset/ipset.inc [new file with mode: 0644]
recipes/ipset/ipset_4.2.bb [new file with mode: 0644]

diff --git a/recipes/ipset/files/Makefile.patch b/recipes/ipset/files/Makefile.patch
new file mode 100644 (file)
index 0000000..e7fbd73
--- /dev/null
@@ -0,0 +1,10 @@
+--- a/Makefile 2010-01-24 17:43:22.000000000 +0300
++++ b/Makefile 2010-04-20 12:33:33.000000000 +0400
+@@ -66,7 +66,6 @@ endif
+ ABI_FLAGS:=
+ CFLAGS:=$(ABI_FLAGS) $(COPT_FLAGS) $(WARN_FLAGS) -Ikernel/include -I. # -g -DIPSET_DEBUG
+ SH_CFLAGS:=$(CFLAGS) -fPIC
+-LDFLAGS:=$(ABI_FLAGS)
+ SETTYPES:=ipmap portmap macipmap
+ SETTYPES+=iptree iptreemap
+ SETTYPES+=iphash nethash ipporthash ipportiphash ipportnethash
diff --git a/recipes/ipset/ipset.inc b/recipes/ipset/ipset.inc
new file mode 100644 (file)
index 0000000..512221d
--- /dev/null
@@ -0,0 +1,31 @@
+DESCRIPTION = "IP set framework"
+SECTION = "kernel/modules"
+LICENSE = "GPLv2"
+DEPENDS += "virtual/libc"
+
+inherit module
+
+PR="r0"
+
+SRC_URI = " \
+       http://ipset.netfilter.org/ipset-${PV}.tar.bz2 \
+       file://Makefile.patch \
+       "
+
+PACKAGES += "${PN}-modules"
+
+FILES_${PN} = "${sbindir} ${libdir}"
+FILES_${PN}-doc = "${mandir}"
+FILES_${PN}-modules = "${base_libdir}/modules/${KERNEL_VERSION}/extra/ip_set*${KERNEL_OBJECT_SUFFIX} \
+       ${base_libdir}/modules/${KERNEL_VERSION}/extra/ipt*${KERNEL_OBJECT_SUFFIX}"
+
+EXTRA_OEMAKE = "KERNEL_DIR=${KERNEL_SOURCE} MANDIR=${mandir}"
+
+do_compile () {
+       oe_runmake binaries
+       module_do_compile MAKE_TARGETS=modules
+}
+
+do_install_append () {
+       oe_runmake binaries_install PREFIX=${prefix} DESTDIR=${D}
+}
diff --git a/recipes/ipset/ipset_4.2.bb b/recipes/ipset/ipset_4.2.bb
new file mode 100644 (file)
index 0000000..56efc54
--- /dev/null
@@ -0,0 +1,6 @@
+PR = "${INC_PR}.0"
+require ipset.inc
+
+SRC_URI[md5sum] = "9060d549a18c1c0794fa47a71343d627"
+SRC_URI[sha256sum] = "5f1b9e5245b7998106660a5b29d9580156feda1c669e7214793a90e02e4a1203"
+