From d520d8eca8e9c0116c8d4539b8b7157b986c53b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakobus=20Sch=C3=BCrz?= Date: Fri, 10 Jul 2020 12:34:50 +0200 Subject: [PATCH] fix some errors * in PS1 move token from script to sourced functions.sh add alias --- PS1 | 2 +- aliases | 2 ++ bin/token | 83 ---------------------------------------------------- functions.sh | 73 ++++++++++++++++++++++++++++++++++++++++++++- 4 files changed, 75 insertions(+), 85 deletions(-) delete mode 100755 bin/token diff --git a/PS1 b/PS1 index b6b0f86..a1aa54e 100644 --- a/PS1 +++ b/PS1 @@ -2,7 +2,7 @@ parse_git_branch() { local BRANCH=$(git branch 2>/dev/null | sed -ne 's/* \(.*\)/ (\1/p') - BRANCH="$BRANCH -> $( git rev-parse --symbolic-full-name --abbrev-ref @{u} 2>/dev/null ) )" + BRANCH="$BRANCH ${BRANCH-->} $( git rev-parse --symbolic-full-name --abbrev-ref @{u} 2>/dev/null ) )" echo $BRANCH } diff --git a/aliases b/aliases index e0e2116..5a2391f 100644 --- a/aliases +++ b/aliases @@ -193,3 +193,5 @@ alias gocnfhome='cd /var/atlassian/application-data/confluence/' alias gocnflog='cd /var/atlassian/application-data/confluence/logs' alias tailcnf='cd /var/atlassian/application-data/confluence/logs; tail -F atlassian-confluence.log' +# eToken +alias agent='eval "$(<~/.ssh-agent)"' diff --git a/bin/token b/bin/token deleted file mode 100755 index 7c55797..0000000 --- a/bin/token +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/sh -#set -eu -#set -x - -[ -z "${PKCS11_MODULE+x}" ] && { PKCS11_MODULE=/usr/lib64/p11-kit-proxy.so; export PKCS11_MODULE; } - -PASS=$(which pass 2>/dev/null || exit 127 ) -PKEY="bmi/etoken" - -ssh-add -l &>/dev/null -if [ "$?" == 2 ]; then - test -r ~/.ssh-agent && \ - echo "create new ssh-agent" >&2 - eval "$(<~/.ssh-agent)" >&2 - #eval "$(<~/.ssh-agent)" >/dev/null - - ssh-add -l &>/dev/null - if [ "$?" == 2 ]; then - echo "create new ssh-agent and load env for it" >&2 - (umask 066; ssh-agent > ~/.ssh-agent) - eval "$(<~/.ssh-agent)" >&2 - #eval "$(<~/.ssh-agent)" >/dev/null - else - echo test X - - fi -else - : -fi - -#echo SSH_AGENT_PID: $SSH_AGENT_PID -#echo SSH_AUTH_SOCK: $SSH_AUTH_SOCK -#echo PKCS11_MODULE: $PKCS11_MODULE - - -ssh-add -l &>/dev/null -#ssh-add -l & >&2 -if [ "$?" == 0 ]; then - # Remove and add again $PKCS11_MODULE - ssh-add -e $PKCS11_MODULE - ssh-add -s $PKCS11_MODULE - - -test -n "${SSH_AUTH_SOCK+x}" -if [ "$?" == 0 ] ; then - sudo fuser "$SSH_AUTH_SOCK"|awk '{print $NF}' - - SSH_AGENT_PID="$(sudo fuser "$SSH_AUTH_SOCK" |awk '{print $NF}')" - echo "SSH_AGENT_PID(fuser): $SSH_AGENT_PID" - - - test -n "${SSH_AGENT_PID+x}" - if [ "$?" == 0 ]; then - cat << EOF > ~/.ssh-agent -SSH_AUTH_SOCK=${SSH_AUTH_SOCK}; export SSH_AUTH_SOCK; -SSH_AGENT_PID=${SSH_AGENT_PID}; export SSH_AGENT_PID; -echo auth socket ${SSH_AUTH_SOCK}; -echo Agent pid ${SSH_AGENT_PID}; -EOF - else - cat << EOF > ~/.ssh-agent -SSH_AUTH_SOCK=${SSH_AUTH_SOCK}; export SSH_AUTH_SOCK; -echo auth socket ${SSH_AUTH_SOCK}; -echo Agent pid not known; -EOF - fi -else - : -fi - - -cat << EOF - -Now run - - eval "\$(<~/.ssh-agent)" - -EOF - -else - echo "not able to create ssh-agent" -fi - diff --git a/functions.sh b/functions.sh index d2511a6..2d42be0 100755 --- a/functions.sh +++ b/functions.sh @@ -625,7 +625,6 @@ reachableim () { return $res } -#EOF reachable () { local SERVER=$1 @@ -649,4 +648,76 @@ reachable () { return $res } + +token () { + +[ -z "${PKCS11_MODULE+x}" ] && { PKCS11_MODULE=/usr/lib64/p11-kit-proxy.so; export PKCS11_MODULE; } + +ssh-add -l &>/dev/null +if [ "$?" == 2 ]; then + test -r ~/.ssh-agent && \ + echo "create new ssh-agent" >&2 + eval "$(<~/.ssh-agent)" >&2 + #eval "$(<~/.ssh-agent)" >/dev/null + + ssh-add -l &>/dev/null + if [ "$?" == 2 ]; then + echo "create new ssh-agent and load env for it" >&2 + (umask 066; ssh-agent > ~/.ssh-agent) + eval "$(<~/.ssh-agent)" >&2 + #eval "$(<~/.ssh-agent)" >/dev/null + fi +else + : +fi + +ssh-add -l &>/dev/null +#ssh-add -l & >&2 +if [ "$?" == 0 ]; then + # Remove and add again $PKCS11_MODULE + ssh-add -e $PKCS11_MODULE + ssh-add -s $PKCS11_MODULE + if [ "$?" == 0 ]; then + test -n "${SSH_AUTH_SOCK+x}" + if [ "$?" == 0 ] ; then + SSH_AGENT_PID="$(sudo fuser "$SSH_AUTH_SOCK" 2>/dev/null)" + test -n "${SSH_AGENT_PID+x}" + if [ "$?" == 0 ]; then + SSH_AUTH_SOCK=${SSH_AUTH_SOCK}; export SSH_AUTH_SOCK; + SSH_AGENT_PID=${SSH_AGENT_PID}; export SSH_AGENT_PID; + cat << EOF > ~/.ssh-agent +SSH_AUTH_SOCK=${SSH_AUTH_SOCK}; export SSH_AUTH_SOCK; +SSH_AGENT_PID=${SSH_AGENT_PID}; export SSH_AGENT_PID; +echo Auth socket ${SSH_AUTH_SOCK}; +echo Agent pid ${SSH_AGENT_PID}; +EOF + else + SSH_AUTH_SOCK=${SSH_AUTH_SOCK}; export SSH_AUTH_SOCK; + cat << EOF > ~/.ssh-agent +SSH_AUTH_SOCK=${SSH_AUTH_SOCK}; export SSH_AUTH_SOCK; +echo Auth socket ${SSH_AUTH_SOCK}; +echo Agent pid not known; +EOF + fi + else + : + fi + #eval "\$(<~/.ssh-agent)" + else + echo "Token not unlocked" + fi + + +# cat << EOF +# +#Now run +# +# eval "\$(<~/.ssh-agent)" +# +#EOF + +else + echo "not able to create ssh-agent" +fi +} #EOF