]>
Commit | Line | Data |
---|---|---|
8582624b | 1 | # $OpenBSD: agent-ptrace.sh,v 1.1 2002/12/09 15:38:30 markus Exp $ |
2 | # Placed in the Public Domain. | |
3 | ||
4 | tid="disallow agent ptrace attach" | |
5 | ||
335f57ae | 6 | if [ -x `which uname 2>&1` ]; then |
7 | case `uname` in | |
8 | Linux|HP-UX|SunOS|NetBSD|AIX) | |
9 | echo "skipped (not supported)" | |
10 | exit 0 | |
11 | ;; | |
12 | esac | |
13 | fi | |
14 | ||
15 | if [ ! -x `which gdb 2>&1` ]; then | |
16 | echo "skipped (gdb not found)" | |
17 | exit 0 | |
18 | fi | |
19 | ||
8582624b | 20 | trace "start agent" |
21 | eval `${SSHAGENT} -s` > /dev/null | |
22 | r=$? | |
23 | if [ $r -ne 0 ]; then | |
24 | fail "could not start ssh-agent: exit code $r" | |
25 | else | |
26 | # ls -l ${SSH_AUTH_SOCK} | |
27 | gdb ${SSHAGENT} ${SSH_AGENT_PID} > ${OBJ}/gdb.out 2>&1 << EOF | |
28 | quit | |
29 | EOF | |
30 | if [ $? -ne 0 ]; then | |
31 | fail "gdb failed: exit code $?" | |
32 | fi | |
d23e7be4 | 33 | grep 'ptrace: Operation not permitted.' >/dev/null ${OBJ}/gdb.out |
8582624b | 34 | r=$? |
35 | rm -f ${OBJ}/gdb.out | |
36 | if [ $r -ne 0 ]; then | |
37 | fail "ptrace succeeded?: exit code $r" | |
38 | fi | |
39 | ||
40 | trace "kill agent" | |
41 | ${SSHAGENT} -k > /dev/null | |
42 | fi |