- (djm) [regress/Makefile regress/integrity.sh] Make the integrity.sh test

work on platforms without 'jot'
This commit is contained in:
Damien Miller 2012-12-12 12:10:10 +11:00
parent 37834afe7b
commit 9fec296b0a
2 changed files with 10 additions and 5 deletions

View File

@ -81,7 +81,7 @@ CLEANFILES= t2.out t3.out t6.out1 t6.out2 t7.out t7.out.pub copy.1 copy.2 \
putty.rsa2 sshd_proxy_orig ssh_proxy_bak \ putty.rsa2 sshd_proxy_orig ssh_proxy_bak \
key.rsa-* key.dsa-* key.ecdsa-* \ key.rsa-* key.dsa-* key.ecdsa-* \
authorized_principals_${USER} expect actual ready \ authorized_principals_${USER} expect actual ready \
sshd_proxy.* authorized_keys_${USER}.* sshd_proxy.* authorized_keys_${USER}.* modpipe
# Enable all malloc(3) randomisations and checks # Enable all malloc(3) randomisations and checks
@ -143,15 +143,15 @@ t9: $(OBJ)/t9.out
test "${TEST_SSH_ECC}" != yes || \ test "${TEST_SSH_ECC}" != yes || \
${TEST_SSH_SSHKEYGEN} -Bf $(OBJ)/t9.out > /dev/null ${TEST_SSH_SSHKEYGEN} -Bf $(OBJ)/t9.out > /dev/null
modpipe: modpipe.c t-exec: ${LTESTS:=.sh} modpipe
t-exec: modpipe ${LTESTS:=.sh}
@if [ "x$?" = "x" ]; then exit 0; fi; \ @if [ "x$?" = "x" ]; then exit 0; fi; \
for TEST in ""$?; do \ for TEST in ""$?; do \
echo "run test $${TEST}" ... 1>&2; \ echo "run test $${TEST}" ... 1>&2; \
(env SUDO="${SUDO}" TEST_ENV=${TEST_ENV} sh ${.CURDIR}/test-exec.sh ${.OBJDIR} ${.CURDIR}/$${TEST}) || exit $$?; \ (env SUDO="${SUDO}" TEST_ENV=${TEST_ENV} sh ${.CURDIR}/test-exec.sh ${.OBJDIR} ${.CURDIR}/$${TEST}) || exit $$?; \
done done
modpipe: modpipe.c
t-exec-interop: ${INTEROP_TESTS:=.sh} t-exec-interop: ${INTEROP_TESTS:=.sh}
@if [ "x$?" = "x" ]; then exit 0; fi; \ @if [ "x$?" = "x" ]; then exit 0; fi; \
for TEST in ""$?; do \ for TEST in ""$?; do \

View File

@ -18,6 +18,10 @@ macs="hmac-sha1 hmac-md5 umac-64@openssh.com umac-128@openssh.com
# sshd-command for proxy (see test-exec.sh) # sshd-command for proxy (see test-exec.sh)
cmd="sh ${SRC}/sshd-log-wrapper.sh ${SSHD} ${TEST_SSH_LOGFILE} -i -f $OBJ/sshd_proxy" cmd="sh ${SRC}/sshd-log-wrapper.sh ${SSHD} ${TEST_SSH_LOGFILE} -i -f $OBJ/sshd_proxy"
jot() {
awk 'BEGIN { for (i = $2; i < $2 + $1; i++) { printf "%d\n", i } }'
}
set -x
for m in $macs; do for m in $macs; do
trace "test $tid: mac $m" trace "test $tid: mac $m"
elen=0 elen=0
@ -26,7 +30,8 @@ for m in $macs; do
ecnt=0 ecnt=0
skip=0 skip=0
for off in $(jot $tries $startoffset); do for off in $(jot $tries $startoffset); do
if [ $((skip--)) -gt 0 ]; then skip=$((skip - 1))
if [ $skip -gt 0 ]; then
# avoid modifying the high bytes of the length # avoid modifying the high bytes of the length
continue continue
fi fi