| Commit message (Collapse) | Author | Files | Lines |
|
* src/assuan-socket-connect.c (_assuan_connect_finalize): Use
w32_fdpass_send. Get peer's PID from the initial connection.
* src/assuan-socket-server.c (assuan_init_socket_server): Use
w32_fdpass_recv.
--
GnuPG-bug-id: GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-pipe-connect.c (initial_handshake): Get peer's PID
from the initial interaction.
* src/assuan-pipe-server.c (assuan_init_pipe_server): Handle the case
of FILEDES == NULL on Windows.
* tests/Makefile.am [HAVE_W32_SYSTEM] (TESTS): Add fdpassing.
* tests/fdpassing.c: Remove including sys/socket.h and sys/wait.h.
(cmd_echo): Output to stder, as stdout is /dev/null.
(main): Support Windows.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-listen.c (assuan_accept): Use getpid instead of
assuan_get_pid.
--
This changes the initial interaction. Before the change, the PID of
peer was shown from listening process (but not used at all, in the
code). That is, it was the PID of connecting process. After the
change, the PID of listening process is shown, which can be used by
connecting process.
GnuPG-bug-id: 6236
Fixes-commit: a00b1ede5403f1e38534cc3b232739f20b8567e9
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]>
|
|
* src/assuan-handler.c (w32_handler_sendfd): New.
(std_cmd_table): Add the "SENDFD" command.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/client.c (_assuan_client_finish): Check if it's socket.
--
GnuPG-bug-id: 6236
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/libassuan.m4: Overriding the decision by
--with-libassuan-prefix, use gpgrt-config libassuan when
gpgrt-config is available.
--
This may offer better migration.
GnuPG-bug-id: 5034
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
./fdpassing.exe --with-exec --debug --verbose
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/Makefile.am (parts_of_assuan_h): Readd w32-includes.h
--
This was accidentally removed.
Fixes-commit: df6aec566ce450e4e0702e4784569642f2bc6703
|
|
--
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]>
|
|
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-listen.c (assuan_accept): Use PID to notify client.
* src/assuan-socket-connect.c (_assuan_connect_finalize): Parse
the initial message to extract remote PID.
* src/client.c (_assuan_client_finish): Only call waitpid
when it's not socket.
--
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/assuan.h.in (@include:sys/types.h@, @include:unistd.h@): Simply
include <sys/types.h> and <unistd.h>.
(@include:w32ce-add@): Remove.
* src/mkheader.c (write_special): Remove mingw32ce support.
--
GnuPG-bug-id: 6170
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-socket.c (assuan_sock_init): It's no args.
(assuan_sock_deinit): Likewise.
--
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* contrib/*: Remove.
* Makefile.am (EXTRA_DIST): Don't include contrib/.
* configure.ac (HAVE_W32CE_SYSTEM): Remove.
* src/gpgcedev.c: Remove.
* src/gpgcedev.def: Remove.
* src/gpgcemgr.c: Remove.
* src/system-w32ce.c: Remove.
* src/w32ce-add.h: Remove.
* src/w32ce-fd-t.inc.h: Remove.
* src/Makefile.am (EXTRA_DIST, parts_of_assuan_h, common_sources): Fix.
* src/assuan-buffer.c [HAVE_W32CE_SYSTEM]: No conditionalize.
* src/setenv.c [HAVE_W32CE_SYSTEM]: Likewise.
* src/assuan-defs.h [HAVE_W32CE_SYSTEM]: Remove dependent part.
* src/assuan-error.c [HAVE_W32CE_SYSTEM]: Likewise.
* src/assuan-handler.c [HAVE_W32CE_SYSTEM]: Likewise.
* src/assuan-socket.c [HAVE_W32CE_SYSTEM]: Likewise.
* src/system.c [HAVE_W32CE_SYSTEM]: Likewise.
* src/sysutils.c [HAVE_W32CE_SYSTEM]: Likewise.
* tests/Makefile.am (EXTRA_DIST): Fix.
(w32cetools): Remove.
* tests/common.h [HAVE_W32CE_SYSTEM]: Remove dependent part.
* tests/pipeconnect.c [HAVE_W32CE_SYSTEM]: Likewise.
* tests/ce-createpipe.c: Remove.
* tests/ce-server.c: Remove.
--
GnuPG-bug-id: 6170
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
--
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-inquire.c (assuan_inquire): Check mb->buf.
--
There is a case where mb->buf may be cleared already by get_membuf.
Fixes-commit: d812e28af637144d078005887cb7519d7a2d0c58
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
Its use was removed in 2004 in 9096d0adb448330b5b197579bd57d942635d7021
* src/libassuan-config.in: Remove unused variable
--
Signed-off-by: Jakub Jelen <[email protected]>
|
|
* src/assuan-defs.h (struct assuan_context_s): Add new flags,
in_inq_cb and confidential_inquiry.
* src/client.c (assuan_transact): Use the new flags to wipe the
outbound buffer for inquiry when CONFIDENTIAL.
* src/context.c (assuan_set_flag): When ASSUAN_CONFIDENTIAL is set in
inquire callback, set the confidential_inquiry flag.
--
GnuPG-bug-id: 5977
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-defs.h (struct assuan_context_s): Move is_server,
in_inquire, in_process_next, process_complete, in_command into
flags.
* src/assuan-buffer.c: Follow the change.
* src/assuan-handler.c: Likewise.
* src/assuan-inquire.c: Likewise.
* src/assuan-pipe-server.c: Likewise.
* src/assuan-socket-server.c: Likewise.
--
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/client.c (assuan_transact): Wipe the buffer.
--
GnuPG-bug-id: 5977
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-buffer.c (assuan_send_data): Wipe the buffer.
--
GnuPG-bug-id: 5977
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-inquire.c (assuan_inquire): Wipe the memory and
inbound buffer.
--
GnuPG-bug-id: 5977
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-socket.c (_assuan_sock_accept): New.
(assuan_sock_accept): New.
* src/assuan.h.in (assuan_sock_accept): New.
--
GnuPG-bug-id: 5925
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/putc_unlocked.c: Remove.
* configure.ac: Remove putc_unlocked replace.
--
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]>
|
|
* configure.ac: Use AX_CC_FOR_BUILD.
* src/Makefile.am: Use EXEEXT_FOR_BUILD.
* m4/ax_cc_for_build.m4: New from libgpg-error.
--
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]>
|
|
* configure.ac (USE_GPGRT_CONFIG): New.
* src/Makefile.am [USE_GPGRT_CONFIG]: Conditionalize the install
of libassuan-config.
--
When system will migrate use of gpgrt-config and removal of
gpg-error-config, libassuan-config will not be installed (but use
libassuan.pc by gpgrt-config).
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/posix-sys-pth-impl.h: Remove.
* src/w32-sys-pth-impl.h: Remove.
* src/Makefile.am: Follow the change.
* src/assuan.h.in (ASSUAN_SYSTEM_PTH_IMPL, ASSUAN_SYSTEM_PTH): Remove.
* src/mkheader.c (write_special): Remove Pth support.
--
GnuPG-bug-id: 5911
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/w32-types.inc.h: Distinguish the case of _WIN64.
--
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
|
|
* src/libassuan.m4: Replace AC_HELP_STRING to AS_HELP_STRING.
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/assuan-logging.c (_assuan_log_control_channel): Use gpgrt_malloc.
Signed-off-by: Ben Kibbey <[email protected]>
|
|
|
|
* src/assuan-socket.c [W32]: Always use CreateFileW. Drop support for
Windows-CE
(read_port_and_nonce): Use gpgrt_fopen.
--
GnuPG-bug-id: 5098
Signed-off-by: Werner Koch <[email protected]>
|
|
* configure.ac (LIBASSUAN_CONFIG_LIBS): Remove NETLIBS.
* src/libassuan.pc.in: Distinguish static link.
* tests/Makefile.am: Don't need to link NETLIBS.
GnuPG-bug-id: 4624
Signed-off-by: NIIBE Yutaka <[email protected]>
|
|
* src/w32-fd-t.inc.h (assuan_fd_from_posix_fd): Avoid compiler warning.
--
The actual warning was:
warning: cast from function call of type 'intptr_t' {aka 'int'} to
non-matching type 'void *' [-Wbad-function-cast]
return (assuan_fd_t)(HANDLE) _get_osfhandle (fd);
Signed-off-by: Werner Koch <[email protected]>
|
|
--
|