diff options
author | Yang Tse <yangsita@gmail.com> | 2010-11-30 22:14:37 +0100 |
---|---|---|
committer | Yang Tse <yangsita@gmail.com> | 2010-11-30 22:14:37 +0100 |
commit | 11cddb68e0ff73c8297b85e51bebaf6f968a8d62 (patch) | |
tree | 92c287a27561496b0be9f35faba35ef9c6bcc580 /lib/getinfo.c | |
parent | 1b2b93e0746ed09daf62ffc55cff1dcaaa3dff09 (diff) | |
download | curl-11cddb68e0ff73c8297b85e51bebaf6f968a8d62.tar.gz |
fix getinfo CURLINFO_LOCAL* for reused connections (take 2)
Diffstat (limited to 'lib/getinfo.c')
-rw-r--r-- | lib/getinfo.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/getinfo.c b/lib/getinfo.c index 5412c0ffc..946686281 100644 --- a/lib/getinfo.c +++ b/lib/getinfo.c @@ -67,6 +67,11 @@ CURLcode Curl_initinfo(struct SessionHandle *data) info->request_size = 0; info->numconnects = 0; + info->conn_primary_ip[0] = '\0'; + info->conn_local_ip[0] = '\0'; + info->conn_primary_port = 0; + info->conn_local_port = 0; + return CURLE_OK; } @@ -233,20 +238,20 @@ CURLcode Curl_getinfo(struct SessionHandle *data, CURLINFO info, ...) break; case CURLINFO_PRIMARY_IP: /* Return the ip address of the most recent (primary) connection */ - *param_charp = data->info.primary_ip; + *param_charp = data->info.conn_primary_ip; break; case CURLINFO_PRIMARY_PORT: /* Return the (remote) port of the most recent (primary) connection */ - *param_longp = data->info.primary_port; + *param_longp = data->info.conn_primary_port; break; case CURLINFO_LOCAL_IP: /* Return the source/local ip address of the most recent (primary) connection */ - *param_charp = data->info.local_ip; + *param_charp = data->info.conn_local_ip; break; case CURLINFO_LOCAL_PORT: /* Return the local port of the most recent (primary) connection */ - *param_longp = data->info.local_port; + *param_longp = data->info.conn_local_port; break; case CURLINFO_CERTINFO: /* Return the a pointer to the certinfo struct. Not really an slist |