From c6f07c65784be916c5cf61ff44f44747a3555c15 Mon Sep 17 00:00:00 2001 From: Gui Iribarren Date: Sun, 28 Jul 2013 20:15:29 -0300 Subject: [PATCH] batman-adv: provide migration script for old-style settings -> netifd Signed-off-by: Gui Iribarren --- .../uci-defaults/batadv-netifd-uci-migrations | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100755 batman-adv/files/etc/uci-defaults/batadv-netifd-uci-migrations diff --git a/batman-adv/files/etc/uci-defaults/batadv-netifd-uci-migrations b/batman-adv/files/etc/uci-defaults/batadv-netifd-uci-migrations new file mode 100755 index 0000000..df33a7d --- /dev/null +++ b/batman-adv/files/etc/uci-defaults/batadv-netifd-uci-migrations @@ -0,0 +1,38 @@ +#!/bin/sh +# Copyright (C) 2012 Gui Iribarren +# This is free software, licensed under the GNU General Public License v3. + +local batmeshes="$(uci -q show batman-adv \ + | sed -ne 's/^batman-adv.\([^.]*\)=mesh$/\1/p')" + +for mesh in $batmeshes ; do + + local batifaces="$(uci -q get batman-adv.$mesh.interfaces)" + + for iface in $batifaces ; do + if [ "$(uci -q get "network.$iface")" == "interface" ] ; then + uci set network.$iface.proto=batadv + uci set network.$iface.mesh=$mesh + uci set batman-adv.$mesh.interfaces="$(echo $batifaces | sed "s/\<$iface\>//g")" + fi + done + + local batparams="aggregated_ogms ap_isolation bonding bridge_loop_avoidance \ + distributed_arp_table fragmentation gw_bandwidth gw_mode gw_sel_class \ + hop_penalty network_coding log_level orig_interval vis_mode" + + for param in $batparams ; do + local value="$(uci -q get batman-adv.$mesh.$param)" + if [ "$value" ] ; then + uci set network.$mesh=interface + uci set network.$mesh.proto=batmesh + uci set network.$mesh.ifname=$mesh + uci set network.$mesh.$param=$value + uci delete batman-adv.$mesh.$param + fi + done + + uci commit network + uci commit batman-adv +done +