]> git.ipfire.org Git - people/stevee/network.git/blobdiff - src/hooks/configs/ipv6-static
Replace ipcalc by inetcalc
[people/stevee/network.git] / src / hooks / configs / ipv6-static
index c64ec8b0d6448235dcfc0dd50dd041f100e53df5..2a5e8e2c022fe8afa82f3bf953766343203219ad 100644 (file)
 #                                                                             #
 ###############################################################################
 
-. /usr/lib/network/header-port
+. /usr/lib/network/header-config
 
-HOOK_SETTINGS="HOOK ADDRESS PREFIX GATEWAY"
+HOOK_CONFIG_SETTINGS="HOOK ADDRESS PREFIX GATEWAY"
 
-function hook_check() {
+hook_check_config_settings() {
        assert isset ADDRESS
        assert isinteger PREFIX
 
@@ -33,7 +33,7 @@ function hook_check() {
        fi
 }
 
-function hook_create() {
+hook_new() {
        local zone=${1}
        shift
 
@@ -53,18 +53,18 @@ function hook_create() {
        done
 
        # Store IPv6 address in small format.
-       ADDRESS=$(ipv6_implode ${ADDRESS})
+       ADDRESS=$(ipv6_format "${ADDRESS}")
 
        if [ -n "${GATEWAY}" ]; then
-               GATEWAY=$(ipv6_implode ${GATEWAY})
+               GATEWAY=$(ipv6_format "${GATEWAY}")
        fi
 
-       zone_config_settings_write "${zone}" "${HOOK}.$(ipv6_hash ${ADDRESS}).${PREFIX}" ${HOOK_SETTINGS}
+       zone_config_settings_write "${zone}" "${HOOK}.$(ipv6_hash ${ADDRESS}).${PREFIX}"
 
        exit ${EXIT_OK}
 }
 
-function hook_up() {
+hook_up() {
        local zone=${1}
        local config=${2}
        shift 2
@@ -74,19 +74,20 @@ function hook_up() {
                exit ${EXIT_ERROR}
        fi
        
-       zone_config_settings_read "${zone}" "${config}" ${HOOK_SETTINGS}
+       zone_config_settings_read "${zone}" "${config}"
 
        ip_address_add ${zone} ${ADDRESS}/${PREFIX}
 
-       routing_db_set ${zone} ipv6 local-ip-address ${ADDRESS}/${PREFIX}
-       routing_db_set ${zone} ipv6 remote-ip-address ${GATEWAY}
-       routing_db_set ${zone} ipv6 active 1
+       db_set "${zone}/ipv6/local-ip-address" "${ADDRESS}/${PREFIX}"
+       db_set "${zone}/ipv6/remote-ip-address" "${GATEWAY}"
+       db_set "${zone}/ipv6/active" 1
+
        routing_default_update
 
        exit ${EXIT_OK}
 }
 
-function hook_down() {
+hook_down() {
        local zone=${1}
        local config=${2}
        shift 2
@@ -97,9 +98,9 @@ function hook_down() {
        fi
 
        # Remove routing information from database.
-       routing_db_remove ${zone} ipv6
+       db_delete "${zone}/ipv6"
        
-       zone_config_settings_read "${zone}" "${config}" ${HOOK_SETTINGS}
+       zone_config_settings_read "${zone}" "${config}"
 
        ip_address_del ${zone} ${ADDRESS}/${PREFIX}
 
@@ -109,7 +110,7 @@ function hook_down() {
        exit ${EXIT_OK}
 }
 
-function hook_status() {
+hook_status() {
        local zone=${1}
        local config=${2}
        shift 2
@@ -119,10 +120,10 @@ function hook_status() {
                exit ${EXIT_ERROR}
        fi
        
-       zone_config_settings_read "${zone}" "${config}" ${HOOK_SETTINGS}
+       zone_config_settings_read "${zone}" "${config}"
 
        # Make sure ADDRESS is as short as possible.
-       ADDRESS=$(ipv6_implode ${ADDRESS})
+       ADDRESS=$(ipv6_format "${ADDRESS}")
 
        local status
        if zone_has_ip ${zone} ${ADDRESS}/${PREFIX}; then