+
    Dfj                         R t ^ RIt^ RIHtHtHt ^ RIHtHt ^ RI	H
t
  ! R R]P                  4      t ! R R]P                  4      t ! R	 R
]P                  4      tR# )zJ
Accesses the key agent for user authentication.

Maintainer: Paul Swartz
N)agentchannelkeys)protocolreactor)Loggerc                   F   a  ] tR t^t o ]! 4       tR tR tR tR t	Rt
V tR# )SSHAgentClientc                R    \         P                  P                  V 4       . V n        R # N)r   r	   __init__blobsselfs   &</usr/lib/python3/dist-packages/twisted/conch/client/agent.pyr   SSHAgentClient.__init__   s    %%d+
    c                T    V P                  4       P                  V P                  4      # r   )requestIdentitiesaddCallback_cbPublicKeysr   s   &r   getPublicKeysSSHAgentClient.getPublicKeys   s"    %%'33D4F4FGGr   c                    V P                   P                  R \        V4      R7       V Uu. uF  q"^ ,          NK  	  upV n        R# u upi )zgot {num_keys} public keys)num_keysN)_logdebuglenr   )r   blobcommxs   && r   r   SSHAgentClient._cbPublicKeys   s8    		4s8}M$,-HqddH-
-s   Ac                    V P                   '       d9   \        P                  P                  V P                   P	                  ^ 4      4      # R# )zR
Return a L{Key} from the first blob in C{self.blobs}, if any, or
return L{None}.
N)r   r   Key
fromStringpopr   s   &r   getPublicKeySSHAgentClient.getPublicKey    s2    
 :::88&&tzz~~a'899r   )r   N)__name__
__module____qualname____firstlineno__r   r   r   r   r   r%   __static_attributes____classdictcell____classdict__s   @r   r	   r	      s&     8DH. r   r	   c                   8   a  ] tR t^*t o R tR tR tR tRtV t	R# )SSHAgentForwardingChannelc                   a  \         P                  ! \        \        4      pVP	                  \
        P                  R ,          4      pVP                  S P                  4       VP                  V 3R l4       RS n
        R# )SSH_AUTH_SOCKc                 $   < SP                  4       # r   )loseConnection)r   r   s   &r   <lambda>7SSHAgentForwardingChannel.channelOpen.<locals>.<lambda>/   s    t224r    N)r   ClientCreatorr   SSHAgentForwardingLocalconnectUNIXosenvironr   _cbGotLocal
addErrbackbuf)r   specificDataccds   f&  r   channelOpen%SSHAgentForwardingChannel.channelOpen+   sS    ##G-DENN2::o67	d&&'	45r   c                    Wn         V P                   P                  P                  V n        V P                  V P                   n        R # r   )local	transportwritedataReceived)r   rF   s   &&r   r=   %SSHAgentForwardingChannel._cbGotLocal2   s/    
 JJ0066"&**

r   c                8    V ;P                   V,          un         R # r   )r?   )r   datas   &&r   rI   &SSHAgentForwardingChannel.dataReceived7   s    Dr   c                p    V P                   '       d$   V P                   P                  4        R V n         R # R # r   )rF   r4   r   s   &r   closed SSHAgentForwardingChannel.closed:   s'    :::JJ%%'DJ r   )r?   rI   rF   N)
r'   r(   r)   r*   rC   r=   rI   rO   r+   r,   r-   s   @r   r0   r0   *   s     -
 r   r0   c                       ] tR t^@tRtR# )r9    N)r'   r(   r)   r*   r+   rR   r   r   r9   r9   @   s    r   r9   )__doc__r;   twisted.conch.sshr   r   r   twisted.internetr   r   twisted.loggerr   r	   
SSHChannelr0   Protocolr9   rR   r   r   <module>rY      sQ   
 
 2 2 . !U)) 0 2 2 ,	h// 	r   