diff --git a/alfred/Makefile b/alfred/Makefile index 75edc26..ec4840e 100644 --- a/alfred/Makefile +++ b/alfred/Makefile @@ -8,9 +8,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=alfred -PKG_VERSION:=2019.0 +PKG_VERSION:=2019.1 PKG_RELEASE:=0 -PKG_HASH:=c06a674763fe27e85a979d7ca65d2af39df4943ff2a4128cad90dd09d237b46a +PKG_HASH:=7252a4d137a4cd38946e38b0c462487f09dd43fa18823c90d180ea7fce2b515b PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://downloads.open-mesh.org/batman/releases/batman-adv-$(PKG_VERSION) diff --git a/batctl/Makefile b/batctl/Makefile index 84a456c..5b1d865 100644 --- a/batctl/Makefile +++ b/batctl/Makefile @@ -9,9 +9,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=batctl -PKG_VERSION:=2019.0 -PKG_RELEASE:=2 -PKG_HASH:=997721096ff396644e8d697ea7651e9d38243faf317bcea2661d4139ff58b531 +PKG_VERSION:=2019.1 +PKG_RELEASE:=0 +PKG_HASH:=e82d05f058d8b799d17ce6063e1bf5b83ef1fe42a0867b3e2e39545177469793 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://downloads.open-mesh.org/batman/releases/batman-adv-$(PKG_VERSION) @@ -30,6 +30,13 @@ define Package/batctl/Default MAINTAINER:=Simon Wunderlich endef +define Package/batctl/description +batctl is a more intuitive managment utility for B.A.T.M.A.N.-Advanced. +It is an easier method for configuring batman-adv and provides some +additional tools for debugging as well. This package builds +version $(PKG_VERSION) of the user space utility. +endef + define Package/batctl-tiny $(call Package/batctl/Default) TITLE:=B.A.T.M.A.N. Advanced user space configuration tool (Minimal) @@ -38,6 +45,11 @@ $(call Package/batctl/Default) ALTERNATIVES:=100:/usr/sbin/batctl:/usr/libexec/batctl-tiny endef +define Package/batctl-tiny/description +$(Package/batctl/description) +Only configuration relevant subcommands are enabled. +endef + define Package/batctl-default $(call Package/batctl/Default) TITLE:=B.A.T.M.A.N. Advanced user space configuration tool (Default) @@ -45,6 +57,11 @@ $(call Package/batctl/Default) ALTERNATIVES:=200:/usr/sbin/batctl:/usr/libexec/batctl-default endef +define Package/batctl-default/description +$(Package/batctl/description) +Standard subcommands for configuration and online debugging are enabled. +endef + define Package/batctl-full $(call Package/batctl/Default) TITLE:=B.A.T.M.A.N. Advanced user space configuration tool (Full) @@ -52,11 +69,9 @@ $(call Package/batctl/Default) ALTERNATIVES:=300:/usr/sbin/batctl:/usr/libexec/batctl-full endef -define Package/batctl/description -batctl is a more intuitive managment utility for B.A.T.M.A.N.-Advanced. -It is an easier method for configuring batman-adv and provides some -additional tools for debugging as well. This package builds -version $(PKG_VERSION) of the user space utility. +define Package/batctl-full/description +$(Package/batctl/description) +Subcommands for configuration, online and offline debugging are enabled. endef # The linker can identify unused sections of a binary when each symbol is stored @@ -107,6 +122,7 @@ config-n := \ log \ loglevel \ mcast_flags \ + multicast_forceflood \ multicast_mode \ nc_nodes \ neighbors \ @@ -135,6 +151,7 @@ config-settings := \ interface \ isolation_mark \ loglevel \ + multicast_forceflood \ multicast_mode \ network_coding \ orig_interval \ diff --git a/batctl/patches/0001-batctl-Add-hop_penalty-command.patch b/batctl/patches/0001-batctl-Add-hop_penalty-command.patch deleted file mode 100644 index ae95f87..0000000 --- a/batctl/patches/0001-batctl-Add-hop_penalty-command.patch +++ /dev/null @@ -1,59 +0,0 @@ -From: Sven Eckelmann -Date: Fri, 22 Feb 2019 22:19:59 +0100 -Subject: batctl: Add hop_penalty command - -Signed-off-by: Sven Eckelmann - -diff --git a/Makefile b/Makefile -index 4d8b7095a1e307f0dde7660a718e4ad9c6b11102..55105cc754f546891ba2fcaf57dc8b3ac4c22f71 100755 ---- a/Makefile -+++ b/Makefile -@@ -63,6 +63,7 @@ $(eval $(call add_command,event,y)) - $(eval $(call add_command,fragmentation,y)) - $(eval $(call add_command,gateways,y)) - $(eval $(call add_command,gw_mode,y)) -+$(eval $(call add_command,hop_penalty,y)) - $(eval $(call add_command,interface,y)) - $(eval $(call add_command,isolation_mark,y)) - $(eval $(call add_command,log,y)) -diff --git a/hop_penalty.c b/hop_penalty.c -new file mode 100644 -index 0000000000000000000000000000000000000000..6e6a06a661e2ffbb76793116fb214396523bbd8d ---- /dev/null -+++ b/hop_penalty.c -@@ -0,0 +1,35 @@ -+// SPDX-License-Identifier: GPL-2.0 -+/* Copyright (C) 2009-2019 B.A.T.M.A.N. contributors: -+ * -+ * Marek Lindner -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of version 2 of the GNU General Public -+ * License as published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope that it will be useful, but -+ * WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -+ * 02110-1301, USA -+ * -+ * License-Filename: LICENSES/preferred/GPL-2.0 -+ */ -+ -+#include -+ -+#include "main.h" -+#include "sys.h" -+ -+static struct settings_data batctl_settings_hop_penalty = { -+ .sysfs_name = "hop_penalty", -+ .params = NULL, -+}; -+ -+COMMAND_NAMED(SUBCOMMAND, hop_penalty, "hp", handle_sys_setting, -+ COMMAND_FLAG_MESH_IFACE, &batctl_settings_hop_penalty, -+ "[penalty] \tdisplay or modify hop_penalty setting"); diff --git a/batman-adv/Config.in b/batman-adv/Config.in index 127a020..065302c 100644 --- a/batman-adv/Config.in +++ b/batman-adv/Config.in @@ -1,5 +1,5 @@ # SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2007-2018 B.A.T.M.A.N. contributors: +# Copyright (C) 2007-2019 B.A.T.M.A.N. contributors: # # Marek Lindner, Simon Wunderlich # @@ -94,8 +94,9 @@ config BATMAN_ADV_DEBUG help This is an option for use by developers; most people should say N here. This enables compilation of support for - outputting debugging information to the kernel log. The - output is controlled via the module parameter debug. + outputting debugging information to the debugfs log or tracing + buffer. The output is controlled via the batadv netdev specific + log_level setting. config BATMAN_ADV_TRACING bool "B.A.T.M.A.N. tracing support" diff --git a/batman-adv/Makefile b/batman-adv/Makefile index ed735eb..d88b200 100644 --- a/batman-adv/Makefile +++ b/batman-adv/Makefile @@ -9,9 +9,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=batman-adv -PKG_VERSION:=2019.0 -PKG_RELEASE:=4 -PKG_HASH:=3e97d8a771cdbd7b2df42c52b88e071eaa58b5d28eb4e17a4b13b6698debbdc0 +PKG_VERSION:=2019.1 +PKG_RELEASE:=0 +PKG_HASH:=b99d605e06ca0c02e649b8910995f0b3a93145efb076f01ec0e2ac300cc1c5a9 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://downloads.open-mesh.org/batman/releases/batman-adv-$(PKG_VERSION) diff --git a/batman-adv/src/compat-hacks.h b/batman-adv/src/compat-hacks.h index cfeb348..d8de483 100644 --- a/batman-adv/src/compat-hacks.h +++ b/batman-adv/src/compat-hacks.h @@ -48,9 +48,43 @@ struct sk_buff *skb_checksum_trimmed(struct sk_buff *skb, unsigned int transport_len, __sum16(*skb_chkf)(struct sk_buff *skb)); -int ip_mc_check_igmp(struct sk_buff *skb, struct sk_buff **skb_trimmed); +int ip_mc_check_igmp(struct sk_buff *skb); +int ipv6_mc_check_mld(struct sk_buff *skb); -int ipv6_mc_check_mld(struct sk_buff *skb, struct sk_buff **skb_trimmed); +#elif LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0) + +#include_next +#include_next + +static inline int batadv_ipv6_mc_check_mld1(struct sk_buff *skb) +{ + return ipv6_mc_check_mld(skb, NULL); +} + +static inline int batadv_ipv6_mc_check_mld2(struct sk_buff *skb, + struct sk_buff **skb_trimmed) +{ + return ipv6_mc_check_mld(skb, skb_trimmed); +} + +#define ipv6_mc_check_mld_get(_1, _2, ipv6_mc_check_mld_name, ...) ipv6_mc_check_mld_name +#define ipv6_mc_check_mld(...) \ + ipv6_mc_check_mld_get(__VA_ARGS__, batadv_ipv6_mc_check_mld2, batadv_ipv6_mc_check_mld1)(__VA_ARGS__) + +static inline int batadv_ip_mc_check_igmp1(struct sk_buff *skb) +{ + return ip_mc_check_igmp(skb, NULL); +} + +static inline int batadv_ip_mc_check_igmp2(struct sk_buff *skb, + struct sk_buff **skb_trimmed) +{ + return ip_mc_check_igmp(skb, skb_trimmed); +} + +#define ip_mc_check_igmp_get(_1, _2, ip_mc_check_igmp_name, ...) ip_mc_check_igmp_name +#define ip_mc_check_igmp(...) \ + ip_mc_check_igmp_get(__VA_ARGS__, batadv_ip_mc_check_igmp2, batadv_ip_mc_check_igmp1)(__VA_ARGS__) #endif /* < KERNEL_VERSION(4, 2, 0) */