From 219a0fbe76204e2505a9143aeb149336c7f5683b Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 5 Mar 2014 17:38:05 +0000 Subject: remote_port: allow connect to port 0 Port number zero is perfectly allowed to connect to. I moved to storing the remote port number in an int so that -1 means undefined and 0-65535 can be used for legitimate port numbers. --- lib/url.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'lib/url.c') diff --git a/lib/url.c b/lib/url.c index 4d7508eee..7a7c2781d 100644 --- a/lib/url.c +++ b/lib/url.c @@ -3553,6 +3553,7 @@ static struct connectdata *allocate_conn(struct SessionHandle *data) conn->tempsock[1] = CURL_SOCKET_BAD; /* no file descriptor */ conn->connection_id = -1; /* no ID */ conn->port = -1; /* unknown at this point */ + conn->remote_port = -1; /* unknown */ /* Default protocol-independent behavior doesn't support persistent connections, so we set this to force-close. Protocols that support @@ -4075,7 +4076,7 @@ static CURLcode setup_connection_internals(struct connectdata *conn) /* only if remote_port was not already parsed off the URL we use the default port number */ - if(!conn->remote_port) + if(conn->remote_port < 0) conn->remote_port = (unsigned short)conn->given->defport; return CURLE_OK; -- cgit v1.2.3