aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--dirmngr/dirmngr.c9
-rw-r--r--dirmngr/dirmngr.h1
-rw-r--r--dirmngr/server.c2
3 files changed, 11 insertions, 1 deletions
diff --git a/dirmngr/dirmngr.c b/dirmngr/dirmngr.c
index 41e897b4f..c9e4a058b 100644
--- a/dirmngr/dirmngr.c
+++ b/dirmngr/dirmngr.c
@@ -2074,3 +2074,12 @@ handle_connections (assuan_fd_t listen_fd)
cleanup ();
log_info ("%s %s stopped\n", strusage(11), strusage(13));
}
+
+const char*
+dirmngr_get_current_socket_name (void)
+{
+ if (socket_name)
+ return socket_name;
+ else
+ return dirmngr_socket_name ();
+}
diff --git a/dirmngr/dirmngr.h b/dirmngr/dirmngr.h
index d8235199b..9e216cdb8 100644
--- a/dirmngr/dirmngr.h
+++ b/dirmngr/dirmngr.h
@@ -184,6 +184,7 @@ void dirmngr_exit( int ); /* Wrapper for exit() */
void dirmngr_init_default_ctrl (ctrl_t ctrl);
void dirmngr_deinit_default_ctrl (ctrl_t ctrl);
void dirmngr_sighup_action (void);
+const char* dirmngr_get_current_socket_name (void);
/*-- Various housekeeping functions. --*/
diff --git a/dirmngr/server.c b/dirmngr/server.c
index 57273c785..2d4f292f5 100644
--- a/dirmngr/server.c
+++ b/dirmngr/server.c
@@ -2271,7 +2271,7 @@ cmd_getinfo (assuan_context_t ctx, char *line)
}
else if (!strcmp (line, "socket_name"))
{
- const char *s = dirmngr_socket_name ();
+ const char *s = dirmngr_get_current_socket_name ();
err = assuan_send_data (ctx, s, strlen (s));
}
else if (!strcmp (line, "tor"))