libs/libnl: Update to 3.3.0
[openwrt/staging/jow.git] / package / network / utils / wpan-tools / patches / 001-src-nl_extras.h-fix-compatibility-with-libnl-3.3.0.patch
diff --git a/package/network/utils/wpan-tools/patches/001-src-nl_extras.h-fix-compatibility-with-libnl-3.3.0.patch b/package/network/utils/wpan-tools/patches/001-src-nl_extras.h-fix-compatibility-with-libnl-3.3.0.patch
new file mode 100644 (file)
index 0000000..1370854
--- /dev/null
@@ -0,0 +1,44 @@
+From bb522bd584f05e6658d5dba97f48ca018f46394c Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 6 May 2017 14:36:08 +0200
+Subject: [PATCH] src/nl_extras.h: fix compatibility with libnl 3.3.0
+
+nl_extras.h defines a set of nla_set_s*() functions if not provided by
+libnl. They are provided by libnl since version 3.2.26. The test
+(LIBNL_VER_MIC <= 26) was working fine while libnl was in the 3.2.x
+series, but now that they have incremented the minor version, the
+micro version was reset to 0, with the latest libnl version being
+3.3.0.
+
+Due to this, the condition (LIBNL_VER_MIC <= 26) is true, and we get
+redefinition errors because nl_extras.h redefines functions already
+provided by libnl.
+
+This commit improves the condition so that nl_extras.h provides the
+missing functions only if the minor version is < 2, or if minor is 2
+and micro is < 26.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ src/nl_extras.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/src/nl_extras.h
++++ b/src/nl_extras.h
+@@ -1,7 +1,7 @@
+ #ifndef __NL_EXTRAS_H
+ #define __NL_EXTRAS_H
+-#if LIBNL_VER_MIC <= 26
++#if (LIBNL_VER_MIN < 2) || (LIBNL_VER_MIN == 2) && (LIBNL_VER_MIC <= 26)
+ #ifndef NLA_S8
+@@ -45,6 +45,6 @@ static inline int32_t nla_get_s32(struct
+ #endif /* NLA_S64 */
+-#endif /* LIBNL_VER_MIC */
++#endif /* LIBNL_VER_* */
+ #endif /* __NL_EXTRAS_H */