summaryrefslogtreecommitdiffstats
path: root/agent
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>2006-11-09 17:09:46 +0100
committerWerner Koch <wk@gnupg.org>2006-11-09 17:09:46 +0100
commitc1f4a8edff15737b15c209001d0130036416886d (patch)
tree84477a2bdb7c1c803649e81e6e624f695ca3462e /agent
parentpost release updates (diff)
downloadgnupg2-c1f4a8edff15737b15c209001d0130036416886d.tar.xz
gnupg2-c1f4a8edff15737b15c209001d0130036416886d.zip
gpg-agent.c (main): In detached mode connect standard descriptors to /dev/null.
Other minor fixes
Diffstat (limited to 'agent')
-rw-r--r--agent/ChangeLog12
-rw-r--r--agent/gpg-agent.c11
-rw-r--r--agent/protect-tool.c2
-rw-r--r--agent/trustlist.c3
4 files changed, 24 insertions, 4 deletions
diff --git a/agent/ChangeLog b/agent/ChangeLog
index 83692d461..38ebd0f17 100644
--- a/agent/ChangeLog
+++ b/agent/ChangeLog
@@ -1,3 +1,15 @@
+2006-11-09 Werner Koch <wk@g10code.com>
+
+ * gpg-agent.c (main): In detached mode connect standard
+ descriptors to /dev/null.
+
+ * trustlist.c (read_trustfiles): Make sure not to pass a zero size
+ to realloc as the C standards says that this behaves like free.
+
+2006-11-06 Werner Koch <wk@g10code.com>
+
+ * protect-tool.c (my_strusage): Fixed typo.
+
2006-10-23 Werner Koch <wk@g10code.com>
* gpg-agent.c (main): New command --gpgconf-test.
diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c
index 5201be8d5..979fa3564 100644
--- a/agent/gpg-agent.c
+++ b/agent/gpg-agent.c
@@ -1007,7 +1007,16 @@ main (int argc, char **argv )
for (i=0; i <= 2; i++)
{
if (!log_test_fd (i) && i != fd )
- close (i);
+ {
+ if ( ! close (i)
+ && open ("/dev/null", i? O_WRONLY : O_RDONLY) == -1)
+ {
+ log_error ("failed to open `%s': %s\n",
+ "/dev/null", strerror (errno));
+ cleanup ();
+ exit (1);
+ }
+ }
}
if (setsid() == -1)
{
diff --git a/agent/protect-tool.c b/agent/protect-tool.c
index 23f1d9336..4a0e53d3f 100644
--- a/agent/protect-tool.c
+++ b/agent/protect-tool.c
@@ -145,7 +145,7 @@ my_strusage (int level)
case 1:
case 40: p = _("Usage: gpg-protect-tool [options] (-h for help)\n");
break;
- case 41: p = _("Syntax: gpg-protect-tool [options] [args]]\n"
+ case 41: p = _("Syntax: gpg-protect-tool [options] [args]\n"
"Secret key maintenance tool\n");
break;
diff --git a/agent/trustlist.c b/agent/trustlist.c
index 51e655a06..0034525ad 100644
--- a/agent/trustlist.c
+++ b/agent/trustlist.c
@@ -317,8 +317,7 @@ read_trustfiles (void)
}
/* Fixme: we should drop duplicates and sort the table. */
-
- ti = xtryrealloc (table, tableidx * sizeof *table);
+ ti = xtryrealloc (table, (tableidx?tableidx:1) * sizeof *table);
if (!ti)
{
xfree (table);