aboutsummaryrefslogtreecommitdiffstats
path: root/assuan/assuan-listen.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2002-01-19 18:20:15 +0000
committerWerner Koch <[email protected]>2002-01-19 18:20:15 +0000
commitf58da1883a7d62d75a0b24f05c911c96febc0a85 (patch)
treed7a80bddeb9e3e30594485ae577677db0f06a893 /assuan/assuan-listen.c
parent* gpg-agent.c: Removed unused cruft and implement the socket (diff)
downloadgnupg-f58da1883a7d62d75a0b24f05c911c96febc0a85.tar.gz
gnupg-f58da1883a7d62d75a0b24f05c911c96febc0a85.zip
* assuan-buffer.c (_assuan_read_line): Add output logging.
(assuan_write_line): Ditto. (_assuan_cookie_write_data): Ditto. (_assuan_cookie_write_flush): Ditto. * assuan-util.c (_assuan_log_print_buffer): New. (assuan_set_log_stream): New. (assuan_begin_confidential): New. (assuan_end_confidential): New. * assuan-defs.h: Add a few handler variables. * assuan-pipe-server.c (assuan_deinit_pipe_server): Removed. (deinit_pipe_server): New. (assuan_deinit_server): New. Changed all callers to use this. * assuan-listen.c (assuan_accept): Use the accept handler. * assuan-handler.c (process_request): Use the close Handler. * assuan-socket-server.c: New.
Diffstat (limited to 'assuan/assuan-listen.c')
-rw-r--r--assuan/assuan-listen.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/assuan/assuan-listen.c b/assuan/assuan-listen.c
index 57fe4b669..db63ad2bf 100644
--- a/assuan/assuan-listen.c
+++ b/assuan/assuan-listen.c
@@ -69,15 +69,13 @@ assuan_accept (ASSUAN_CONTEXT ctx)
if (!ctx)
return ASSUAN_Invalid_Value;
- /* fixme: cancel existing connection */
if (ctx->pipe_mode > 1)
return -1; /* second invocation for pipemode -> terminate */
+ ctx->finish_handler (ctx);
- if (!ctx->pipe_mode)
- {
-
- /* fixme: wait for request */
- }
+ rc = ctx->accept_handler (ctx);
+ if (rc)
+ return rc;
/* send the hello */
rc = assuan_write_line (ctx, ctx->hello_line? ctx->hello_line