* g10.c (main, add_notation_data, add_policy_url)
authorWerner Koch <wk@gnupg.org>
Mon, 11 Apr 2005 18:24:09 +0000 (18:24 +0000)
committerWerner Koch <wk@gnupg.org>
Mon, 11 Apr 2005 18:24:09 +0000 (18:24 +0000)
(add_keyserver_url): Use isascii() to protect the isfoo macros and
to replace direct tests.  Possible problems noted by Christian
Biere.
* keyserver.c (parse_keyserver_uri): Ditto.

* g10.c (main): Declare --pipemode deprecated.
* misc.c (deprecated_command): New.

g10/ChangeLog
g10/g10.c
g10/keyserver.c
g10/main.h
g10/misc.c

index 8fca7e7..2198ed3 100644 (file)
@@ -1,5 +1,16 @@
+2005-04-11  Werner Koch  <wk@g10code.com>
+
+       * g10.c (main, add_notation_data, add_policy_url)
+       (add_keyserver_url): Use isascii() to protect the isfoo macros and
+       to replace direct tests.  Possible problems noted by Christian
+       Biere.
+       * keyserver.c (parse_keyserver_uri): Ditto.
+
 2005-04-07  Werner Koch  <wk@g10code.com>
 
+       * g10.c (main): Declare --pipemode deprecated.
+       * misc.c (deprecated_command): New.
+
        * ccid-driver.c (ccid_slot_status): Fixed debug messages.
 
        * card-util.c (card_edit): Add command "verify".  Enhanced admin
index fefb8ab..bdb0051 100644 (file)
--- a/g10/g10.c
+++ b/g10/g10.c
@@ -1919,7 +1919,11 @@ main( int argc, char **argv )
                               "--list-ownertrust","--export-ownertrust","");
          case aExportOwnerTrust: set_cmd( &cmd, aExportOwnerTrust); break;
          case aImportOwnerTrust: set_cmd( &cmd, aImportOwnerTrust); break;
-          case aPipeMode: set_cmd( &cmd, aPipeMode); break;
+          case aPipeMode:
+           deprecated_command ("--pipemode");
+            set_cmd( &cmd, aPipeMode);
+            break;
+
           case aRebuildKeydbCaches: set_cmd( &cmd, aRebuildKeydbCaches); break;
 
 #ifdef ENABLE_CARD_SUPPORT
@@ -2266,7 +2270,7 @@ main( int argc, char **argv )
              char *pt=pargs.r.ret_str;
              while(*pt)
                {
-                 if(!isdigit(*pt))
+                 if (!isascii (*pt) || !isdigit (*pt))
                    break;
 
                  pt++;
@@ -3856,7 +3860,7 @@ add_notation_data( const char *string, int which )
        if( *s=='@')
          saw_at=1;
 
-       if( !*s || (*s & 0x80) || (!isgraph(*s) && !isspace(*s)) )
+       if( !*s || !isascii (*s) || (!isgraph(*s) && !isspace(*s)) )
          {
            log_error(_("a notation name must have only printable characters "
                        "or spaces, and end with an '='\n") );
@@ -3873,7 +3877,7 @@ add_notation_data( const char *string, int which )
     /* we only support printable text - therefore we enforce the use
      * of only printable characters (an empty value is valid) */
     for( s++; *s ; s++ ) {
-       if ((*s & 0x80))
+       if ( isascii (*s) )
           highbit = 1;
        else if (iscntrl(*s)) {
            log_error(_("a notation value must not use"
@@ -3904,7 +3908,7 @@ add_policy_url( const char *string, int which )
     }
 
   for(i=0;i<strlen(string);i++)
-    if(string[i]&0x80 || iscntrl(string[i]))
+    if( !isascii (string[i]) || iscntrl(string[i]))
       break;
 
   if(i==0 || i<strlen(string))
@@ -3937,7 +3941,7 @@ add_keyserver_url( const char *string, int which )
     }
 
   for(i=0;i<strlen(string);i++)
-    if(string[i]&0x80 || iscntrl(string[i]))
+    if( !isascii (string[i]) || iscntrl(string[i]))
       break;
 
   if(i==0 || i<strlen(string))
index d52c95f..a4db688 100644 (file)
@@ -261,7 +261,8 @@ parse_keyserver_uri(const char *uri,int require_scheme,
       if(*uri=='[')
        {
          for(idx=uri+1,count=1;*idx
-               && (isxdigit(*idx) || *idx==':' || *idx=='.');idx++)
+               && ((isascii (*idx) && isxdigit(*idx))
+                    || *idx==':' || *idx=='.');idx++)
            count++;
 
          /* Is the ipv6 literal address terminated? */
index a456c96..fed9452 100644 (file)
@@ -102,6 +102,8 @@ struct expando_args
 char *pct_expando(const char *string,struct expando_args *args);
 void deprecated_warning(const char *configname,unsigned int configlineno,
                        const char *option,const char *repl1,const char *repl2);
+void deprecated_command (const char *name);
+
 const char *compress_algo_to_string(int algo);
 int string_to_compress_algo(const char *string);
 int check_compress_algo(int algo);
index a478392..6e3dbce 100644 (file)
@@ -686,6 +686,15 @@ deprecated_warning(const char *configname,unsigned int configlineno,
   log_info(_("please use \"%s%s\" instead\n"),repl1,repl2);
 }
 
+
+void
+deprecated_command (const char *name)
+{
+  log_info(_("WARNING: \"%s\" is a deprecated command - do not use it\n"),
+           name);
+}
+
+
 const char *
 compress_algo_to_string(int algo)
 {