From e9362321658a0bf228ee484953ef8e0f4c2a96b0 Mon Sep 17 00:00:00 2001 From: Neal Walfield Date: Mon, 25 Nov 2002 00:43:49 +0000 Subject: 2002-11-24 Neal H. Walfield * assuan.h (assuan_command_parse_fd): New prototype. * assuan-handler.c (assuan_command_parse_fd): Rename from parse_cmd_input_output. Export. (std_handler_input): Update to use assuan_command_parse_fd. (std_handler_output): Likewise. --- src/ChangeLog | 8 ++++++++ src/assuan-handler.c | 8 ++++---- src/assuan.h | 6 ++++++ 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 7a91f00..3fbe19d 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,11 @@ +2002-11-24 Neal H. Walfield + + * assuan.h (assuan_command_parse_fd): New prototype. + * assuan-handler.c (assuan_command_parse_fd): Rename from + parse_cmd_input_output. Export. + (std_handler_input): Update to use assuan_command_parse_fd. + (std_handler_output): Likewise. + 2002-11-24 Neal H. Walfield * assuan.h (assuan_sendfd): New prototype. diff --git a/src/assuan-handler.c b/src/assuan-handler.c index 16838b2..532cafa 100644 --- a/src/assuan-handler.c +++ b/src/assuan-handler.c @@ -149,8 +149,8 @@ std_handler_end (ASSUAN_CONTEXT ctx, char *line) return set_error (ctx, Not_Implemented, NULL); } -static int -parse_cmd_input_output (ASSUAN_CONTEXT ctx, char *line, int *rfd) +AssuanError +assuan_command_parse_fd (ASSUAN_CONTEXT ctx, char *line, int *rfd) { char *endp; @@ -183,7 +183,7 @@ std_handler_input (ASSUAN_CONTEXT ctx, char *line) { int rc, fd; - rc = parse_cmd_input_output (ctx, line, &fd); + rc = assuan_command_parse_fd (ctx, line, &fd); if (rc) return rc; ctx->input_fd = fd; @@ -198,7 +198,7 @@ std_handler_output (ASSUAN_CONTEXT ctx, char *line) { int rc, fd; - rc = parse_cmd_input_output (ctx, line, &fd); + rc = assuan_command_parse_fd (ctx, line, &fd); if (rc) return rc; ctx->output_fd = fd; diff --git a/src/assuan.h b/src/assuan.h index 59cb153..37bdd69 100644 --- a/src/assuan.h +++ b/src/assuan.h @@ -155,6 +155,12 @@ AssuanError assuan_set_okay_line (ASSUAN_CONTEXT ctx, const char *line); void assuan_write_status (ASSUAN_CONTEXT ctx, const char *keyword, const char *text); +/* Negotiate a file descriptor. If LINE contains "FD=N", returns N + assuming a local file descriptor. If LINE contains "FD" reads a + file descriptor via CTX and stores it in *RDF (the CTX must be + capable of passing file descriptors). */ +AssuanError assuan_command_parse_fd (ASSUAN_CONTEXT ctx, char *line, + int *rfd); /*-- assuan-listen.c --*/ AssuanError assuan_set_hello_line (ASSUAN_CONTEXT ctx, const char *line); -- cgit v1.2.3