| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* src/assuan-defs.h (w32_fdpass_send, w32_fdpass_recv): New.
* src/assuan-pipe-connect.c [HAVE_W32_SYSTEM] (pipe_connect): Set
w32_fdpass_send.
[!HAVE_W32_SYSTEM] (assuan_pipe_connect): Use socketpair_connect.
* src/assuan-pipe-server.c
[HAVE_W32_SYSTEM] (assuan_init_pipe_server): Set w32_fdpass_recv.
* src/system-w32.c (get_file_handle): New.
(w32_fdpass_send): New, using "SENDFD" internal command.
(w32_fdpass_recv): New, using the result of "SENDFD" internal command.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
| |
| |
| |
| |
| |
| | |
./fdpassing.exe --with-exec --debug --verbose
Signed-off-by: NIIBE Yutaka <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* src/assuan-handler.c (w32_handler_sendfd): New.
* src/system-w32.c (w32_fdpass_send): Use assuan_transact.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* src/system-w32.c (FDPASS_MSG_SIZE): New.
(__assuan_read): Read fixed size of fdpass_msg.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* src/assuan-defs.h (w32_fdpass_recv): New.
* src/assuan-socket-server.c (assuan_init_socket_server): Use it.
* src/system-w32.c (get_file_handle): New.
(w32_fdpass_send): Implement.
(process_fdpass_msg): Implement.
(w32_fdpass_recv): New.
(__assuan_read): De-multiplex the sendfd message and normal message.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* src/assuan-defs.h (w32_fdpass_send): New.
* src/assuan-socket-connect.c (_assuan_connect_finalize)
[HAVE_W32_SYSTEM]: Use w32_fdpass_send.
* src/system-w32.c (w32_fdpass_send): New.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|/
|
|
|
|
|
|
|
|
| |
* src/system-w32.c (process_fdpass_msg): New (not yet implemented).
(__assuan_read): Handle fdpassing message with MSG_OOB.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-defs.h (struct assuan_context_s): Add is_socket flag.
* src/assuan-socket.c (assuan_sock_init): Set the flag.
* src/assuan-socket-connect.c (_assuan_connect_finalize): Likewise.
* src/assuan-socket-server.c (assuan_init_socket_server): Likewise.
* src/system-w32.c (__assuan_close): Use the flag.
(is_socket): Remove.
(__assuan_read, __assuan_write): Use the flag.
--
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/posix-fd-t.inc.h (assuan_fd_from_posix_fd): Revert.
* src/w32-fd-t.inc.h (assuan_fd_from_posix_fd): Revert.
* src/system-w32.c (assuan_fd_from_posix_fd): Revert.
--
Note that assuan_fd_from_posix_fd is exposed inline function.
Fixes-commit: 28a40a298661877e1bbeb3eb9ac58a85bdd85b02
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-defs.h (_assuan_pre_syscall, _assuan_post_syscall): New.
* src/assuan.c (_assuan_pre_syscall, _assuan_post_syscall): New.
(pre_syscall_func, post_syscall_func): New.
(_assuan_syscall_func_initialized): New.
(assuan_new_ext): Call gpgrt_get_syscall_clamp to get clamp functions.
* src/system-posix.c (_assuan_system_hooks): Use version 0.
* src/system-w32.c (_assuan_system_hooks): Likewise.
* src/system.c (_assuan_usleep): Call clamp functions if no hooks.
(_assuan_close, _assuan_close_inheritable, _assuan_read): Likewise.
(_assuan_write, _assuan_recvmsg, _assuan_sendmsg): Likewise.
(_assuan_waitpid, _assuan_connect): Likewise.
(_assuan_pipe): Call __assuan_pipe directly if no hooks.
(_assuan_spawn): Call __assuan_spawn directly if no hooks.
(_assuan_socketpair): Call __assuan_socketpair directly if no hooks.
(_assuan_socket): Call __assuan_socket directly if no hooks.
--
GnuPG-bug-id: 5914
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan.h.in (assuan_socket_connect_fd): Second arg assuan_fd_t.
* src/assuan-socket-connect.c (assuan_socket_connect_fd): Second arg
should be an object of type SOCKET.
* src/posix-fd-t.inc.h (assuan_fd_from_posix_fd): Remove.
* src/w32-fd-t.inc.h (assuan_fd_from_posix_fd): Move to...
* src/system-w32.c (assuan_fd_from_posix_fd): ... here.
--
On Windows, when an application has an already-connected socket, it
must be an object of type SOCKET. In this case, it is wrong to use
_get_osfhandle.
This does not constitute any ABI/API change for POSIX system.
This is an API change for Windows, as assuan_fd_t on Windows is
pointer type, but it's a fix from non-correctly-usable API.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/assuan-defs.h (_assuan_socket): Return value has type assuan_fd_t.
(_assuan_connect): Second argument has type assuan_fd_t.
[HAVE_W64_SYSTEM] (SOCKET2HANDLE): Revert the change before.
* src/assuan-socket.c (_assuan_sock_new): No type coercion for
_assuan_socket.
(socks5_connect): No type coercion for _assuan_connect.
(_assuan_sock_connect): Likewise.
* src/assuan.h.in (struct assuan_system_hooks): Fix method signature
of socket for return value type and of connect for the second
argument.
(__assuan_socket): Return value has type assuan_fd_t.
(__assuan_connect): Second argument has type assuan_fd_t.
(ASSUAN_SYSTEM_NPTH_IMPL): Fix for _assuan_npth_connect for its
second argument.
* src/system-w32.c (__assuan_socket): Return value has type
assuan_fd_t.
Use SOCKET2HANDLE for type coercion for socket.
Use INVALID_SOCKET.
(__assuan_connect): Second argument has type assuan_fd_t.
Use HANDLE2SOCKET for type coercion for sock.
* src/system.c (_assuan_socket): Return value has type assuan_fd_t.
(_assuan_connect): Second argument has type assuan_fd_t.
--
Note that this change does *NOT* constitute any ABI change, no API
change, either. It is fix for internal consistency for socket.
The change of SOCKET2HANDLE in the past for HAVE_W64_SYSTEM was done,
because of internal use of 'int' which represents the type for socket.
Instead of fixing that part of code for 'int', I touched another part
to silence warnings. That's not correct fix, but a work around.
This time, with the changes, whole parts are now consisitent.
Fixes-commit: 6c736325c028647dc3283bf723e2e28199e7f45b
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
|
|
|
|
|
|
|
| |
* src/assuan-socket.c (utf8_to_wchar): Rename to
(_assuan_utf8_to_wchar): this and give global scope.
* src/system-w32.c (__assuan_spawn): Use CreateProcessW.
--
GnuPG-bug-id: 4398
|
|
|
|
| |
--
|
|
|
|
|
| |
--
Signed-off-by: Justus Winter <[email protected]>
|
|
|
|
|
|
|
| |
* src/system-w32.c (__assuan_read): Retry using select. Map
WSAECONNRESET to EPIPE.
(__assuan_write): Retry using select.
* src/assuan-buffer.c (readline) [W32]: Return EOF instead of EPIPE.
|
|
|
|
|
|
|
|
| |
* src/system-w32.c: Do not include windows.h here.
--
winsock2.h must now be included before windows.h. This is already
properly handled by assuan-defs.h.
|
|
|
|
|
|
|
|
|
| |
* assuan.h.in (ASSUAN_SYSTEM_NPTH_IMPL): Use npth_unprotect and
npth_protect with actual assuan functions instead of npth wrappers.
* libassuan.def: Add __assuan_read, __assuan_write, __assuan_sendmsg,
__assuan_recvmsg, __assuan_waitpid exports.
* system-w32.c (__assuan_read, __assuan_write, __assuan_sendmsg,
__assuan_recvmsg, __assuan_waitpid): Make non-static.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
assuan-socket.c.
2011-02-03 Marcus Brinkmann <[email protected]>
* assuan-socket.c (_assuan_sock_new): Call _assuan_socket instead
of socket.
(_assuan_sock_connect): Call _assuan_connect instead of connect.
* assuan-socket-connect.c (assuan_socket_connect): Call
_assuan_sock_new and _assuan_sock_connect instead of
_assuan_socket and assuan_connect.
* src/system-w32.c, src/system-w32ce.c (__assuan_socket): Call
socket instead of _assuan_sock_new.
(__assuan_connect): Call connect instead of _assuan_sock_connect.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-02-02 Marcus Brinkmann <[email protected]>
* assuan-defs.h (_assuan_socket, _assuan_connect): New prototypes.
* assuan.h.in (ASSUAN_SYSTEM_HOOKS_VERSION): Bumped to 2.
(struct assuan_system_hooks): Add socket and connect members.
(__assuan_socket, __assuan_connect): New prototypes.
(_ASSUAN_SYSTEM_PTH_IMPL): Add socket and connect members. *
assuan-socket-connect.c (assuan_socket_connect): Call
_assuan_socket and _assuan_connect instead _assuan_sock_new and
_assuan_sock_connect.
(libassuan.def, libassuan.vers): Add __assuan_socket and
__assuan_connect.
* system.c (_assuan_system_hooks_copy): Initialize destination
from system hooks, so we don't get any NULL pointers if there is a
version mismatch. Support version 2 of the system hook structure.
(_assuan_socket, _assuan_connect): New functions.
* system-posix.c (__assuan_socket, __assuan_connect): New functions.
(_assuan_system_hooks): Add __assuan_socketm, __assuan_connect.
* system-w32.c (__assuan_socket, __assuan_connect): New functions.
(_assuan_system_hooks): Add __assuan_socketm, __assuan_connect.
* system-w32ce.c (__assuan_socket, __assuan_connect): New functions.
(_assuan_system_hooks): Add __assuan_socketm, __assuan_connect.
|
| |
|
| |
|
|
|
|
|
| |
Reorganized the source.
|
|
|