1. 08 Jan, 2010 2 commits
  2. 05 Jan, 2010 3 commits
  3. 22 Dec, 2009 1 commit
  4. 15 Dec, 2009 3 commits
  5. 14 Dec, 2009 1 commit
  6. 08 Dec, 2009 8 commits
    • Marcus Brinkmann's avatar
      Another one. · ea494736
      Marcus Brinkmann authored
      ea494736
    • Marcus Brinkmann's avatar
      2009-12-08 Marcus Brinkmann <marcus@g10code.de> · 25066fad
      Marcus Brinkmann authored
      	* assuan.h (struct assuan_system_hooks): Don't use "namespace" as
      	argument name in declaration (C++ keyword).
      25066fad
    • Marcus Brinkmann's avatar
      2009-12-08 Marcus Brinkmann <marcus@g10code.de> · e7faad49
      Marcus Brinkmann authored
      	* assuan.texi: Use our own copy of the setfont macro, as it takes
      	an extra argument since texinfo 4.13.
      e7faad49
    • Marcus Brinkmann's avatar
      2009-12-08 Marcus Brinkmann <marcus@g10code.de> · 3d2c39e7
      Marcus Brinkmann authored
      	* client.c (assuan_client_read_response): Fix linelen.
      3d2c39e7
    • Marcus Brinkmann's avatar
      doc/ · b4f82b8f
      Marcus Brinkmann authored
      2009-12-08  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.texi (Contexts): Document ASSUAN_SPAWN_DETACHED.
      
      src/
      2009-12-08  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.h (ASSUAN_SPAWN_DETACHED): New macro.
      	* assuan-pipe-connect.c (pipe_connect): Calculate spawn_flags from
      	flags.
      b4f82b8f
    • Marcus Brinkmann's avatar
      Fix changelog. · 8af605b3
      Marcus Brinkmann authored
      8af605b3
    • Marcus Brinkmann's avatar
      2009-12-08 Marcus Brinkmann <marcus@g10code.de> · 6cf93645
      Marcus Brinkmann authored
      	* assuan_fd_from_posix_fd (assuan_fd_from_posix_fd): Handle invalid fd early.
      6cf93645
    • Marcus Brinkmann's avatar
      2009-12-08 Marcus Brinkmann <marcus@g10code.de> · bfa7d62f
      Marcus Brinkmann authored
      	* assuan-socket.c (get_nonce): Cast buffer to unsigned.
      	(_assuan_sock_connect) [HAVE_W32_SYSTEM]: Drop ctx argument from
      	read_port_and_nonce invocation.
      	* system.c (assuan_fdopen) [HAVE_W32_SYSTEM]: Fix typo in variable
      	name.
      	(__assuan_spawn) [HAVE_W32_SYSTEM]: Fix types of fd and fdp.  Use
      	ASSUAN_INVALID_FD.  Add missing context argument to _assuan_free,
      	and fix call to _assuan_w32_strerror.  Set errno on error.
      	(__assuan_socketpair) [HAVE_W32_STRERROR]: Fix type of filedes
      	argument.
      	* assuan-pipe-connect.c (pipe_connect, assuan_pipe_connect,
      	socketpair_connect) [HAVE_W32_SYSTEM]: Fix type of fd_child_list.
      	* assuan-defs.h (_assuan_socketpair): Likewise for prototype.
      	* assuan.h (assuan_fd_from_posix_fd): New static inline function.
      bfa7d62f
  7. 03 Dec, 2009 1 commit
    • Marcus Brinkmann's avatar
      2009-12-03 Marcus Brinkmann <marcus@g10code.de> · 58ddb041
      Marcus Brinkmann authored
      	* assuan-logging.c: (log_cats): New static variable.
      	(TEST_LOG_CAT): New macro.
      	(_assuan_log_handler): Check log category.
      	(assuan_set_assuan_log_stream): Check ASSUAN_DEBUG for logging
      	categories.
      	(assuan_set_log_stream): Call assuan_set_assuan_log_stream.
      58ddb041
  8. 02 Dec, 2009 1 commit
    • Marcus Brinkmann's avatar
      src/ · a2942041
      Marcus Brinkmann authored
      2009-12-02  Marcus Brinkmann  <marcus@g10code.de>
      
      	* Makefile.am (common_sources): Remove assuan-client.c.
      	* assuan-client.c: File removed.
      	* assuan.h (ASSUAN_RESPONSE_ERROR, ASSUAN_RESPONSE_OK)
      	(ASSUAN_RESPONSE_STATUS, ASSUAN_RESPONSE_INQUIRE)
      	(ASSUAN_RESPONSE_STATUS): New macros.
      	(assuan_response_t): New type.
      	(assuan_client_read_response, assuan_client_parse_response): New
      	prototypes.
      	* libassuan.def, libassuan.vers: Add assuan_client_read_response,
      	assuan_client_parse_response.
      	* assuan-client.c (xtoi_1, xtoi_2, assuan_transact)
      	(_assuan_read_from_server): Moved to ...
      	* client.c: ... here, with updates to use new functions and types.
      	Include <stdlib.h>.
      	(assuan_client_read_response, assuan_client_parse_response): New
      	functions.
      	* assuan-defs.h (_assuan_read_from_server): Use assuan_response_t.
      	* assuan-pipe-connect.c (initial_handshake): Use assuan_response_t
      	and ASSUAN_RESPONSE_OK.
      	* assuan-socket-connect.c (assuan_socket_connect): Likewise.
      a2942041
  9. 01 Dec, 2009 1 commit
  10. 27 Nov, 2009 1 commit
    • Marcus Brinkmann's avatar
      2009-11-27 Marcus Brinkmann <marcus@g10code.de> · 4b6374bc
      Marcus Brinkmann authored
      	* assuan.h (assuan_set_assuan_log_stream): Add prototype.
      	* libassuan.def, libassuan.vers: Add back
      	assuan_set_assuan_log_stream.
      	* assuan-logging.c (assuan_set_assuan_log_stream): Add back.
      	* context.c (assuan_get_pointer): Don't output debug info here.
      	(assuan_get_peercred, assuan_get_pid): But do here.
      	* system.c: Improve debug output.
      	* assuan-defs.h (struct assuan_context_s): Rename pipe_mode to
      	max_accepts.
      	* assuan-listen.c (assuan_accept): Rework max accepts logic.
      	* assuan-socket-server.c (assuan_init_socket_server),
      	assuan-socket-connect.c (assuan_socket_connect),
      	assuan-pipe-server.c (assuan_init_pipe_server),
      	assuan-pipe-connect.c (socketpair_connect): Add debug output, set
      	max_accepts instead of pipe_mode.
      4b6374bc
  11. 25 Nov, 2009 1 commit
    • Marcus Brinkmann's avatar
      doc/ · b41cc03c
      Marcus Brinkmann authored
      2009-11-25  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.texi (Data Types): Document assuan_fdopen.
      
      src/
      2009-11-25  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.h (assuan_init_pipe_server): Change type of filedes to
      	assuan_fd_t.
      	(assuan_fdopen): New prototype.
      	* libassuan.vers, libassuan.def: Add assuan_fdopen.
      	* system.c (assuan_fdopen): New function.
      	* assuan-pipe-server.c (assuan_init_pipe_server): Change type of
      	filedes to assuan_fd_t.  No longer translate fd to handle.  Don't
      	set to binary either (that doesn't do anything for handles, it
      	only affects the libc fd).
      b41cc03c
  12. 24 Nov, 2009 1 commit
    • Marcus Brinkmann's avatar
      doc/ · abcfd155
      Marcus Brinkmann authored
      2009-11-24  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.texi: Remove assuan_disconnect, assuan_deinit_server.
      	Many smaller API fixes.
      
      src/
      2009-11-24  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.h (struct _assuan_peercred) [_WIN32]: Define dummy member
      	so struct is not empty.
      	* assuan-socket.c (assuan_sock_deinit): Set sock_ctx to NULL.
      abcfd155
  13. 19 Nov, 2009 1 commit
    • Marcus Brinkmann's avatar
      2009-11-19 Marcus Brinkmann <marcus@g10code.de> · cb53f862
      Marcus Brinkmann authored
      	* Makefile.am (common_sources): Remove assuan-connect.c and add
      	client.c.
      	* client.c, server.c: New file.
      	* assuan-defs.h (_assuan_disconnect): Remove.
      	(struct assuan_context_s): Remove members deinit_handler.
      	(_assuan_client_release, _assuan_client_finish)
      	(_assuan_server_finish, _assuan_server_release): New.
      	* assuan-socket-server.c (accept_connection_bottom): Use
      	ASSUAN_INVALID_PID, not -1.
      	(finish_connection, deinit_socket_server): Remove.
      	(assuan_init_socket_server): Use _assuan_server_release.
      	* assuan-socket-connect.c (do_finish, do_deinit): Remove.
      	(assuan_socket_connect): Use _assuan_client_release.
      	* assuan-pipe-connect.c (do_finish, do_deinit): Remove.
      	(pipe_connect): Update deinitialization.
      	(socketpair_connect): Here as well.
      	* context.c (assuan_get_pid): New from ...
      	* assuan-connect.c (assuan_get_pid): ... here.  Remove this file.
      	* assuan-pipe-server.c (_assuan_deinit_server, accept_connection)
      	(deinit_pipe_server, finish_connection): Remove unused function.
      	* assuan-listen.c (assuan_accept): Check CTX->accept_handler
      	before calling.  Initialize RC.  Do not call finish handler for
      	pipe server.
      	* assuan-uds.c (_assuan_uds_deinit): Do not call finish handler.
      cb53f862
  14. 10 Nov, 2009 2 commits
    • Marcus Brinkmann's avatar
      2009-11-10 Marcus Brinkmann <marcus@g10code.de> · 7cceb82f
      Marcus Brinkmann authored
      	* assuan.texi: Various fixes and updates for the new interface.
      7cceb82f
    • Marcus Brinkmann's avatar
      2009-11-10 Marcus Brinkmann <marcus@g10code.de> · 0e443305
      Marcus Brinkmann authored
      	* 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.
      0e443305
  15. 05 Nov, 2009 3 commits
    • Marcus Brinkmann's avatar
      2009-11-05 Marcus Brinkmann <marcus@g10code.de> · 420da928
      Marcus Brinkmann authored
      	* tests/fdpassing.c (main): Call assuan_pipe_connect instead
      	of assuan_pipe_connect_ext.
      
      doc/
      2009-11-05  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.texi (Client code): Document
      	ASSUAN_PIPE_CONNECT_FDPASSING and ASSUAN_PIPE_CONNECT_DETACHED.
      	(Server code): Document ASSUAN_SOCKET_SERVER_FDPASSING and
      	ASSUAN_SOCKET_SERVER_ACCEPTED.
      	(Utilities): Update documentation of assuan_get_peercred.
      
      src/
      2009-11-05  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.h (struct _assuan_peercred, assuan_peercred_t): New.
      	(assuan_get_peercred): Define on all systems, return
      	assuan_peercred_t.
      	* assuan-defs.h (struct assuan_context_s): Move valid flag out of
      	peercred struct, use struct _assuan_peercred.
      	* libassuan.def: Add assuan_get_peercred.
      	* assuan-connect.c (assuan_get_peercred): Moved to ...
      	* context.c (assuan_get_peercred): ... here.  Reimplement.
      	* assuan-socket-server.c (accept_connection_bottom): Adjust access
      	to peercred in context.
      	* assuan.h (ASSUAN_PIPE_CONNECT_FDPASSING)
      	(ASSUAN_PIPE_CONNECT_DETACHED, ASSUAN_SOCKET_SERVER_FDPASSING)
      	(ASSUAN_SOCKET_SERVER_ACCEPTED, ASSUAN_SOCKET_CONNECT_FDPASSING): New.
      	(assuan_pipe_connect_ext): Renamed to ...
      	(assuan_pipe_connect): ... this, overwriting old prototype.
      	(assuan_socket_connect_ext): Renamed to ...
      	(assuan_socket_connect): ... this, overwriting old prototype.
      	(assuan_init_socket_server_ext): Renamed to ...
      	(assuan_init_socket_server): ... this, overwriting old prototype.
      	* assuan-pipe-connect.c: Likewise for functions.
      	* assuan-socket-connect.c: Likewise.
      	* assuan-socket-server.c: Likewise.
      	* libassuan.def (assuan_init_socket_server_ext)
      	(assuan_pipe_connect_ext, assuan_socket_connect_ext): Removed.
      	* libassuan.vers: Likewise.
      420da928
    • Marcus Brinkmann's avatar
      Fix last commit. · 66f0ccbe
      Marcus Brinkmann authored
      66f0ccbe
    • Marcus Brinkmann's avatar
      doc/ · a0cb80c8
      Marcus Brinkmann authored
      2009-11-05  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.texi (External I/O Loop Server): Document change to
      	assuan_process_next.
      
      src/
      2009-11-05  Marcus Brinkmann  <marcus@g10code.de>
      
      	* 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.
      a0cb80c8
  16. 04 Nov, 2009 1 commit
  17. 02 Nov, 2009 1 commit
    • Marcus Brinkmann's avatar
      2009-11-02 Marcus Brinkmann <marcus@g10code.de> · f3426724
      Marcus Brinkmann authored
      	* 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.
      f3426724
  18. 30 Oct, 2009 1 commit
  19. 20 Oct, 2009 1 commit
  20. 19 Oct, 2009 1 commit
  21. 16 Oct, 2009 1 commit
    • Marcus Brinkmann's avatar
      2009-10-16 Marcus Brinkmann <marcus@g10code.de> · 5e15cf93
      Marcus Brinkmann authored
      	* 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  <marcus@g10code.com>
      
      	* assuan.texi: Remove documentation for thread support.
      	(assuan_pipe_connect_ext): Update prototype.
      
      src/
      2009-10-16  Marcus Brinkmann  <marcus@g10code.com>
      
      	* 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.
      5e15cf93
  22. 14 Oct, 2009 1 commit
  23. 13 Oct, 2009 1 commit
  24. 08 Oct, 2009 1 commit
    • Marcus Brinkmann's avatar
      2009-10-08 Marcus Brinkmann <marcus@g10code.de> · 6e96c1d4
      Marcus Brinkmann authored
      	* configure.ac: AC_REPLACE_FUNCS for vasprintf.
      
      src/
      2009-10-08  Marcus Brinkmann  <marcus@g10code.de>
      
      	* assuan.h (assuan_get_assuan_log_stream,
      	assuan_set_assuan_log_stream): Remove prototypes.
      	* libassuan.def: Remove assuan_get_assuan_log_stream,
      	assuan_set_assuan_log_stream.
      	* libassuan.vers: Likewise.
      	* assuan-defs.h (_assuan_w32_strerror): Fix prototype.
      	(w32_strerror): Remove macro.
      	* assuan-pipe-connect.c (build_w32_commandline): Add argument for
      	context.  Use it for malloc routines.  Use _assuan_w32_strerror
      	instead of w32_strerror.
      	* vasprintf.c: New file.
      6e96c1d4
  25. 29 Sep, 2009 1 commit