aboutsummaryrefslogtreecommitdiffstats
path: root/g13/server.c
diff options
context:
space:
mode:
Diffstat (limited to 'g13/server.c')
-rw-r--r--g13/server.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/g13/server.c b/g13/server.c
index a6906aaa3..071e0326c 100644
--- a/g13/server.c
+++ b/g13/server.c
@@ -184,11 +184,13 @@ option_handler (assuan_context_t ctx, const char *key, const char *value)
/* The handler for an Assuan RESET command. */
-static void
-reset_notify (assuan_context_t ctx)
+static gpg_error_t
+reset_notify (assuan_context_t ctx, char *line)
{
ctrl_t ctrl = assuan_get_pointer (ctx);
+ (void)line;
+
xfree (ctrl->server_local->containername);
ctrl->server_local->containername = NULL;
@@ -196,6 +198,7 @@ reset_notify (assuan_context_t ctx)
assuan_close_input_fd (ctx);
assuan_close_output_fd (ctx);
+ return 0;
}
@@ -539,7 +542,7 @@ register_commands (assuan_context_t ctx)
{
static struct {
const char *name;
- gpg_error_t (*handler)(assuan_context_t, char *line);
+ assuan_handler_t handler;
} table[] = {
{ "OPEN", cmd_open },
{ "MOUNT", cmd_mount },
@@ -655,7 +658,7 @@ g13_server (ctrl_t ctrl)
log_info ("Assuan accept problem: %s\n", gpg_strerror (err));
leave:
- reset_notify (ctx); /* Release all items hold by SERVER_LOCAL. */
+ reset_notify (ctx, NULL); /* Release all items hold by SERVER_LOCAL. */
if (ctrl->server_local)
{
xfree (ctrl->server_local);