diff options
author | Z.Shang <shangzhanlin@gmail.com> | 2019-01-22 04:50:40 +1100 |
---|---|---|
committer | Z.Shang <shangzhanlin@gmail.com> | 2019-01-22 04:50:40 +1100 |
commit | bf4937270a4a2a6dd6d4f11ddb3fd55fa4d43025 (patch) | |
tree | e6a8f85cd68f2cd936657c88d6a7be1e67c65213 /plugins/ssh-agent/ssh-agent.plugin.zsh | |
parent | fcf1fe72c0057b5eccecd7ae9bfc2fe199cc9b3d (diff) | |
parent | b9670d04092a461ae1db41080263b5a82bc1f958 (diff) | |
download | zsh-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.zsh | 12 |
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 |