summaryrefslogtreecommitdiff
path: root/meta-openembedded/meta-networking/recipes-filter/nftables
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-networking/recipes-filter/nftables')
-rw-r--r--meta-openembedded/meta-networking/recipes-filter/nftables/files/0001-update-python3-nftables-reference.patch47
-rw-r--r--meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.2.bb28
-rw-r--r--meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.3.bb33
3 files changed, 80 insertions, 28 deletions
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/files/0001-update-python3-nftables-reference.patch b/meta-openembedded/meta-networking/recipes-filter/nftables/files/0001-update-python3-nftables-reference.patch
new file mode 100644
index 000000000..db2243480
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/nftables/files/0001-update-python3-nftables-reference.patch
@@ -0,0 +1,47 @@
+From ddbe652bf0f4ed300bae9497250130d68e4cbf5b Mon Sep 17 00:00:00 2001
+From: Arturo Borrero Gonzalez <arturo@netfilter.org>
+Date: Tue, 10 Dec 2019 12:00:45 +0100
+Subject: py: load the SONAME-versioned shared object
+
+Instruct the python module to load the SONAME versioned shared object.
+
+Normal end-user systems may only have available libnftables.so.1.0.0 and not
+libnftables.so which is usually only present in developer systems.
+
+In Debian systems, for example:
+
+ % dpkg -L libnftables1 | grep so.1
+ /usr/lib/x86_64-linux-gnu/libnftables.so.1.0.0
+ /usr/lib/x86_64-linux-gnu/libnftables.so.1
+
+ % dpkg -L libnftables-dev | grep so
+ /usr/lib/x86_64-linux-gnu/libnftables.so
+
+The "1" is not a magic number, is the SONAME of libnftables in the current
+version, as stated in Make_global.am.
+
+Reported-by: Michael Biebl <biebl@debian.org>
+Signed-off-by: Arturo Borrero Gonzalez <arturo@netfilter.org>
+Acked-by: Phil Sutter <phil@nwl.cc>
+Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+---
+ py/nftables.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/py/nftables.py b/py/nftables.py
+index 48eb54fe..2a0a1e89 100644
+--- a/py/nftables.py
++++ b/py/nftables.py
+@@ -64,7 +64,7 @@ class Nftables:
+
+ validator = None
+
+- def __init__(self, sofile="libnftables.so"):
++ def __init__(self, sofile="libnftables.so.1"):
+ """Instantiate a new Nftables class object.
+
+ Accepts a shared object file to open, by default standard search path
+--
+cgit v1.2.1
+
+
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.2.bb b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.2.bb
deleted file mode 100644
index 98e8050b8..000000000
--- a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.2.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-SUMMARY = "Netfilter Tables userspace utillites"
-SECTION = "net"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d1a78fdd879a263a5e0b42d1fc565e79"
-
-DEPENDS = "libmnl libnftnl readline gmp bison-native"
-
-UPSTREAM_CHECK_URI = "https://www.netfilter.org/projects/nftables/files/"
-
-SRC_URI = "http://www.netfilter.org/projects/nftables/files/${BP}.tar.bz2"
-SRC_URI[md5sum] = "dfe130724d7c998eb26b56447e932899"
-SRC_URI[sha256sum] = "5cb66180143e6bfc774f4eb316206d40ac1cb6df269a90882404cbf7165513f5"
-
-inherit autotools manpages pkgconfig
-
-PACKAGECONFIG ?= "python"
-PACKAGECONFIG[man] = "--enable--man-doc, --disable-man-doc"
-PACKAGECONFIG[python] = "--with-python-bin=${PYTHON}, --with-python-bin="", python3"
-
-inherit ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)}
-
-ASNEEDED = ""
-
-RRECOMMENDS_${PN} += "kernel-module-nf-tables"
-
-PACKAGES =+ "${PN}-python"
-FILES_${PN}-python = "${libdir_native}/${PYTHON_DIR}"
-RDEPENDS_${PN}-python = "python3-core python3-json"
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.3.bb b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.3.bb
new file mode 100644
index 000000000..65a7bcc5f
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.3.bb
@@ -0,0 +1,33 @@
+SUMMARY = "Netfilter Tables userspace utillites"
+SECTION = "net"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d1a78fdd879a263a5e0b42d1fc565e79"
+
+DEPENDS = "libmnl libnftnl bison-native \
+ ${@bb.utils.contains('PACKAGECONFIG', 'mini-gmp', '', 'gmp', d)}"
+
+# Ensure we reject the 0.099 version by matching at least two dots
+UPSTREAM_CHECK_REGEX = "nftables-(?P<pver>\d+(\.\d+){2,}).tar.bz2"
+
+SRC_URI = "http://www.netfilter.org/projects/nftables/files/${BP}.tar.bz2 \
+ file://0001-update-python3-nftables-reference.patch"
+SRC_URI[md5sum] = "9913b2b46864394d41916b74638e0875"
+SRC_URI[sha256sum] = "956b915ce2a7aeaff123e49006be7a0690a0964e96c062703181a36e2e5edb78"
+
+inherit autotools manpages pkgconfig
+
+PACKAGECONFIG ??= "python readline"
+PACKAGECONFIG[json] = "--with-json, --without-json, jansson"
+PACKAGECONFIG[manpages] = "--enable-man-doc, --disable-man-doc, asciidoc-native"
+PACKAGECONFIG[mini-gmp] = "--with-mini-gmp, --without-mini-gmp"
+PACKAGECONFIG[python] = "--enable-python --with-python-bin=${PYTHON}, --with-python-bin="", python3"
+PACKAGECONFIG[readline] = "--with-cli=readline, --without-cli, readline"
+PACKAGECONFIG[xtables] = "--with-xtables, --without-xtables, iptables"
+
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)}
+
+RRECOMMENDS_${PN} += "kernel-module-nf-tables"
+
+PACKAGES =+ "${PN}-python"
+FILES_${PN}-python = "${nonarch_libdir}/${PYTHON_DIR}"
+RDEPENDS_${PN}-python = "python3-core python3-json"