X-Git-Url: http://git.tremily.us/?a=blobdiff_plain;f=src%2FChangeLog;h=73a62fe36249915dcb0e25ababe8a00842412b70;hb=129741d2f713305a862a1505f20738a0ce2ea656;hp=bcfaa729d5d2b6eeb575d76652e0c4557bfc9436;hpb=97932b102af882a37c2613b0f50dc39369c48723;p=gpgme.git diff --git a/src/ChangeLog b/src/ChangeLog index bcfaa72..73a62fe 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,647 @@ +2011-02-02 Marcus Brinkmann + + * assuan-support.c (my_socket, my_connect): New functions. + (_gpgme_assuan_system_hooks): Add my_Socket, my_connect. + * priv-io.h (_gpgme_io_socket): New prototype. + * w32-io.c (pid_to_handle, handle_to_oid, fd_to_handle): Remove macros. + (is_socket): Remove function. + (_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Remove some dead code. + (_gpgme_io_spawn): Translate handles before DuplicateHandle them. + +2011-02-02 Marcus Brinkmann + + * w32-util.c (mkstemp): Don't use CreateFile instead of open (the + function is not used on Windows CE, and the callers were not + adjusted). + +2011-01-21 Marcus Brinkmann + + * engine-gpgconf.c (_gpgme_conf_opt_change): Fix the case that is + not self-assignment. + +2010-12-08 Werner Koch + + * gpgme-tool.c (strcpy_escaped_plus): New. + (DIM, xtoi_1, xtoi_2): New. + (cmd_keylist): Allow for multiple patterns. + +2010-11-23 Marcus Brinkmann + + * w32-io.c (create_reader, create_writer): Use small stack size on + Windows CE. + +2010-11-23 Marcus Brinkmann + + * gpgme.h.in (gpgme_conf_arg_new): Make VALUE arg const void *. + * gpgconf.c (_gpgme_conf_arg_new): Likewise. + (gpgme_conf_arg_new): Likewise. + * engine-gpgconf.c (_gpgme_conf_arg_new): Likewise. + (gpgconf_write): Remove debug hack. + +2010-11-19 Marcus Brinkmann + + * engine-gpgconf.c (_gpgme_conf_opt_change): Support + self-assignment. Requested by Marc Mutz. + +2010-11-17 Marcus Brinkmann + + * vasprintf.c (int_vasprintf) [HAVE_W32CE_SYSTEM]: Just use a + fixed size buffer, as va_copy is not easy to fake. + +2010-11-15 Marcus Brinkmann + + * w32-ce.h (strcasecmp, strdup) [_MSC_VER]: Define. + * genkey.c, passphrase.c: Include util.h. + + * w32-util.c (_gpgme_w32ce_get_debug_envvar): Fix return value. + +2010-11-15 Werner Koch + + * data-compat.c (gpgme_data_new_from_filepart) + (gpgme_data_new_from_file) [W32CE && _MSC_VER]: Return not + GPG_ERR_NOT_IMPLEMENTED. + + * w32-ce.h (HKEY_PERFORMANCE_DATA, HKEY_CURRENT_CONFIG, _IOLBF) + (abort) [_MSC_VER]: Provide these macros. + + * ath.h [W32CE && _MSC_VER]: Include winsock2.h. + + * ath.c (ath_read, ath_write) [W32CE && _MSC_VER]: Do not call + non-available functions. + +2010-11-04 Werner Koch + + * w32-ce.h [_MSC_VER && W32CE]: Undef leave. + * export.c: Include util.h so that we get the above undef. + + * memrchr.c: Remove. Used to be a replacement function required + by the formerly included assuan code. + +2010-11-03 Werner Koch + + * debug.c (_gpgme_debug) [W32CE]: Replace locatime by GetLocalTime. + + * signers.c (gpgme_signers_clear): Remove useless return. + Reported by Patrick Spendrin. + + * w32-util.c: s/__inline__/GPG_ERR_INLINE/ + + * setenv.c: Include string.h due to our strerror replacement. + + * w32-ce.h (access, bsearch): New macros. + * w32-ce.c (_gpgme_wince_access): New. + (RegQueryValueExA): Change DATA to a void*. + (_gpgme_wince_bsearch): New. Taken from glibc 2.6. + + Guard include of sys/stat.h and sys/types.h. + +2010-11-02 Werner Koch + + * data-fd.c (read, write, lseek) [W32CE && ! __MINGW32CE__]: New. + Taken from Pedro Alves Public Domain code. + + * w32-ce.h (SHGetSpecialFolderPath): Remove our defines and + prototypes. We use the system provided prototypes now. + * w32-ce.c: Include shlobj.h + (_WIN32_IE): Define to 0x0400 + (CreateFileA): New. + * w32-util.c: Explicitly include windows headers before util.h. + (_gpgme_w32ce_get_debug_envvar): Do not use wchar_t strings for + read_w32_registry_string. + (mkstemp): Use CreateFile instead of open. + + * w32-io.c (handle_to_fd, fd_tohandle): Add. We need them for W32. + * w32-util.c (_WIN32_IE): Define to 0x0400. + + * util.h [W32]: Include windows.h. + * w32-sema.c: Do not include windows.h directly. + * ath.c (ssize_t, pid_t)[_MSC_VER]: Add new types. + * gpgme.c (gpgme_result_ref, gpgme_result_unref): Do not use a + void pointer in pointer arithmetic. + * w32-util.c: Include util.h prior to ath.h. Don't include + windows.h directly. + (F_OK): Define if not defined. + * w32-ce.c: Include string.h. + (RegQueryValueExA): Use WINAPI modifier to match the declaration. + * vfs-create.c: Include string.h because under W32CE with MSC we + get a warning related to our strerror replacement. + * encrypt-sign.c: Include stdlib.h, string.h and errno.h. + * priv-io.h [W32CE]: Include w32-ce.h + * w32-ce.h: Include winsock2.h and ws2tcpip.h. + (_MSV_VER): Remove useless macro. + (pid_t): Add typedef. + + Guard all includes of unistd.h and sys/time.h. + +2010-10-28 Marcus Brinkmann + + * opassuan.c (gpgme_op_assuan_transact_ext): Fix uninitialized + value use. Reported by Marc Mutz. + +2010-10-07 Werner Koch + + * gpgme-tool.c (ARGP_ERR_UNKNOWN): Use EDEADLK if available. + + * w32-util.c (_gpgme_w32ce_get_debug_envvar) [W32CE]: New. + * debug.c (debug_init) [W32CE]: Use new function. + +2010-09-16 Werner Koch + + * import.c: Include "util.h". + (parse_import): Return GPG_ERR_MISSING_ISSUER_CERT. + + * util.h: Add fallback define for GPG_ERR_MISSING_ISSUER_CERT. + * op-support.c: Include "util.h". + (_gpgme_parse_inv_recp): Handle new code 12. + +2010-09-02 Marcus Brinkmann + + * error.c (gpgme_err_code_to_errno): Fix cut and paste bug (thanks + to Marc Mutz). + +2010-09-01 Marcus Brinkmann + + * w32-io.c: Revert change from 2009-06-18, as it created a race + condition. + +2010-08-18 Marcus Brinkmann + + * gpgme.def: Add gpgme_err_code_from_syserror and gpgme_err_set_errno. + * libgpgme.vers: Likewise. + * gpgme.h.in (gpgme_error_from_errno): Fix return type to + gpgme_error_t. + (gpgme_err_code_from_syserror, gpgme_err_set_errno): New prototype. + (gpgme_error_from_syserror): New inline function (why are + gpgme_err_make_from_errno and gpgme_error_from_errno not inline + functions?). + * error.c (gpgme_error_from_errno): Fix return type to gpgme_error_t. + (gpgme_err_set_errno, gpgme_err_code_from_syserror): New functions. + +2010-08-03 Marcus Brinkmann + + * gpgme-tool.c (result_encrypt_to_xml, result_sign_to_xml) + (result_verify_to_xml, result_import_to_xml) + (result_genkey_to_xml): Check vigorously for null pointers. + + * w32-io.c (GPGCEDEV_IOCTL_ASSIGN_RVID): New macro. + (_gpgme_io_spawn): Use ASSIGN_RVID. + +2010-06-11 Marcus Brinkmann + + * w32-io.c (_gpgme_io_spawn): Remove debug printf. + +2010-06-10 Marcus Brinkmann + + * gpgme-tool.c (gpgme_server): Use special hack for Windows CE to + get at stdin and stdout. + + * engine-gpgsm.c (gpgsm_new): Translate returned achild_fds back + to child_fds. + + * debug.h (TRACE_SUC6): New macro. + * w32-io.c (MAX_SLAFD): New macro. + (fd_table): New static variable. + (new_fd, release_fd): New functions. + (fd_to_handle, handle_to_fd, handle_to_socket): Remove macros. + (MAX_READERS, MAX_WRITERS): Increase to 64. + (notify_table): Increase to MAX_SLAFD. + (struct reader_context_s, struct writer_context_s): Add member + file_sock. + (reader, writer): Use file_hd vs file_sock to decide if socket + operations to use. Remove auto-detect mode. + (create_reader, create_writer): Set file_sock. Unblock pending + thread only if this is a pipe fd. + (_gpgme_io_pipe): Allocate fds from table and return slot indices + instead of windows handles. This allows to properly handle RVIDs. + (_gpgme_io_close): Handle dup'ed file descriptors. + (build_commandline) [HAVE_W32_SYSTEM]: Use RVID from fd table now. + (_gpgme_io_spawn): Use fd table now. + (_gpgme_io_fd2str): Use RVID from fd table now. + (_gpgme_io_dup): Implement using fd table. + (_gpgme_io_socket): Allocate fds from table. + (_gpgme_io_connect): Use fd from table. + + * w32-glib-io.c (find_channel): Check that the slot is used. + +2010-06-09 Marcus Brinkmann + + * w32-io.c [HAVE_W32CE_SYSTEM]: Include assuan.h and winioctl.h. + (GPGCEDEV_IOCTL_UNBLOCK) [HAVE_W32CE_SYSTEM]: Define. + (set_synchronize) [HAVE_W32CE_SYSTEM]: Stub it out. + (is_socket): Allow to return -1 for auto-detect (old behaviour). + (is_socket) [HAVE_W32CE_SYSTEM]: Return -1. + (reader): Handle auto-detect case. Handle ctx->stop_me before + checking for EOF. + (destroy_reader) [HAVE_W32CE_SYSTEM]: Unblock a pending reader. + (writer): Handle auto-detect case. Handle ctx->stop_me with + ERROR_BUSY. + (destroy_writer) [HAVE_W32CE_SYSTEM]: Unblock a pending writer. + (_gpgme_io_pipe) [HAVE_W32CE_SYSTEM]: Implement in terms of a + half-pipe. + (build_commandline) [HAVE_W32CE_SYSTEM]: New function. + (_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Implement it differently + for this platform. + (_gpgme_io_fd2str) [HAVE_W32CE_SYSTEM]: Implement it for RVIDs. + (_gpgme_io_dup) [HAVE_W32CE_SYSTEM]: Stub it out. + + * gpgme-tool.c (result_add_timestamp): Add missing NULL argument. + (result_sign_to_xml): Protect against NULL fingerprint. + (struct server): New members input_fd, input_filename, + input_stream output_fd, output_filename, output_stream, + message_filename, message_stream. + (server_reset_fds): Deallocate those. + (server_parse_fd): New function. + (server_data_obj): Take optional filename argument and direction + argument. Also take new argument to return a filestream that + needs to be closed after destroying the data object. + Change all callers, too. + (input_notify, output_notify): Removed. + (cmd_input, cmd_output): New functions. + (gpgme_server): Do not register input and output notifier. + (register_commands): Use cmd_input and cmd_output. + (cmd_message): Rewritten to use server_parse_fd. + (cmd_delete, cmd_keylist): Fix inverted option check. + (main) [HAVE_W32CE_SYSTEM]: Sleep a bit to work around bug in ssh. + + * genkey.c (gpgme_op_genkey): Return err with TRACE_ERR. + +2010-05-12 Marcus Brinkmann + + * conversion.c (_gpgme_timegm) [HAVE_W32_SYSTEM]: New static + function. + (_gpgme_parse_timestamp) [HAVE_W32_SYSTEM]: Use it. + + * gpgme-tool.c (main): Protect call to setlocale with + HAVE_SETLOCALE. + + * Makefile.am (system_components): Remove custom cppflags from + RCCOMPILE (because gpg-error adds -idirafter that makes RC bail. + [HAVE_W32CE_SYSTEM]: Add w32-ce.h and w32-ce.c, clear + libexec_PROGRAMS. + * w32-ce.h, w32-ce.c: New files. + + * priv-io.h: Include + * util.h: Likewise. + +2010-05-11 Marcus Brinkmann + + * w32-util.c: Include ath.h + (HAVE_ALLOW_SET_FOREGROUND_WINDOW) [!HAVE_W32CE_SYSTEM]: Define + it. + (RTLD_LAZY, dlopen, dlsym, + dlclose) [!HAVE_ALLOW_SET_FORGROUND_WINDOW]: Don't define anymore. + (_gpgme_allow_set_foreground_window) [!HAVE_ALLOW_SET_FOREGROUND_WINDOW]: + Make it a stub. + (read_w32_registry_string): Use FooA variants of Windows functions + instead of Foo (which dispatches depending on UNICODE). + [!HAVE_W32CE_SYSTEM]: Don't check environment. + (w32_shgetfolderpath): Remove. + (find_program_at_standard_place): Call + SHGetSpecialFolderPath (which is available on all Windows systems + and also Windows CE). + (mkstemp): Use ath_self instead of getpid. + (_gpgme_mkstemp): Use GetTempPathA instead of GetTempPath. + + * gpgme.h.in: Use _WIN32 instead of _MSC_VER. Include time.h for + time_t. + +2010-05-07 Marcus Brinkmann + + * engine-g13.c, gpgme.c, engine-gpgsm.c, engine-gpg.c, + op-support.c, engine-assuan.c, gpgme-tool.c: Include + only if available with HAVE_LOCALE_H and conditionalize use of + LC_CTYPE on its definition. + * engine-gpgconf.c: Do not include . + + * engine-gpgsm.c (gpgsm_new, start): Cast between int and + assuan_fd_t. + * assuan-support.c (my_pipe, my_close, my_read, my_write): Likewise. + * gpgme-tool.c (server_data_obj, server_reset_fds, gpgme_server), + (my_recvmsg, my_sendmsg, my_spawn): Likewise. + * engine-assuan.c (start): Likewise. + * engine-g13.c (start): Likewise. + +2010-05-06 Marcus Brinkmann + + * w32-glib-io.c, w32-io.c, w32-qt-io.cpp, w32-sema.c, w32-util.c: + Do not include . + + * sign.c, data-user.c, conversion.c, debug.c, verify.c, data.c, + decrypt.c, delete.c, assuan-support.c, import.c, engine-gpgsm.c, + data-mem.c, op-support.c, w32-io.c, w32-util.c, data-compat.c: Use + gpg_error_from_syserror instead gpg_error_from_errno, and use + gpg_err_set_errno to set error number. + * setenv.c: Include and define __set_errno to use + gpg_err_set_errno. + * gpgme-tool.c (ARGP_ERR_UNKNOWN): Define to EDEADLOCK (which is + mapped in Windows CE) instead of E2BIG (which is not). + (gt_import_keys): Initialize err. + +2010-04-19 Marcus Brinkmann + + * assuan-support.c (my_spawn): Cast to avoid warning. + * engine-g13.c (g13_new): Make ARGV array of pointer to const + char. + (g13_assuan_simple_command) [!USE_DESCRIPTOR_FUNCTION]: Don't define. + * ops.h (_gpgme_key_append_name): Same in prototype. + * key.c (_gpgme_key_append_name): Make SRC argument pointer to + const char. + * posix-util.c (_gpgme_get_uiserver_socket_path): Make HOMEDIR + const. + * vfs-mount.c (gpgme_op_vfs_transact_start): Never define this + potentially useful but currently unused function. + * vfs-create.c (gpgme_op_vfs_transact_start): Likewise. + +2010-04-16 Werner Koch + + * w32-io.c (is_socket): New. + (reader, writer): Use it to figure out the API to use. + +2010-03-15 Werner Koch + + * gpgme.h.in: Add autoconf template to set generated file to + read-only in an emacs buffer. + +2010-03-12 Werner Koch + + * gpgme.h.in (GPGME_STATUS_SUCCESS): Use the right file for the + change; see below. + + * passwd.c (op_data_t): New. + (passwd_start): Setup OPD. + (passwd_status_handler): Return GPG_ERR_NOT_SUPPORTED if needed. + * context.h (OPDATA_PASSWD): New. + * gpgme.h (GPGME_STATUS_SUCCESS): New. + +2010-03-09 Werner Koch + + * engine-gpgsm.c (gpgsm_keylist): Try to start the agent. + +2010-02-17 Werner Koch + + * posix-io.c (notify_table): Change implementation. + (notify_table_item_t, notify_table_size, notify_table_lock): New. + (_gpgme_io_close, _gpgme_io_set_close_notify): Adjust for new + implementation. + +2010-02-16 Werner Koch + + * gpgme-tool.c (spacep, has_option, skip_options): New. + (cmd_export): Implement option --minimal. + + * gpgme.h.in (GPGME_EXPORT_MODE_MINIMAL): New. + * export.c (export_start, export_ext_start): Implement it. + * engine-gpg.c (export_common): Ditto. + +2010-01-25 Werner Koch + + * w32-io.c (_gpgme_io_connect): Fix return code check to make it work. + + * version.c (do_subsystem_inits): Remove superfluous second + WSAStartup. + +2010-01-22 Werner Koch + + * w32-io.c (writer): Try to use send first. + (reader): Try to use recv first. + +2010-01-08 Werner Koch + + * engine-gpg.c (gpg_passwd): New. + (_gpgme_engine_ops_gpg): Register. + * passwd.c (parse_error): New. + (passwd_status_handler): Use it. + +2010-01-07 Marcus Brinkmann + + * gpgme-tool.c (result_xml_write_cb_t, struct result_xml_state): + New types. + (MAX_TAGS): New macro. + (result_init, result_xml_indent, result_xml_tag_start) + (result_xml_tag_data, result_xml_tag_end, result_add_error) + (result_add_pubkey_algo, result_add_hash_algo, result_add_keyid) + (result_add_fpr, result_add_timestamp, result_add_sig_mode) + (result_add_value, result_add_string, result_encrypt_to_xml) + (result_decrypt_to_xml, result_sign_to_xml) + (result_verify_to_xml, result_import_to_xml) + (result_genkey_to_xml, result_keylist_to_xml) + (result_vfs_mount_to_xml): New functions. + (gt_result): Rewritten. + +2010-01-05 Werner Koch + + * gpgme-tool.c (gt_passwd, cmd_passwd): New. + (register_commands): Register. + + * gpgme.h.in (gpgme_op_passwd_start, gpgme_op_passwd): New. + * libgpgme.vers, gpgme.def: Add new functions. + * passwd.c: New. + * Makefile.am (main_sources): Add passwd.c + * engine.c, engine.h (_gpgme_engine_op_passwd): New. + * engine-backend.h (struct engine_ops): Add PASSWD. + * engine-gpgsm.c (gpgsm_passwd): New. + (_gpgme_engine_ops_gpgsm): Register. + (gpgsm_reset): Reset only if we have a conenction. + + * gpgme.h.in (GPGME_PK_ECDSA, GPGME_PK_ECDH): New. + * gpgme.c (gpgme_pubkey_algo_name): Add them. + +2009-12-22 Marcus Brinkmann + + * debug.c: Test for TLS, not __GNUC__ + +2009-12-15 Marcus Brinkmann + + * assuan-support.c (my_spawn): Calloc, not malloc, the fd_items. + +2009-12-10 Werner Koch + + * debug.c (debug_init): Test on sgid process. + +2009-12-08 Marcus Brinkmann + + * Makefile.am (LTRCCOMPILE): Refactor with ... + (RCCOMPILE): ... this new macro. + (SUFFIXES): Add .lo. + (gpgme_res_ldflag): Removed. + (gpgme_res): Use libtool object file name here. + (libgpgme_la_LDFLAGS): Remove gpgme_res_ldflag usage. + (libgpgme_la_LIBADD): Add gpgme_res. + + * ath.c (ath_self) [HAVE_W32_SYSTEM]: Fix typo. + +2009-12-02 Werner Koch + + * gpgconf.c (gpgme_conf_arg_release): No return in a function + returning void. Reported by Wyllys Ingersoll. + +2009-12-01 Werner Koch + + * gpgme-tool.c (cmd_getauditlog): Add flag --html. + (hlp_getauditlog): New. + + * gpgme-tool.c (GT_GCC_A_SENTINEL, GT_GCC_A_PRINTF): New. + (gt_write_status): Use sentinel. + (argp_error, log_error): Use printf attribute. + (argp_parse): Remove extra argument to argp_error. + (_gt_progress_cb, gt_get_engine_info, gt_get_keylist_mode) + (gt_result): Add NULL arg. + +2009-11-26 Marcus Brinkmann + + * opassuan.c (opassuan_start): Allocate result structure before + beginning operation. + +2009-11-25 Marcus Brinkmann + + * gpgme-tool.c (gpgme_server): Use assuan_fd_t and assuan_fdopen + on fds. + +2009-11-13 + + * sign.c (_gpgme_sign_status_handler): Handle SIG_CREATED_SEEN. + * engine-uiserver.c (uiserver_sign): Make sending SENDER optional. + +2009-11-10 Marcus Brinkmann + + * op-support.c (_gpgme_op_reset): Instead of last change, only set + sub protocol if it is not the default. + +2009-11-10 Werner Koch + + * op-support.c (_gpgme_op_reset): Ignore GPG_ERR_NOT_IMPLEMENTED + while setting the sub protocol. + + * engine-uiserver.c (uiserver_new): Pass fdpassing flag to + assuan_socket_connect. + (set_recipients): Replace fingerprint by user id. + + * engine-gpgsm.c (set_recipients): Fix non-terminating loop in + case of a missing key. + +2009-11-10 Marcus Brinkmann + + * gpgme.c (gpgme_new): Set default sub protocol. + * gpgme-tool.c: Implement get sub protocol. + + * gpgme.h.in (gpgme_get_sub_protocol): Add prototype. + * gpgme.def, libgpgme.vers: Add gpgme_get_sub_protocol. + * context.h (struct gpgme_context): New member sub_protocol. + * gpgme.c (gpgme_set_sub_protocol): Set CTX->sub_protocol. + (gpgme_get_sub_protocol): New function. + * op-support.c (_gpgme_op_reset): Set sub protocol. + + * Makefile.am (uiserver_components): New variable. + (main_sources): Add it. + * ops.h, key.c (_gpgme_key_append_name): Take CONVERT argument, + implement it. Adjust callers. + (gpgme_key_from_uid): New function. + * gpgme.h.in (gpgme_protocol_t): Add GPGME_PROTOCOL_DEFAULT. + (gpgme_encrypt_flags_t): Add GPGME_ENCRYPT_PREPARE, + GPGME_ENCRYPT_EXPECT_SIGN. + (gpgme_set_sub_protocol, gpgme_key_from_uid): New functions. + * libgpgme.vers, gpgme.def: Add new functions. + * gpgme.c (gpgme_set_protocol): Add UIServer protocol. + (gpgme_set_sub_protocol): New function. + (gpgme_get_protocol_name): Add UIServer and default protocol. + * assuan-support.c: Return correct error values, implement + socketpair for POSIX. + * priv-io.h, posix-io.c, w32-io.c, w32-glib-io.c, + w32-qt-io.cpp (_gpgme_io_spawn): Add ATFORK and ATFORKVALUE + arguments. Implement it for POSIX. Adjust all callers. + * engine.h, engine-backend.h (_gpgme_engine_set_protocol) + (_gpgme_engine_op_decrypt_verify): New prototypes. Adjust all + users. + * engine.c (engine_ops, gpgme_get_engine_info): Add UIServer + engine. + (_gpgme_engine_set_protocol, _gpgme_engine_op_decrypt_verify): New + function. + * decrypt-verify.c (decrypt_verify_start): Call + _gpgme_engine_op_decrypt_verify. + * util.h, posix-util.c, + w32-util.c (_gpgme_get_uiserver_socket_path): New function. + * engine-gpgsm.c (gpgsm_set_fd): Fix _gpgme_io_pipe invocation. + * gpgme-tool.c: Some support for UIServer protocol. + * engine-uiserver.c: New file. + +2009-11-09 Marcus Brinkmann + + * engine-gpgsm.c (gpgsm_new): Close server side FDs. + +2009-11-06 Marcus Brinkmann + + * gpgme-tool.c (struct gpgme_tool): New members write_data and + write_data_hook. + (gt_write_data): New function. + (gt_result): Output vfs_mount result. + (server_write_data): New function. + (gpgme_server): Initialize write_data members. + +2009-11-05 Marcus Brinkmann + + * engine-g13.c (struct engine_g13): Remove members RESULT_CB and + RESULT_CB_VALUE. + (g13_assuan_simple_command, status_handler): Don't use those anymore. + (g13_transact): Remove them from argument list, too. + * vfs-mount.c (_gpgme_vfs_mount_status_handler): New function. + (_gpgme_op_vfs_mount): Pass it to transact. + + * engine-assuan.c (llass_new): Update use of assuan_socket_connect. + * engine-gpgsm.c (gpgsm_new): Update use of assuan_pipe_connect. + * engine-g13.c (g13_new): Likewise. + + * priv-io.h (IOSPAWN_FLAG_NOCLOSE): New flag. + * w32-io.c (_gpgme_io_spawn): Implement this flag. + * posix-io.c (_gpgme_io_spawn): Likewise. + * w32-glib-io.c (_gpgme_io_spawn): Likewise. + * assuan-support.c (my_spawn): Set this flag. + + * decrypt.c (gpgme_op_decrypt_start): Fix use of debug macro. + * decrypt-verify.c (gpgme_op_decrypt_verify_start): Likewise. + * delete.c (gpgme_op_delete_start): Likewise. + * edit.c (gpgme_op_edit_start, gpgme_op_card_edit_start): + Likewise. + * encrypt.c (gpgme_op_encrypt_start): Likewise. + * encrypt-sign.c (gpgme_op_encrypt_sign_start): Likewise. + * export.c (gpgme_op_export_start, gpgme_op_export_ext_start) + (gpgme_op_export_keys_start, gpgme_op_export_keys): Likewise. + * genkey.c (gpgme_op_genkey_start): Likewise. + * getauditlog.c (gpgme_op_getauditlog_start): Likewise. + * import.c (gpgme_op_import_start, gpgme_op_import_keys_start): + Likewise. + * opassuan.c (gpgme_op_assuan_transact_start): Likewise. + * sign.c (gpgme_op_sign_start): Likewise. + * verify.c (gpgme_op_verify_start): Likewise. + * vfs-create.c (gpgme_op_vfs_create): Likewise. + * vfs-mount.c (gpgme_op_vfs_mount): Likewise. + +2009-11-04 Marcus Brinkmann + + * ath.h (ath_self): New prototype. Include + * ath.c, ath-pth.c, ath-pthread.c (ath_self): New function. + * debug.h: Rewrite most macros to beautify debug output. + (_gpgme_debug_buffer): Remove tagname and tag argument. + (_gpgme_debug_frame_begin, _gpgme_debug_frame_end): New prototypes. + * debug.c: Include . Don't include assuan.h. + (frame_nr, FRAME_NR): New thread-specific variable and macro. + (debug_init): Do not initialize assuan. Call _gpgme_debug after + initialization instead using printf directly. + (_gpgme_debug): Do not call debug_init (we now ensure proper + initialization by user). Add timestamp and thread/process ID. + (_gpgme_debug_buffer): Do not take tagname and tag argument. + (_gpgme_debug_frame_begin, _gpgme_debug_frame_end): New functions. + * version.c (gpgme_check_version_internal, gpgme_check_version): + Fix debug string. Do not initialize assuan. + * posix-io.c (get_max_fds): Use 0 not NULL (nicer debug output). + +2009-11-04 Werner Koch + + * gpgme-tool.c (register_commands): Add HELP feature. + +2009-11-03 Werner Koch + + * gpgme.h.in (GPGME_PROTOCOL_UISERVER): New. + 2009-11-03 Marcus Brinkmann * Makefile.am (main_sources): Change g13.c to vfs-mount.c. Add @@ -490,7 +1134,7 @@ * opassuan.c, dirinfo.c, engine-assuan.c: New. * Makefile.am: Add them. - * engine-backend.h: Add _gpgme_engine_ops_assuan. + * engine-backend.h: Add _gpgme_engine_ops_assuan. (struct engine_ops): Add field OPASSUAN_TRANSACT. Update all engine intializers. * Makefile.am (gpgsm_components): Add engine-assuan.c. @@ -5626,7 +6270,7 @@ * wait.c: Include `engine.h'. (run_idle): Call _gpgme_engine_housecleaning(), not _gpgme_gpg_housecleaning(). - + 2001-12-18 Marcus Brinkmann * key.c (_gpgme_key_append_name): Append, not prepend, the uid.