X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsrc%2Ftransports%2Fsmtp_socks.c;h=41dc781473236fa489e1dbf2732b0d5a61addaf6;hb=c5040dfdb523ce2a14efbdfa0d3eb69d3afef65a;hp=c7415c35703211bf4620ad19d19f4054546fc822;hpb=059f2aced50773fa38661a5a30c54260aee4bf55;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/src/src/transports/smtp_socks.c b/src/src/transports/smtp_socks.c index c7415c357..41dc78147 100644 --- a/src/src/transports/smtp_socks.c +++ b/src/src/transports/smtp_socks.c @@ -119,9 +119,8 @@ switch(method) len = i + j + 3; HDEBUG(D_transport|D_acl|D_v) { - int i; debug_printf_indent(" SOCKS>>"); - for (i = 0; iproxy_host; proxy_af = Ustrchr(sob->proxy_host, ':') ? AF_INET6 : AF_INET; + /*XXX we trust that the method-select command is idempotent */ if ((fd = smtp_sock_connect(&proxy, proxy_af, sob->port, interface, tb, sob->timeout, &early_data)) >= 0) { @@ -319,7 +319,7 @@ HDEBUG(D_transport|D_acl|D_v) debug_printf_indent(" SOCKS>> 05 01 %02x\n", sob- (void) setsockopt(fd, IPPROTO_TCP, TCP_QUICKACK, US &off, sizeof(off)); #endif -if ( !fd_ready(fd, tmo-time(NULL)) +if ( !fd_ready(fd, tmo) || read(fd, buf, 2) != 2 ) goto rcv_err; @@ -358,9 +358,8 @@ if ( buf[0] != 5 state = US"connect"; HDEBUG(D_transport|D_acl|D_v) { - int i; debug_printf_indent(" SOCKS>>"); - for (i = 0; i>"); - for (i = 0; i