aboutsummaryrefslogtreecommitdiff
path: root/lib/url.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2000-05-29 22:51:13 +0000
committerDaniel Stenberg <daniel@haxx.se>2000-05-29 22:51:13 +0000
commita0ce95e155de68bd5a088a7a539f45aa7134b00b (patch)
tree4e8c3919e90ce83dbc502b6eeb82668693a46297 /lib/url.c
parentabc751ae1300c7131eb2878a13cec0e24ea2840d (diff)
David LeBlanc's fixes!
Diffstat (limited to 'lib/url.c')
-rw-r--r--lib/url.c36
1 files changed, 20 insertions, 16 deletions
diff --git a/lib/url.c b/lib/url.c
index 6594afbe6..5dd33a59d 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -303,48 +303,48 @@ CURLcode curl_setopt(CURL *curl, CURLoption option, ...)
switch(option) {
case CURLOPT_VERBOSE:
- data->bits.verbose = va_arg(param, long);
+ data->bits.verbose = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_HEADER:
- data->bits.http_include_header = va_arg(param, long);
+ data->bits.http_include_header = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_NOPROGRESS:
- data->bits.hide_progress = va_arg(param, long);
+ data->bits.hide_progress = va_arg(param, long)?TRUE:FALSE;
if(data->bits.hide_progress)
data->progress.flags |= PGRS_HIDE;
break;
case CURLOPT_NOBODY:
- data->bits.no_body = va_arg(param, long);
+ data->bits.no_body = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_FAILONERROR:
- data->bits.http_fail_on_error = va_arg(param, long);
+ data->bits.http_fail_on_error = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_UPLOAD:
- data->bits.upload = va_arg(param, long);
+ data->bits.upload = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_POST:
- data->bits.http_post = va_arg(param, long);
+ data->bits.http_post = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_FTPLISTONLY:
- data->bits.ftp_list_only = va_arg(param, long);
+ data->bits.ftp_list_only = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_FTPAPPEND:
- data->bits.ftp_append = va_arg(param, long);
+ data->bits.ftp_append = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_NETRC:
- data->bits.use_netrc = va_arg(param, long);
+ data->bits.use_netrc = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_FOLLOWLOCATION:
- data->bits.http_follow_location = va_arg(param, long);
+ data->bits.http_follow_location = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_FTPASCII:
- data->bits.ftp_ascii = va_arg(param, long);
+ data->bits.ftp_ascii = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_PUT:
- data->bits.http_put = va_arg(param, long);
+ data->bits.http_put = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_MUTE:
- data->bits.mute = va_arg(param, long);
+ data->bits.mute = va_arg(param, long)?TRUE:FALSE;
break;
case CURLOPT_TIMECONDITION:
@@ -627,6 +627,10 @@ CURLcode curl_connect(CURL *curl, CURLconnect **in_connect)
struct UrlData *data = curl;
struct connectdata *conn;
+ /* I believe the longest possible name in a DNS is set to 255 letters, FQDN
+ so this should be safe: */
+ char hostent_buf[512];
+
if(!data || (data->handle != STRUCT_OPEN))
return CURLE_BAD_FUNCTION_ARGUMENT; /* TBD: make error codes */
@@ -1036,7 +1040,7 @@ CURLcode curl_connect(CURL *curl, CURLconnect **in_connect)
}
/* Connect to target host right on */
- if(!(conn->hp = GetHost(data, conn->name))) {
+ if(!(conn->hp = GetHost(data, conn->name, hostent_buf, sizeof(hostent_buf)))) {
failf(data, "Couldn't resolv host '%s'", conn->name);
return CURLE_COULDNT_RESOLVE_HOST;
}
@@ -1086,7 +1090,7 @@ CURLcode curl_connect(CURL *curl, CURLconnect **in_connect)
}
/* connect to proxy */
- if(!(conn->hp = GetHost(data, proxyptr))) {
+ if(!(conn->hp = GetHost(data, proxyptr, hostent_buf, sizeof(hostent_buf)))) {
failf(data, "Couldn't resolv proxy '%s'", proxyptr);
return CURLE_COULDNT_RESOLVE_PROXY;
}