X-Git-Url: https://git.archive.openwrt.org/?a=blobdiff_plain;f=dummy%2Fnetifd-proto.sh;h=104edc7b6b55fad89c0f1504716daba288541244;hb=e8a8f555aac97b47bd036264b598affec66f96d5;hp=d15505cb1c36598e78aa76eeefee7d6cd8707da2;hpb=ef6ded206fcebd9852df1f649139afd05db60985;p=project%2Fnetifd.git diff --git a/dummy/netifd-proto.sh b/dummy/netifd-proto.sh index d15505c..104edc7 100755 --- a/dummy/netifd-proto.sh +++ b/dummy/netifd-proto.sh @@ -26,6 +26,16 @@ add_default_handler() { esac } +_proto_do_teardown() { + json_load "$data" + eval "$1_teardown \"$interface\" \"$ifname\"" +} + +_proto_do_setup() { + json_load "$data" + eval "$1_setup \"$interface\" \"$ifname\"" +} + proto="$1"; shift cmd="$1"; shift interface="$1"; shift @@ -56,8 +66,8 @@ case "$cmd" in [[ "$proto" == "$1" ]] || return 0 case "$cmd" in - setup) eval "$1_setup \"\$interface\" \"\$data\" \"\$ifname\"" ;; - teardown) eval "$1_teardown \"\$interface\" \"\$data\" \"\$ifname\"" ;; + setup) _proto_do_setup "$1";; + teardown) _proto_do_teardown "$1" ;; *) return 1 ;; esac }