diff options
-rw-r--r-- | src/ChangeLog | 2 | ||||
-rw-r--r-- | src/assuan.h | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index ff99e3a..cfd7387 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,7 @@ 2009-12-08 Marcus Brinkmann <[email protected]> + * assuan_fd_from_posix_fd (assuan_fd_from_posix_fd): Handle invalid fd early. + * assuan-socket.c (get_nonce): Cast buffer to unsigned. (_assuan_sock_connect) [HAVE_W32_SYSTEM]: Drop ctx argument from read_port_and_nonce invocation. diff --git a/src/assuan.h b/src/assuan.h index abc549e..7f78c0c 100644 --- a/src/assuan.h +++ b/src/assuan.h @@ -88,7 +88,10 @@ typedef void *assuan_fd_t; static inline assuan_fd_t assuan_fd_from_posix_fd (int fd) { - return (assuan_fd_t) _get_osfhandle (fd); + if (fd < 0) + return ASSUAN_INVALID_FD; + else + return (assuan_fd_t) _get_osfhandle (fd); } #else typedef int assuan_fd_t; |