]> granicus.if.org Git - curl/commitdiff
Dan Fandrich added --disable-verbose
authorDaniel Stenberg <daniel@haxx.se>
Thu, 11 Nov 2004 16:34:24 +0000 (16:34 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 11 Nov 2004 16:34:24 +0000 (16:34 +0000)
CHANGES
configure.ac
lib/krb4.c
lib/sendf.h
lib/strerror.c
lib/telnet.c

diff --git a/CHANGES b/CHANGES
index 890f64b9e2e84ea804cbfca4f8a53a64265dcca9..16648d3aaa62ebe9e969782ee92326e62aa4ce3d 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -7,6 +7,10 @@
                                   Changelog
 
 Daniel (11 November 2004)
+- Dan Fandrich added --disable-verbose to the configure script to allow builds
+  without verbose strings in the code, to save some 12KB space. Makes sense
+  only for systems with very little memory resources.
+
 - Jeff Phillips found out that a date string with a year beyond 2038 could
   crash the new date parser on systems with 32bit time_t. We now check for
   this case and deal with it.
index 473e4341dac153eb4f085676c875da74b2f1dab5..e9f206c0318570eccceb4744d32f72b6753d13ab 100644 (file)
@@ -55,16 +55,17 @@ AC_SUBST(PKGADD_NAME)
 AC_SUBST(PKGADD_VENDOR)
 
 dnl
-dnl initialize all the info variables to 'no'
-    curl_ssl_msg="no     (--with-ssl)"
-   curl_zlib_msg="no     (--with-zlib)"
-   curl_krb4_msg="no     (--with-krb4*)"
-    curl_gss_msg="no     (--with-gssapi)"
- curl_spnego_msg="no     (--with-spnego)"
-   curl_ares_msg="no     (--enable-ares)"
-   curl_ipv6_msg="no     (--enable-ipv6)"
-    curl_idn_msg="no     (--with-libidn)"
- curl_manual_msg="no     (--enable-manual)"
+dnl initialize all the info variables
+    curl_ssl_msg="no      (--with-ssl)"
+   curl_zlib_msg="no      (--with-zlib)"
+   curl_krb4_msg="no      (--with-krb4*)"
+    curl_gss_msg="no      (--with-gssapi)"
+ curl_spnego_msg="no      (--with-spnego)"
+   curl_ares_msg="no      (--enable-ares)"
+   curl_ipv6_msg="no      (--enable-ipv6)"
+    curl_idn_msg="no      (--with-libidn)"
+ curl_manual_msg="no      (--enable-manual)"
+curl_verbose_msg="enabled (--disable-verbose)"
 
 dnl
 dnl Detect the canonical host and target build environment
@@ -1426,6 +1427,26 @@ int main(void)
        AC_MSG_RESULT(no)
 )
 
+dnl ************************************************************
+dnl disable verbose text strings
+dnl
+AC_MSG_CHECKING([whether to enable verbose strings])
+AC_ARG_ENABLE(verbose,
+AC_HELP_STRING([--enable-verbose],[Enable verbose strings])
+AC_HELP_STRING([--disable-verbose],[Disable verbose strings]),
+[ case "$enableval" in
+  no)
+       AC_MSG_RESULT(no)
+       AC_DEFINE(CURL_DISABLE_VERBOSE_STRINGS, 1, [to disable verbose strings])
+       AC_SUBST(CURL_DISABLE_VERBOSE_STRINGS)
+       curl_verbose_msg="no"
+       ;;
+  *)   AC_MSG_RESULT(yes)
+       ;;
+  esac ],
+       AC_MSG_RESULT(yes)
+)
+
 dnl ************************************************************
 dnl lame option to switch on debug options
 dnl
@@ -1497,4 +1518,5 @@ AC_MSG_NOTICE([Configured to build curl/libcurl:
   IDN support:     ${curl_idn_msg}
   Build libcurl:   Shared=${enable_shared}, Static=${enable_static} 
   Built-in manual: ${curl_manual_msg}
+  Verbose errors:  ${curl_verbose_msg}
 ])
index 904ca774f70b0ae69772ecb38dba24206c1d746e..37da95df36ddff4c9ec908094aceae3c8674e3df 100644 (file)
@@ -220,7 +220,7 @@ krb4_auth(void *app_data, struct connectdata *conn)
   if(ret == KDC_PR_UNKNOWN)
     ret = mk_auth(d, &adat, "rcmd", host, checksum);
   if(ret) {
-    Curl_infof(data, "%s\n", krb_get_err_text(ret));
+    infof(data, "%s\n", krb_get_err_text(ret));
     return AUTH_CONTINUE;
   }
 
@@ -232,7 +232,7 @@ krb4_auth(void *app_data, struct connectdata *conn)
     if (krb_get_our_ip_for_realm(krb_realmofhost(host),
                                  &natAddr) != KSUCCESS
         && krb_get_our_ip_for_realm(NULL, &natAddr) != KSUCCESS)
