version 1.327, 2013/11/08 00:39:15 |
version 1.328, 2013/12/19 01:04:36 |
|
|
{ |
{ |
int direct; |
int direct; |
char buf[1024]; |
char buf[1024]; |
|
char *local_ipaddr = get_local_ipaddr(c->sock); |
|
int local_port = get_sock_port(c->sock, 1); |
char *remote_ipaddr = get_peer_ipaddr(c->sock); |
char *remote_ipaddr = get_peer_ipaddr(c->sock); |
int remote_port = get_peer_port(c->sock); |
int remote_port = get_peer_port(c->sock); |
|
|
|
|
|
|
snprintf(buf, sizeof buf, |
snprintf(buf, sizeof buf, |
"%s: listening port %d for %.100s port %d, " |
"%s: listening port %d for %.100s port %d, " |
"connect from %.200s port %d", |
"connect from %.200s port %d to %.100s port %d", |
rtype, c->listening_port, c->path, c->host_port, |
rtype, c->listening_port, c->path, c->host_port, |
remote_ipaddr, remote_port); |
remote_ipaddr, remote_port, local_ipaddr, local_port); |
|
|
free(c->remote_name); |
free(c->remote_name); |
c->remote_name = xstrdup(buf); |
c->remote_name = xstrdup(buf); |
|
|
} else { |
} else { |
/* listen address, port */ |
/* listen address, port */ |
packet_put_cstring(c->path); |
packet_put_cstring(c->path); |
packet_put_int(c->listening_port); |
packet_put_int(local_port); |
} |
} |
/* originator host and port */ |
/* originator host and port */ |
packet_put_cstring(remote_ipaddr); |
packet_put_cstring(remote_ipaddr); |
|
|
packet_send(); |
packet_send(); |
} |
} |
free(remote_ipaddr); |
free(remote_ipaddr); |
|
free(local_ipaddr); |
} |
} |
|
|
static void |
static void |