gpg: Cleanup compiler warnings due to some configure options.
[gnupg.git] / g10 / openfile.c
index b1cd294..119c567 100644 (file)
 #define CMP_FILENAME(a,b) strcmp( (a), (b) )
 #endif
 
-#ifdef MKDIR_TAKES_ONE_ARG
-#undef mkdir
-#define mkdir(a,b) mkdir(a)
-#endif
 
 /* FIXME:  Implement opt.interactive. */
 
@@ -74,10 +70,10 @@ overwrite_filep( const char *fname )
 {
   if ( iobuf_is_pipe_filename (fname) )
     return 1; /* Writing to stdout is always okay.  */
-  
+
   if ( access( fname, F_OK ) )
     return 1; /* Does not exist.  */
-  
+
   if ( !compare_filenames (fname, NAME_OF_DEV_NULL) )
     return 1; /* Does not do any harm.  */
 
@@ -86,7 +82,7 @@ overwrite_filep( const char *fname )
   if (opt.answer_no || opt.batch)
     return 0;  /* Do not overwrite.  */
 
-  tty_printf (_("File `%s' exists. "), fname);
+  tty_printf (_("File '%s' exists. "), fname);
   if (cpr_enabled ())
     tty_printf ("\n");
   if (cpr_get_answer_is_yes ("openfile.overwrite.okay",
@@ -109,7 +105,7 @@ make_outfile_name( const char *iname )
        return xstrdup("-");
 
     n = strlen(iname);
-    if( n > 4 && (    !CMP_FILENAME(iname+n-4, EXTSEP_S "gpg")
+    if( n > 4 && (    !CMP_FILENAME(iname+n-4, EXTSEP_S GPGEXT_GPG)
                   || !CMP_FILENAME(iname+n-4, EXTSEP_S "pgp")
                   || !CMP_FILENAME(iname+n-4, EXTSEP_S "sig")
                   || !CMP_FILENAME(iname+n-4, EXTSEP_S "asc") ) ) {
@@ -144,7 +140,7 @@ ask_outfile_name( const char *name, size_t namelen )
 
   if ( opt.batch )
     return NULL;
-  
+
   defname = name && namelen? make_printable_string (name, namelen, 0) : NULL;
 
   s = _("Enter new filename");
@@ -159,9 +155,9 @@ ask_outfile_name( const char *name, size_t namelen )
   cpr_kill_prompt ();
   tty_disable_completion ();
   xfree (prompt);
-  if ( !*fname ) 
+  if ( !*fname )
     {
-      xfree (fname); 
+      xfree (fname);
       fname = defname;
       defname = NULL;
     }
@@ -192,27 +188,27 @@ open_outfile (int inp_fd, const char *iname, int mode, iobuf_t *a)
   if (inp_fd != -1)
     {
       char xname[64];
-      
+
       *a = iobuf_fdopen_nc (inp_fd, "wb");
       if (!*a)
         {
           rc = gpg_error_from_syserror ();
           snprintf (xname, sizeof xname, "[fd %d]", inp_fd);
-          log_error (_("can't open `%s': %s\n"), xname, gpg_strerror (rc));
+          log_error (_("can't open '%s': %s\n"), xname, gpg_strerror (rc));
         }
       else if (opt.verbose)
         {
           snprintf (xname, sizeof xname, "[fd %d]", inp_fd);
-          log_info (_("writing to `%s'\n"), xname);
+          log_info (_("writing to '%s'\n"), xname);
         }
     }
-  else if (iobuf_is_pipe_filename (iname) && !opt.outfile) 
+  else if (iobuf_is_pipe_filename (iname) && !opt.outfile)
     {
       *a = iobuf_create(NULL);
       if ( !*a )
         {
           rc = gpg_error_from_syserror ();
-          log_error (_("can't open `%s': %s\n"), "[stdout]", strerror(errno) );
+          log_error (_("can't open '%s': %s\n"), "[stdout]", strerror(errno) );
         }
       else if ( opt.verbose )
         log_info (_("writing to stdout\n"));
@@ -221,12 +217,12 @@ open_outfile (int inp_fd, const char *iname, int mode, iobuf_t *a)
     {
       char *buf = NULL;
       const char *name;
-    
+
       if (opt.dry_run)
         name = NAME_OF_DEV_NULL;
       else if (opt.outfile)
         name = opt.outfile;
-      else 
+      else
         {
 #ifdef USE_ONLY_8DOT3
           if (opt.mangle_dos_filenames)
@@ -242,7 +238,7 @@ open_outfile (int inp_fd, const char *iname, int mode, iobuf_t *a)
 
               newsfx = (mode==1 ? ".asc" :
                         mode==2 ? ".sig" : ".gpg");
-          
+
               buf = xmalloc (strlen(iname)+4+1);
               strcpy (buf, iname);
               dot = strchr (buf, '.' );
@@ -257,14 +253,15 @@ open_outfile (int inp_fd, const char *iname, int mode, iobuf_t *a)
           if (!buf)
 #endif /* USE_ONLY_8DOT3 */
             {
-              buf = xstrconcat (iname, 
+              buf = xstrconcat (iname,
                                 (mode==1 ? EXTSEP_S "asc" :
-                                 mode==2 ? EXTSEP_S "sig" : EXTSEP_S "gpg"),
+                                 mode==2 ? EXTSEP_S "sig" :
+                                 /*     */ EXTSEP_S GPGEXT_GPG),
                                 NULL);
             }
           name = buf;
         }
-      
+
       rc = 0;
       while ( !overwrite_filep (name) )
         {
@@ -278,27 +275,27 @@ open_outfile (int inp_fd, const char *iname, int mode, iobuf_t *a)
           xfree (buf);
           name = buf = tmp;
         }
-    
+
       if ( !rc )
         {
           if (is_secured_filename (name) )
             {
               *a = NULL;
-              errno = EPERM;
+              gpg_err_set_errno (EPERM);
             }
           else
             *a = iobuf_create (name);
           if (!*a)
             {
               rc = gpg_error_from_syserror ();
-              log_error(_("can't create `%s': %s\n"), name, strerror(errno) );
+              log_error(_("can't create '%s': %s\n"), name, strerror(errno) );
             }
           else if( opt.verbose )
-            log_info (_("writing to `%s'\n"), name );
+            log_info (_("writing to '%s'\n"), name );
         }
       xfree(buf);
     }
-  
+
   if (*a)
     iobuf_ioctl (*a, IOBUF_IOCTL_NO_CACHE, 1, NULL);
 
@@ -329,10 +326,10 @@ open_sigfile( const char *iname, progress_filter_context_t *pfx )
               {
                 iobuf_close (a);
                 a = NULL;
-                errno = EPERM;
+                gpg_err_set_errno (EPERM);
               }
            if( a && opt.verbose )
-               log_info(_("assuming signed data in `%s'\n"), buf );
+               log_info(_("assuming signed data in '%s'\n"), buf );
            if (a && pfx)
              handle_progress (pfx, a, buf);
             xfree(buf);
@@ -366,25 +363,25 @@ copy_options_file( const char *destdir )
       {
         fclose (src);
         src = NULL;
-        errno = EPERM;
+        gpg_err_set_errno (EPERM);
       }
     if( !src ) {
-       log_info (_("can't open `%s': %s\n"), fname, strerror(errno) );
+       log_info (_("can't open '%s': %s\n"), fname, strerror(errno) );
        xfree(fname);
        return;
     }
-    strcpy(stpcpy(fname, destdir), DIRSEP_S "gpg" EXTSEP_S "conf" );
+    strcpy(stpcpy(fname, destdir), DIRSEP_S GPGEXT_GPG EXTSEP_S "conf" );
     oldmask=umask(077);
     if ( is_secured_filename (fname) )
       {
         dst = NULL;
-        errno = EPERM;
+        gpg_err_set_errno (EPERM);
       }
     else
       dst = fopen( fname, "w" );
     umask(oldmask);
     if( !dst ) {
-       log_info (_("can't create `%s': %s\n"), fname, strerror(errno) );
+       log_info (_("can't create '%s': %s\n"), fname, strerror(errno) );
        fclose( src );
        xfree(fname);
        return;
@@ -404,16 +401,16 @@ copy_options_file( const char *destdir )
                     ;
                 else if (c == '#')
                     esc = 2;
-                else 
+                else
                     any_option = 1;
             }
         }
     }
     fclose( dst );
     fclose( src );
-    log_info(_("new configuration file `%s' created\n"), fname );
+    log_info(_("new configuration file '%s' created\n"), fname );
     if (any_option)
-        log_info (_("WARNING: options in `%s'"
+        log_info (_("WARNING: options in '%s'"
                     " are not yet active during this run\n"),
                   fname);
     xfree(fname);
@@ -444,12 +441,11 @@ try_make_homedir (const char *fname)
 #endif
       )
     {
-      if ( mkdir (fname, S_IRUSR|S_IWUSR|S_IXUSR) )
-        log_fatal ( _("can't create directory `%s': %s\n"),
+      if (gnupg_mkdir (fname, "-rwx"))
+        log_fatal ( _("can't create directory '%s': %s\n"),
                     fname, strerror(errno) );
       else if (!opt.quiet )
-        log_info ( _("directory `%s' created\n"), fname );
+        log_info ( _("directory '%s' created\n"), fname );
       copy_options_file( fname );
-      
     }
 }