]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
--libcurl: hide setopt() calls setting default options
authorDaniel Stenberg <daniel@haxx.se>
Tue, 6 Jul 2010 20:13:22 +0000 (22:13 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 6 Jul 2010 20:13:22 +0000 (22:13 +0200)
And additionally, don't show function or object pointers actual value
since they make no sense to anyone. Show 'functionpointer' and
'objectpointer' instead.

src/main.c

index 0618b6fbded369c95fef7efdcefc8699d8ec8a24..fc255c71d8a6bba08a2f78458c1e9583a516b59d 100644 (file)
@@ -4081,6 +4081,7 @@ static CURLcode _my_setopt(CURL *curl, bool str, struct Configurable *config,
   char *bufp;
   char value[256];
   bool remark=FALSE;
+  bool skip=FALSE;
 
   va_start(arg, tag);
 
@@ -4088,7 +4089,8 @@ static CURLcode _my_setopt(CURL *curl, bool str, struct Configurable *config,
     long lval = va_arg(arg, long);
     snprintf(value, sizeof(value), "%ld", lval);
     ret = curl_easy_setopt(curl, tag, lval);
-
+    if(!lval)
+      skip = TRUE;
   }
   else if(tag < CURLOPTTYPE_OFF_T) {
     void *pval = va_arg(arg, void *);
@@ -4097,32 +4099,36 @@ static CURLcode _my_setopt(CURL *curl, bool str, struct Configurable *config,
     /* function pointers are never printable */
     if (tag >= CURLOPTTYPE_FUNCTIONPOINT) {
       if (pval) {
-        snprintf(value, sizeof(value), "%p", pval);
+        strcpy(value, "functionpointer"); /* 'value' fits 256 bytes */
         remark = TRUE;
       }
       else
-        strcpy(value, "NULL");
+        skip = TRUE;
     }
 
     else if(pval && str)
       snprintf(value, sizeof(value), "\"%s\"", (char *)ptr);
     else if(pval) {
-      snprintf(value, sizeof(value), "%p", pval);
+      strcpy(value, "objectpointer"); /* 'value' fits 256 bytes */
       remark = TRUE;
     }
-    else {
-      strcpy(value, "NULL"); /* value fits more than 5 bytes */
-    }
+    else
+      skip = TRUE;
+
     ret = curl_easy_setopt(curl, tag, pval);
 
   }
   else {
     curl_off_t oval = va_arg(arg, curl_off_t);
-    snprintf(value, sizeof(value), "(curl_off_t)%" CURL_FORMAT_CURL_OFF_T, oval);
+    snprintf(value, sizeof(value),
+             "(curl_off_t)%" CURL_FORMAT_CURL_OFF_T, oval);
     ret = curl_easy_setopt(curl, tag, oval);
+
+    if(!oval)
+      skip = TRUE;
   }
 
-  if(config->libcurl) {
+  if(config->libcurl && !skip) {
     /* we only use this for real if --libcurl was used */
 
     bufp = curlx_maprintf("%scurl_easy_setopt(hnd, %s, %s);%s",
@@ -5002,7 +5008,8 @@ operate(struct Configurable *config, int argc, argv_item_t argv[])
           my_setopt(curl, CURLOPT_BUFFERSIZE, config->recvpersecond);
 
         /* size of uploaded file: */
-        my_setopt(curl, CURLOPT_INFILESIZE_LARGE, uploadfilesize);
+        if(uploadfilesize != -1)
+          my_setopt(curl, CURLOPT_INFILESIZE_LARGE, uploadfilesize);
         my_setopt_str(curl, CURLOPT_URL, url);     /* what to fetch */
         my_setopt_str(curl, CURLOPT_PROXY, config->proxy); /* proxy to use */
         if(config->proxy)