summaryrefslogtreecommitdiff
path: root/plugins/ssh-agent/ssh-agent.plugin.zsh
diff options
context:
space:
mode:
authorZ.Shang <shangzhanlin@gmail.com>2019-01-22 04:50:40 +1100
committerZ.Shang <shangzhanlin@gmail.com>2019-01-22 04:50:40 +1100
commitbf4937270a4a2a6dd6d4f11ddb3fd55fa4d43025 (patch)
treee6a8f85cd68f2cd936657c88d6a7be1e67c65213 /plugins/ssh-agent/ssh-agent.plugin.zsh
parentfcf1fe72c0057b5eccecd7ae9bfc2fe199cc9b3d (diff)
parentb9670d04092a461ae1db41080263b5a82bc1f958 (diff)
downloadzsh-bf4937270a4a2a6dd6d4f11ddb3fd55fa4d43025.tar.gz
zsh-bf4937270a4a2a6dd6d4f11ddb3fd55fa4d43025.tar.bz2
zsh-bf4937270a4a2a6dd6d4f11ddb3fd55fa4d43025.zip
Merge branch 'master' of https://github.com/Z-Shang/oh-my-zsh
Diffstat (limited to 'plugins/ssh-agent/ssh-agent.plugin.zsh')
-rw-r--r--plugins/ssh-agent/ssh-agent.plugin.zsh12
1 files changed, 11 insertions, 1 deletions
diff --git a/plugins/ssh-agent/ssh-agent.plugin.zsh b/plugins/ssh-agent/ssh-agent.plugin.zsh
index 1cc5630e1..0a204309e 100644
--- a/plugins/ssh-agent/ssh-agent.plugin.zsh
+++ b/plugins/ssh-agent/ssh-agent.plugin.zsh
@@ -21,6 +21,16 @@ function _add_identities() {
return
fi
+ # add default keys if no identities were set up via zstyle
+ # this is to mimic the call to ssh-add with no identities
+ if [[ ${#identities} -eq 0 ]]; then
+ # key list found on `ssh-add` man page's DESCRIPTION section
+ for id in id_rsa id_dsa id_ecdsa id_ed25519 identity; do
+ # check if file exists
+ [[ -f "$HOME/.ssh/$id" ]] && identities+=$id
+ done
+ fi
+
# get list of loaded identities' signatures
for line in ${(f)"$(ssh-add -l)"}; do loaded+=${${(z)line}[2]}; done
@@ -36,7 +46,7 @@ function _add_identities() {
[[ ${loaded[(I)$sig]} -le 0 ]] && not_loaded+="$HOME/.ssh/$id"
done
- if [[ -n "$not_loaded" ]] && ssh-add ${^not_loaded}
+ [[ -n "$not_loaded" ]] && ssh-add ${^not_loaded}
}
# Get the filename to store/lookup the environment from