PKG_NAME:=batctl
PKG_VERSION:=2018.4
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_HASH:=e43827a5e868b4e134e77ca04da989fde1981463166bf1b6f2053acc3edd6257
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
URL:=https://www.open-mesh.org/
SECTION:=net
CATEGORY:=Network
- DEPENDS:=+kmod-batman-adv +libnl-tiny +libc +librt
+ DEPENDS:=+libnl-tiny +libc +librt
PROVIDES:=batctl
MAINTAINER:=Simon Wunderlich <sw@simonwunderlich.de>
endef
PKG_NAME:=batman-adv
PKG_VERSION:=2018.4
-PKG_RELEASE:=0
+PKG_RELEASE:=1
PKG_HASH:=3500b4bc7d41ce1adef0b0684972a439d48b454ba78282e94df13ba90605484d
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
URL:=https://www.open-mesh.org/
MAINTAINER:=Simon Wunderlich <sw@simonwunderlich.de>
SUBMENU:=Network Support
- DEPENDS:=+BATMAN_ADV_BLA:kmod-lib-crc16 +kmod-lib-crc32c +kmod-cfg80211
+ DEPENDS:=+BATMAN_ADV_BLA:kmod-lib-crc16 +kmod-lib-crc32c +kmod-cfg80211 +batctl
TITLE:=B.A.T.M.A.N. Adv
FILES:=$(PKG_BUILD_DIR)/net/batman-adv/batman-adv.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoProbe,batman-adv)
[ ! -f "/sys/class/net/$mesh/mesh/orig_interval" ] && echo "batman-adv mesh $mesh does not exist - check your interface configuration" && return 1
- [ -n "$aggregated_ogms" ] && echo $aggregated_ogms > /sys/class/net/$mesh/mesh/aggregated_ogms
- [ -n "$ap_isolation" ] && echo $ap_isolation > /sys/class/net/$mesh/mesh/ap_isolation
- [ -n "$bonding" ] && echo $bonding > /sys/class/net/$mesh/mesh/bonding
- [ -n "$bridge_loop_avoidance" ] && echo $bridge_loop_avoidance > /sys/class/net/$mesh/mesh/bridge_loop_avoidance 2>&-
- [ -n "$distributed_arp_table" ] && echo $distributed_arp_table > /sys/class/net/$mesh/mesh/distributed_arp_table 2>&-
- [ -n "$fragmentation" ] && echo $fragmentation > /sys/class/net/$mesh/mesh/fragmentation
+ [ -n "$aggregated_ogms" ] && batctl -m "$mesh" aggregation "$aggregated_ogms"
+ [ -n "$ap_isolation" ] && batctl -m "$mesh" ap_isolation "$ap_isolation"
+ [ -n "$bonding" ] && batctl -m "$mesh" bonding "$bonding"
+ [ -n "$bridge_loop_avoidance" ] && batctl -m "$mesh" bridge_loop_avoidance "$bridge_loop_avoidance" 2>&-
+ [ -n "$distributed_arp_table" ] && batctl -m "$mesh" distributed_arp_table "$distributed_arp_table" 2>&-
+ [ -n "$fragmentation" ] && batctl -m "$mesh" fragmentation "$fragmentation"
+
[ -n "$gw_bandwidth" ] && echo $gw_bandwidth > /sys/class/net/$mesh/mesh/gw_bandwidth
[ -n "$gw_mode" ] && echo $gw_mode > /sys/class/net/$mesh/mesh/gw_mode
[ -n "$gw_sel_class" ] && echo $gw_sel_class > /sys/class/net/$mesh/mesh/gw_sel_class
[ -n "$hop_penalty" ] && echo $hop_penalty > /sys/class/net/$mesh/mesh/hop_penalty
- [ -n "$isolation_mark" ] && echo $isolation_mark > /sys/class/net/$mesh/mesh/isolation_mark
- [ -n "$multicast_mode" ] && echo $multicast_mode > /sys/class/net/$mesh/mesh/multicast_mode 2>&-
- [ -n "$network_coding" ] && echo $network_coding > /sys/class/net/$mesh/mesh/network_coding 2>&-
- [ -n "$log_level" ] && echo $log_level > /sys/class/net/$mesh/mesh/log_level 2>&-
- [ -n "$orig_interval" ] && echo $orig_interval > /sys/class/net/$mesh/mesh/orig_interval
+
+ [ -n "$isolation_mark" ] && batctl -m "$mesh" isolation_mark "$isolation_mark"
+ [ -n "$multicast_mode" ] && batctl -m "$mesh" multicast_mode "$multicast_mode" 2>&-
+ [ -n "$network_coding" ] && batctl -m "$mesh" network_coding "$network_coding" 2>&-
+ [ -n "$log_level" ] && batctl -m "$mesh" loglevel "$log_level" 2>&-
+ [ -n "$orig_interval" ] && batctl -m "$mesh" orig_interval "$orig_interval"
}
json_get_vars mesh routing_algo
[ -n "$routing_algo" ] || routing_algo="BATMAN_IV"
- echo "$routing_algo" > "/sys/module/batman_adv/parameters/routing_algo"
+ batctl routing_algo "$routing_algo"
- echo "$mesh" > "/sys/class/net/$iface/batman_adv/mesh_iface"
+ batctl -m "$mesh" interface add "$iface"
proto_init_update "$iface" 1
proto_send_update "$config"
}
local config="$1"
local iface="$2"
- echo "none" > "/sys/class/net/$iface/batman_adv/mesh_iface" || true
+ local mesh
+ json_get_vars mesh
+
+ batctl -m "$mesh" interface del "$iface" || true
}
add_protocol batadv
local config="$1"
local iface="$2"
- # VLAN specific variables
- local device="${iface%.*}"
- local vid="${iface#*.}"
-
# batadv_vlan options
local ap_isolation
json_get_vars ap_isolation
- echo "$ap_isolation" > "/sys/class/net/${device}/mesh/vlan${vid}/ap_isolation"
+ batctl -m "$iface" ap_isolation "$ap_isolation"
proto_init_update "$iface" 1
proto_send_update "$config"
}