aboutsummaryrefslogtreecommitdiffstats
path: root/src/assuan-util.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Really delete.Marcus Brinkmann2009-10-131-0/+0
|
* 2009-09-19 Marcus Brinkmann <[email protected]>Marcus Brinkmann2009-09-211-190/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* doc/Marcus Brinkmann2009-09-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-26 Marcus Brinkmann <[email protected]>Marcus Brinkmann2009-08-261-20/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* Add assuan_set_io_hooks.Werner Koch2007-10-081-1/+18
|
* Preparing 1.0.3Werner Koch2007-08-241-1/+1
|
* Switched to LGPLv3.libassuan-1.0.2Werner Koch2007-07-051-4/+4
|
* New functions assuan_set_io_monitor and assuan_register_post_cmd_notifyWerner Koch2006-11-141-0/+15
|
* fixesWerner Koch2006-09-101-107/+0
|
* Fixed and clarified copyright noticesWerner Koch2005-10-241-1/+2
|
* 2005-10-01 Marcus Brinkmann <[email protected]>Marcus Brinkmann2005-10-011-1/+1
| | | | | | | | | * assuan-client.c (assuan_transact): Change LINE, S and D from unsigned char * to char * to silence gcc warning. * assuan-util.c (_assuan_log_sanitized_string): Add explicit cast to silence gcc warning. * assuan-inquire.c (assuan_inquire): Likewise.
* * assuan-util.c (assuan_set_flag, assuan_get_flag): New.Werner Koch2005-05-221-0/+30
| | | | | | | | | * assuan-defs.h (struct assuan_context_s): New field flags. * assuan.h (assuan_flag_t): New with one flag value ASSUAN_NO_WAITPID for now. * assuan-pipe-connect.c (do_finish): Take care of the no_waitpid flag.
* (_assuan_calloc): Avoid integer overflow.Werner Koch2005-04-041-3/+14
|
* * autogen.sh: Add Option --build-w32.Werner Koch2004-12-181-1/+2
| | | | | | | | | | | * assuan-logging.c (_assuan_w32_strerror): New. * assuan-defs.h (w32_strerror): new. * assuan-pipe-connect.c (assuan_pipe_connect2, fix_signals): Factored signal code out to new function. (build_w32_commandline, create_inheritable_pipe): New. Taken from gnupg 1.9. (assuan_pipe_connect2) [W32]: Implemented for W32.
* 2004-11-23 Timo Schulz <[email protected]>Timo Schulz2004-11-241-6/+6
| | | | | | | | | | | | | | | | | | * assuan-socket.c (_assuan_sock_connect): Get local port from the sun_path[] file. (_assuan_sock_bind): Write local port to the sun_path[] file. * assuan-socket-connect.c (assuan_socket_connect): Use DIRSEP_C for a better portability. (assuan-defs.h): Define DIRSEP_C. 2004-11-22 Timo Schulz <[email protected]> * assuan-io.c (_assuan_simple_read, _assuan_simple_write): W32 support. * assuan-socket.c (_assuan_close): New. (_assuan_sock_new): New. (_assuan_sock_bind): New.
* * assuan-socket-server.c, assuan-socket-connect.c: IncludesWerner Koch2004-04-191-2/+2
| | | | | | sys/types.h. Reported by Michael Nottebrock. * assuan-domain-connect.c: Ditto.
* * assuan-buffer.c: Changed formatting of the debug output prefix.Werner Koch2003-12-161-0/+1
| | | | | | | | * assuan-util.c (assuan_set_log_stream): Set global log stream if it has not been done yet. * assuan-logging.c (_assuan_set_default_log_stream): New. (assuan_set_assuan_log_prefix): New.
* 2003-02-17 Neal H. Walfield <[email protected]>Neal Walfield2003-02-181-13/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.am (lib_LIBRARIES): Use this instead of . . . (noinst_LIBRARIES): . . . this. (include_HEADERS): New variable. (libassuan_a_SOURCES): Remove assuan.h, add assuan-logging.c. * assuan.h (assuan_set_assuan_log_stream): New prototype. (assuan_get_assuan_log_stream): Likewise. (assuan_get_assuan_log_prefix): Likewise. * assuan-logging.c: New file. * assuan-buffer.c [HAVE_JNLIB_LOGGIN]: Do not include "../jnlib/logging.h". (my_log_prefix): Remove function. (_assuan_read_line): Use assuan_get_assuan_log_prefix in lieu of my_log_prefix. (assuan_write_line): Likewise. (_assuan_cookie_write_data): Likewise. (_assuan_cookie_write_flush): Likewise. * assuan-domain-connect.c (LOGERROR, LOGERROR1, LOGERROR2, LOGERRORX): Remove. (LOG): New macro. (domain_reader): Use it. (domain_writer): Likewise. (domain_sendfd): Likewise. (domain_receivefd): Likewise. (_assuan_domain_init): Likewise. (assuan_domain_connect): Likewise. * assuan-pipe-connect.c [HAVE_JNLIB_LOGGIN]: Do not include "../jnlib/logging.h". (LOGERROR, LOGERROR1, LOGERROR2, LOGERRORX): Remove. (LOG): New macro. (assuan_pipe_connect): Use it. * assuan-socket-connect.c [HAVE_JNLIB_LOGGIN]: Do not include "../jnlib/logging.h". (LOGERROR, LOGERROR1, LOGERROR2, LOGERRORX): Remove. (LOG): New macro. (assuan_socket_connect): Use it. (socket_reader): Remove dead code. (socket_writer): Likewise. * assuan-util.c [HAVE_JNLIB_LOGGIN]: Do not include "../jnlib/logging.h". (_assuan_log_sanitized_string): Use assuan_get_assuan_log_stream, not jnlib.
* 2002-10-31 Neal H. Walfield <[email protected]>Neal Walfield2002-10-311-28/+66
| | | | | | | | | * assuan-util.c: Include <ctype.h>. (_assuan_log_print_buffer): Elide the magic numbers preferring the standard isfoo functions. Use putc_unlocked where possible. (_assuan_log_sanitized_string): Rewrite to use putc_unlocked and the isfoo functions.
* 2002-09-05 Neal H. Walfield <[email protected]>Neal Walfield2002-10-291-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | * assuan-defs.h (_assuan_read_wrapper): Depreciated. * assuan-util.c (_assuan_read_wrapper): Removed. * assuan-defs.h (_assuan_write_wrapper): Depreciated. * assuan-util.c (_assuan_write_wrapper): Removed. * assuan.h (assuan_set_io_fun): Depreciated. * assuan-util.c (assuan_set_io_fun): Removed. * assuan-defs.h (_assuan_read): New function. (_assuan_write): Likewise. * assuan-io.c: New file. * assuan-buffer.c (writen): Use _assuan_write rather than doing the work here. (readline): Likewise for _assuan_read. * Makefile.am (libassuan_a_SOURCES): Add assuan-io.c. 2002-09-05 Neal H. Walfield <[email protected]> * gpg-agent.c (main) [USE_GNU_PTH]: No need to call assuan_set_io_func as assuan is smart.
* Changed the lincese for Assuan to LGPL.V0-3-10NEWPG-0-3-10Werner Koch2002-07-301-13/+13
|
* * assuan-util.c (assuan_set_io_func): New.V0-3-8V0-3-7NEWPG-0-3-8NEWPG-0-3-7Werner Koch2002-05-231-0/+14
| | | | | | | | | * assuan-buffer.c (writen, readline): Use the new functions instead of pth. * assuan-socket-server.c (accept_connection): Don't use the pth_accept - using the assuan included accept code would be a bad idea within Pth so we don't need a replacement function.
* * assuan-connect.c: Move all except assuan_get_pid to...Werner Koch2002-01-211-0/+44
| | | | | | | | | | | | | | | | | * assuan-pipe-connect.c: this. (assuan_pipe_disconnect): Removed. (do_finish, do_deinit): New (assuan_pipe_connect): and set them into the context. * assuan-socket-connect.c: New. * assuan-util.c (_assuan_log_sanitized_string): New. * assuan-pipe-server.c (assuan_init_pipe_server): Factored most code out to ... (_assuan_new_context): new func. (_assuan_release_context): New * assuan-connect.c (assuan_pipe_connect): Use the new functions.
* * assuan-buffer.c (_assuan_read_line): Add output logging.Werner Koch2002-01-191-0/+54
| | | | | | | | | | | | | | | | | | | (assuan_write_line): Ditto. (_assuan_cookie_write_data): Ditto. (_assuan_cookie_write_flush): Ditto. * assuan-util.c (_assuan_log_print_buffer): New. (assuan_set_log_stream): New. (assuan_begin_confidential): New. (assuan_end_confidential): New. * assuan-defs.h: Add a few handler variables. * assuan-pipe-server.c (assuan_deinit_pipe_server): Removed. (deinit_pipe_server): New. (assuan_deinit_server): New. Changed all callers to use this. * assuan-listen.c (assuan_accept): Use the accept handler. * assuan-handler.c (process_request): Use the close Handler. * assuan-socket-server.c: New.
* Allow to store an arbitrary pointer in the context.Werner Koch2001-11-191-0/+13
| | | | | Added assuan_write_status().
* Assuan server mode is now basically usableWerner Koch2001-11-071-4/+4
|
* First chunk of code for the Assuan libraryWerner Koch2001-11-061-0/+85