summaryrefslogtreecommitdiffstats
path: root/src/hooks/dhcp/run_script/tests/run_script_test.sh.in
diff options
context:
space:
mode:
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.in531
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