[PATCH v2 2/2] backports: update backport/backport-include/net/netlink.h
AceLan Kao <[email protected]>
| Newsgroups | org.kernel.vger.backports |
|---|---|
| Message-ID | <[email protected]> |
Add new macros has been introduced since v5.1-rc1
23323289b154 netlink: reduce NLA_POLICY_NESTED{,_ARRAY} arguments
V2: The new macros are required under v5.1, v1 put the macros only under
v4.20
Signed-off-by: AceLan Kao <[email protected]>
---
backport/backport-include/net/netlink.h | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/backport/backport-include/net/netlink.h b/backport/backport-include/net/netlink.h
index 4af73631..c5db02da 100644
--- a/backport/backport-include/net/netlink.h
+++ b/backport/backport-include/net/netlink.h
@@ -4,6 +4,17 @@
#include <linux/version.h>
#include <linux/in6.h>
+#if LINUX_VERSION_IS_LESS(5,1,0)
+#define _NLA_POLICY_NESTED(maxattr, policy) \
+ { .type = NLA_NESTED, .validation_data = policy, .len = maxattr }
+#define _NLA_POLICY_NESTED_ARRAY(maxattr, policy) \
+ { .type = NLA_NESTED_ARRAY, .validation_data = policy, .len = maxattr }
+#define NLA_POLICY_NESTED(policy) \
+ _NLA_POLICY_NESTED(ARRAY_SIZE(policy) - 1, policy)
+#define NLA_POLICY_NESTED_ARRAY(policy) \
+ _NLA_POLICY_NESTED_ARRAY(ARRAY_SIZE(policy) - 1, policy)
+#endif /* < 5.1 */
+
#if LINUX_VERSION_IS_LESS(4,20,0)
/* can't backport using the enum - need to override */
#define NLA_UNSPEC 0
@@ -59,10 +70,14 @@ struct backport_nla_policy {
#define NLA_POLICY_ETH_ADDR NLA_POLICY_EXACT_LEN(ETH_ALEN)
#define NLA_POLICY_ETH_ADDR_COMPAT NLA_POLICY_EXACT_LEN_WARN(ETH_ALEN)
+#ifndef NLA_POLICY_NESTED
#define NLA_POLICY_NESTED(maxattr, policy) \
{ .type = NLA_NESTED, .validation_data = policy, .len = maxattr }
+#endif
+#ifndef NLA_POLICY_NESTED_ARRAY
#define NLA_POLICY_NESTED_ARRAY(maxattr, policy) \
{ .type = NLA_NESTED_ARRAY, .validation_data = policy, .len = maxattr }
+#endif
#define __NLA_ENSURE(condition) (sizeof(char[1 - 2*!(condition)]) - 1)
#define NLA_ENSURE_INT_TYPE(tp) \
--
2.17.1
--
To unsubscribe from this list: send the line "unsubscribe backports" in