blob: 6dec09285908de2c503e5505eca94db6767d51b5 [file] [log] [blame]
djm@openbsd.orgad44ca82019-11-26 23:43:10 +00001# $OpenBSD: agent-timeout.sh,v 1.6 2019/11/26 23:43:10 djm Exp $
Damien Miller8b9cde72003-01-22 17:53:16 +11002# Placed in the Public Domain.
3
4tid="agent timeout test"
5
Darren Tuckerdc7e6562003-09-13 09:46:03 +10006SSHAGENT_TIMEOUT=10
Damien Miller8b9cde72003-01-22 17:53:16 +11007
8trace "start agent"
djm@openbsd.orgad44ca82019-11-26 23:43:10 +00009eval `${SSHAGENT} -s ${EXTRA_AGENT_ARGS}` > /dev/null
Damien Miller8b9cde72003-01-22 17:53:16 +110010r=$?
11if [ $r -ne 0 ]; then
12 fail "could not start ssh-agent: exit code $r"
13else
14 trace "add keys with timeout"
dtucker@openbsd.orgffdde462019-01-28 00:08:26 +000015 keys=0
markus@openbsd.orgdad2b182015-03-03 22:35:19 +000016 for t in ${SSH_KEYTYPES}; do
djm@openbsd.org59650f02019-09-03 08:37:06 +000017 ${SSHADD} -kt ${SSHAGENT_TIMEOUT} $OBJ/$t > /dev/null 2>&1
Damien Miller8b9cde72003-01-22 17:53:16 +110018 if [ $? -ne 0 ]; then
19 fail "ssh-add did succeed exit code 0"
20 fi
dtucker@openbsd.orgffdde462019-01-28 00:08:26 +000021 keys=$((${keys} + 1))
Damien Miller8b9cde72003-01-22 17:53:16 +110022 done
23 n=`${SSHADD} -l 2> /dev/null | wc -l`
24 trace "agent has $n keys"
dtucker@openbsd.orgffdde462019-01-28 00:08:26 +000025 if [ $n -ne $keys ]; then
26 fail "ssh-add -l did not return $keys keys: $n"
Damien Miller8b9cde72003-01-22 17:53:16 +110027 fi
Tim Rice55439472003-09-09 08:27:40 -070028 trace "sleeping 2*${SSHAGENT_TIMEOUT} seconds"
29 sleep ${SSHAGENT_TIMEOUT}
30 sleep ${SSHAGENT_TIMEOUT}
Darren Tucker58f89bc2003-09-04 15:07:59 +100031 ${SSHADD} -l 2> /dev/null | grep 'The agent has no identities.' >/dev/null
Damien Miller8b9cde72003-01-22 17:53:16 +110032 if [ $? -ne 0 ]; then
33 fail "ssh-add -l still returns keys after timeout"
34 fi
35
36 trace "kill agent"
37 ${SSHAGENT} -k > /dev/null
38fi