fix refcount bugs when dev->set_state fails
[project/netifd.git] / proto / netifd-proto.sh
index 9aace59..d15505c 100755 (executable)
@@ -26,9 +26,11 @@ add_default_handler() {
        esac
 }
 
-proto="$1"
-cmd="$2"
-data="$3"
+proto="$1"; shift
+cmd="$1"; shift
+interface="$1"; shift
+data="$1"; shift
+ifname="$1"; shift
 
 case "$cmd" in
        dump)
@@ -54,8 +56,8 @@ case "$cmd" in
                        [[ "$proto" == "$1" ]] || return 0
 
                        case "$cmd" in
-                               setup) eval "$1_setup \"\$data\"" ;;
-                               teardown) eval "$1_teardown \"\$data\"" ;;
+                               setup) eval "$1_setup \"\$interface\" \"\$data\" \"\$ifname\"" ;;
+                               teardown) eval "$1_teardown \"\$interface\" \"\$data\" \"\$ifname\"" ;;
                                *) return 1 ;;
                        esac
                }