diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-09-11 12:35:21 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2011-09-11 12:35:35 +0200 |
commit | 7f081660bf24fed49a716022a6ea17bb1dcde73a (patch) | |
tree | b64c2a4926b2e6370c53117f85dac0727e2bbf39 | |
parent | f505119b07b89ad23f4264e77b0bf0f0c0400399 (diff) |
proto-shell: add a config option for setting PROTO_FLAG_NODEV
-rw-r--r-- | proto-shell.c | 4 | ||||
-rwxr-xr-x | proto/netifd-proto.sh | 6 | ||||
-rwxr-xr-x | proto/ppp.sh | 3 |
3 files changed, 10 insertions, 3 deletions
diff --git a/proto-shell.c b/proto-shell.c index d014b43..8612631 100644 --- a/proto-shell.c +++ b/proto-shell.c @@ -230,6 +230,10 @@ proto_shell_add_handler(const char *script, json_object *obj) proto->config_params = &handler->config; proto->attach = proto_shell_attach; + tmp = get_field(obj, "no-device", json_type_boolean); + if (tmp && json_object_get_boolean(tmp)) + handler->proto.flags |= PROTO_FLAG_NODEV; + config = get_field(obj, "config", json_type_array); if (config) handler->config_buf = proto_shell_parse_config(&handler->config, config); diff --git a/proto/netifd-proto.sh b/proto/netifd-proto.sh index b91863f..9aace59 100755 --- a/proto/netifd-proto.sh +++ b/proto/netifd-proto.sh @@ -33,14 +33,16 @@ data="$3" case "$cmd" in dump) add_protocol() { - immediate=0 + no_device=0 + available=0 add_default_handler "$1_init_config" json_init json_add_string "name" "$1" eval "$1_init" - json_add_boolean immediate "$immediate" + json_add_boolean no-device "$no_device" + json_add_boolean available "$available" json_add_array "config" eval "$1_init_config" json_close_array diff --git a/proto/ppp.sh b/proto/ppp.sh index 9a5816b..7eed579 100755 --- a/proto/ppp.sh +++ b/proto/ppp.sh @@ -17,7 +17,8 @@ ppp_teardown() { } ppp_init() { - return + no_device=1 + available=1 } add_protocol ppp |