| #!/bin/sh -x | |
| # Written by Simon Josefsson | |
| # Start sshd, invoke parameters, saving exit code, kill sshd, and | |
| # return exit code. | |
| cmd="$@" | |
| SSHD=${SSHD:-/usr/sbin/sshd} | |
| $SSHD -f etc/sshd_config -h $PWD/etc/host -D & | |
| sshdpid=$! | |
| trap "kill ${sshdpid}; echo signal killing sshd; exit 1;" EXIT | |
| : "started sshd (${sshdpid})" | |
| sleep 1 | |
| : Invoking $cmd... | |
| eval $cmd | |
| ec=$? | |
| : Self-test exit code $ec | |
| : "killing sshd (${sshdpid})" | |
| kill "${sshdpid}" > /dev/null 2>&1 | |
| trap "" EXIT | |
| exit $ec |