Fix bug 1285
authorWerner Koch <wk@gnupg.org>
Fri, 24 Sep 2010 13:06:56 +0000 (13:06 +0000)
committerWerner Koch <wk@gnupg.org>
Fri, 24 Sep 2010 13:06:56 +0000 (13:06 +0000)
NEWS
agent/ChangeLog
agent/gpg-agent.c
doc/gpgsm.texi
g10/card-util.c

diff --git a/NEWS b/NEWS
index 3ade21f..4709142 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,8 @@ Noteworthy changes in version 2.0.17 (unreleased)
 
  * Fixed output of "gpgconf --check-options".
 
+ * gpg-agent now tests for a newly created gpg-agent.conf after a HUP.
+
 
 Noteworthy changes in version 2.0.16 (2010-07-19)
 -------------------------------------------------
index 3c95cb4..6e1b45e 100644 (file)
@@ -1,3 +1,9 @@
+2010-09-24  Werner Koch  <wk@g10code.com>
+
+       * gpg-agent.c (main, reread_configuration): Always test whether
+       the default configuration file has been created in the meantime.
+       Fixes bug#1285.
+
 2010-08-11  Werner Koch  <wk@g10code.com>
 
        * call-pinentry.c (agent_askpin, agent_get_passphrase): Fix
index 1aa706d..7e35947 100644 (file)
@@ -724,6 +724,12 @@ main (int argc, char **argv )
               if( parse_debug )
                 log_info (_("NOTE: no default option file `%s'\n"),
                           configname );
+              /* Save the default conf file name so that
+                 reread_configuration is able to test whether the
+                 config file has been created in the meantime.  */
+              xfree (config_filename);
+              config_filename = configname;
+              configname = NULL;
            }
           else
             {
@@ -811,10 +817,15 @@ main (int argc, char **argv )
       fclose( configfp );
       configfp = NULL;
       /* Keep a copy of the name so that it can be read on SIGHUP. */
-      config_filename = configname;
+      if (config_filename != configname)
+        {
+          xfree (config_filename);
+          config_filename = configname;
+        }
       configname = NULL;
       goto next_pass;
     }
+    
   xfree (configname);
   configname = NULL;
   if (log_get_errorcount(0))
@@ -1332,8 +1343,8 @@ reread_configuration (void)
   fp = fopen (config_filename, "r");
   if (!fp)
     {
-      log_error (_("option file `%s': %s\n"),
-                 config_filename, strerror(errno) );
+      log_info (_("option file `%s': %s\n"),
+                config_filename, strerror(errno) );
       return;
     }
 
index fdf1672..f944502 100644 (file)
@@ -31,7 +31,7 @@
 @command{gpgsm} is a tool similar to @command{gpg} to provide digital
 encryption and signing services on X.509 certificates and the CMS
 protocol.  It is mainly used as a backend for S/MIME mail processing.
-@command{gpgsm} includes a full features certificate management and
+@command{gpgsm} includes a full featured certificate management and
 complies with all rules defined for the German Sphinx project.
 
 @manpause
@@ -286,7 +286,7 @@ smartcard is not yet supported.
 @node GPGSM Options
 @section Option Summary
 
-@command{GPGSM} comes features a bunch of options to control the exact behaviour
+@command{GPGSM} features a bunch of options to control the exact behaviour
 and to change the default configuration.
 
 @menu 
index 9bd5013..caf934d 100644 (file)
@@ -207,6 +207,9 @@ get_manufacturer (unsigned int no)
     case 0x0005: return "ZeitControl";
 
     case 0x002A: return "Magrathea";
+
+    case 0xF517: return "FSIJ";
+
       /* 0x00000 and 0xFFFF are defined as test cards per spec,
          0xFFF00 to 0xFFFE are assigned for use with randomly created
          serial numbers.  */