diff options
-rw-r--r-- | CHANGES | 3 | ||||
-rw-r--r-- | lib/connect.c | 5 |
2 files changed, 5 insertions, 3 deletions
@@ -7,6 +7,9 @@ Changelog Daniel (22 December 2006) +- David McCreedy fixed a bad call to getsockname() that wrongly used a size_t + variable to point to when it should be a socklen_t. + - When setting a proxy with environment variables and (for example) running 'curl [URL]' with a URL without a protocol prefix, curl would not send a correct request as it failed to add the protocol prefix. diff --git a/lib/connect.c b/lib/connect.c index 1ffb98b37..2b3897204 100644 --- a/lib/connect.c +++ b/lib/connect.c @@ -384,11 +384,10 @@ static CURLcode bindlocal(struct connectdata *conn, if( bind(sockfd, sock, socksize) >= 0) { /* we succeeded to bind */ struct Curl_sockaddr_storage add; - size_t size; + socklen_t size; size = sizeof(add); - if(getsockname(sockfd, (struct sockaddr *) &add, - (socklen_t *)&size)<0) { + if(getsockname(sockfd, (struct sockaddr *) &add, &size) < 0) { failf(data, "getsockname() failed"); return CURLE_HTTP_PORT_FAILED; } |