[Buildroot] [PATCH 1/2] netsniff-ng: fix build with kernel headers v4.10+

Baruch Siach baruch at tkos.co.il
Fri Mar 10 08:30:54 UTC 2017


Add upstream patch removing use of GENL_ID_GENERATE that was dropped in kernel
version 4.10.

Fixes:
http://autobuild.buildroot.net/results/58d/58d7809cae739f728c58291f2111684d6c0578f3/
http://autobuild.buildroot.net/results/65c/65ce9807116ca70908e0aabae59a36c7774dfa7a/
http://autobuild.buildroot.net/results/64b/64b3f8af2ebc5a14ecbef72039ef527b5d71f12c/

Cc: Joris Lijssens <joris.lijssens at gmail.com>
Signed-off-by: Baruch Siach <baruch at tkos.co.il>
---
 ...-nlmsg-Drop-dissection-of-GENL_ID_GENERAT.patch | 48 ++++++++++++++++++++++
 1 file changed, 48 insertions(+)
 create mode 100644 package/netsniff-ng/0001-netsniff-ng-nlmsg-Drop-dissection-of-GENL_ID_GENERAT.patch

diff --git a/package/netsniff-ng/0001-netsniff-ng-nlmsg-Drop-dissection-of-GENL_ID_GENERAT.patch b/package/netsniff-ng/0001-netsniff-ng-nlmsg-Drop-dissection-of-GENL_ID_GENERAT.patch
new file mode 100644
index 000000000000..4ccf9d643c16
--- /dev/null
+++ b/package/netsniff-ng/0001-netsniff-ng-nlmsg-Drop-dissection-of-GENL_ID_GENERAT.patch
@@ -0,0 +1,48 @@
+From 88ec2ad37cabb3d3b7ca0e8e5ea3d682c083618d Mon Sep 17 00:00:00 2001
+From: Tobias Klauser <tklauser at distanz.ch>
+Date: Mon, 6 Mar 2017 12:22:57 +0100
+Subject: [PATCH] netsniff-ng: nlmsg: Drop dissection of GENL_ID_GENERATE type
+
+After kernel commit a07ea4d9941a ("genetlink: no longer support using
+static family IDs"), GENL_ID_GENERATE is no longer exposed to userspace
+(and actually should never have been). Change the genl nlmsg dissector
+to only consider the nlctrl family and the two other static family IDs
+needed for workarounds. All other family IDs are considered dynamically
+generated.
+
+Fixes #171
+Reported-by: Jaroslav Škarvada <jskarvad at redhat.com>
+Signed-off-by: Tobias Klauser <tklauser at distanz.ch>
+Signed-off-by: Baruch Siach <baruch at tkos.co.il>
+---
+Patch status: upstream commit 88ec2ad37cabb
+
+ proto_nlmsg.c | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/proto_nlmsg.c b/proto_nlmsg.c
+index f8993e794a54..f2064059be08 100644
+--- a/proto_nlmsg.c
++++ b/proto_nlmsg.c
+@@ -242,9 +242,15 @@ static const char *nlmsg_rtnl_type2str(uint16_t type)
+ static const char *nlmsg_genl_type2str(uint16_t type)
+ {
+ 	switch (type) {
+-	case GENL_ID_GENERATE:	return "id gen";
+-	case GENL_ID_CTRL:	return "id ctrl";
+-	default:		return NULL;
++	case GENL_ID_CTRL:	return "nlctrl";
++#if defined(GENL_ID_PCMRAID)
++	case GENL_ID_PCMRAID:	return "pcmraid";
++#endif
++#if defined(GENL_ID_VFS_DQUOT)
++	case GENL_ID_VFS_DQUOT:	return "vfs dquot";
++#endif
++	/* only dynamic family IDs should be used starting with Linux 4.10 */
++	default:		return "dynamic";
+ 	}
+ }
+ 
+-- 
+2.11.0
+
-- 
2.11.0



More information about the buildroot mailing list