#!/bin/sh

TEST_FILE=$(mktemp)

echo "== Testing sysctl behavior against ${TARGET} =="

set_orig()
{
	echo "${ORIG}" > "${TARGET}"
}

set_test()
{
	echo "${TEST_STR}" > "${TARGET}"
}

verify()
{
	local seen
	seen=$(cat "$1")
	if [ "${seen}" != "${TEST_STR}" ]; then
		return 1
	fi
	return 0
}

trap 'set_orig; rm -f "${TEST_FILE}"' EXIT

rc=0

echo -n "Writing test file ... "
echo "${TEST_STR}" > "${TEST_FILE}"
if ! verify "${TEST_FILE}"; then
	echo "FAIL" >&2
	exit 1
else
	echo "ok"
fi

echo -n "Checking sysctl is not set to test value ... "
if verify "${TARGET}"; then
	echo "FAIL" >&2
	exit 1
else
	echo "ok"
fi

echo -n "Writing sysctl from shell ... "
set_test
if ! verify "${TARGET}"; then
	echo "FAIL" >&2
	exit 1
else
	echo "ok"
fi

echo -n "Resetting sysctl to original value ... "
set_orig
if verify "${TARGET}"; then
	echo "FAIL" >&2
	exit 1
else
	echo "ok"
fi

# Now that we've validated the sanity of "set_test" and "set_orig",
# we can use those functions to set starting states before running
# specific behavioral tests.

echo -n "Writing entire sysctl in single write ... "
set_orig
dd if="${TEST_FILE}" of="${TARGET}" bs=4096 2>/dev/null
if ! verify "${TARGET}"; then
	echo "FAIL" >&2
	rc=1
else
	echo "ok"
fi

echo -n "Writing middle of sysctl after synchronized seek ... "
set_test
dd if="${TEST_FILE}" of="${TARGET}" bs=1 seek=1 skip=1 2>/dev/null
if ! verify "${TARGET}"; then
	echo "FAIL" >&2
	rc=1
else
	echo "ok"
fi

echo -n "Writing beyond end of sysctl ... "
set_orig
dd if="${TEST_FILE}" of="${TARGET}" bs=20 seek=2 2>/dev/null
if verify "${TARGET}"; then
        echo "FAIL" >&2
        rc=1
else
        echo "ok"
fi

echo -n "Writing sysctl with multiple long writes ... "
set_orig
(perl -e 'print "A" x 50;'; echo "${TEST_STR}") | \
	dd of="${TARGET}" bs=50 2>/dev/null
if verify "${TARGET}"; then
	echo "FAIL" >&2
	rc=1
else
	echo "ok"
fi
