X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/e27bf76f82aec01a7065cbd2d9ba7fdba18ac058..d4ce92dbb7142a3465885fda6d7d4801eb98b74e:/package/netifd/files/lib/network/config.sh diff --git a/package/netifd/files/lib/network/config.sh b/package/netifd/files/lib/network/config.sh index ab3efe8c0..8fa9b1ac3 100755 --- a/package/netifd/files/lib/network/config.sh +++ b/package/netifd/files/lib/network/config.sh @@ -4,7 +4,21 @@ . /usr/share/libubox/jshn.sh find_config() { - return + local device="$1" + for ifobj in `ubus list network.interface.\*`; do + interface="${ifobj##network.interface.}" + ( + json_load "$(ifstatus $interface)" + json_get_var ifdev device + json_get_var ifl3dev l3_device + if [[ "$device" = "$ifdev" ]] || [[ "$device" = "$ifl3dev" ]]; then + echo "$interface" + exit 0 + else + exit 1 + fi + ) && return + done } unbridge() { @@ -57,3 +71,8 @@ setup_interface() { ubus call network.interface."$config" add_device "{ \"name\": \"$iface\" }" } +do_sysctl() { + [ -n "$2" ] && \ + sysctl -n -e -w "$1=$2" >/dev/null || \ + sysctl -n -e "$1" +}