Пример #1
0
 def test_tunnel_channel_eof(self):
     remote_host = '127.0.0.59'
     server = OpenSSHServer(listen_ip=remote_host, port=self.port)
     server.start_server()
     in_q, out_q = deque(), deque()
     try:
         tunnel = Tunnel(self.proxy_host,
                         in_q,
                         out_q,
                         port=self.port,
                         pkey=self.user_key,
                         num_retries=1)
         tunnel._init_tunnel_client()
         channel = tunnel._open_channel_retries(self.proxy_host, self.port,
                                                2150)
         self.assertFalse(channel.eof())
         channel.close()
         listen_socket, listen_port = tunnel._init_tunnel_sock()
         client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         client_socket.connect(('127.0.0.1', listen_port))
         client = spawn(self._connect_client, client_socket)
         tunnel._read_channel(client_socket, channel)
         tunnel._read_forward_sock(client_socket, channel)
         self.assertTrue(channel.eof())
         client.kill()
     finally:
         server.stop()
Пример #2
0
 def test_tunnel_sock_failure(self):
     remote_host = '127.0.0.59'
     server = OpenSSHServer(listen_ip=remote_host, port=self.port)
     server.start_server()
     in_q, out_q = deque(), deque()
     try:
         tunnel = Tunnel(self.proxy_host,
                         in_q,
                         out_q,
                         port=self.port,
                         pkey=self.user_key,
                         num_retries=1)
         tunnel._init_tunnel_client()
         channel = tunnel._open_channel_retries(self.proxy_host, self.port,
                                                2150)
         self.assertFalse(channel.eof())
         listen_socket, listen_port = tunnel._init_tunnel_sock()
         client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         client_socket.connect(('127.0.0.1', listen_port))
         client_socket.send(b'blah\n')
         client_socket.close()
         gl1 = spawn(tunnel._read_channel, client_socket, channel)
         gl2 = spawn(tunnel._read_forward_sock, client_socket, channel)
         sleep(1)
         gl1.kill()
         gl2.kill()
         tunnel._sockets.append(None)
         tunnel.cleanup()
     finally:
         server.stop()
Пример #3
0
 def test_tunnel_sock_failure(self):
     remote_host = '127.0.0.59'
     server = OpenSSHServer(listen_ip=remote_host, port=self.port)
     server.start_server()
     in_q, out_q = deque(), deque()
     try:
         tunnel = Tunnel(self.proxy_host, in_q, out_q, port=self.port,
                         pkey=self.user_key, num_retries=1)
         tunnel._init_tunnel_client()
         channel = tunnel._open_channel_retries(self.proxy_host, self.port, 2150)
         self.assertFalse(channel.eof())
         listen_socket, listen_port = tunnel._init_tunnel_sock()
         client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         client_socket.connect(('127.0.0.1', listen_port))
         client_socket.send(b'blah\n')
         client_socket.close()
         gl1 = spawn(tunnel._read_channel, client_socket, channel)
         gl2 = spawn(tunnel._read_forward_sock, client_socket, channel)
         sleep(1)
         gl1.kill()
         gl2.kill()
         tunnel._sockets.append(None)
         tunnel.cleanup()
     finally:
         server.stop()
Пример #4
0
 def test_tunnel_channel_eof(self):
     remote_host = '127.0.0.59'
     server = OpenSSHServer(listen_ip=remote_host, port=self.port)
     server.start_server()
     in_q, out_q = deque(), deque()
     try:
         tunnel = Tunnel(self.proxy_host, in_q, out_q, port=self.port,
                         pkey=self.user_key, num_retries=1)
         tunnel._init_tunnel_client()
         channel = tunnel._open_channel_retries(self.proxy_host, self.port, 2150)
         self.assertFalse(channel.eof())
         channel.close()
         listen_socket, listen_port = tunnel._init_tunnel_sock()
         client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         client_socket.connect(('127.0.0.1', listen_port))
         client = spawn(self._connect_client, client_socket)
         tunnel._read_channel(client_socket, channel)
         tunnel._read_forward_sock(client_socket, channel)
         self.assertTrue(channel.eof())
         client.kill()
     finally:
         server.stop()