diff options
Diffstat (limited to 'g13/server.c')
-rw-r--r-- | g13/server.c | 11 |
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); |