PKG_NAME:=batman-adv
PKG_VERSION:=2024.3
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://downloads.open-mesh.org/batman/releases/batman-adv-$(PKG_VERSION)
+++ /dev/null
-From: Sven Eckelmann <sven@narfation.org>
-Date: Fri, 6 May 2022 22:03:29 +0200
-Subject: Revert "batman-adv: Migrate to linux/container_of.h"
-
-The original patch requires Linux 5.16.0 or a mac80211 compat header with this
-name. But the mac80211 package is currently not providing this header and
-OpenWrt main is still using older Linux kernel versions for some targets.
-
-This reverts commit 043ae5634bdfd4c4dd8b95a22890752495080bb5.
-
---- a/compat-include/linux/container_of.h
-+++ /dev/null
-@@ -1,20 +0,0 @@
--/* SPDX-License-Identifier: GPL-2.0 */
--/* Copyright (C) B.A.T.M.A.N. contributors:
-- *
-- * Marek Lindner, Simon Wunderlich
-- *
-- * This file contains macros for maintaining compatibility with older versions
-- * of the Linux kernel.
-- */
--
--#ifndef _NET_BATMAN_ADV_COMPAT_LINUX_CONTAINER_OF_H_
--#define _NET_BATMAN_ADV_COMPAT_LINUX_CONTAINER_OF_H_
--
--#include <linux/version.h>
--#if LINUX_VERSION_IS_GEQ(5, 16, 0)
--#include_next <linux/container_of.h>
--#else
--#include <linux/kernel.h>
--#endif
--
--#endif /* _NET_BATMAN_ADV_COMPAT_LINUX_CONTAINER_OF_H_ */
---- a/net/batman-adv/bat_iv_ogm.c
-+++ b/net/batman-adv/bat_iv_ogm.c
-@@ -13,13 +13,13 @@
- #include <linux/bug.h>
- #include <linux/byteorder/generic.h>
- #include <linux/cache.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
- #include <linux/if_ether.h>
- #include <linux/init.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
---- a/net/batman-adv/bat_v_elp.c
-+++ b/net/batman-adv/bat_v_elp.c
-@@ -10,13 +10,13 @@
- #include <linux/atomic.h>
- #include <linux/bitops.h>
- #include <linux/byteorder/generic.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/ethtool.h>
- #include <linux/gfp.h>
- #include <linux/if_ether.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/minmax.h>
- #include <linux/netdevice.h>
---- a/net/batman-adv/bat_v_ogm.c
-+++ b/net/batman-adv/bat_v_ogm.c
-@@ -9,12 +9,12 @@
-
- #include <linux/atomic.h>
- #include <linux/byteorder/generic.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
- #include <linux/if_ether.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
---- a/net/batman-adv/bridge_loop_avoidance.c
-+++ b/net/batman-adv/bridge_loop_avoidance.c
-@@ -10,7 +10,6 @@
- #include <linux/atomic.h>
- #include <linux/byteorder/generic.h>
- #include <linux/compiler.h>
--#include <linux/container_of.h>
- #include <linux/crc16.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
---- a/net/batman-adv/distributed-arp-table.c
-+++ b/net/batman-adv/distributed-arp-table.c
-@@ -11,7 +11,6 @@
- #include <linux/atomic.h>
- #include <linux/bitops.h>
- #include <linux/byteorder/generic.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
-@@ -21,6 +20,7 @@
- #include <linux/in.h>
- #include <linux/ip.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/netlink.h>
---- a/net/batman-adv/gateway_client.c
-+++ b/net/batman-adv/gateway_client.c
-@@ -9,7 +9,6 @@
-
- #include <linux/atomic.h>
- #include <linux/byteorder/generic.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
---- a/net/batman-adv/hard-interface.c
-+++ b/net/batman-adv/hard-interface.c
-@@ -10,12 +10,12 @@
- #include <linux/atomic.h>
- #include <linux/byteorder/generic.h>
- #include <linux/compiler.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/gfp.h>
- #include <linux/if.h>
- #include <linux/if_arp.h>
- #include <linux/if_ether.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/limits.h>
- #include <linux/list.h>
---- a/net/batman-adv/main.c
-+++ b/net/batman-adv/main.c
-@@ -10,7 +10,6 @@
- #include <linux/atomic.h>
- #include <linux/build_bug.h>
- #include <linux/byteorder/generic.h>
--#include <linux/container_of.h>
- #include <linux/crc32c.h>
- #include <linux/device.h>
- #include <linux/errno.h>
---- a/net/batman-adv/multicast.c
-+++ b/net/batman-adv/multicast.c
-@@ -11,7 +11,6 @@
- #include <linux/bitops.h>
- #include <linux/bug.h>
- #include <linux/byteorder/generic.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
---- a/net/batman-adv/network-coding.c
-+++ b/net/batman-adv/network-coding.c
-@@ -11,7 +11,6 @@
- #include <linux/bitops.h>
- #include <linux/byteorder/generic.h>
- #include <linux/compiler.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
-@@ -20,6 +19,7 @@
- #include <linux/init.h>
- #include <linux/jhash.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
---- a/net/batman-adv/originator.c
-+++ b/net/batman-adv/originator.c
-@@ -8,12 +8,12 @@
- #include "main.h"
-
- #include <linux/atomic.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
- #include <linux/if_vlan.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
---- a/net/batman-adv/send.c
-+++ b/net/batman-adv/send.c
-@@ -10,13 +10,13 @@
- #include <linux/atomic.h>
- #include <linux/bug.h>
- #include <linux/byteorder/generic.h>
--#include <linux/container_of.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
- #include <linux/if.h>
- #include <linux/if_ether.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/netdevice.h>
---- a/net/batman-adv/soft-interface.c
-+++ b/net/batman-adv/soft-interface.c
-@@ -11,7 +11,6 @@
- #include <linux/byteorder/generic.h>
- #include <linux/cache.h>
- #include <linux/compiler.h>
--#include <linux/container_of.h>
- #include <linux/cpumask.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
-@@ -20,6 +19,7 @@
- #include <linux/if_ether.h>
- #include <linux/if_vlan.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
---- a/net/batman-adv/tp_meter.c
-+++ b/net/batman-adv/tp_meter.c
-@@ -12,13 +12,13 @@
- #include <linux/byteorder/generic.h>
- #include <linux/cache.h>
- #include <linux/compiler.h>
--#include <linux/container_of.h>
- #include <linux/err.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
- #include <linux/if_ether.h>
- #include <linux/init.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/kthread.h>
- #include <linux/limits.h>
---- a/net/batman-adv/translation-table.c
-+++ b/net/batman-adv/translation-table.c
-@@ -13,7 +13,6 @@
- #include <linux/byteorder/generic.h>
- #include <linux/cache.h>
- #include <linux/compiler.h>
--#include <linux/container_of.h>
- #include <linux/crc32c.h>
- #include <linux/errno.h>
- #include <linux/etherdevice.h>
-@@ -22,6 +21,7 @@
- #include <linux/init.h>
- #include <linux/jhash.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
---- a/net/batman-adv/tvlv.c
-+++ b/net/batman-adv/tvlv.c
-@@ -7,10 +7,10 @@
- #include "main.h"
-
- #include <linux/byteorder/generic.h>
--#include <linux/container_of.h>
- #include <linux/etherdevice.h>
- #include <linux/gfp.h>
- #include <linux/if_ether.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
--- /dev/null
+From: Alexandru Gagniuc <mr.nuke.me@gmail.com>
+Date: Thu, 6 Apr 2023 18:05:50 -0500
+Subject: fix batadv_is_cfg80211_netdev
+
+Replace CONFIG_CFG80211 with CPTCFG_CFG80211, which is the correct
+macro to use when building under backports.
+
+--- a/net/batman-adv/hard-interface.c
++++ b/net/batman-adv/hard-interface.c
+@@ -308,8 +308,7 @@ static bool batadv_is_cfg80211_netdev(st
+ {
+ if (!net_device)
+ return false;
+-
+-#if IS_ENABLED(CONFIG_CFG80211)
++#if IS_ENABLED(CPTCFG_CFG80211)
+ /* cfg80211 drivers have to set ieee80211_ptr */
+ if (net_device->ieee80211_ptr)
+ return true;
--- /dev/null
+From: Sven Eckelmann <sven@narfation.org>
+Date: Fri, 2 Feb 2024 22:49:48 +0100
+Subject: Revert "batman-adv: Switch to linux/array_size.h"
+
+The original patch requires Linux 6.7.0 or a mac80211 compat header with this
+name. But the mac80211 package is currently not providing this header and
+OpenWrt main is still using older Linux kernel versions for some targets.
+
+This reverts commit f33d7f724675544a36b24c77f8d4b95d41252ae2.
+
+--- a/compat-include/linux/array_size.h
++++ /dev/null
+@@ -1,20 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-/* Copyright (C) B.A.T.M.A.N. contributors:
+- *
+- * Marek Lindner, Simon Wunderlich
+- *
+- * This file contains macros for maintaining compatibility with older versions
+- * of the Linux kernel.
+- */
+-
+-#ifndef _NET_BATMAN_ADV_COMPAT_LINUX_ARRAY_SIZE_H_
+-#define _NET_BATMAN_ADV_COMPAT_LINUX_ARRAY_SIZE_H_
+-
+-#include <linux/version.h>
+-#if LINUX_VERSION_IS_GEQ(6, 7, 0)
+-#include_next <linux/array_size.h>
+-#else
+-#include <linux/kernel.h>
+-#endif
+-
+-#endif /* _NET_BATMAN_ADV_COMPAT_LINUX_ARRAY_SIZE_H_ */
+--- a/net/batman-adv/main.c
++++ b/net/batman-adv/main.c
+@@ -6,7 +6,6 @@
+
+ #include "main.h"
+
+-#include <linux/array_size.h>
+ #include <linux/atomic.h>
+ #include <linux/build_bug.h>
+ #include <linux/byteorder/generic.h>
+@@ -20,6 +19,7 @@
+ #include <linux/init.h>
+ #include <linux/ip.h>
+ #include <linux/ipv6.h>
++#include <linux/kernel.h>
+ #include <linux/kobject.h>
+ #include <linux/kref.h>
+ #include <linux/list.h>
+--- a/net/batman-adv/netlink.c
++++ b/net/batman-adv/netlink.c
+@@ -7,7 +7,6 @@
+ #include "netlink.h"
+ #include "main.h"
+
+-#include <linux/array_size.h>
+ #include <linux/atomic.h>
+ #include <linux/bitops.h>
+ #include <linux/bug.h>
+@@ -19,6 +18,7 @@
+ #include <linux/if_ether.h>
+ #include <linux/if_vlan.h>
+ #include <linux/init.h>
++#include <linux/kernel.h>
+ #include <linux/limits.h>
+ #include <linux/list.h>
+ #include <linux/minmax.h>
+++ /dev/null
-From: Alexandru Gagniuc <mr.nuke.me@gmail.com>
-Date: Thu, 6 Apr 2023 18:05:50 -0500
-Subject: fix batadv_is_cfg80211_netdev
-
-Replace CONFIG_CFG80211 with CPTCFG_CFG80211, which is the correct
-macro to use when building under backports.
-
---- a/net/batman-adv/hard-interface.c
-+++ b/net/batman-adv/hard-interface.c
-@@ -308,8 +308,7 @@ static bool batadv_is_cfg80211_netdev(st
- {
- if (!net_device)
- return false;
--
--#if IS_ENABLED(CONFIG_CFG80211)
-+#if IS_ENABLED(CPTCFG_CFG80211)
- /* cfg80211 drivers have to set ieee80211_ptr */
- if (net_device->ieee80211_ptr)
- return true;
+++ /dev/null
-From: Sven Eckelmann <sven@narfation.org>
-Date: Fri, 2 Feb 2024 22:49:00 +0100
-Subject: Revert "batman-adv: Switch to linux/sprintf.h"
-
-The original patch requires Linux 6.6.0 or a mac80211 compat header with this
-name. But the mac80211 package is currently not providing this header and
-OpenWrt main is still using older Linux kernel versions for some targets.
-
-This reverts commit f0fb49c5ab70dfa064f0aa8d1c5d84f65e8cbc86.
-
---- a/compat-include/linux/sprintf.h
-+++ /dev/null
-@@ -1,20 +0,0 @@
--/* SPDX-License-Identifier: GPL-2.0 */
--/* Copyright (C) B.A.T.M.A.N. contributors:
-- *
-- * Marek Lindner, Simon Wunderlich
-- *
-- * This file contains macros for maintaining compatibility with older versions
-- * of the Linux kernel.
-- */
--
--#ifndef _NET_BATMAN_ADV_COMPAT_LINUX_SPRINTF_H_
--#define _NET_BATMAN_ADV_COMPAT_LINUX_SPRINTF_H_
--
--#include <linux/version.h>
--#if LINUX_VERSION_IS_GEQ(6, 6, 0)
--#include_next <linux/sprintf.h>
--#else
--#include <linux/kernel.h>
--#endif
--
--#endif /* _NET_BATMAN_ADV_COMPAT_LINUX_SPRINTF_H_ */
---- a/net/batman-adv/bridge_loop_avoidance.c
-+++ b/net/batman-adv/bridge_loop_avoidance.c
-@@ -19,6 +19,7 @@
- #include <linux/if_vlan.h>
- #include <linux/jhash.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
-@@ -29,7 +30,6 @@
- #include <linux/skbuff.h>
- #include <linux/slab.h>
- #include <linux/spinlock.h>
--#include <linux/sprintf.h>
- #include <linux/stddef.h>
- #include <linux/string.h>
- #include <linux/workqueue.h>
---- a/net/batman-adv/gateway_client.c
-+++ b/net/batman-adv/gateway_client.c
-@@ -17,6 +17,7 @@
- #include <linux/in.h>
- #include <linux/ip.h>
- #include <linux/ipv6.h>
-+#include <linux/kernel.h>
- #include <linux/kref.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
-@@ -27,7 +28,6 @@
- #include <linux/skbuff.h>
- #include <linux/slab.h>
- #include <linux/spinlock.h>
--#include <linux/sprintf.h>
- #include <linux/stddef.h>
- #include <linux/udp.h>
- #include <net/sock.h>
---- a/net/batman-adv/main.c
-+++ b/net/batman-adv/main.c
-@@ -31,7 +31,6 @@
- #include <linux/skbuff.h>
- #include <linux/slab.h>
- #include <linux/spinlock.h>
--#include <linux/sprintf.h>
- #include <linux/stddef.h>
- #include <linux/string.h>
- #include <linux/workqueue.h>
---- a/net/batman-adv/multicast.c
-+++ b/net/batman-adv/multicast.c
-@@ -24,6 +24,7 @@
- #include <linux/ip.h>
- #include <linux/ipv6.h>
- #include <linux/jiffies.h>
-+#include <linux/kernel.h>
- #include <linux/list.h>
- #include <linux/lockdep.h>
- #include <linux/netdevice.h>
-@@ -34,7 +35,6 @@
- #include <linux/skbuff.h>
- #include <linux/slab.h>
- #include <linux/spinlock.h>
--#include <linux/sprintf.h>
- #include <linux/stddef.h>
- #include <linux/string.h>
- #include <linux/types.h>
+++ /dev/null
-From: Sven Eckelmann <sven@narfation.org>
-Date: Fri, 2 Feb 2024 22:49:48 +0100
-Subject: Revert "batman-adv: Switch to linux/array_size.h"
-
-The original patch requires Linux 6.7.0 or a mac80211 compat header with this
-name. But the mac80211 package is currently not providing this header and
-OpenWrt main is still using older Linux kernel versions for some targets.
-
-This reverts commit f33d7f724675544a36b24c77f8d4b95d41252ae2.
-
---- a/compat-include/linux/array_size.h
-+++ /dev/null
-@@ -1,20 +0,0 @@
--/* SPDX-License-Identifier: GPL-2.0 */
--/* Copyright (C) B.A.T.M.A.N. contributors:
-- *
-- * Marek Lindner, Simon Wunderlich
-- *
-- * This file contains macros for maintaining compatibility with older versions
-- * of the Linux kernel.
-- */
--
--#ifndef _NET_BATMAN_ADV_COMPAT_LINUX_ARRAY_SIZE_H_
--#define _NET_BATMAN_ADV_COMPAT_LINUX_ARRAY_SIZE_H_
--
--#include <linux/version.h>
--#if LINUX_VERSION_IS_GEQ(6, 7, 0)
--#include_next <linux/array_size.h>
--#else
--#include <linux/kernel.h>
--#endif
--
--#endif /* _NET_BATMAN_ADV_COMPAT_LINUX_ARRAY_SIZE_H_ */
---- a/net/batman-adv/main.c
-+++ b/net/batman-adv/main.c
-@@ -6,7 +6,6 @@
-
- #include "main.h"
-
--#include <linux/array_size.h>
- #include <linux/atomic.h>
- #include <linux/build_bug.h>
- #include <linux/byteorder/generic.h>
-@@ -19,6 +18,7 @@
- #include <linux/init.h>
- #include <linux/ip.h>
- #include <linux/ipv6.h>
-+#include <linux/kernel.h>
- #include <linux/kobject.h>
- #include <linux/kref.h>
- #include <linux/list.h>
---- a/net/batman-adv/netlink.c
-+++ b/net/batman-adv/netlink.c
-@@ -7,7 +7,6 @@
- #include "netlink.h"
- #include "main.h"
-
--#include <linux/array_size.h>
- #include <linux/atomic.h>
- #include <linux/bitops.h>
- #include <linux/bug.h>
-@@ -19,6 +18,7 @@
- #include <linux/if_ether.h>
- #include <linux/if_vlan.h>
- #include <linux/init.h>
-+#include <linux/kernel.h>
- #include <linux/limits.h>
- #include <linux/list.h>
- #include <linux/minmax.h>
#include <linux/version.h> /* LINUX_VERSION_CODE */
#include <linux/types.h>
-#if LINUX_VERSION_IS_LESS(6, 0, 0)
-
-#define __vstring(item, fmt, ap) __dynamic_array(char, item, 256)
-#define __assign_vstr(dst, fmt, va) \
- WARN_ON_ONCE(vsnprintf(__get_dynamic_array(dst), 256, fmt, *va) >= 256)
-
-#endif /* LINUX_VERSION_IS_LESS(6, 0, 0) */
-
-#if LINUX_VERSION_IS_LESS(6, 2, 0)
-
-#include <linux/random.h>
-
-#define genl_split_ops genl_ops
-
-static inline u32 batadv_get_random_u32_below(u32 ep_ro)
-{
- return prandom_u32_max(ep_ro);
-}
-
-#define get_random_u32_below batadv_get_random_u32_below
-
-#endif /* LINUX_VERSION_IS_LESS(6, 2, 0) */
-
-#if LINUX_VERSION_IS_LESS(6, 4, 0) && \
- !(LINUX_VERSION_IS_GEQ(5, 10, 205) && LINUX_VERSION_IS_LESS(5, 11, 0)) && \
- !(LINUX_VERSION_IS_GEQ(5, 15, 144) && LINUX_VERSION_IS_LESS(5, 16, 0)) && \
- !(LINUX_VERSION_IS_GEQ(6, 1, 69) && LINUX_VERSION_IS_LESS(6, 2, 0))
-
-#include <linux/if_vlan.h>
-
-/* Prefer this version in TX path, instead of
- * skb_reset_mac_header() + vlan_eth_hdr()
- */
-static inline struct vlan_ethhdr *skb_vlan_eth_hdr(const struct sk_buff *skb)
-{
- return (struct vlan_ethhdr *)skb->data;
-}
-
-#endif /* LINUX_VERSION_IS_LESS(6, 4, 0) */
-
/* <DECLARE_EWMA> */
#include <linux/version.h>