X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=blobdiff_plain;f=proto%2Fnetifd-proto.sh;h=b91863f7346fc4cd3548a2bd714d2184ef85e795;hp=376428141612e34a7e9438eca6d9dc66aa77de84;hb=c601d036d6e9efce0c31eecd0fc66a716f41f2a3;hpb=0e54c1a6088b7df98da521e4b60ac8b7e6429662;ds=sidebyside diff --git a/proto/netifd-proto.sh b/proto/netifd-proto.sh index 3764281..b91863f 100755 --- a/proto/netifd-proto.sh +++ b/proto/netifd-proto.sh @@ -26,7 +26,11 @@ add_default_handler() { esac } -case "$1" in +proto="$1" +cmd="$2" +data="$3" + +case "$cmd" in dump) add_protocol() { immediate=0 @@ -45,7 +49,13 @@ case "$1" in ;; *) add_protocol() { - return; + [[ "$proto" == "$1" ]] || return 0 + + case "$cmd" in + setup) eval "$1_setup \"\$data\"" ;; + teardown) eval "$1_teardown \"\$data\"" ;; + *) return 1 ;; + esac } ;; esac