diff options
-rw-r--r-- | src/assuan-socket-connect.c | 11 | ||||
-rw-r--r-- | src/assuan.h.in | 2 | ||||
-rw-r--r-- | src/posix-fd-t.inc.h | 5 | ||||
-rw-r--r-- | src/system-w32.c | 10 | ||||
-rw-r--r-- | src/w32-fd-t.inc.h | 15 |
5 files changed, 16 insertions, 27 deletions
diff --git a/src/assuan-socket-connect.c b/src/assuan-socket-connect.c index ed18095..5423963 100644 --- a/src/assuan-socket-connect.c +++ b/src/assuan-socket-connect.c @@ -147,18 +147,17 @@ _assuan_connect_finalize (assuan_context_t ctx, assuan_fd_t fd, * and initialize the connection. */ gpg_error_t -assuan_socket_connect_fd (assuan_context_t ctx, int fd, unsigned int flags) +assuan_socket_connect_fd (assuan_context_t ctx, assuan_fd_t fd, + unsigned int flags) { gpg_error_t err; - assuan_fd_t afd; - if (!ctx || fd < 0) + if (!ctx) return GPG_ERR_INV_ARG; - afd = assuan_fd_from_posix_fd (fd); - if (afd == ASSUAN_INVALID_FD) + if (fd == ASSUAN_INVALID_FD) return GPG_ERR_INV_ARG; - err = _assuan_connect_finalize(ctx, afd, flags); + err = _assuan_connect_finalize (ctx, fd, flags); if (err) _assuan_reset (ctx); diff --git a/src/assuan.h.in b/src/assuan.h.in index 08c2b62..26b18e6 100644 --- a/src/assuan.h.in +++ b/src/assuan.h.in @@ -389,7 +389,7 @@ gpg_error_t assuan_socket_connect (assuan_context_t ctx, const char *name, pid_t server_pid, unsigned int flags); /*-- assuan-socket-connect.c --*/ -gpg_error_t assuan_socket_connect_fd (assuan_context_t ctx, int fd, +gpg_error_t assuan_socket_connect_fd (assuan_context_t ctx, assuan_fd_t fd, unsigned int flags); /*-- context.c --*/ diff --git a/src/posix-fd-t.inc.h b/src/posix-fd-t.inc.h index 832c4fa..b9d8dd2 100644 --- a/src/posix-fd-t.inc.h +++ b/src/posix-fd-t.inc.h @@ -24,10 +24,5 @@ typedef int assuan_fd_t; #define ASSUAN_INVALID_FD (-1) #define ASSUAN_INVALID_PID ((pid_t) -1) -static GPG_ERR_INLINE assuan_fd_t -assuan_fd_from_posix_fd (int fd) -{ - return fd; -} ##EOF## diff --git a/src/system-w32.c b/src/system-w32.c index 77117b8..3927b5d 100644 --- a/src/system-w32.c +++ b/src/system-w32.c @@ -403,6 +403,16 @@ build_w32_commandline (assuan_context_t ctx, const char * const *argv, } +static assuan_fd_t +assuan_fd_from_posix_fd (int fd) +{ + if (fd < 0) + return ASSUAN_INVALID_FD; + else + return (assuan_fd_t) _get_osfhandle (fd); +} + + int __assuan_spawn (assuan_context_t ctx, pid_t *r_pid, const char *name, const char **argv, diff --git a/src/w32-fd-t.inc.h b/src/w32-fd-t.inc.h index bc3df28..4e3e66b 100644 --- a/src/w32-fd-t.inc.h +++ b/src/w32-fd-t.inc.h @@ -28,20 +28,5 @@ typedef void *assuan_fd_t; #define ASSUAN_INVALID_FD ((void*)(-1)) #define ASSUAN_INVALID_PID ((pid_t) -1) -#if GPGRT_HAVE_PRAGMA_GCC_PUSH -# pragma GCC push_options -# pragma GCC diagnostic ignored "-Wbad-function-cast" -#endif -static GPG_ERR_INLINE assuan_fd_t -assuan_fd_from_posix_fd (int fd) -{ - if (fd < 0) - return ASSUAN_INVALID_FD; - else - return (assuan_fd_t) _get_osfhandle (fd); -} -#if GPGRT_HAVE_PRAGMA_GCC_PUSH -# pragma GCC pop_options -#endif ##EOF## |