From e365e2fcf98a39348779f41533a9dfcbc270e1a5 Mon Sep 17 00:00:00 2001 From: Michael Howe Date: Sun, 29 Jan 2012 15:03:13 +0000 Subject: [PATCH] Added with-creds --- Makefile | 1 + bin/with-creds | 42 ++++++++++++++++++++++++++++++++++++++++++ debian/changelog | 3 ++- 3 files changed, 45 insertions(+), 1 deletion(-) create mode 100755 bin/with-creds diff --git a/Makefile b/Makefile index 2e517a2..7ed4f68 100644 --- a/Makefile +++ b/Makefile @@ -7,5 +7,6 @@ build: install: $(INSTALL) -d $(DESTDIR)/usr/bin $(INSTALL) -m 0755 $(srcdir)/bin/rksu $(DESTDIR)/usr/bin/rksu + $(INSTALL) -m 0755 $(srcdir)/bin/with-creds $(DESTDIR)/usr/bin/with-creds .PHONY: install diff --git a/bin/with-creds b/bin/with-creds new file mode 100755 index 0000000..d76e569 --- /dev/null +++ b/bin/with-creds @@ -0,0 +1,42 @@ +#!/bin/bash +# +# $HeadURL$ +# $LastChangedRevision$ +# $LastChangedDate$ +# $LastChangedBy$ +# + +while getopts ":i:" opt; do + case $opt in + i) + userpart=$OPTARG + ;; + \?) + echo "Error: unsupported option -$OPTARG" >&2 + exit 1 + ;; + esac +done + +shift $(($OPTIND - 1)) + +if [ -z "$userpart" ]; then + echo "Error: no service part defined (use -i )" >&2 + exit 2 +fi + +if [ $# -eq 0 ]; then + echo "Error: no command specified" >&2 + exit 3 +fi + +ccache=/tmp/krb5cc_${UID}_${userpart} + +if klist -s -c $ccache; then + export KRB5CCNAME=$ccache +else + export KRB5CCNAME=$ccache + kinit -p $USER/$userpart +fi + +exec "$@" diff --git a/debian/changelog b/debian/changelog index 74644a9..599f7b4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,8 +3,9 @@ mh-sysadmin-tools (1.1) unstable; urgency=low * Don't forward X11 when using SSH * Pass all arguments to the remote side * Add some documentation + * Add with-creds, our own custom version - -- Michael Howe Sat, 28 Jan 2012 21:20:22 +0000 + -- Michael Howe Sun, 29 Jan 2012 14:58:29 +0000 mh-sysadmin-tools (1.0) unstable; urgency=low -- 2.39.5