ssh-agent: add default keys if no zstyle identities were set (#7520)
This commit is contained in:
parent
586ca16902
commit
9d1dd24e35
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue