version 1.190, 2008/05/08 13:06:10 |
version 1.191, 2008/05/09 04:55:56 |
|
|
Channel *c = NULL; |
Channel *c = NULL; |
char *listen_address, *originator_address; |
char *listen_address, *originator_address; |
int listen_port, originator_port; |
int listen_port, originator_port; |
int sock; |
|
|
|
/* Get rest of the packet */ |
/* Get rest of the packet */ |
listen_address = packet_get_string(NULL); |
listen_address = packet_get_string(NULL); |
|
|
originator_port = packet_get_int(); |
originator_port = packet_get_int(); |
packet_check_eom(); |
packet_check_eom(); |
|
|
debug("client_request_forwarded_tcpip: listen %s port %d, originator %s port %d", |
debug("client_request_forwarded_tcpip: listen %s port %d, " |
listen_address, listen_port, originator_address, originator_port); |
"originator %s port %d", listen_address, listen_port, |
|
originator_address, originator_port); |
|
|
sock = channel_connect_by_listen_address(listen_port); |
c = channel_connect_by_listen_address(listen_port, |
if (sock < 0) { |
"forwarded-tcpip", originator_address); |
xfree(originator_address); |
|
xfree(listen_address); |
|
return NULL; |
|
} |
|
c = channel_new("forwarded-tcpip", |
|
SSH_CHANNEL_CONNECTING, sock, sock, -1, |
|
CHAN_TCP_WINDOW_DEFAULT, CHAN_TCP_PACKET_DEFAULT, 0, |
|
originator_address, 1); |
|
xfree(originator_address); |
xfree(originator_address); |
xfree(listen_address); |
xfree(listen_address); |
return c; |
return c; |