From 905369a8dfeeea30989e526f99346771c827070c Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Thu, 27 Oct 2022 19:35:40 +0900 Subject: testing fdpassing. Signed-off-by: NIIBE Yutaka --- src/assuan-pipe-connect.c | 12 ++++-------- src/assuan-pipe-server.c | 7 +++++-- tests/Makefile.am | 2 +- tests/fdpassing.c | 4 +--- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/src/assuan-pipe-connect.c b/src/assuan-pipe-connect.c index 1589d79..a2223cd 100644 --- a/src/assuan-pipe-connect.c +++ b/src/assuan-pipe-connect.c @@ -413,16 +413,12 @@ assuan_pipe_connect (assuan_context_t ctx, TRACE2 (ctx, ASSUAN_LOG_CTX, "assuan_pipe_connect", ctx, "name=%s, flags=0x%x", name ? name : "(null)", flags); +#ifndef HAVE_W32_SYSTEM if (flags & ASSUAN_PIPE_CONNECT_FDPASSING) - { -#ifdef HAVE_W32_SYSTEM - return _assuan_error (ctx, GPG_ERR_NOT_IMPLEMENTED); -#else - return socketpair_connect (ctx, name, argv, fd_child_list, - atfork, atforkvalue); -#endif - } + return socketpair_connect (ctx, name, argv, fd_child_list, + atfork, atforkvalue); else +#endif return pipe_connect (ctx, name, argv, fd_child_list, atfork, atforkvalue, flags); } diff --git a/src/assuan-pipe-server.c b/src/assuan-pipe-server.c index db66978..03b754c 100644 --- a/src/assuan-pipe-server.c +++ b/src/assuan-pipe-server.c @@ -82,8 +82,11 @@ assuan_init_pipe_server (assuan_context_t ctx, assuan_fd_t filedes[2]) return TRACE_ERR (rc); #ifdef HAVE_W32_SYSTEM - infd = filedes[0]; - outfd = filedes[1]; + if (filedes) + { + infd = filedes[0]; + outfd = filedes[1]; + } #else s = getenv ("_assuan_connection_fd"); if (s && *s && is_valid_socket (s)) diff --git a/tests/Makefile.am b/tests/Makefile.am index cc13588..f61cec5 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -29,7 +29,7 @@ TESTS = version if HAVE_W32_SYSTEM testtools = -TESTS += fdpassing-socket +TESTS += fdpassing else TESTS += pipeconnect testtools = socks5 diff --git a/tests/fdpassing.c b/tests/fdpassing.c index 0e23ffc..83ae62d 100644 --- a/tests/fdpassing.c +++ b/tests/fdpassing.c @@ -25,10 +25,8 @@ #include #include #include -#include #include #include -#include /* Used by main driver. */ #include "../src/assuan.h" #include "common.h" @@ -292,7 +290,7 @@ main (int argc, char **argv) if (err) log_fatal ("assuan_new failed: %s\n", gpg_strerror (err)); - err = assuan_pipe_connect (ctx, with_exec? "./fdpassing":NULL, + err = assuan_pipe_connect (ctx, with_exec? "./fdpassing.exe":NULL, with_exec ? arglist : &loc, no_close_fds, NULL, NULL, 1); if (err) -- cgit v1.2.3