diff options
Diffstat (limited to 'src/hooks/dhcp/run_script/tests/run_script_test.sh.in')
-rw-r--r-- | src/hooks/dhcp/run_script/tests/run_script_test.sh.in | 531 |
1 files changed, 531 insertions, 0 deletions
diff --git a/src/hooks/dhcp/run_script/tests/run_script_test.sh.in b/src/hooks/dhcp/run_script/tests/run_script_test.sh.in new file mode 100644 index 0000000..9ebb2d7 --- /dev/null +++ b/src/hooks/dhcp/run_script/tests/run_script_test.sh.in @@ -0,0 +1,531 @@ +#!/bin/sh + +# Copyright (C) 2021 Internet Systems Consortium, Inc. ("ISC") +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Exit with error if commands exit with non-zero and if undefined variables are +# used. +set -eu + +LOG_FILE="@abs_top_builddir@/src/hooks/dhcp/run_script/tests/test.log" + +ECHO_TO_FILE() { + echo "${@}" + echo "${@}" > ${LOG_FILE} +} + +ASSERT_EQ() { + EXPECTED=${1} + ACTUAL=${2} + if ! test "${EXPECTED}" = "${ACTUAL}"; then + ECHO_TO_FILE "FAILED" + ECHO_TO_FILE "Values differ:" + ECHO_TO_FILE " expected: ${EXPECTED}" + ECHO_TO_FILE " actual: ${ACTUAL}" + exit 123 + fi +} + +TEST_EQ() { + TEST_VARIABLE=${1} + TEST_EXPECTED="${1}=${2}" + TEST_ACTUAL=$(env | grep -E "^${TEST_VARIABLE}=") + ASSERT_EQ "${TEST_EXPECTED}" "${TEST_ACTUAL}" +} + +unknown_handle() { + ECHO_TO_FILE "Unhandled function call ${*}" + exit 123 +} + +lease4_renew () { + TEST_EQ "QUERY4_TYPE" "UNKNOWN" + TEST_EQ "QUERY4_TXID" "0" + TEST_EQ "QUERY4_LOCAL_ADDR" "0.0.0.0" + TEST_EQ "QUERY4_LOCAL_PORT" "67" + TEST_EQ "QUERY4_REMOTE_ADDR" "0.0.0.0" + TEST_EQ "QUERY4_REMOTE_PORT" "68" + TEST_EQ "QUERY4_IFACE_INDEX" "2" + TEST_EQ "QUERY4_IFACE_NAME" "eth1" + TEST_EQ "QUERY4_HOPS" "0" + TEST_EQ "QUERY4_SECS" "0" + TEST_EQ "QUERY4_FLAGS" "0" + TEST_EQ "QUERY4_CIADDR" "0.0.0.0" + TEST_EQ "QUERY4_SIADDR" "0.0.0.0" + TEST_EQ "QUERY4_YIADDR" "0.0.0.0" + TEST_EQ "QUERY4_GIADDR" "0.0.0.0" + TEST_EQ "QUERY4_RELAYED" "false" + TEST_EQ "QUERY4_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_LOCAL_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_LOCAL_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_OPTION_82" "0x0105686F776479020587F67977EF06061A2B3C4D5E6F" + TEST_EQ "QUERY4_OPTION_82_SUB_OPTION_1" "0x686F776479" + TEST_EQ "QUERY4_OPTION_82_SUB_OPTION_2" "0x87F67977EF" + TEST_EQ "SUBNET4_ID" "6" + TEST_EQ "SUBNET4_NAME" "182.168.0.1/2" + TEST_EQ "SUBNET4_PREFIX" "182.168.0.1" + TEST_EQ "SUBNET4_PREFIX_LEN" "2" + TEST_EQ "PKT4_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "PKT4_HWADDR" "00:01:02:03" + TEST_EQ "PKT4_HWADDR_TYPE" "1" + TEST_EQ "LEASE4_ADDRESS" "192.168.0.1" + TEST_EQ "LEASE4_CLTT" "3" + TEST_EQ "LEASE4_HOSTNAME" "test.hostname" + TEST_EQ "LEASE4_HWADDR" "00:01:02:03" + TEST_EQ "LEASE4_HWADDR_TYPE" "1" + TEST_EQ "LEASE4_STATE" "default" + TEST_EQ "LEASE4_SUBNET_ID" "4" + TEST_EQ "LEASE4_VALID_LIFETIME" "2" + TEST_EQ "LEASE4_CLIENT_ID" "00:01:02:03:04:05:06" + ECHO_TO_FILE "SUCCESS" +} + +lease4_expire () { + TEST_EQ "LEASE4_ADDRESS" "192.168.0.1" + TEST_EQ "LEASE4_CLTT" "3" + TEST_EQ "LEASE4_HOSTNAME" "test.hostname" + TEST_EQ "LEASE4_HWADDR" "00:01:02:03" + TEST_EQ "LEASE4_HWADDR_TYPE" "1" + TEST_EQ "LEASE4_STATE" "default" + TEST_EQ "LEASE4_SUBNET_ID" "4" + TEST_EQ "LEASE4_VALID_LIFETIME" "2" + TEST_EQ "LEASE4_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "REMOVE_LEASE" "true" + ECHO_TO_FILE "SUCCESS" +} + +lease4_recover () { + TEST_EQ "LEASE4_ADDRESS" "192.168.0.1" + TEST_EQ "LEASE4_CLTT" "3" + TEST_EQ "LEASE4_HOSTNAME" "test.hostname" + TEST_EQ "LEASE4_HWADDR" "00:01:02:03" + TEST_EQ "LEASE4_HWADDR_TYPE" "1" + TEST_EQ "LEASE4_STATE" "default" + TEST_EQ "LEASE4_SUBNET_ID" "4" + TEST_EQ "LEASE4_VALID_LIFETIME" "2" + TEST_EQ "LEASE4_CLIENT_ID" "00:01:02:03:04:05:06" + ECHO_TO_FILE "SUCCESS" +} + +leases4_committed () { + TEST_EQ "QUERY4_TYPE" "UNKNOWN" + TEST_EQ "QUERY4_TXID" "0" + TEST_EQ "QUERY4_LOCAL_ADDR" "0.0.0.0" + TEST_EQ "QUERY4_LOCAL_PORT" "67" + TEST_EQ "QUERY4_REMOTE_ADDR" "0.0.0.0" + TEST_EQ "QUERY4_REMOTE_PORT" "68" + TEST_EQ "QUERY4_IFACE_INDEX" "2" + TEST_EQ "QUERY4_IFACE_NAME" "eth1" + TEST_EQ "QUERY4_HOPS" "0" + TEST_EQ "QUERY4_SECS" "0" + TEST_EQ "QUERY4_FLAGS" "0" + TEST_EQ "QUERY4_CIADDR" "0.0.0.0" + TEST_EQ "QUERY4_SIADDR" "0.0.0.0" + TEST_EQ "QUERY4_YIADDR" "0.0.0.0" + TEST_EQ "QUERY4_GIADDR" "0.0.0.0" + TEST_EQ "QUERY4_RELAYED" "false" + TEST_EQ "QUERY4_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_LOCAL_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_LOCAL_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_OPTION_82" "0x0105686F776479020587F67977EF06061A2B3C4D5E6F" + TEST_EQ "QUERY4_OPTION_82_SUB_OPTION_1" "0x686F776479" + TEST_EQ "QUERY4_OPTION_82_SUB_OPTION_2" "0x87F67977EF" + TEST_EQ "LEASES4_SIZE" "2" + TEST_EQ "LEASES4_AT0_ADDRESS" "" + TEST_EQ "LEASES4_AT0_CLTT" "" + TEST_EQ "LEASES4_AT0_HOSTNAME" "" + TEST_EQ "LEASES4_AT0_HWADDR" "" + TEST_EQ "LEASES4_AT0_HWADDR_TYPE" "" + TEST_EQ "LEASES4_AT0_STATE" "" + TEST_EQ "LEASES4_AT0_SUBNET_ID" "" + TEST_EQ "LEASES4_AT0_VALID_LIFETIME" "" + TEST_EQ "LEASES4_AT0_CLIENT_ID" "" + TEST_EQ "LEASES4_AT1_ADDRESS" "192.168.0.1" + TEST_EQ "LEASES4_AT1_CLTT" "3" + TEST_EQ "LEASES4_AT1_HOSTNAME" "test.hostname" + TEST_EQ "LEASES4_AT1_HWADDR" "00:01:02:03" + TEST_EQ "LEASES4_AT1_HWADDR_TYPE" "1" + TEST_EQ "LEASES4_AT1_STATE" "default" + TEST_EQ "LEASES4_AT1_SUBNET_ID" "4" + TEST_EQ "LEASES4_AT1_VALID_LIFETIME" "2" + TEST_EQ "LEASES4_AT1_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "DELETED_LEASES4_SIZE" "2" + TEST_EQ "DELETED_LEASES4_AT0_ADDRESS" "192.168.0.1" + TEST_EQ "DELETED_LEASES4_AT0_CLTT" "3" + TEST_EQ "DELETED_LEASES4_AT0_HOSTNAME" "test.hostname" + TEST_EQ "DELETED_LEASES4_AT0_HWADDR" "00:01:02:03" + TEST_EQ "DELETED_LEASES4_AT0_HWADDR_TYPE" "1" + TEST_EQ "DELETED_LEASES4_AT0_STATE" "default" + TEST_EQ "DELETED_LEASES4_AT0_SUBNET_ID" "4" + TEST_EQ "DELETED_LEASES4_AT0_VALID_LIFETIME" "2" + TEST_EQ "DELETED_LEASES4_AT0_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "DELETED_LEASES4_AT1_ADDRESS" "" + TEST_EQ "DELETED_LEASES4_AT1_CLTT" "" + TEST_EQ "DELETED_LEASES4_AT1_HOSTNAME" "" + TEST_EQ "DELETED_LEASES4_AT1_HWADDR" "" + TEST_EQ "DELETED_LEASES4_AT1_HWADDR_TYPE" "" + TEST_EQ "DELETED_LEASES4_AT1_STATE" "" + TEST_EQ "DELETED_LEASES4_AT1_SUBNET_ID" "" + TEST_EQ "DELETED_LEASES4_AT1_VALID_LIFETIME" "" + TEST_EQ "DELETED_LEASES4_AT1_CLIENT_ID" "" + ECHO_TO_FILE "SUCCESS" +} + +lease4_release () { + TEST_EQ "QUERY4_TYPE" "UNKNOWN" + TEST_EQ "QUERY4_TXID" "0" + TEST_EQ "QUERY4_LOCAL_ADDR" "0.0.0.0" + TEST_EQ "QUERY4_LOCAL_PORT" "67" + TEST_EQ "QUERY4_REMOTE_ADDR" "0.0.0.0" + TEST_EQ "QUERY4_REMOTE_PORT" "68" + TEST_EQ "QUERY4_IFACE_INDEX" "2" + TEST_EQ "QUERY4_IFACE_NAME" "eth1" + TEST_EQ "QUERY4_HOPS" "0" + TEST_EQ "QUERY4_SECS" "0" + TEST_EQ "QUERY4_FLAGS" "0" + TEST_EQ "QUERY4_CIADDR" "0.0.0.0" + TEST_EQ "QUERY4_SIADDR" "0.0.0.0" + TEST_EQ "QUERY4_YIADDR" "0.0.0.0" + TEST_EQ "QUERY4_GIADDR" "0.0.0.0" + TEST_EQ "QUERY4_RELAYED" "false" + TEST_EQ "QUERY4_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_LOCAL_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_LOCAL_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_OPTION_82" "0x0105686F776479020587F67977EF06061A2B3C4D5E6F" + TEST_EQ "QUERY4_OPTION_82_SUB_OPTION_1" "0x686F776479" + TEST_EQ "QUERY4_OPTION_82_SUB_OPTION_2" "0x87F67977EF" + TEST_EQ "LEASE4_ADDRESS" "192.168.0.1" + TEST_EQ "LEASE4_CLTT" "3" + TEST_EQ "LEASE4_HOSTNAME" "test.hostname" + TEST_EQ "LEASE4_HWADDR" "00:01:02:03" + TEST_EQ "LEASE4_HWADDR_TYPE" "1" + TEST_EQ "LEASE4_STATE" "default" + TEST_EQ "LEASE4_SUBNET_ID" "4" + TEST_EQ "LEASE4_VALID_LIFETIME" "2" + TEST_EQ "LEASE4_CLIENT_ID" "00:01:02:03:04:05:06" + ECHO_TO_FILE "SUCCESS" +} + +lease4_decline () { + TEST_EQ "QUERY4_TYPE" "UNKNOWN" + TEST_EQ "QUERY4_TXID" "0" + TEST_EQ "QUERY4_LOCAL_ADDR" "0.0.0.0" + TEST_EQ "QUERY4_LOCAL_PORT" "67" + TEST_EQ "QUERY4_REMOTE_ADDR" "0.0.0.0" + TEST_EQ "QUERY4_REMOTE_PORT" "68" + TEST_EQ "QUERY4_IFACE_INDEX" "2" + TEST_EQ "QUERY4_IFACE_NAME" "eth1" + TEST_EQ "QUERY4_HOPS" "0" + TEST_EQ "QUERY4_SECS" "0" + TEST_EQ "QUERY4_FLAGS" "0" + TEST_EQ "QUERY4_CIADDR" "0.0.0.0" + TEST_EQ "QUERY4_SIADDR" "0.0.0.0" + TEST_EQ "QUERY4_YIADDR" "0.0.0.0" + TEST_EQ "QUERY4_GIADDR" "0.0.0.0" + TEST_EQ "QUERY4_RELAYED" "false" + TEST_EQ "QUERY4_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_LOCAL_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_LOCAL_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY4_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY4_OPTION_82" "0x0105686F776479020587F67977EF06061A2B3C4D5E6F" + TEST_EQ "QUERY4_OPTION_82_SUB_OPTION_1" "0x686F776479" + TEST_EQ "QUERY4_OPTION_82_SUB_OPTION_2" "0x87F67977EF" + TEST_EQ "LEASE4_ADDRESS" "192.168.0.1" + TEST_EQ "LEASE4_CLTT" "3" + TEST_EQ "LEASE4_HOSTNAME" "test.hostname" + TEST_EQ "LEASE4_HWADDR" "00:01:02:03" + TEST_EQ "LEASE4_HWADDR_TYPE" "1" + TEST_EQ "LEASE4_STATE" "default" + TEST_EQ "LEASE4_SUBNET_ID" "4" + TEST_EQ "LEASE4_VALID_LIFETIME" "2" + TEST_EQ "LEASE4_CLIENT_ID" "00:01:02:03:04:05:06" + ECHO_TO_FILE "SUCCESS" +} + +lease6_renew () { + TEST_EQ "QUERY6_TYPE" "UNKNOWN" + TEST_EQ "QUERY6_TXID" "0" + TEST_EQ "QUERY6_LOCAL_ADDR" "ff02::1:2" + TEST_EQ "QUERY6_LOCAL_PORT" "0" + TEST_EQ "QUERY6_REMOTE_ADDR" "fe80::21e:8cff:fe9b:7349" + TEST_EQ "QUERY6_REMOTE_PORT" "546" + TEST_EQ "QUERY6_IFACE_INDEX" "2" + TEST_EQ "QUERY6_IFACE_NAME" "eth1" + TEST_EQ "QUERY6_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY6_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY6_PROTO" "UDP" + TEST_EQ "QUERY6_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_ADDRESS" "2003:db8::1" + TEST_EQ "LEASE6_CLTT" "7" + TEST_EQ "LEASE6_HOSTNAME" "test.hostname" + TEST_EQ "LEASE6_HWADDR" "00:01:02:03" + TEST_EQ "LEASE6_HWADDR_TYPE" "1" + TEST_EQ "LEASE6_STATE" "default" + TEST_EQ "LEASE6_SUBNET_ID" "5" + TEST_EQ "LEASE6_VALID_LIFETIME" "4" + TEST_EQ "LEASE6_DUID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_IAID" "2" + TEST_EQ "LEASE6_PREFERRED_LIFETIME" "3" + TEST_EQ "LEASE6_PREFIX_LEN" "128" + TEST_EQ "LEASE6_TYPE" "IA_NA" + TEST_EQ "PKT6_IA_IAID" "2711790500" + TEST_EQ "PKT6_IA_IA_TYPE" "3" + TEST_EQ "PKT6_IA_IA_T1" "2164392708" + TEST_EQ "PKT6_IA_IA_T2" "2214789633" + ECHO_TO_FILE "SUCCESS" +} + +lease6_rebind () { + TEST_EQ "QUERY6_TYPE" "UNKNOWN" + TEST_EQ "QUERY6_TXID" "0" + TEST_EQ "QUERY6_LOCAL_ADDR" "ff02::1:2" + TEST_EQ "QUERY6_LOCAL_PORT" "0" + TEST_EQ "QUERY6_REMOTE_ADDR" "fe80::21e:8cff:fe9b:7349" + TEST_EQ "QUERY6_REMOTE_PORT" "546" + TEST_EQ "QUERY6_IFACE_INDEX" "2" + TEST_EQ "QUERY6_IFACE_NAME" "eth1" + TEST_EQ "QUERY6_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY6_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY6_PROTO" "UDP" + TEST_EQ "QUERY6_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_ADDRESS" "2003:db8::1" + TEST_EQ "LEASE6_CLTT" "7" + TEST_EQ "LEASE6_HOSTNAME" "test.hostname" + TEST_EQ "LEASE6_HWADDR" "00:01:02:03" + TEST_EQ "LEASE6_HWADDR_TYPE" "1" + TEST_EQ "LEASE6_STATE" "default" + TEST_EQ "LEASE6_SUBNET_ID" "5" + TEST_EQ "LEASE6_VALID_LIFETIME" "4" + TEST_EQ "LEASE6_DUID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_IAID" "2" + TEST_EQ "LEASE6_PREFERRED_LIFETIME" "3" + TEST_EQ "LEASE6_PREFIX_LEN" "128" + TEST_EQ "LEASE6_TYPE" "IA_NA" + TEST_EQ "PKT6_IA_IAID" "2711790500" + TEST_EQ "PKT6_IA_IA_TYPE" "3" + TEST_EQ "PKT6_IA_IA_T1" "2164392708" + TEST_EQ "PKT6_IA_IA_T2" "2214789633" + ECHO_TO_FILE "SUCCESS" +} + +lease6_expire () { + TEST_EQ "LEASE6_ADDRESS" "2003:db8::1" + TEST_EQ "LEASE6_CLTT" "7" + TEST_EQ "LEASE6_HOSTNAME" "test.hostname" + TEST_EQ "LEASE6_HWADDR" "00:01:02:03" + TEST_EQ "LEASE6_HWADDR_TYPE" "1" + TEST_EQ "LEASE6_STATE" "default" + TEST_EQ "LEASE6_SUBNET_ID" "5" + TEST_EQ "LEASE6_VALID_LIFETIME" "4" + TEST_EQ "LEASE6_DUID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_IAID" "2" + TEST_EQ "LEASE6_PREFERRED_LIFETIME" "3" + TEST_EQ "LEASE6_PREFIX_LEN" "128" + TEST_EQ "LEASE6_TYPE" "IA_NA" + TEST_EQ "REMOVE_LEASE" "true" + ECHO_TO_FILE "SUCCESS" +} + +lease6_recover () { + TEST_EQ "LEASE6_ADDRESS" "2003:db8::1" + TEST_EQ "LEASE6_CLTT" "7" + TEST_EQ "LEASE6_HOSTNAME" "test.hostname" + TEST_EQ "LEASE6_HWADDR" "00:01:02:03" + TEST_EQ "LEASE6_HWADDR_TYPE" "1" + TEST_EQ "LEASE6_STATE" "default" + TEST_EQ "LEASE6_SUBNET_ID" "5" + TEST_EQ "LEASE6_VALID_LIFETIME" "4" + TEST_EQ "LEASE6_DUID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_IAID" "2" + TEST_EQ "LEASE6_PREFERRED_LIFETIME" "3" + TEST_EQ "LEASE6_PREFIX_LEN" "128" + TEST_EQ "LEASE6_TYPE" "IA_NA" + ECHO_TO_FILE "SUCCESS" +} + +leases6_committed () { + TEST_EQ "QUERY6_TYPE" "UNKNOWN" + TEST_EQ "QUERY6_TXID" "0" + TEST_EQ "QUERY6_LOCAL_ADDR" "ff02::1:2" + TEST_EQ "QUERY6_LOCAL_PORT" "0" + TEST_EQ "QUERY6_REMOTE_ADDR" "fe80::21e:8cff:fe9b:7349" + TEST_EQ "QUERY6_REMOTE_PORT" "546" + TEST_EQ "QUERY6_IFACE_INDEX" "2" + TEST_EQ "QUERY6_IFACE_NAME" "eth1" + TEST_EQ "QUERY6_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY6_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY6_PROTO" "UDP" + TEST_EQ "QUERY6_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "LEASES6_SIZE" "2" + TEST_EQ "LEASES6_AT0_ADDRESS" "" + TEST_EQ "LEASES6_AT0_CLTT" "" + TEST_EQ "LEASES6_AT0_HOSTNAME" "" + TEST_EQ "LEASES6_AT0_HWADDR" "" + TEST_EQ "LEASES6_AT0_HWADDR_TYPE" "" + TEST_EQ "LEASES6_AT0_STATE" "" + TEST_EQ "LEASES6_AT0_SUBNET_ID" "" + TEST_EQ "LEASES6_AT0_VALID_LIFETIME" "" + TEST_EQ "LEASES6_AT0_DUID" "" + TEST_EQ "LEASES6_AT0_IAID" "" + TEST_EQ "LEASES6_AT0_PREFERRED_LIFETIME" "" + TEST_EQ "LEASES6_AT0_PREFIX_LEN" "" + TEST_EQ "LEASES6_AT0_TYPE" "" + TEST_EQ "LEASES6_AT1_ADDRESS" "2003:db8::1" + TEST_EQ "LEASES6_AT1_CLTT" "7" + TEST_EQ "LEASES6_AT1_HOSTNAME" "test.hostname" + TEST_EQ "LEASES6_AT1_HWADDR" "00:01:02:03" + TEST_EQ "LEASES6_AT1_HWADDR_TYPE" "1" + TEST_EQ "LEASES6_AT1_STATE" "default" + TEST_EQ "LEASES6_AT1_SUBNET_ID" "5" + TEST_EQ "LEASES6_AT1_VALID_LIFETIME" "4" + TEST_EQ "LEASES6_AT1_DUID" "00:01:02:03:04:05:06" + TEST_EQ "LEASES6_AT1_IAID" "2" + TEST_EQ "LEASES6_AT1_PREFERRED_LIFETIME" "3" + TEST_EQ "LEASES6_AT1_PREFIX_LEN" "128" + TEST_EQ "LEASES6_AT1_TYPE" "IA_NA" + TEST_EQ "DELETED_LEASES6_SIZE" "2" + TEST_EQ "DELETED_LEASES6_AT0_ADDRESS" "2003:db8::1" + TEST_EQ "DELETED_LEASES6_AT0_CLTT" "7" + TEST_EQ "DELETED_LEASES6_AT0_HOSTNAME" "test.hostname" + TEST_EQ "DELETED_LEASES6_AT0_HWADDR" "00:01:02:03" + TEST_EQ "DELETED_LEASES6_AT0_HWADDR_TYPE" "1" + TEST_EQ "DELETED_LEASES6_AT0_STATE" "default" + TEST_EQ "DELETED_LEASES6_AT0_SUBNET_ID" "5" + TEST_EQ "DELETED_LEASES6_AT0_VALID_LIFETIME" "4" + TEST_EQ "DELETED_LEASES6_AT0_DUID" "00:01:02:03:04:05:06" + TEST_EQ "DELETED_LEASES6_AT0_IAID" "2" + TEST_EQ "DELETED_LEASES6_AT0_PREFERRED_LIFETIME" "3" + TEST_EQ "DELETED_LEASES6_AT0_PREFIX_LEN" "128" + TEST_EQ "DELETED_LEASES6_AT0_TYPE" "IA_NA" + TEST_EQ "DELETED_LEASES6_AT1_ADDRESS" "" + TEST_EQ "DELETED_LEASES6_AT1_CLTT" "" + TEST_EQ "DELETED_LEASES6_AT1_HOSTNAME" "" + TEST_EQ "DELETED_LEASES6_AT1_HWADDR" "" + TEST_EQ "DELETED_LEASES6_AT1_HWADDR_TYPE" "" + TEST_EQ "DELETED_LEASES6_AT1_STATE" "" + TEST_EQ "DELETED_LEASES6_AT1_SUBNET_ID" "" + TEST_EQ "DELETED_LEASES6_AT1_VALID_LIFETIME" "" + TEST_EQ "DELETED_LEASES6_AT1_DUID" "" + TEST_EQ "DELETED_LEASES6_AT1_IAID" "" + TEST_EQ "DELETED_LEASES6_AT1_PREFERRED_LIFETIME" "" + TEST_EQ "DELETED_LEASES6_AT1_PREFIX_LEN" "" + TEST_EQ "DELETED_LEASES6_AT1_TYPE" "" + ECHO_TO_FILE "SUCCESS" +} + +lease6_release () { + TEST_EQ "QUERY6_TYPE" "UNKNOWN" + TEST_EQ "QUERY6_TXID" "0" + TEST_EQ "QUERY6_LOCAL_ADDR" "ff02::1:2" + TEST_EQ "QUERY6_LOCAL_PORT" "0" + TEST_EQ "QUERY6_REMOTE_ADDR" "fe80::21e:8cff:fe9b:7349" + TEST_EQ "QUERY6_REMOTE_PORT" "546" + TEST_EQ "QUERY6_IFACE_INDEX" "2" + TEST_EQ "QUERY6_IFACE_NAME" "eth1" + TEST_EQ "QUERY6_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY6_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY6_PROTO" "UDP" + TEST_EQ "QUERY6_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_ADDRESS" "2003:db8::1" + TEST_EQ "LEASE6_CLTT" "7" + TEST_EQ "LEASE6_HOSTNAME" "test.hostname" + TEST_EQ "LEASE6_HWADDR" "00:01:02:03" + TEST_EQ "LEASE6_HWADDR_TYPE" "1" + TEST_EQ "LEASE6_STATE" "default" + TEST_EQ "LEASE6_SUBNET_ID" "5" + TEST_EQ "LEASE6_VALID_LIFETIME" "4" + TEST_EQ "LEASE6_DUID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_IAID" "2" + TEST_EQ "LEASE6_PREFERRED_LIFETIME" "3" + TEST_EQ "LEASE6_PREFIX_LEN" "128" + TEST_EQ "LEASE6_TYPE" "IA_NA" + ECHO_TO_FILE "SUCCESS" +} + +lease6_decline () { + TEST_EQ "QUERY6_TYPE" "UNKNOWN" + TEST_EQ "QUERY6_TXID" "0" + TEST_EQ "QUERY6_LOCAL_ADDR" "ff02::1:2" + TEST_EQ "QUERY6_LOCAL_PORT" "0" + TEST_EQ "QUERY6_REMOTE_ADDR" "fe80::21e:8cff:fe9b:7349" + TEST_EQ "QUERY6_REMOTE_PORT" "546" + TEST_EQ "QUERY6_IFACE_INDEX" "2" + TEST_EQ "QUERY6_IFACE_NAME" "eth1" + TEST_EQ "QUERY6_REMOTE_HWADDR" "00:01:02:03" + TEST_EQ "QUERY6_REMOTE_HWADDR_TYPE" "1" + TEST_EQ "QUERY6_PROTO" "UDP" + TEST_EQ "QUERY6_CLIENT_ID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_ADDRESS" "2003:db8::1" + TEST_EQ "LEASE6_CLTT" "7" + TEST_EQ "LEASE6_HOSTNAME" "test.hostname" + TEST_EQ "LEASE6_HWADDR" "00:01:02:03" + TEST_EQ "LEASE6_HWADDR_TYPE" "1" + TEST_EQ "LEASE6_STATE" "default" + TEST_EQ "LEASE6_SUBNET_ID" "5" + TEST_EQ "LEASE6_VALID_LIFETIME" "4" + TEST_EQ "LEASE6_DUID" "00:01:02:03:04:05:06" + TEST_EQ "LEASE6_IAID" "2" + TEST_EQ "LEASE6_PREFERRED_LIFETIME" "3" + TEST_EQ "LEASE6_PREFIX_LEN" "128" + TEST_EQ "LEASE6_TYPE" "IA_NA" + ECHO_TO_FILE "SUCCESS" +} + +case "$1" in + "lease4_renew") + lease4_renew + ;; + "lease4_expire") + lease4_expire + ;; + "lease4_recover") + lease4_recover + ;; + "leases4_committed") + leases4_committed + ;; + "lease4_release") + lease4_release + ;; + "lease4_decline") + lease4_decline + ;; + "lease6_renew") + lease6_renew + ;; + "lease6_rebind") + lease6_rebind + ;; + "lease6_expire") + lease6_expire + ;; + "lease6_recover") + lease6_recover + ;; + "leases6_committed") + leases6_committed + ;; + "lease6_release") + lease6_release + ;; + "lease6_decline") + lease6_decline + ;; + *) + unknown_handle "${@}" + ;; +esac |