mirror of
https://github.com/openwrt/routing.git
synced 2026-07-12 22:44:51 +04:00
e76fbe6fb1
* support latest kernels (5.10 - 7.2) * coding style cleanups and refactoring * switch wifi flags lookup to specialized rhashtable * skip unnecessary TVLV buffer allocation of each OGM(v2) transmission * bugs squashed: - batman_iv: stop caching unowned originator pointers - batman_iv: fix integer overflow on buff_pos - batman_iv: avoid bonding logic for outgoing OGM - batman_iv: recover OGM scheduling after forward packet error - batman_v: stop OGMv2 on disabled interface - batman_v: prevent ELP transmission interval underflow - batman_v: prevent OGM aggregation on disabled hardif - bla: prevent use-after-free when deleting claims - bla: only purge non-released claims - bla: put backbone reference on failed claim hash insert - bla: fix report_work leak on backbone_gw purge - bla: avoid double decrement of bla.num_requests - bla: avoid NULL-ptr deref for claim via dropped interface - bla: annotate lasttime access with READ/WRITE_ONCE - bla: reacquire gw address after skb realloc - dat: acquire ARP hw source only after skb realloc - dat: ensure accessible eth_hdr proto field - dat: handle forward allocation error - dat: prevent false sharing between VLANs - frag: fix reassembly length accounting - frag: disallow unicast fragment in fragment - frag: ensure fragment is writable before modifying TTL - frag: avoid underflow of TTL - gw: acquire ethernet header only after skb realloc - gw: clear current gateway during teardown - gw: don't deselect gateway with active hardif - mcast: fix use-after-free in orig_node RCU release - routing: access unicast_ttvn skb->data only after skb realloc - routing: ensure bcast is writable before modifying TTL - routing: fix (m|b)cast csum after decrementing TTL - routing: retrieve ethhdr after potential skb realloc on RX - tp_meter: reject new sessions during teardown - tp_meter: stop sessions during mesh teardown - tp_meter: fix counter underflow during shutdown - tp_meter: fix tp_num leak on kmalloc failure - tp_meter: fix tp_vars reference leak in receiver shutdown - tp_meter: avoid use of uninit sender vars - tp_meter: directly shut down timer on cleanup - tp_meter: fix race condition in send error reporting - tp_meter: avoid role confusion in tp_list - tp_meter: keep unacked list in ascending ordered - tp_meter: initialize dup_acks explicitly - tp_meter: initialize dec_cwnd explicitly - tp_meter: avoid window underflow - tp_meter: avoid divide-by-zero for dec_cwnd - tp_meter: fix fast recovery precondition - tp_meter: handle seqno wrap-around for fast recovery detection - tp_meter: add only finished tp_vars to lists - tp_meter: use locking for all congestion control variables - tp_meter: initialize last_recv_time during init - tp_meter: restrict number of unacked list entries - tp_meter: annotate last_recv_time access with READ/WRITE_ONCE - tp_meter: prevent parallel modifications of last_recv - tp_meter: handle overlapping packets - tt: reject oversized local TVLV buffers - tt: fix negative tt_buff_len - tt: fix negative last_changeset_len - tt: fix TOCTOU race for reported vlans - tt: avoid empty VLAN responses - tt: prevent TVLV entry number overflow - tt: don't merge change entries with different VIDs - tt: track roam count per VID - tvlv: abort OGM send on tvlv append failure - tvlv: reject oversized TVLV packets - tvlv: avoid race of cifsnotfound handler state - tvlv: enforce 2-byte alignment Signed-off-by: Sven Eckelmann <sven@narfation.org>
97 lines
3.0 KiB
Makefile
97 lines
3.0 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=batman-adv
|
|
PKG_VERSION:=2026.2
|
|
PKG_RELEASE:=1
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=https://downloads.open-mesh.org/batman/releases/batman-adv-$(PKG_VERSION)
|
|
PKG_HASH:=4e17fced2c80945e22609be87534481733ff1b5d17050de4e4f323c171418135
|
|
PKG_EXTMOD_SUBDIRS:=net/batman-adv
|
|
|
|
PKG_MAINTAINER:=Simon Wunderlich <sw@simonwunderlich.de>
|
|
PKG_LICENSE:=GPL-2.0-only MIT
|
|
PKG_LICENSE_FILES:=LICENSES/preferred/GPL-2.0 LICENSES/preferred/MIT
|
|
|
|
PKG_BUILD_PARALLEL:=1
|
|
|
|
STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h
|
|
|
|
PKG_CONFIG_DEPENDS += \
|
|
CONFIG_BATMAN_ADV_BATMAN_V \
|
|
CONFIG_BATMAN_ADV_BLA \
|
|
CONFIG_BATMAN_ADV_DAT \
|
|
CONFIG_BATMAN_ADV_MCAST \
|
|
CONFIG_BATMAN_ADV_DEBUG \
|
|
CONFIG_BATMAN_ADV_TRACING
|
|
|
|
include $(INCLUDE_DIR)/kernel.mk
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define KernelPackage/batman-adv
|
|
SUBMENU:=Network Support
|
|
TITLE:=B.A.T.M.A.N. Adv
|
|
URL:=https://www.open-mesh.org/
|
|
DEPENDS:=+BATMAN_ADV_BLA:kmod-lib-crc16 +LINUX_6_12:kmod-lib-crc32c +kmod-cfg80211 +batctl
|
|
FILES:=$(PKG_BUILD_DIR)/net/batman-adv/batman-adv.$(LINUX_KMOD_SUFFIX)
|
|
AUTOLOAD:=$(call AutoProbe,batman-adv)
|
|
endef
|
|
|
|
define KernelPackage/batman-adv/description
|
|
B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is
|
|
a routing protocol for multi-hop ad-hoc mesh networks. The
|
|
networks may be wired or wireless. See
|
|
https://www.open-mesh.org/ for more information and user space
|
|
tools. This package builds version $(PKG_VERSION) of the kernel
|
|
module.
|
|
endef
|
|
|
|
define KernelPackage/batman-adv/config
|
|
source "$(SOURCE)/Config.in"
|
|
endef
|
|
|
|
define Package/kmod-batman-adv/conffiles
|
|
/etc/config/batman-adv
|
|
endef
|
|
|
|
PKG_MAKE_FLAGS:= \
|
|
CONFIG_BATMAN_ADV=m \
|
|
CONFIG_BATMAN_ADV_DEBUG=$(if $(CONFIG_BATMAN_ADV_DEBUG),y,n) \
|
|
CONFIG_BATMAN_ADV_BLA=$(if $(CONFIG_BATMAN_ADV_BLA),y,n) \
|
|
CONFIG_BATMAN_ADV_DAT=$(if $(CONFIG_BATMAN_ADV_DAT),y,n) \
|
|
CONFIG_BATMAN_ADV_MCAST=$(if $(CONFIG_BATMAN_ADV_MCAST),y,n) \
|
|
CONFIG_BATMAN_ADV_BATMAN_V=$(if $(CONFIG_BATMAN_ADV_BATMAN_V),y,n) \
|
|
CONFIG_BATMAN_ADV_TRACING=$(if $(CONFIG_BATMAN_ADV_TRACING),y,n) \
|
|
|
|
NOSTDINC_FLAGS := \
|
|
$(KERNEL_NOSTDINC_FLAGS) \
|
|
-I$(PKG_BUILD_DIR)/include/ \
|
|
-I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \
|
|
-I$(STAGING_DIR)/usr/include/mac80211-backport \
|
|
-I$(STAGING_DIR)/usr/include/mac80211/uapi \
|
|
-I$(STAGING_DIR)/usr/include/mac80211 \
|
|
-include backport/autoconf.h \
|
|
-include backport/backport.h \
|
|
-include $(PKG_BUILD_DIR)/compat-hacks.h \
|
|
-DBATADV_SOURCE_VERSION=\\\"$(PKG_VERSION)-openwrt-$(PKG_RELEASE)\\\"
|
|
|
|
NOSTDINC_FLAGS += \
|
|
$(patsubst CONFIG_%, -DCONFIG_%=1, $(patsubst %=m,%,$(filter %=m,$(PKG_MAKE_FLAGS)))) \
|
|
$(patsubst CONFIG_%, -DCONFIG_%=1, $(patsubst %=y,%,$(filter %=y,$(PKG_MAKE_FLAGS)))) \
|
|
|
|
define Build/Compile
|
|
+$(KERNEL_MAKE) $(PKG_JOBS) \
|
|
$(PKG_MAKE_FLAGS) \
|
|
M="$(PKG_BUILD_DIR)/net/batman-adv" \
|
|
NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \
|
|
modules
|
|
endef
|
|
|
|
define KernelPackage/batman-adv/install
|
|
$(CP) ./files/. $(1)/
|
|
endef
|
|
|
|
$(eval $(call KernelPackage,batman-adv))
|