3 usage="Usage: $0 [-i instance] [-p principal] [-a addrend] subcommand [args]"
5 principal="$ATHENA_USER/root@ATHENA.MIT.EDU"
7 while getopts "i:p:a:h" options; do
9 i ) addrend="$OPTARG"; principal="$ATHENA_USER/$OPTARG@ATHENA.MIT.EDU";;
10 p ) principal="$OPTARG";;
11 a ) addrend="$OPTARG";;
12 h ) echo "$usage"; exit 0;;
13 \? ) echo "$usage"; exit 1;;
14 * ) echo "$usage"; exit 1;;
17 shift `expr $OPTIND - 1 || :`
19 export KRB5CCNAME="/tmp/krb5cc_$(id -u).$addrend"
20 export KRBTKFILE=/dev/null
23 kinit -F -5 -l15m "$principal" "$@"
29 exec kinit -F -5 -l15m "$principal" "$@"
35 klist -s || init || exit 1;
36 HOST="`hostname` (krb:$addrend)" pagsh -c $SHELL
39 klist -s || init || exit 1;
40 HOST="`hostname` (krb:$addrend)" pagsh -c 'exec "$@"' exec "$@"
43 klist -s || init || exit 1;
45 exec ssh -k -l root "$@"
48 klist -s || init || exit 1;
49 exec rlogin -x -l root $2
53 echo "Usage: $0 init" >&2
54 echo " $0 destroy" >&2
56 echo " $0 ssh [args]" >&2
57 echo " $0 rlogin [args]" >&2