aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--agent/gpg-agent.c14
-rw-r--r--dirmngr/dirmngr.c7
-rw-r--r--scd/scdaemon.c4
3 files changed, 14 insertions, 11 deletions
diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c
index ef351749f..36c05bcf1 100644
--- a/agent/gpg-agent.c
+++ b/agent/gpg-agent.c
@@ -1708,13 +1708,6 @@ main (int argc, char **argv )
opt.running_detached = 1;
}
- if (gnupg_chdir (gnupg_daemon_rootdir ()))
- {
- log_error ("chdir to '%s' failed: %s\n",
- gnupg_daemon_rootdir (), strerror (errno));
- exit (1);
- }
-
{
struct sigaction sa;
@@ -1725,6 +1718,13 @@ main (int argc, char **argv )
}
#endif /*!HAVE_W32_SYSTEM*/
+ if (gnupg_chdir (gnupg_daemon_rootdir ()))
+ {
+ log_error ("chdir to '%s' failed: %s\n",
+ gnupg_daemon_rootdir (), strerror (errno));
+ exit (1);
+ }
+
log_info ("%s %s started\n", strusage(11), strusage(13) );
handle_connections (fd, fd_extra, fd_browser, fd_ssh);
assuan_sock_close (fd);
diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c
index 436c8080b..5f3a4cd18 100644
--- a/dirmngr/dirmngr.c
+++ b/dirmngr/dirmngr.c
@@ -1351,15 +1351,18 @@ main (int argc, char **argv)
log_set_prefix (NULL, oldflags | GPGRT_LOG_RUN_DETACHED);
opt.running_detached = 1;
+ }
+#endif
+
+ if (!nodetach )
+ {
if (gnupg_chdir (gnupg_daemon_rootdir ()))
{
log_error ("chdir to '%s' failed: %s\n",
gnupg_daemon_rootdir (), strerror (errno));
dirmngr_exit (1);
}
-
}
-#endif
thread_init ();
cert_cache_init (hkp_cacert_filenames);
diff --git a/scd/scdaemon.c b/scd/scdaemon.c
index bf3f42a0e..60d539ddd 100644
--- a/scd/scdaemon.c
+++ b/scd/scdaemon.c
@@ -908,6 +908,8 @@ main (int argc, char **argv )
sigaction (SIGPIPE, &sa, NULL);
}
+#endif /*!HAVE_W32_SYSTEM*/
+
if (gnupg_chdir (gnupg_daemon_rootdir ()))
{
log_error ("chdir to '%s' failed: %s\n",
@@ -915,8 +917,6 @@ main (int argc, char **argv )
exit (1);
}
-#endif /*!HAVE_W32_SYSTEM*/
-
handle_connections (fd);
close (fd);