28 lines
900 B
Bash
28 lines
900 B
Bash
# $OpenBSD: keygen-moduli.sh,v 1.4 2020/01/02 13:25:38 dtucker Exp $
|
|
# Placed in the Public Domain.
|
|
|
|
tid="keygen moduli"
|
|
|
|
dhgex=0
|
|
for kex in `${SSH} -Q kex`; do
|
|
case $kex in
|
|
diffie-hellman-group*) dhgex=1 ;;
|
|
esac
|
|
done
|
|
|
|
# Try "start at the beginning and stop after 1", "skip 1 then stop after 1"
|
|
# and "skip 2 and run to the end with checkpointing". Since our test data
|
|
# file has 3 lines, these should always result in 1 line of output.
|
|
if [ "x$dhgex" = "x1" ]; then
|
|
for i in "-O lines=1" "-O start-line=1 -O lines=1" "-O start-line=2 -O checkpoint=$OBJ/moduli.ckpt"; do
|
|
trace "keygen $i"
|
|
rm -f $OBJ/moduli.out $OBJ/moduli.ckpt
|
|
${SSHKEYGEN} -M screen -f ${SRC}/moduli.in $i $OBJ/moduli.out 2>/dev/null || \
|
|
fail "keygen screen failed $i"
|
|
lines=`wc -l <$OBJ/moduli.out`
|
|
test "$lines" -eq "1" || fail "expected 1 line, got $lines"
|
|
done
|
|
fi
|
|
|
|
rm -f $OBJ/moduli.out $OBJ/moduli.ckpt
|