Add the required hook_new function and "id" information which have been introduced in earlier commits to make this hook work again.
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org --- src/hooks/configs/static | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/src/hooks/configs/static b/src/hooks/configs/static index 91bba8a..37f3d32 100644 --- a/src/hooks/configs/static +++ b/src/hooks/configs/static @@ -52,6 +52,8 @@ hook_check_config_settings() {
hook_parse_cmdline() { local protocol + local id="${1}" + shift
while [ $# -gt 0 ]; do case "${1}" in @@ -153,12 +155,34 @@ hook_parse_cmdline() { fi
# Check any conflicts - if zone_config_check_same_setting "${zone}" "static" "ADDRESS" "${ADDRESS}"; then + if zone_config_check_same_setting "${zone}" "static" "${id}" "ADDRESS" "${ADDRESS}"; then error "A static configuration with the same address is already configured" return ${EXIT_CONF_ERROR} fi }
+hook_new() { + local zone="${1}" + shift + + if zone_config_hook_is_configured ${zone} "static"; then + log ERROR "You can configure the static hook only once for a zone" + return ${EXIT_ERROR} + fi + + local id=$(zone_config_get_new_id ${zone}) + log DEBUG "ID for the config is: ${id}" + + if ! hook_parse_cmdline "${id}" "$@"; then + # Return an error if the parsing of the cmd line fails + return ${EXIT_ERROR} + fi + + zone_config_settings_write "${zone}" "${HOOK}" "${id}" + + exit ${EXIT_OK} +} + hook_up() { local zone="${1}" local config="${2}"