version 1.216, 2005/06/16 08:00:00 |
version 1.217, 2005/06/17 02:44:32 |
|
|
channel_decode_socks4(Channel *c, fd_set * readset, fd_set * writeset) |
channel_decode_socks4(Channel *c, fd_set * readset, fd_set * writeset) |
{ |
{ |
char *p, *host; |
char *p, *host; |
int len, have, i, found; |
u_int len, have, i, found; |
char username[256]; |
char username[256]; |
struct { |
struct { |
u_int8_t version; |
u_int8_t version; |
|
|
} s5_req, s5_rsp; |
} s5_req, s5_rsp; |
u_int16_t dest_port; |
u_int16_t dest_port; |
u_char *p, dest_addr[255+1]; |
u_char *p, dest_addr[255+1]; |
int i, have, found, nmethods, addrlen, af; |
u_int have, i, found, nmethods, addrlen, af; |
|
|
debug2("channel %d: decode socks5", c->self); |
debug2("channel %d: decode socks5", c->self); |
p = buffer_ptr(&c->input); |
p = buffer_ptr(&c->input); |
|
|
channel_pre_dynamic(Channel *c, fd_set * readset, fd_set * writeset) |
channel_pre_dynamic(Channel *c, fd_set * readset, fd_set * writeset) |
{ |
{ |
u_char *p; |
u_char *p; |
int have, ret; |
u_int have; |
|
int ret; |
|
|
have = buffer_len(&c->input); |
have = buffer_len(&c->input); |
c->delayed = 0; |
c->delayed = 0; |