aboutsummaryrefslogtreecommitdiffstats
path: root/src/assuan-handler.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-05-10w32: Fix the semantics of sending FD, it's Windows HANDLE.NIIBE Yutaka1-15/+5
* src/assuan-handler.c (w32_handler_sendfd): It's Windows HANDLE. * src/system-w32.c (get_file_handle, w32_fdpass_send): Likewise. * tests/fdpassing.c (cmd_echo): Received FD is Windows HANDLE. (client): Use Windows HANDLE for assuan_sendfd. -- GnuPG-bug-id: 6236 Signed-off-by: NIIBE Yutaka <[email protected]>
2022-11-04w32: Add SENDFD internal command.NIIBE Yutaka1-0/+48
* 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]>
2022-08-31Drop WindowsCE support.NIIBE Yutaka1-23/+1
* 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]>
2022-05-25struct assuan_context_s: Move boolean fields to flags.NIIBE Yutaka1-20/+20
* 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]>
2020-10-20Support Unicode socket file names under Windows.Werner Koch1-1/+1
* 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]>
2017-11-15Add an SPDX tag to all core files.Werner Koch1-17/+18
--
2016-06-25Fix minor memory leaksWerner Koch1-1/+1
* src/assuan-pipe-connect.c (socketpair_connect): Always free CHILD_FDS. * src/assuan-uds.c (uds_sendfd): Clear CONTROL_U to silence Valgrind. * tests/fdpassing.c (main): Free FNAME. * src/assuan-handler.c (dispatch_command): Remove dead assignment. Signed-off-by: Werner Koch <[email protected]>
2015-12-01Fix typos found by codespell.Justus Winter1-1/+1
-- Signed-off-by: Justus Winter <[email protected]>
2013-06-19Changes to support W64.Werner Koch1-3/+3
* configure.ac (have_dosish_system): Set for W64. * src/assuan-defs.h (SOCKET2HANDLE, HANDLE2SOCKET): Add versions for W64. * src/assuan-handler.c (assuan_command_parse_fd) [W64]: Use strtoull to parse an FD. -- Note that these changes are not complete but merely sufficient to allow building of GpgEX.
2012-06-05src/assuan-handler.c: add help strings for standard commands.W. Trevor King1-16/+66
Signed-off-by: W. Trevor King <[email protected]>
2011-08-10Add new flag ASSUAN_FORCE_CLOSE.Werner Koch1-3/+12
2011-03-28Include sys/select.h in a test utility.Werner Koch1-1/+2
This fixes bug#1328 (libassuan: ce-server fails to compile on Darwin due to missing include).
2011-03-09Replace strcasecmp by ascii_strcasecmp variant/Werner Koch1-30/+30
2011-03-09Let an existing command previously registered with assuan_register_command() ↵[email protected]1-5/+16
be updated with new values. This fixes overriding the HELP command for example.
2011-02-28Pass only the command name to the pre_cmd_notify() callback to keep ABI ↵Ben Kibbey1-3/+3
compatibility.
2011-02-24assuan_register_pre_cmd_notify().Ben Kibbey1-1/+19
2010-06-102010-06-11 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-1/+23
* assuan-handler.c (std_handler_input, std_handler_output) [HAVE_W32CE_SYSTEM]: Finish the pipe. We must do this here, because otherwise assuan_close_input_fd() and assuan_close_output_fd() can't work. * system-w32ce.c (_assuan_w32ce_finish_pipe): Call SetLastError in error case. (__assuan_close): Save WSAGetLastError before trashing it! Otherwise handle is never closed and GPGME hangs.
2010-02-24A couple of changes to eventually fully support W32ce.Werner Koch1-7/+19
2010-01-28Cleanups for W32CE.Werner Koch1-1/+3
Implement getenv replacement for W32CE.
2010-01-22Prepare for a port to WindowsCE.Werner Koch1-1/+1
2009-11-102009-11-10 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-7/+17
* assuan-defs.h (struct assuan_context_s): Rename CTX->process_done to CTX->process_complete for clarity. Remove buffer variables from UDS. * assuan-pipe-connect.c (socketpair_connect): Allow FD_CHILD_LIST to be NULL. * assuan-handler.c: Rename CTX->process_done to CTX->process_complete for clarity. (process_request, process_next): Handle EOF. * assuan-uds.c (uds_reader): Remove buffering, which breaks the pending line algorithm in assuan-buffer.c. (_assuan_init_uds_io, _assuan_uds_deinit): Remove buffering. * assuan-buffer.c (_assuan_read_line): Add comment.
2009-11-05Fix last commit.Marcus Brinkmann1-1/+2
2009-11-05doc/Marcus Brinkmann1-18/+24
2009-11-05 Marcus Brinkmann <[email protected]> * assuan.texi (External I/O Loop Server): Document change to assuan_process_next. src/ 2009-11-05 Marcus Brinkmann <[email protected]> * assuan-defs.h (assuan_context_t): Add member PROCESS_DONE. * assuan.h (assuan_process_next): Add argument DONE to prototype. * assuan-handler.c (assuan_process_next): Likewise, handle it. (std_handler_bye): Set PROCESS_DONE. (assuan_process_done): Handle PROCESS_DONE in the no error case. (assuan_process): Use PROCESS_DONE.
2009-11-04Extended HELP command.Werner Koch1-6/+51
2009-11-022009-11-02 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-26/+29
* assuan.h (assuan_handler_t): New type. (assuan_register_bye_notify, assuan_register_reset_notify) (assuan_register_cancel_notify, assuan_register_input_notify) (assuan_register_output_notify, assuan_register_command): Use it. * assuan-handler.c (std_handler_cancel, std_handler_bye): Pass LINE argument to user handler. (std_handler_reset): Likewise, and also abort RESET if error is returned from user handler. (std_handler_input, std_handler_output): Check return value from user handler before assigning FD. * assuan-defs.h (struct cmdtbl_s): Change type of member HANDLER to assuan_handler_t. (struct assuan_context_s): Change type of members RESET_NOTIFY_FNC, CANCEL_NOTIFY_FNC, BYE_NOTIFY_FNC, INPUT_NOTIFY_FNC and OUTPUT_NOTIFY_FNC to assuan_handler_t.
2009-10-162009-10-16 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-5/+3
* autogen.sh: Remove --with-pth-prefix from configure invocation. * configure.ac (_ASSUAN_IN_LIBASSUAN, PTH_SYSCALL_SOFT): Do not set anymore. (GNUPG_PATH_PTH): Don't invoke. (HAVE_PTH): Remove conditional. (LIBASSUAN_CONFIG_THREAD_MODULES): Removed. doc/ 2009-10-16 Marcus Brinkmann <[email protected]> * assuan.texi: Remove documentation for thread support. (assuan_pipe_connect_ext): Update prototype. src/ 2009-10-16 Marcus Brinkmann <[email protected]> * conversion.c: Do not include <sys/types.h> and <time.h>. * debug.h (TRACE_BEG6, TRACE4): New macros. (TRACE_SYSERR): Pass _assuan_trace_context to _assuan_debug. * context.c (assuan_set_pointer, assuan_get_pointer, assuan_set_flag, assuan_get_flag, assuan_set_io_monitor, assuan_set_error): Add trace messages. * libassuan-config.in, libassuan.m4, Makefile.am: Remove PTH support. * assuan.h (assuan_msghdr_t): New type. (ASSUAN_INVALID_PID): New macro. (ASSUAN_NO_FIXSIGNALS): New flag macro. (ASSUAN_SYSTEM_HOOKS_VERSION): New macro. (struct assuan_system_hooks, assuan_system_hooks_t): New types. (assuan_pipe_connect, assuan_pipe_connect_ext): Don't make ARGV const for name==NULL operation. Make fd_child_list an array of assuan_fd_t. (assuan_sock_init, assuan_sock_deinit, assuan_set_system_hooks, assuan_ctx_set_system_hooks, __assuan_pipe, __assuan_close, __assuan_spawn, __assuan_socketpair): New function prototypes. (_ASSUAN_SYSTEM_PTH_IMPL, ASSUAN_SYSTEM_PTH_DECL, ASSUAN_SYSTEM_PTH): New macros. (_assuan_system_pth): New declaration. * libassuan.vers, libassuan.defs: Add assuan_sock_init, assuan_sock_deinit, __assuan_pipe, __assuan_close, __assuan_spawn, __assuan_socketpair, assuan_set_system_hooks, assuan_ctx_set_system_hooks. * assuan-defs.h (struct assuan_io): Removed, move members to ... (struct assuan_context_s): ... this to ENGINE. New flag no_fixsignals. New member SYSTEM. Remove member IO. (_assuan_pipe, _assuan_read, _assuan_write, _assuan_recvmsg, _assuan_sendmsg, _assuan_spawn, _assuan_socketpair, _assuan_system_hooks, _assuan_system_hooks_copy): New declarations. (_assuan_error_is_eagain, _assuan_waitpid, _assuan_usleep, _assuan_close, _assuan_sock_new, _assuan_sock_connect, _assuan_sock_bind, _assuan_sock_get_nonce, _assuan_sock_check_nonce): Add context argument. (_assuan_io_read, _assuan_io_write, _assuan_simple_sendmsg, _assuan_simple_recvmsg): Removed. * context.c (assuan_ctx_set_system_hooks): New function. * assuan.c (assuan_set_system_hooks): New function. (assuan_new_ext): Initialize CTX->system. (assuan_release): Always output trace message. * assuan-error.c (_assuan_error_is_eagain): Add ctx argument, pass along to _assuan_usleep. * assuan-inquire.c assuan-listen.c, assuan-socket-server.c, assuan-handler.c, assuan-socket-connect.c, assuan-client.c, assuan-pipe-connect.c, assuan-socket.c: Pass CTX argument to functions that need it (_assuan_sock_new, _assuan_sock_check_none, _assuan_close, _assuan_error_is_eagain and many more). * assuan-socket-server.c (assuan_init_socket_server_ext): Update fields in CTX->engine instead of CTX->io. * assuan-socket-connect (assuan_socket_connect_ext): Likewise. * assuan-uds.c (uds_reader, uds_writer, uds_sendfd): Use _assuan_recvmsg and _assuan_sendmsg instead of _assuan_simple_recvmsg and _assuan_simple_sendmsg respectively. (_assuan_init_uds_io): Update fields in CTX->engine instead of CTX->io. * assuan-buffer.c: Use functions in CTX->engine instead of CTX->io. * assuan-pipe-server.c (assuan_init_pipe_server): Update fields in CTX->engine instead of CTX->io. * system.c: Include <sys/types.h>, <time.h>, <fcntl.h>, and <windows.h> resp. <sys/wait.h>. Define MAX_OPEN_FDS. (_assuan_system_hooks_copy, __assuan_usleep, _assuan_usleep, __assuan_pipe, _assuan_pipe, __assuan_close, _assuan_close, __assuan_read, _assuan_read, __assuan_write, _assuan_write, __assuan_recvmsg, _assuan_recvmsg, __assuan_sendmsg, _assuan_sendmsg, __assuan_spawn, _assuan_spawn, __assuan_waitpid, _assuan_waitpid, __assuan_socketpair, _assuan_socketpair): New functions. (_assuan_system_hooks): New singleton. * assuan-io.c (_assuan_waitpid, do_io_read, _assuan_io_read, do_io_write, _assuan_io_write, _assuan_simple_sendmsg, _assuan_simple_recvmsg, _assuan_usleep): Removed. * assuan-pipe-connect (writen, build_w32_commandline, create_inheritable_pipe): Removed (actually moved to system.c). (fix_signals) [_ASSUAN_NO_FIXED_SIGNALS]: Still fix signals. (do_finish): Move waitpid logic to _assuan_waitpid, just call that. (struct at_pipe_fork, struct at_socketpair_fork): New types. (at_pipe_fork_cb, at_socketpair_fork_cb): New callback functions. (pipe_connect_unix, pipe_connect_w32): Replaced by ... (pipe_connect): ... this new function using new system functions. (socketpair_connect): Reimplement to use new system functions. (assuan_pipe_connect, assuan_pipe_connect_ext): Add trace message. * assuan-socket.c (_assuan_close): Removed (moved to system.c). (_assuan_sock_new, _assuan_sock_connect, _assuan_sock_bind, _assuan_sock_get_nonce, _assuan_sock_check_nonce): Add context argument. Use new system interface. (sock_ctx): New singleton. (assuan_sock_init, assuan_sock_deinit): New functions to initialize and deinitialize the singleton.
2009-10-14Add new ducntion assuan_get_command_name. This makesWerner Koch1-1/+15
error reporting in the server much easier.
2009-09-212009-09-19 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-27/+28
* tests/fdpassing.c: Update to new API. * configure.ac: Check for stdint.h and inttypes.h. Invoke AC_TYPE_UINTPTR_T. doc/ 2009-09-21 Marcus Brinkmann <[email protected]> * assuan.texi: Update to new API. src/ 2009-09-19 Marcus Brinkmann <[email protected]> * src/libassuan.vers, src/libassuan.def: Update to new API. * assuan.c, context.c, system.c, debug.c: New files. * Makefile.am (common_sources): Add assuan.c, context.c, system.c and debug.c. * assuan.h: Include <stdarg.h>. Fix inclusion of <gpg-error.h>. (_ASSUAN_EXT_SYM_PREFIX, _ASSUAN_PREFIX1, _ASSUAN_PREFIX2) (_ASSUAN_PREFIX): Remove support for renaming the whole library, now that we have a stable shared library interface that can evolve to cover all needs (particularly those of GPGME). (assuan_malloc_hooks, assuan_malloc_hooks_t, assuan_log_cb_t) (assuan_io_monitor_t): New types. (ASSUAN_LOG_INIT, ASSUAN_LOG_CTX, ASSUAN_LOG_ENGINE) (ASSUAN_LOG_DATA, ASSUAN_LOG_SYSIO, ASSUAN_IO_FROM_PEER) (ASSUAN_IO_TO_PEER, ASSUAN_IO_MONITOR_NOLOG) (ASSUAN_IO_MONITOR_IGNORE): New symbols. (assuan_set_gpg_err_source, assuan_get_gpg_err_source) (assuan_get_malloc_hooks, assuan_set_log_cb, assuan_get_log_cb) (assuan_new, assuan_new_ext, assuan_release): New function prototypes. (assuan_init_pipe_server, assuan_init_socket_server) (assuan_init_socket_server_ext, assuan_pipe_connect) (assuan_pipe_connect_ext, assuan_socket_connect) (assuan_socket_connect_ext): Take a context argument instead of pointer to context. (assuan_deinit_server, assuan_disconnect) (assuan_set_assuan_err_source): Remove function prototypes. * assuan-defs.h (ASSUAN_GCC_A_PURE): Moved here from XXX (_assuan_error): New macro. (struct assuan_context_s): New members err_source, w32_strerror, malloc_hooks, log_cb, log_cb_data: New members. Move confidential into flags. New member engine. (_assuan_log_handler, _assuan_error_default, _assuan_disconnect): New prototypes. (_assuan_new_context): Remove prototype. (_assuan_malloc, _assuan_calloc, _assuan_realloc, _assuan_free): Add context argument to prototype. * assuan-util.c (alloc_func, realloc_func, free_func): Remove global variables. (assuan_set_malloc_hooks, _assuan_malloc, _assuan_realloc) (_assuan_calloc, _assuan_free, assuan_set_pointer) (assuan_get_pointer, assuan_begin_confidential) (assuan_end_confidential, assuan_set_io_monitor, assuan_set_flag) (assuan_get_flag): Move functions to ... * assuan-client.c: Add ctx argument to all invocations of _assuan_error. * assuan-socket-server.c, assuan-socket-connect.c, assuan-connect.c: Likewise. * assuan-buffer.c: Likewise. Also update access to confidential flag. * assuan-uds.c: Add ctx argument to all invocations of _assuan_malloc, _assuan_realloc, _assuan_calloc, _assuan_free and _assuan_error. * assuan_listen.c, assuan-inquire.c, assuan-handler.c: Likewise. * assuan-error.c (err_source): Remove global variable. (assuan_set_assuan_err_source): Removed function. (_assuan_w32_strerror): Moved here from assuan-logging.c and made thread-safe. (_assuan_error): Removed function (is now macro). * assuan-handler.c: Update access to confidential flag. * assuan-socket-server.c (accept_connection_bottom): Update access to confidential flag in context. (assuan_init_socket_server, assuan_init_socket_server_ext): Take ctx argument instead of pointer to ctx. * assuan-inquire.c (init_membuf, put_membuf, get_membuf) (free_membuf): Take context argument and change all callers. * assuan-socket-server.c (assuan_socket_connect) (assuan_socket_connect_ext): Take ctx argument instead of pointer to ctx. * assuan-pipe-connect.c (initial_handshake, pipe_connect_unix) (socketpair_connect, assuan_pipe_connect) (assuan_pipe_connect_ext): Likewise. (socketpair_connect): Now that ctx is not a pointer argument anymore, return if we are server or client in the argv argument. * assuan-logging.c (_assuan_log_handler): New function. (_assuan_w32_strerror): Move to assuan-error.c * assuan-connect.c (assuan_disconnect): Renamed to ... (_assuan_disconnect): ... this. * assuan-pipe-server.c (_assuan_new_context): Removed function. (assuan_init_pipe_server): Take ctx argument instead of pointer to ctx. (_assuan_release_context): Removed function. (_assuan_deinit_server): Reimplement.
2009-09-01doc/Marcus Brinkmann1-39/+40
2009-09-01 Marcus Brinkmann <[email protected]> * assuan.texi: (External I/O Loop Server): Document assuan_process_done. (assuan_register_post_cmd_notify): Change type of ERR from int to gpg_error_t. (assuan_set_error): Likewise. (assuan_register_option_handler): Change types in callback handler from int to gpg_error_t. (assuan_inquire_ext): Likewise. src/ 2009-09-01 Marcus Brinkmann <[email protected]> * assuan.h: Change types in all functions from int to gpg_error_t where relevant. * assuan-listen.c (assuan_accept): Change type of RC from int to gpg_error_t. * assuan-pipe-server.c (accept_connection, finish_connection): Change return type to gpg_error_t. * assuan-socket-server.c (accept_connection_bottom) (accept_connection, finish_connection): Likewise. (assuan_init_connected_socket_server): Remove. * assuan-defs.h (struct assuan_context_s): Change return type of accept_handler and finish_handler to gpg_error_t. * assuan-pipe-connect.c (do_finish): Change to void. * assuan-inquire.c (_assuan_inquire_ext_cb): Change type of RC from int to gpg_error_t. * assuan-handler.c: Change return codes and RC variables from int to gpg_error_t where appropriate. * assuan-buffer.c (_assuan_read_line): Fix error code on EOF.
2009-08-262009-08-26 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-128/+76
* configure.ac: Test for versioned symbols support. (LIBASSUAN_LT_CURRENT, LIBASSUAN_LT_AGE) (LIBASSUAN_LT_REVISION): New, set to 0. (LIBASSUAN_CONFIG_API_VERSION): Bump to 2. (AC_CONFIG_MACRO_DIR, AC_DISABLE_STATIC, AC_LIBTOOL_WIN32_DLL) (AC_LIBTOOL_RC, AC_PROG_LIBTOOL, AM_PATH_GPG_ERROR): Invoke. (AC_PROG_RANLIB): Don't invoke. (HAVE_W32_SYSTEM): New AM conditional. (AC_CONFIG_FILES): Add src/versioninfo.rc. * ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: New files from libtool 2.2.6. * tests/Makefile.am (AM_CFLAGS, LDADD): Add gpg-error. * tests/fdpassing.c: Change error values to gpg-error ones. src/ 2009-08-26 Marcus Brinkmann <[email protected]> * libassuan-config.in: Add gpg-error. * assuan-buffer.c, assuan-inquire.c, assuan-handler.c, assuan-util.c, assuan-client.c, assuan-socket-connect.c, assuan-pipe-connect.c, assuan-defs.h, assuan-socket.c, assuan-connect.c, assuan-uds.c, assuan-socket-server.c, assuan-listen.c, assuan-pipe-server.c: Return gpg_error_t instead assuan_error_t everywhere. Return gpg error codes everywhere. Replace xtrymalloc, xfree, etc with _assuan_malloc, _assuan_free etc. Protect include <config.h> by HAVE_CONFIG_H where not done so already. * versioninfo.rc.in, libassuan.vers, libassuan.def, assuan-error.c: New files. * Makefile.am: Add libtool handling and gpg-error (also for W32). (EXTRA_DIST): Remove mkerrors, add libassuan.vers, versioninfo.rc.in and libassuan.def. (BUILT_SOURCES, MOSTLYCLEANFILES): Removed. (common_sources): Remove assuan-errors.c, add assuan-error.c. * assuan.h: Include <gpg-error.h>. [_ASSUAN_ONLY_GPG_ERRORS]: Feature removed. (assuan_init_connected_socket_server, assuan_strerror) (assuan_pipe_connect2): Removed obsolete interfaces. (assuan_error_t): Removed type. (assuan_flag_t): Changed from enum to unsigned int. (ASSUAN_NO_WAITPID, ASSUAN_CONFIDENTIAL): Changed from enum to macro. (assuan_process): Return gpg_error_t instead of int. (assuan_set_assuan_err_source): Change argument type from int to gpg_err_source_t. * assuan-defs.h (_assuan_error): Change types to gpg_error_t. (err_code, err_is_eof, xtrymalloc, xtrycalloc, xtryrealloc) (xfree): Removed. (set_error): Adjust for gpg-error codes. (_assuan_gpg_strerror_r, _assuan_gpg_strsource): Removed. (struct assuan_context_s): Remove member os_errno. * assuan-socket-server.c (accept_connection): Don't set CTX->os_errno. * mkerrors: Removed file. * assuan-io-pth.c (_assuan_simple_sendmsg) (_assuan_simple_recvmsg), assuan-io.c (_assuan_simple_sendmsg, _assuan_simple_recvmsg): Set errno instead returning error directly (and return -1). * assuan-handler.c (assuan_process_done): Remove handling for old style error values. (process_request, assuan_process): Change return type from int to gpg_error_t. * assuan-client.c (assuan_transact): Remove support for old style error values. * assuan-pipe-connect.c (assuan_pipe_connect2): Removed. * assuan-logging.c (my_strerror_r, my_strsource) (load_libgpg_error, _assuan_gpg_strerror_r) (_assuan_gpg_strsource): Removed.
2009-04-03Doc fixes.Werner Koch1-1/+0
2008-11-032008-11-03 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-4/+4
* tests/fdpassing.c (register_commands): Add missing initializer to silence gcc -W warning. src/ 2008-11-03 Marcus Brinkmann <[email protected]> * assuan-handler.c (std_handler_help): Make I unsigned to silence gcc -W warning. * assuan-logging.c (_assuan_log_print_buffer): Likewise for N. * funopen.c (_assuan_funopen): Remove initializer to silence gcc -W warning. * assuan-handler.c (std_cmd_table): Add missing initializer to silence gcc -W warning. * assuan-socket-server.c (io): Likewise. * assuan-socket-connect.c (assuan_socket_connect_ext): Likewise.
2007-10-18doc/Marcus Brinkmann1-0/+18
2007-10-18 Marcus Brinkmann <[email protected]> * assuan.texi (Client requests): Document HELP. src/ 2007-10-18 Marcus Brinkmann <[email protected]> * assuan-handler.c (std_handler_help): New function. (std_cmd_table): Add new command HELP.
2007-10-052007-10-05 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-1/+7
* assuan-defs.h (_assuan_error_is_eagain): New prototype. * mkerrors (_assuan_error_is_eagain): New function. * assuan-handler.c (process_next): Leave on EAGAIN. * assuan-handler.c (process_request), assuan-client.c (_assuan_read_from_server), assuan-buffer.c (assuan_read_line): Busy loop over EAGAIN.
2007-09-07Fix last change.Marcus Brinkmann1-1/+1
2007-09-052007-09-05 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-3/+11
* assuan-handler.c (dispatch_command): Return non-critical errors with PROCESS_DONE ().
2007-08-24Preparing 1.0.3Werner Koch1-2/+2
2007-08-09doc/Marcus Brinkmann1-67/+149
2007-08-09 Marcus Brinkmann <[email protected]> * assuan.texi (External I/O Loop): New chapter. src/ 2007-08-09 Marcus Brinkmann <[email protected]> * assuan.h (assuan_process_done, assuan_inquire_ext): New prototypes. * assuan-defs.h (struct assuan_context_s): New members in_process_next, in_command, inquire_cb, inquire_cb_data, inquire_r_buffer, inquire_r_buffer_len, inquire_membuf. (_assuan_inquire_ext_cb, _assuan_inquire_release): New prototypes. * assuan-handler.c (PROCESS_DONE): New macro. (dummy_handler, std_handler_nop, std_handler_cancel) (std_handler_option, std_handler_bye, std_handler_auth) (std_handler_reset, std_handler_end): Use PROCESS_DONE to optionally call assuan_process_done if CTX->in_process_next is true. (assuan_process_done, process_next): New functions. (assuan_process_next): Rewritten to support external event handling. * mkerrors: Do not clear high bits of -1 for old style EOF. * assuan-inquire.c (_assuan_inquire_release) (_assuan_inquire_ext_cb, assuan_inquire_ext): New functions. * assuan-pipe-server.c (_assuan_release_context): Call _assuan_inquire_release.
2007-07-12Introduced new type for better support of W32 HADNLES vs. file descriptors.Werner Koch1-6/+20
2007-07-05Switched to LGPLv3.libassuan-1.0.2Werner Koch1-4/+2
2007-07-04A couple of Changes for WindowsWerner Koch1-2/+19
2006-12-022006-12-03 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-2/+2
* assuan-handler.c (assuan_command_parse_fd): Also allow white space after FD.
2006-11-22Again one of these last commitslibassuan-1.0.1Werner Koch1-5/+11
2006-11-22Final fix.Werner Koch1-5/+5
2006-11-22Preparing a releaseWerner Koch1-0/+15
2006-11-14New functions assuan_set_io_monitor and assuan_register_post_cmd_notifyWerner Koch1-0/+13
2006-10-10portability fixeslibassuan-0.9.3Werner Koch1-2/+8
2006-09-13More tweaks for descriptor passing.Werner Koch1-35/+41
gpg-connect-agent may now be used as a test program.
2006-09-12Integrated descriptor passing.Werner Koch1-1/+1
2006-09-06Changes to support gpg-error style error codes.Werner Koch1-18/+18