mirror of
				https://github.com/ohmyzsh/ohmyzsh.git
				synced 2024-05-11 05:55:17 +00:00 
			
		
		
		
	Add support for loading mulitple identities
This commit is contained in:
		| @@ -6,6 +6,11 @@ | |||||||
| # | # | ||||||
| #     zstyle :omz:plugins:ssh-agent agent-forwarding on | #     zstyle :omz:plugins:ssh-agent agent-forwarding on | ||||||
| # | # | ||||||
|  | #   To load multiple identies use the identities style, For | ||||||
|  | #   example: | ||||||
|  | # | ||||||
|  | #     zstyle :omz:plugins:ssh-agent id_rsa id_rsa2 id_github | ||||||
|  | # | ||||||
| # | # | ||||||
| # CREDITS | # CREDITS | ||||||
| # | # | ||||||
| @@ -21,17 +26,23 @@ local _plugin__forwarding | |||||||
|  |  | ||||||
| function _plugin__start_agent() | function _plugin__start_agent() | ||||||
| { | { | ||||||
|  |   local -a identities | ||||||
|  |  | ||||||
|  |   # start ssh-agent and setup environment | ||||||
|   /usr/bin/env ssh-agent | sed 's/^echo/#echo/' > ${_plugin__ssh_env} |   /usr/bin/env ssh-agent | sed 's/^echo/#echo/' > ${_plugin__ssh_env} | ||||||
|   chmod 600 ${_plugin__ssh_env} |   chmod 600 ${_plugin__ssh_env} | ||||||
|   . ${_plugin__ssh_env} > /dev/null |   . ${_plugin__ssh_env} > /dev/null | ||||||
|   /usr/bin/ssh-add; |  | ||||||
|  |   # load identies | ||||||
|  |   zstyle -a :omz:plugins:ssh-agent identities identities  | ||||||
|  |   echo starting... | ||||||
|  |   /usr/bin/ssh-add $HOME/.ssh/${^identities} | ||||||
| } | } | ||||||
|  |  | ||||||
| # test if agent-forwarding is enabled | # test if agent-forwarding is enabled | ||||||
| zstyle -b :omz:plugins:ssh-agent agent-forwarding _plugin__forwarding | zstyle -b :omz:plugins:ssh-agent agent-forwarding _plugin__forwarding | ||||||
| if [[ ${_plugin__forwarding} == "yes" && -z $SSH_AGENT_PID && -n "$SSH_AUTH_SOCK" ]]; then | if [[ ${_plugin__forwarding} == "yes" && -n "$SSH_AUTH_SOCK" ]]; then | ||||||
|   # No PID but a AUTH_SOCK means agent forwarding is enabled |   # Add a nifty symlink for screen/tmux if agent forwarding | ||||||
|   # Add a nifty symlink for screen/tmux  |  | ||||||
|   [[ -L $SSH_AUTH_SOCK ]] || ln -sf "$SSH_AUTH_SOCK" /tmp/ssh-agent-$USER-screen |   [[ -L $SSH_AUTH_SOCK ]] || ln -sf "$SSH_AUTH_SOCK" /tmp/ssh-agent-$USER-screen | ||||||
|  |  | ||||||
| elif [ -f "${_plugin__ssh_env}" ]; then | elif [ -f "${_plugin__ssh_env}" ]; then | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user