blob: daf62cca5b1efc2a6a13bc413e14c25b8aed7b82 [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001#!/bin/sh
2
3export TEST_SHELL=sh
4
5cd regress
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05006sed -i "/\t\tagent-ptrace /d" Makefile
Patrick Williamsc124f4f2015-09-15 14:41:29 -05007make -k .OBJDIR=`pwd` .CURDIR=`pwd` SUDO="sudo" tests \
Brad Bishopd89cb5f2019-04-10 09:02:41 -04008 | sed -u -e 's/^skipped/SKIP: /g' -e 's/^ok /PASS: /g' -e 's/^failed/FAIL: /g'
Patrick Williamsd8c66bc2016-06-20 12:57:21 -05009
10SSHAGENT=`which ssh-agent`
11GDB=`which gdb`
12
13if [ -z "${SSHAGENT}" -o -z "${GDB}" ]; then
14 echo "SKIP: agent-ptrace"
15 exit
16fi
17
18useradd openssh-test
19
20eval `su -c "${SSHAGENT} -s" openssh-test` > /dev/null
21r=$?
22if [ $r -ne 0 ]; then
23 echo "FAIL: could not start ssh-agent: exit code $r"
24else
25 su -c "gdb -p ${SSH_AGENT_PID}" openssh-test > /tmp/gdb.out 2>&1 << EOF
26 quit
27EOF
28 r=$?
29 if [ $r -ne 0 ]; then
30 echo "gdb failed: exit code $r"
31 fi
32 egrep 'ptrace: Operation not permitted.|procfs:.*Permission denied.|ttrace.*Permission denied.|procfs:.*: Invalid argument.|Unable to access task ' >/dev/null /tmp/gdb.out
33 r=$?
34 rm -f /tmp/gdb.out
35 if [ $r -ne 0 ]; then
36 echo "FAIL: ptrace agent"
37 else
38 echo "PASS: ptrace agent"
39 fi
40
41 ${SSHAGENT} -k > /dev/null
42fi
43userdel openssh-test
44