mirror of
https://github.com/curl/curl.git
synced 2026-05-30 07:07:30 +03:00
socks.c: display the hostname returned by the SOCKS5 proxy server
Instead of displaying the requested hostname the one returned by the SOCKS5 proxy server is used in case of connection error. The requested hostname is displayed earlier in the connection sequence. The upper-value of the port is moved to a temporary variable and replaced with a 0-byte to make sure the hostname is 0-terminated.
This commit is contained in:
parent
670802bd0b
commit
b820e40f34
1 changed files with 5 additions and 2 deletions
|
|
@ -734,12 +734,15 @@ CURLcode Curl_SOCKS5(const char *proxy_name,
|
|||
(unsigned char)socksreq[1]);
|
||||
}
|
||||
else if(socksreq[3] == 3) {
|
||||
unsigned char port_upper = (unsigned char)socksreq[len - 2];
|
||||
socksreq[len - 2] = 0;
|
||||
failf(data,
|
||||
"Can't complete SOCKS5 connection to %s:%d. (%d)",
|
||||
hostname,
|
||||
(((unsigned char)socksreq[len - 2] << 8) |
|
||||
(char *)&socksreq[5],
|
||||
((port_upper << 8) |
|
||||
(unsigned char)socksreq[len - 1]),
|
||||
(unsigned char)socksreq[1]);
|
||||
socksreq[len - 2] = port_upper;
|
||||
}
|
||||
else if(socksreq[3] == 4) {
|
||||
failf(data,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue