From: Jonatan Schlag Date: Wed, 19 Jul 2017 08:52:38 +0000 (+0200) Subject: ipv4-static: create hook_parse_cmdline function X-Git-Tag: 009~157 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4cc762559bfe4e7de697e6ddd2c578d7e3b7091c;p=network.git ipv4-static: create hook_parse_cmdline function This patch just split the parsing of the cmd line into a separate function to allowing an edit with the generic hook_edit function. Signed-off-by: Jonatan Schlag Signed-off-by: Michael Tremer --- diff --git a/src/hooks/configs/ipv4-static b/src/hooks/configs/ipv4-static index c3952004..36629e0f 100644 --- a/src/hooks/configs/ipv4-static +++ b/src/hooks/configs/ipv4-static @@ -35,12 +35,9 @@ hook_check_config_settings() { fi } -hook_new() { - local zone="${1}" - assert zone_exists "${zone}" - shift - +hook_parse_cmdline() { local arg + while read -r arg; do local key="$(cli_get_key "${arg}")" local val="$(cli_get_val "${arg}")" @@ -105,6 +102,18 @@ hook_new() { if ! isset GATEWAY && zone_is_nonlocal "${zone}"; then warning "You did not configure a gateway for a non-local zone" fi +} + +hook_new() { + local zone="${1}" + shift + + assert zone_exists "${zone}" + + if ! hook_parse_cmdline $@; then + # Return an error if the parsing of the cmd line fails + return ${EXIT_ERROR} + fi zone_config_settings_write "${zone}" "${HOOK}"