-      Curl_infof(data, "Can't get address for realm %s\n",
+      infof(data, "Can't get address for realm %s\n",
                  krb_realmofhost(host));
     else {
       if (natAddr.s_addr != localaddr->sin_addr.s_addr) {
@@ -242,7 +242,7 @@ krb4_auth(void *app_data, struct connectdata *conn)
 #else
         char *ip = (char *)inet_ntoa(natAddr);
 #endif
-        Curl_infof(data, "Using NAT IP address (%s) for kerberos 4\n", ip);
+        infof(data, "Using NAT IP address (%s) for kerberos 4\n", ip);
         localaddr->sin_addr = natAddr;
       }
     }
index 155c1193f59618480876e7e5729bccd65edd6294..1d7b3522d6845c1b1f9b3cb5a1a4e3b5fda7bed3 100644 (file)
@@ -28,7 +28,17 @@ CURLcode Curl_sendf(curl_socket_t sockfd, struct connectdata *,
 void Curl_infof(struct SessionHandle *, const char *fmt, ...);
 void Curl_failf(struct SessionHandle *, const char *fmt, ...);
 
+#if defined(CURL_DISABLE_VERBOSE_STRINGS)
+#if defined(__GNUC__)
+/* Variable argument macros is a C99 feature long supported by gcc */
+#define infof(...) /*ignore*/
+#else
+/* Cast the args to void to make them a noop, side effects notwithstanding */
+#define infof (void)
+#endif
+#else
 #define infof Curl_infof
+#endif
 #define failf Curl_failf
 
 #define CLIENTWRITE_BODY   1
index fa84a17319bb12db4ca6ac08af690627de07ddbd..d8e08588033d0b08ca9bbe1d940ba84bbefbf12a 100644 (file)
@@ -48,6 +48,7 @@ extern char *strerror_r(int errnum, char *buf, size_t buflen);
 const char *
 curl_easy_strerror(CURLcode error)
 {
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
   switch (error) {
   case CURLE_OK:
     return "no error";
@@ -252,11 +253,18 @@ curl_easy_strerror(CURLcode error)
    * is why it is here, and not at the start of the switch.
    */
   return "unknown error";
+#else
+  if (error == CURLE_OK)
+    return "no error";
+  else
+    return "error";
+#endif
 }
 
 const char *
 curl_multi_strerror(CURLMcode error)
 {
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
   switch (error) {
   case CURLM_CALL_MULTI_PERFORM:
     return "please call curl_multi_perform() soon";
@@ -281,11 +289,18 @@ curl_multi_strerror(CURLMcode error)
   }
 
   return "unknown error";
+#else
+  if (error == CURLM_OK)
+    return "no error";
+  else
+    return "error";
+#endif
 }
 
 const char *
 curl_share_strerror(CURLSHcode error)
 {
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
   switch (error) {
   case CURLSHE_OK:
     return "no error";
@@ -307,6 +322,12 @@ curl_share_strerror(CURLSHcode error)
   }
 
   return "CURLSH unknown";
+#else
+  if (error == CURLSHE_OK)
+    return "no error";
+  else
+    return "error";
+#endif
 }
 
 #if defined(WIN32) && !defined(__CYGWIN__)
@@ -318,6 +339,7 @@ get_winsock_error (int err, char *buf, size_t len)
 {
   char *p;
 
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
   switch (err) {
   case WSAEINTR:
     p = "Call interrupted.";
@@ -485,6 +507,12 @@ get_winsock_error (int err, char *buf, size_t len)
   default:
     return NULL;
   }
+#else
+  if (error == CURLE_OK)
+    return NULL;
+  else
+    p = "error";
+#endif
   strncpy (buf, p, len);
   buf [len-1] = '\0';
   return buf;
@@ -594,6 +622,7 @@ const char *Curl_idn_strerror (struct connectdata *conn, int err)
   buf = conn->syserr_buf;
   max = sizeof(conn->syserr_buf)-1;
 
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
   switch ((Idna_rc)err) {
     case IDNA_SUCCESS:
       str = "No error";
@@ -636,6 +665,12 @@ const char *Curl_idn_strerror (struct connectdata *conn, int err)
       str = NULL;
       break;
   }
+#else
+  if ((Idna_rc)err == IDNA_SUCCESS)
+    str = "No error";
+  else
+    str = "error";
+#endif
   if (str)
     strncpy(buf, str, max);
   buf[max] = '\0';
index c2813fa2a23c219fd3d5087f4b081d24758ed6b0..a2208f67a33e72fb0d065b9b8ad1c547469ed2e2 100644 (file)
@@ -262,9 +262,9 @@ static void printoption(struct SessionHandle *data,
     if (cmd == CURL_IAC)
     {
       if (CURL_TELCMD_OK(option))
-        Curl_infof(data, "%s IAC %s\n", direction, CURL_TELCMD(option));
+        infof(data, "%s IAC %s\n", direction, CURL_TELCMD(option));
       else
-        Curl_infof(data, "%s IAC %d\n", direction, option);
+        infof(data, "%s IAC %d\n", direction, option);
     }
     else
     {
@@ -280,12 +280,12 @@ static void printoption(struct SessionHandle *data,
           opt = NULL;
 
         if(opt)
-          Curl_infof(data, "%s %s %s\n", direction, fmt, opt);
+          infof(data, "%s %s %s\n", direction, fmt, opt);
         else
-          Curl_infof(data, "%s %s %d\n", direction, fmt, option);
+          infof(data, "%s %s %d\n", direction, fmt, option);
       }
       else
-        Curl_infof(data, "%s %d %d\n", direction, cmd, option);
+        infof(data, "%s %d %d\n", direction, cmd, option);
     }
   }
 }
@@ -675,7 +675,7 @@ static void printsub(struct SessionHandle *data,
   {
     if (direction)
     {
-      Curl_infof(data, "%s IAC SB ", (direction == '<')? "RCVD":"SENT");
+      infof(data, "%s IAC SB ", (direction == '<')? "RCVD":"SENT");
       if (length >= 3)
       {
         int j;
@@ -685,27 +685,27 @@ static void printsub(struct SessionHandle *data,
 
         if (i != CURL_IAC || j != CURL_SE)
         {
-          Curl_infof(data, "(terminated by ");
+          infof(data, "(terminated by ");
           if (CURL_TELOPT_OK(i))
-            Curl_infof(data, "%s ", CURL_TELOPT(i));
+            infof(data, "%s ", CURL_TELOPT(i));
           else if (CURL_TELCMD_OK(i))
-            Curl_infof(data, "%s ", CURL_TELCMD(i));
+            infof(data, "%s ", CURL_TELCMD(i));
           else
-            Curl_infof(data, "%d ", i);
+            infof(data, "%d ", i);
           if (CURL_TELOPT_OK(j))
-            Curl_infof(data, "%s", CURL_TELOPT(j));
+            infof(data, "%s", CURL_TELOPT(j));
           else if (CURL_TELCMD_OK(j))
-            Curl_infof(data, "%s", CURL_TELCMD(j));
+            infof(data, "%s", CURL_TELCMD(j));
           else
-            Curl_infof(data, "%d", j);
-          Curl_infof(data, ", not IAC SE!) ");
+            infof(data, "%d", j);
+          infof(data, ", not IAC SE!) ");
         }
       }
       length -= 2;
     }
     if (length < 1)
     {
-      Curl_infof(data, "(Empty suboption?)");
+      infof(data, "(Empty suboption?)");
       return;
     }
 
@@ -714,28 +714,28 @@ static void printsub(struct SessionHandle *data,
         case CURL_TELOPT_TTYPE:
         case CURL_TELOPT_XDISPLOC:
         case CURL_TELOPT_NEW_ENVIRON:
-          Curl_infof(data, "%s", CURL_TELOPT(pointer[0]));
+          infof(data, "%s", CURL_TELOPT(pointer[0]));
           break;
         default:
-          Curl_infof(data, "%s (unsupported)", CURL_TELOPT(pointer[0]));
+          infof(data, "%s (unsupported)", CURL_TELOPT(pointer[0]));
           break;
       }
     }
     else
-      Curl_infof(data, "%d (unknown)", pointer[i]);
+      infof(data, "%d (unknown)", pointer[i]);
 
     switch(pointer[1]) {
       case CURL_TELQUAL_IS:
-        Curl_infof(data, " IS");
+        infof(data, " IS");
         break;
       case CURL_TELQUAL_SEND:
-        Curl_infof(data, " SEND");
+        infof(data, " SEND");
         break;
       case CURL_TELQUAL_INFO:
-        Curl_infof(data, " INFO/REPLY");
+        infof(data, " INFO/REPLY");
         break;
       case CURL_TELQUAL_NAME:
-        Curl_infof(data, " NAME");
+        infof(data, " NAME");
         break;
     }
 
@@ -743,21 +743,21 @@ static void printsub(struct SessionHandle *data,
       case CURL_TELOPT_TTYPE:
       case CURL_TELOPT_XDISPLOC:
         pointer[length] = 0;
-        Curl_infof(data, " \"%s\"", &pointer[2]);
+        infof(data, " \"%s\"", &pointer[2]);
         break;
       case CURL_TELOPT_NEW_ENVIRON:
         if(pointer[1] == CURL_TELQUAL_IS) {
-          Curl_infof(data, " ");
+          infof(data, " ");
           for(i = 3;i < length;i++) {
             switch(pointer[i]) {
               case CURL_NEW_ENV_VAR:
-                Curl_infof(data, ", ");
+                infof(data, ", ");
                 break;
               case CURL_NEW_ENV_VALUE:
-                Curl_infof(data, " = ");
+                infof(data, " = ");
                 break;
               default:
-                Curl_infof(data, "%c", pointer[i]);
+                infof(data, "%c", pointer[i]);
                 break;
             }
           }
@@ -765,13 +765,13 @@ static void printsub(struct SessionHandle *data,
         break;
       default:
         for (i = 2; i < length; i++)
-          Curl_infof(data, " %.2x", pointer[i]);
+          infof(data, " %.2x", pointer[i]);
         break;
     }
 
     if (direction)
     {
-      Curl_infof(data, "\n");
+      infof(data, "\n");
     }
   }
 }