§
    Ètºf”  ã                   ó–   — d Z ddlmZ  ed¦  «        ZerddlmZ ddlmZ ddlm	Z	 ddl
mZmZ ddlmZ  G d	„ d
ej        ¦  «        ZdS )z,
Tests for L{twisted.conch.ssh.forwarding}.
é    )ÚrequireModuleÚcryptography)Ú
forwarding)ÚIPv6Address)ÚdeterministicResolvingReactor)ÚMemoryReactorClockÚStringTransport)Úunittestc                   ó2   — e Zd ZdZesdZdeddfd„Zdd„ZdS )	ÚTestSSHConnectForwardingChannelzH
    Unit and integration tests for L{SSHConnectForwardingChannel}.
    zCannot run without cryptographyÚreactorÚreturnNc                 óÞ   — |j         d         d         }|j        d         }|                     d¦  «        }t          |                     ¦   «         ¬¦  «        }|                     |¦  «         dS )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.
        r   é   N)ÚpeerAddress)Ú
tcpClientsÚ
connectorsÚbuildProtocolr	   ÚgetDestinationÚmakeConnection)Úselfr   ÚfactoryÚ	connectorÚprotocolÚ	transports         úa/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/twisted/conch/test/test_forwarding.pyÚmakeTCPConnectionz1TestSSHConnectForwardingChannel.makeTCPConnection   sl   € ð Ô$ QÔ'¨Ô*ˆØÔ& qÔ)ˆ	Ø×(Ò(¨Ñ.Ô.ˆÝ#°	×0HÒ0HÑ0JÔ0JÐKÑKÔKˆ	Ø×Ò 	Ñ*Ô*Ð*Ð*Ð*ó    c                 óÌ  — t          j        d¬¦  «        }t          ¦   «         }t          |dg¦  «        |_        |                     d¦  «         |                      |¦  «         |                      |j        ¦  «         |  	                    |j
        t           j        ¦  «         |                      t          ddd¦  «        |j
        j                             ¦   «         ¦  «         dS )zƒ
        When a hostname is sent as part of forwarding requests, it
        is resolved using HostnameEndpoint's resolver.
        )zfwd.example.orgéÒ  )Úhostportz::1NÚTCPr    )r   ÚSSHConnectForwardingChannelr   r   Ú_reactorÚchannelOpenr   ÚsuccessResultOfÚ_channelOpenDeferredÚassertIsInstanceÚclientÚSSHForwardingClientÚassertEqualr   r   ÚgetPeer)r   ÚsutÚmemoryReactors      r   Ú test_channelOpenHostnameRequestsz@TestSSHConnectForwardingChannel.test_channelOpenHostnameRequests+   sÔ   € õ
 Ô4Ð>WÐXÑXÔXˆå*Ñ,Ô,ˆÝ4°]ÀUÀGÑLÔLˆŒØ�Š˜ÑÔÐà×Ò˜}Ñ-Ô-Ð-Ø×Ò˜SÔ5Ñ6Ô6Ð6ð 	×Ò˜cœj­*Ô*HÑIÔIÐIØ×ÒÝ˜˜u dÑ+Ô+¨S¬ZÔ-A×-IÒ-IÑ-KÔ-Kñ	
ô 	
ð 	
ð 	
ð 	
r   )r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úskipr   r   r/   © r   r   r   r      sd   € € € € € ðð ð ð 1Ø0ˆð+Ð);ð +Àð +ð +ð +ð +ð
ð 
ð 
ð 
ð 
ð 
r   r   N)r3   Útwisted.python.reflectr   r   Útwisted.conch.sshr   Útwisted.internet.addressr   Ú$twisted.internet.test.test_endpointsr   Útwisted.internet.testingr   r	   Útwisted.trialr
   ÚTestCaser   r5   r   r   ú<module>r=      sÑ   ððð ð
 1Ð 0Ð 0Ð 0Ð 0Ð 0àˆ}˜^Ñ,Ô,€Øð -Ø,Ð,Ð,Ð,Ð,Ð,à 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø NÐ NÐ NÐ NÐ NÐ NØ HÐ HÐ HÐ HÐ HÐ HÐ HÐ HØ "Ð "Ð "Ð "Ð "Ð "ð(
ð (
ð (
ð (
ð (
 hÔ&7ñ (
ô (
ð (
ð (
ð (
r   