# SPDX-License-Identifier: GPL-2.0-or-later . /lib/functions/uci-defaults.sh . /lib/functions.sh . /lib/functions/system.sh board_config_update board=$(board_name) wg_set_opt_interface() { local device="$1" local offset="$2" ucidef_set_interface "$device" device "$device" protocol static ipaddr "10.0.${offset}.1" netmask 255.255.255.0 } case "$board" in watchguard,firebox-m300) ucidef_set_interfaces_lan_wan "eth1" "eth0" wg_set_opt_interface "eth2" "2" sweth_mac_offset=0x186d for sweth in /sys/class/net/sweth*; do device="$(basename "$sweth")" mac="$(mtd_get_mac_text wg_cfg0 "$sweth_mac_offset")" switchports="$switchports $device" ucidef_set_network_device_mac "$device" "$mac" wg_set_opt_interface "$device" "${device#sweth}" sweth_mac_offset=$(printf "0x%X\n" $(( $sweth_mac_offset + 0x14))) done ;; esac board_config_flush exit 0