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
|
return
|
||||||
fi
|
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
|
# get list of loaded identities' signatures
|
||||||
for line in ${(f)"$(ssh-add -l)"}; do loaded+=${${(z)line}[2]}; done
|
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"
|
[[ ${loaded[(I)$sig]} -le 0 ]] && not_loaded+="$HOME/.ssh/$id"
|
||||||
done
|
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
|
# Get the filename to store/lookup the environment from
|
||||||
|
|
Loading…
Reference in a new issue