From e4d74a2f940ed1adb4c9afb100b5222bc32d208b Mon Sep 17 00:00:00 2001 From: Vladimir Sorokin Date: Tue, 20 Apr 2010 15:36:09 +0400 Subject: [PATCH] ipset: Initial commit 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 Signed-off-by: Roman I Khimov --- recipes/ipset/files/Makefile.patch | 10 ++++++++++ recipes/ipset/ipset.inc | 31 ++++++++++++++++++++++++++++++ recipes/ipset/ipset_4.2.bb | 6 ++++++ 3 files changed, 47 insertions(+) create mode 100644 recipes/ipset/files/Makefile.patch create mode 100644 recipes/ipset/ipset.inc create mode 100644 recipes/ipset/ipset_4.2.bb diff --git a/recipes/ipset/files/Makefile.patch b/recipes/ipset/files/Makefile.patch new file mode 100644 index 0000000000..e7fbd73048 --- /dev/null +++ b/recipes/ipset/files/Makefile.patch @@ -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 index 0000000000..512221d6be --- /dev/null +++ b/recipes/ipset/ipset.inc @@ -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 index 0000000000..56efc549ae --- /dev/null +++ b/recipes/ipset/ipset_4.2.bb @@ -0,0 +1,6 @@ +PR = "${INC_PR}.0" +require ipset.inc + +SRC_URI[md5sum] = "9060d549a18c1c0794fa47a71343d627" +SRC_URI[sha256sum] = "5f1b9e5245b7998106660a5b29d9580156feda1c669e7214793a90e02e4a1203" + -- 2.39.5