mirror of
https://github.com/nmap/nmap.git
synced 2026-09-04 09:32:16 +00:00
Don't artificially increase timeouts to establish proxy
connections. It's now up to the caller to adjust timeout values accordingly.
This commit is contained in:
parent
a729e0047c
commit
b54590c344
2 changed files with 16 additions and 5 deletions
|
|
@ -63,6 +63,8 @@
|
|||
#define DEFAULT_PROXY_PORT_HTTP 8080
|
||||
|
||||
|
||||
extern struct timeval nsock_tod;
|
||||
|
||||
/* ---- PROTOTYPES ---- */
|
||||
static int proxy_http_node_new(struct proxy_node **node, const struct uri *uri);
|
||||
static void proxy_http_node_delete(struct proxy_node *node);
|
||||
|
|
@ -113,6 +115,7 @@ void proxy_http_handler(nsock_pool nspool, nsock_event nsevent, void *udata) {
|
|||
size_t sslen;
|
||||
unsigned short port;
|
||||
struct proxy_node *next;
|
||||
int timeout;
|
||||
|
||||
switch (nse->iod->px_ctx->px_state) {
|
||||
case PROXY_STATE_INITIAL:
|
||||
|
|
@ -128,10 +131,14 @@ void proxy_http_handler(nsock_pool nspool, nsock_event nsevent, void *udata) {
|
|||
sslen = nse->iod->px_ctx->target_sslen;
|
||||
port = nse->iod->px_ctx->target_port;
|
||||
}
|
||||
|
||||
timeout = TIMEVAL_MSEC_SUBTRACT(nse->timeout, nsock_tod);
|
||||
nsock_printf(nspool, (nsock_iod)nse->iod, nsock_proxy_ev_dispatch,
|
||||
4000, udata, "CONNECT %s:%d HTTP/1.1\r\n\r\n",
|
||||
timeout, udata, "CONNECT %s:%d HTTP/1.1\r\n\r\n",
|
||||
inet_ntop_ez(ss, sslen), (int)port);
|
||||
nsock_readlines(nspool, (nsock_iod)nse->iod, nsock_proxy_ev_dispatch, 4000, udata, 1);
|
||||
|
||||
nsock_readlines(nspool, (nsock_iod)nse->iod, nsock_proxy_ev_dispatch,
|
||||
timeout, udata, 1);
|
||||
break;
|
||||
|
||||
case PROXY_STATE_HTTP_TCP_CONNECTED:
|
||||
|
|
|
|||
|
|
@ -63,6 +63,8 @@
|
|||
#define DEFAULT_PROXY_PORT_SOCKS4 1080
|
||||
|
||||
|
||||
extern struct timeval nsock_tod;
|
||||
|
||||
struct socks4_data {
|
||||
char version;
|
||||
char type;
|
||||
|
|
@ -145,9 +147,10 @@ void proxy_socks4_handler(nsock_pool nspool, nsock_event nsevent, void *udata) {
|
|||
size_t sslen;
|
||||
unsigned short port;
|
||||
struct proxy_node *next;
|
||||
struct socks4_data socks4;
|
||||
int timeout;
|
||||
|
||||
switch (nse->iod->px_ctx->px_state) {
|
||||
struct socks4_data socks4;
|
||||
|
||||
case PROXY_STATE_INITIAL:
|
||||
nse->iod->px_ctx->px_state = PROXY_STATE_SOCKS4_TCP_CONNECTED;
|
||||
|
|
@ -165,10 +168,11 @@ void proxy_socks4_handler(nsock_pool nspool, nsock_event nsevent, void *udata) {
|
|||
|
||||
socks4_init(&socks4, ss, sslen, port);
|
||||
|
||||
timeout = TIMEVAL_MSEC_SUBTRACT(nse->timeout, nsock_tod);
|
||||
nsock_write(nspool, (nsock_iod)nse->iod, nsock_proxy_ev_dispatch,
|
||||
4000, udata, (char *)&socks4, 9);
|
||||
timeout, udata, (char *)&socks4, 9);
|
||||
nsock_readbytes(nspool, (nsock_iod)nse->iod, nsock_proxy_ev_dispatch,
|
||||
4000, udata, 8);
|
||||
timeout, udata, 8);
|
||||
break;
|
||||
|
||||
case PROXY_STATE_SOCKS4_TCP_CONNECTED:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue