diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-09-11 16:22:29 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2011-09-11 16:22:29 +0200 |
commit | a7bb1dae88e9c4676c3e1545cefd7398d21603a4 (patch) | |
tree | b46f1641c41fc473c4ced26f523157e053cc6e2a | |
parent | 7f081660bf24fed49a716022a6ea17bb1dcde73a (diff) |
pass ifname to the shell proto handler
-rw-r--r-- | proto-shell.c | 6 | ||||
-rwxr-xr-x | proto/netifd-proto.sh | 5 | ||||
-rwxr-xr-x | proto/ppp.sh | 2 |
3 files changed, 9 insertions, 4 deletions
diff --git a/proto-shell.c b/proto-shell.c index 8612631..574d969 100644 --- a/proto-shell.c +++ b/proto-shell.c @@ -57,7 +57,7 @@ proto_shell_handler(struct interface_proto_state *proto, { struct proto_shell_state *state; struct proto_shell_handler *handler; - const char *argv[5]; + const char *argv[6]; char *config; int ret; @@ -73,6 +73,10 @@ proto_shell_handler(struct interface_proto_state *proto, argv[2] = "teardown"; argv[3] = config; argv[4] = NULL; + if (proto->iface->main_dev.dev) { + argv[4] = proto->iface->main_dev.dev->ifname; + argv[5] = NULL; + } switch(cmd) { case PROTO_CMD_SETUP: diff --git a/proto/netifd-proto.sh b/proto/netifd-proto.sh index 9aace59..93bf37a 100755 --- a/proto/netifd-proto.sh +++ b/proto/netifd-proto.sh @@ -29,6 +29,7 @@ add_default_handler() { proto="$1" cmd="$2" data="$3" +ifname="$4" case "$cmd" in dump) @@ -54,8 +55,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 \"\$data\" \"\$ifname\"" ;; + teardown) eval "$1_teardown \"\$data\" \"\$ifname\"" ;; *) return 1 ;; esac } diff --git a/proto/ppp.sh b/proto/ppp.sh index 7eed579..428096b 100755 --- a/proto/ppp.sh +++ b/proto/ppp.sh @@ -32,7 +32,7 @@ pppoe_init() { } pppoe_setup() { - echo "pppoe_setup: $1" + echo "pppoe_setup($2): $1" } pppoe_teardown() { |