+
    üÐj”  ã                   ó    € R t ^ RIHt ]! R4      t]'       d   ^ RIHt ^ RIHt ^ RIH	t	 ^ RI
HtHt ^ RIHt  ! R R	]P                  4      tR
# )z,
Tests for L{twisted.conch.ssh.forwarding}.
)ÚrequireModuleÚcryptography)Ú
forwarding)ÚIPv6Address)ÚdeterministicResolvingReactor)ÚMemoryReactorClockÚStringTransport)Úunittestc                   ó\   a € ] tR t^t o Rt]'       g   RtV 3R lR ltV 3R lR ltRt	V t
R# )	ÚTestSSHConnectForwardingChannelz@
Unit and integration tests for L{SSHConnectForwardingChannel}.
zCannot run without cryptographyc                ó$   <€ V ^8„  d   QhRS[ RR/# )é   ÚreactorÚreturnN)r   )ÚformatÚ__classdict__s   "€ÚD/usr/lib/python3/dist-packages/twisted/conch/test/test_forwarding.pyÚ__annotate__Ú,TestSSHConnectForwardingChannel.__annotate__   s   ø€ ÷ +ñ +Ñ);ð +Àñ +ó    c                óØ   € VP                   ^ ,          ^,          pVP                  ^ ,          pVP                  R4      p\        VP	                  4       R7      pVP                  V4       R# )z¬
Fake that connection was established for first connectTCP request made
on C{reactor}.

@param reactor: Reactor on which to fake the connection.
@type  reactor: A reactor.
N)ÚpeerAddress)Ú
tcpClientsÚ
connectorsÚbuildProtocolr   ÚgetDestinationÚmakeConnection)Úselfr   ÚfactoryÚ	connectorÚprotocolÚ	transports   &&    r   ÚmakeTCPConnectionÚ1TestSSHConnectForwardingChannel.makeTCPConnection   sZ   € ð ×$Ñ$ QÕ'¨Õ*ˆØ×&Ñ& qÕ)ˆ	Ø×(Ñ(¨Ó.ˆÜ#°	×0HÑ0HÓ0JÔKˆ	Ø×Ñ 	Ö*r   c                ó   <€ V ^8„  d   QhRR/# )r   r   N© )r   r   s   "€r   r   r   +   s   ø€ ÷ 
ñ 
°$ñ 
r   c                ó¸  € \         P                  ! RR7      p\        4       p\        VR.4      Vn        VP                  R4       V P                  V4       V P                  VP                  4       V P                  VP                  \         P                  4       V P                  \        RRR4      VP                  P                  P                  4       4       R# )zk
When a hostname is sent as part of forwarding requests, it
is resolved using HostnameEndpoint's resolver.
éÒ  )Úhostportz::1NÚTCP)zfwd.example.orgr'   )r   ÚSSHConnectForwardingChannelr   r   Ú_reactorÚchannelOpenr"   ÚsuccessResultOfÚ_channelOpenDeferredÚassertIsInstanceÚclientÚSSHForwardingClientÚassertEqualr   r!   ÚgetPeer)r   ÚsutÚmemoryReactors   &  r   Ú test_channelOpenHostnameRequestsÚ@TestSSHConnectForwardingChannel.test_channelOpenHostnameRequests+   s¦   € ô
 ×4Ò4Ð>WÔXˆä*Ó,ˆÜ4°]ÀUÀGÓLˆŒØ�‰˜Ôà×Ñ˜}Ô-Ø×Ñ˜S×5Ñ5Ô6ð 	×Ñ˜cŸj™j¬*×*HÑ*HÔIØ×ÑÜ˜˜u dÓ+¨S¯Z©Z×-AÑ-A×-IÑ-IÓ-Kö	
r   r%   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   Úskipr"   r6   Ú__static_attributes__Ú__classdictcell__)r   s   @r   r   r      s(   ø‡ € ñ÷ Ø0ˆ÷+ð +÷
ö 
r   r   N)r<   Útwisted.python.reflectr   r   Útwisted.conch.sshr   Útwisted.internet.addressr   Ú$twisted.internet.test.test_endpointsr   Útwisted.internet.testingr   r   Útwisted.trialr	   ÚTestCaser   r%   r   r   Ú<module>rG      s=   ðñõ
 1á˜^Ó,€ßÝ,å 0Ý Nß HÝ "ô(
 h×&7Ñ&7ö (
r   