5 usage="Usage: $0 [-i instance] [-p principal] [-a addrend] subcommand [args]"
7 ATHENA_USER=${ATHENA_USER:-$USER}
8 principal="$ATHENA_USER/root@ATHENA.MIT.EDU"
10 while getopts "i:p:a:h" options; do
12 i ) addrend="$OPTARG"; principal="$ATHENA_USER/$OPTARG@ATHENA.MIT.EDU";;
13 p ) principal="$OPTARG";;
14 a ) addrend="$OPTARG";;
15 h ) echo "$usage"; exit 0;;
16 \? ) echo "$usage"; exit 1;;
17 * ) echo "$usage"; exit 1;;
20 shift `expr $OPTIND - 1 || :`
22 export KRB5CCNAME="/tmp/krb5cc_$(id -u).$addrend"
23 export KRBTKFILE=/dev/null
26 kinit -F -5 -l15m "$principal" "$@"
32 exec kinit -F -5 -l15m "$principal" "$@"
38 klist -s || init || exit 1;
39 HOST="`hostname` (krb:$addrend)" pagsh -c $SHELL
42 klist -s || init || exit 1;
43 HOST="`hostname` (krb:$addrend)" pagsh -c 'exec "$@"' exec "$@"
46 klist -s || init || exit 1;
48 exec ssh -k -l root "$@"
51 klist -s || init || exit 1;
52 exec rlogin -x -l root $2
56 echo "Usage: $0 init" >&2
57 echo " $0 destroy" >&2
59 echo " $0 ssh [args]" >&2
60 echo " $0 rlogin [args]" >&2