diff options
-rw-r--r-- | src/ChangeLog | 387 | ||||
-rw-r--r-- | src/Makefile.am | 18 | ||||
-rw-r--r-- | src/decrypt.c | 16 | ||||
-rw-r--r-- | src/extra-stati.h | 29 | ||||
-rwxr-xr-x | src/mkstatus | 16 |
5 files changed, 256 insertions, 210 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 4afcdf98..94200bc3 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2011-02-03 Werner Koch <[email protected]> + + * extra-stati.h: New. + * mkstatus: Extend to also process extra-stati.h + * Makefile.am (main_sources): Add extra-stati.h + (status-table.h): Depend on extra-stati.h and adjust rule. + 2011-02-03 Marcus Brinkmann <[email protected]> * w32-io.c (_gpgme_io_socket): Return fd, not res. @@ -953,7 +960,7 @@ 2009-06-16 Werner Koch <[email protected]> - * version.c: Include stdlib.h. + * version.c: Include stdlib.h. * gpgme.h.in (gpgme_data_encoding_t): Add GPGME_DATA_ENCODING_URL, GPGME_DATA_ENCODING_URLESC, GPGME_DATA_ENCODING_URL0. @@ -1032,7 +1039,7 @@ * gpgme.c: Include priv-io.h. (gpgme_io_read, gpgme_io_write): New. - * libgpgme.vers (GPGME_1.1): Add them. + * libgpgme.vers (GPGME_1.1): Add them. * gpgme.def: Ditto. * Makefile.am (main_sources): Remove gpgme.h. @@ -1485,6 +1492,10 @@ * op-support.c (_gpgme_op_reset): Implement a no-reset flag. * getauditlog.c (getauditlog_start): Use that flag. +2007-11-20 Werner Koch <[email protected]> + + * op-support.c (_gpgme_parse_inv_recp): Add new reason code 11. + 2007-11-22 Werner Koch <[email protected]> * gpgme.h (gpgme_op_getauditlog_start, gpgme_op_getauditlog): New. @@ -1496,10 +1507,6 @@ (_gpgme_engine_ops_gpgsm): Insert new function. (gpgsm_new): Try to enable audit log support. * rungpg.c (_gpgme_engine_ops_gpg): Insert dummy entry. - -2007-11-20 Werner Koch <[email protected]> - - * op-support.c (_gpgme_parse_inv_recp): Add new reason code 11. 2007-11-12 Marcus Brinkmann <[email protected]> @@ -1693,7 +1700,7 @@ drops to 0. (find_reader, find_writer, kill_reader, kill_writer): Beautify. * priv-io.h (_gpgme_io_dup): New prototype. - * posix-io.c (_gpgme_io_dup): New function. + * posix-io.c (_gpgme_io_dup): New function. * w32-io.c (_gpgme_io_dup): Likewise. * w32-glib-io.c (_gpgme_io_dup): Likewise. * engine-gpgsm.c (start): Reverting to version 2007-07-10. @@ -1711,7 +1718,7 @@ in case of error. * w32-io.c (_gpgme_io_read): Return C->error_code in ERRNO. (_gpgme_io_write): Likewise. - + * priv-io.h (_gpgme_io_set_close_notify): Change type of HANDLER to _gpgme_close_notify_handler. (_gpgme_close_notify_handler): New type. @@ -1748,7 +1755,7 @@ 2007-07-10 Marcus Brinkmann <[email protected]> * priv-io.h (_gpgme_io_dup): New prototype. - * posix-io.c (_gpgme_io_dup): New function. + * posix-io.c (_gpgme_io_dup): New function. * w32-io.c (_gpgme_io_dup): Likewise. * w32-glib-io.c (_gpgme_io_dup): Likewise. * engine-gpgsm.c (start): Use _gpgme_dup() instead of dup(). @@ -1791,7 +1798,7 @@ (fd_cbs): Add fd_get_fd. * data-stream.c (stream_get_fd): New function. (stream_cbs): Add stream_get_fd. - * data-mem.c (mem_cbs): Add NULL for get_fd callback. + * data-mem.c (mem_cbs): Add NULL for get_fd callback. * data-user.c (user_cbs): Likewise. * engine-gpgsm.c (gpgsm_set_fd) [USE_DESCRIPTOR_PASSING]: Try to short-cut by passing the data descriptor directly. @@ -1836,7 +1843,7 @@ * engine-gpgsm.c (gpgsm_new): Move code to dup status_fd to ... (start): ... here. * posix-io.c (_gpgme_io_recvmsg, _gpgme_io_sendmsg): New functions. - + * engine.h (_gpgme_engine_new): Remove arguments lc_ctype and lc_messages from prototype. (_gpgme_engine_set_locale): New prototype. @@ -2083,7 +2090,7 @@ (libgpgme_pth_la_SOURCES): Add $(system_components_not_extra). (libgpgme_glib_la_LDFLAGS, libgpgme_glib_la_DEPENDENCIES, (libgpgme_glib_la_LIBADD, libgpgme_glib_la_CFLAGS) - [BUILD_W32_GLIB]: New variables. + [BUILD_W32_GLIB]: New variables. * gpgme-config.in (glib): New option. * gpgme.m4 (AM_PATH_GPGME_GLIB): New macro. @@ -2274,24 +2281,6 @@ * w32-io.c (_gpgme_io_read, _gpgme_io_write): Print content in debug mode too. -2005-08-19 Werner Koch <[email protected]> - - * gpgme.def: New. - * versioninfo.rc.in: New. - * Makefile.am: Addes support for building a W32 DLL. - - * ttyname_r.c (ttyname_r) [W32]: Return error. - * ath-compat.c [W32]: select and co are not yet supported; return - error. - * data-stream.c (stream_seek): Use ftell if ftello is not available. - -2005-08-08 Werner Koch <[email protected]> - - * util.h (stpcpy): Renamed to .. - (_gpgme_stpcpy): .. this and made inline. This avoids duplicate - definitions when linking statically. - * stpcpy.c: Removed. - 2005-07-27 Marcus Brinkmann <[email protected]> * gpgme.h (gpgme_status_code_t): Add GPGME_STATUS_PLAINTEXT. @@ -2306,6 +2295,24 @@ OPD->result.plaintext_filename. (_gpgme_verify_status_handler): Handle GPGME_STATUS_PLAINTEXT. +2005-08-08 Werner Koch <[email protected]> + + * util.h (stpcpy): Renamed to .. + (_gpgme_stpcpy): .. this and made inline. This avoids duplicate + definitions when linking statically. + * stpcpy.c: Removed. + +2005-08-19 Werner Koch <[email protected]> + + * gpgme.def: New. + * versioninfo.rc.in: New. + * Makefile.am: Addes support for building a W32 DLL. + + * ttyname_r.c (ttyname_r) [W32]: Return error. + * ath-compat.c [W32]: select and co are not yet supported; return + error. + * data-stream.c (stream_seek): Use ftell if ftello is not available. + 2005-07-26 Marcus Brinkmann <[email protected]> * keylist.c (gpgme_get_key): Allow key IDs. @@ -2417,7 +2424,7 @@ * data.c, engine-gpgsm.c, posix-io.c, rungpg.c, version.c, w32-io.c, wait-private.c, wait-global.c, wait-user.c, wait.c: Change all includes of "io.h" to "priv-io.h" - + 2005-03-09 Werner Koch <[email protected]> * w32-util.c (_gpgme_get_gpg_path, _gpgme_get_gpgsm_path): Do not @@ -2433,7 +2440,7 @@ files. 2005-03-07 Timo Schulz <[email protected]> - + * gpgme.h: [_WIN32] Removed ssize_t typedef. * ath.h: [_WIN32] Added some (dummy) types. * io.h: [_WIN32] include stdio.h. @@ -2573,7 +2580,7 @@ * data.c (_gpgme_data_outbound_handler): Close the file descriptor if we get an EPIPE. - + * data-stream.c (stream_seek): Call ftello and return the current offset. * data.h (struct gpgme_data): Change type of data.mem.offset to @@ -2736,7 +2743,7 @@ 2004-02-17 Werner Koch <[email protected]> - * gpgme.h: Add GPGME_KEYLIST_MODE_VALIDATE. + * gpgme.h: Add GPGME_KEYLIST_MODE_VALIDATE. * engine-gpgsm.c (gpgsm_keylist): Send this to gpgsm. 2004-02-15 Werner Koch <[email protected]> @@ -3139,7 +3146,7 @@ * engine.c: Rename EngineObject to engine_t in the file. Also EngineStatusHandler to engine_status_handler_t, EngineCommandHandler to engine_command_handler_t and - EngineColonLineHandler to engine_colon_line_handler. + EngineColonLineHandler to engine_colon_line_handler. * rungpg.c (start): Likewise. * engine-gpgsm.c: Likewise. * engine-backend.h (struct engine_ops): Likewise @@ -3638,7 +3645,7 @@ (gpgme_op_sign): Likewise. * encrypt-sign.c (_gpgme_op_encrypt_sign_start): Call _gpgme_op_sign_init_result. - + * delete.c: Include <errno.h> and "gpgme.h", but not "util.h" or "key.h". (enum delete_problem): Move into function delete_status_handler. @@ -3724,7 +3731,7 @@ (_gpgme_data_inbound_handler): Expand _gpgme_data_append, because it will go. Do not assert DH. (_gpgme_data_outbound_handler): Do not assert DH. - + * export.c: Do not include <stdlib.h>, "debug.h" and "util.h", but "gpgme.h". (export_status_handler): Change type of first argument to void *. @@ -3741,7 +3748,7 @@ * key.c (gpgme_key_get_string_attr): Fix validity attribute. 2003-04-24 Marcus Brinkmann <[email protected]> - + * gpgme.h (struct _gpgme_op_genkey_result): New structure. (GpgmeGenKeyResult): New type. (gpgme_op_genkey): Drop last argument. @@ -4027,65 +4034,66 @@ fail_on_pending_request. * util.h: Don't include "types.h" or "debug.h", but include "gpgme.h". -2003-01-30 Marcus Brinkmann <[email protected]> +2003-01-19 Marcus Brinkmann <[email protected]> - * types.h (EngineObject): Move typedef to ... - * engine.h: ... here. - * types.h (GpgObject): Move typedef to ... - * rungpg.c: ... here. - * types.h (GpgsmObject): Move typedef to ... - * engine-gpgsm.c: ... here. + * rungpg.c (_gpgme_engine_ops_gpg): Remove gpg_start. + (gpg_start): Rename to ... + (start): ... this function. Change arguments to GpgObject. + (gpg_decrypt): Call start. + (gpg_edit): Likewise. + (gpg_encrypt): Likewise. + (gpg_encrypt_sign): Likewise. + (gpg_export): Likewise. + (gpg_import): Likewise. + (gpg_keylist): Likewise. + (gpg_keylist_ext): Likewise. + (gpg_trustlist): Likewise. + (gpg_verify): Likewise. - * util.h (return_if_fail, return_null_if_fail, - return_val_if_fail): Remove macro. - * gpgme.c (gpgme_cancel): Don't use return_if_fail. - * key.c (gpgme_key_ref): Likewise. - * signers.c (gpgme_signers_enum): Likewise. - (gpgme_signers_clear): Likewise. + * engine-gpgsm.c (_gpgme_engine_ops_encrypt): Remove gpgsm_start. + (gpgsm_start): Rename to ... + (struct gpgsm_object_s): Remove member command. + (gpgsm_release): Don't free command. + (start): ... this function. Change arguments to GpgsmObject and + const char *. + (gpgsm_decrypt): Call start. + (gpgsm_delete): Likewise. + (gpgsm_encrypt): Likewise. + (gpgsm_export): Likewise. + (gpgsm_genkey): Likewise. + (gpgsm_import): Likewise. + (gpgsm_keylist): Likewise. + (gpgsm_keylist_ext): Likewise. + (gpgsm_verify): Likewise. - * engine-backend.h (struct engine_ops): Rename get_path to - get_file_name. - * gpgme.h (struct _gpgme_engine_info): Rename member path to - file_name. - * version.c: Do not include <stdio.h>, <stdlib.h>, context.h and - util.h. Other clean ups. - (parse_version_number): Protect more seriously against - overflow. - (gpgme_get_engine_info): Move to ... - * engine.c (gpgme_get_engine_info): ... here. - (_gpgme_engine_get_info): Function removed. - (_gpgme_engine_get_path): Make static and rename to ... - (engine_get_file_name): .. this. - (_gpgme_engine_get_version): Make static and rename to ... - (engine_get_version): ... this. - (_gpgme_engine_get_req_version): Make static and rename to ... - (engine_get_req_version): ... this. - * engine.h (_gpgme_engine_get_path, _gpgme_engine_get_version, - _gpgme_engine_req_version, _gpgme_engine_get_info.): Remove - prototypes. + * decrypt.c (_gpgme_decrypt_start): Don't call + _gpgme_engine_start. + * delete.c (_gpgme_op_delete_start): Likewise. + * edit.c (_gpgme_op_edit_start): Likewise. + * encrypt.c (_gpgme_op_encrypt_start): + * encrypt-sign.c (_gpgme_op_encrypt_sign_start): + * export.c (_gpgme_op_export_start): Likewise. + * genkey.c (_gpgme_op_genkey_start): Likewise. + * import.c (_gpgme_op_import_start): Likewise. + * keylist.c (gpgme_op_keylist_ext_start): Likewise. + (gpgme_op_keylist_start): Likewise. + * sign.c (_gpgme_op_sign_start): Likewise. + * trustlist.c (gpgme_op_trustlist_start): Likewise. + * verify.c (_gpgme_op_verify_start): Likewise. - * gpgme.h (enum GpgmeProtocol): Remove GPGME_PROTOCOL_AUTO. - * gpgme.c (gpgme_set_protocol): Don't handle GPGME_PROTOCOL_AUTO. - (gpgme_get_protocol_name): New function. + * engine-backend.h (struct engine_ops): Remove member start. + + * engine.h (_gpgme_engine_start): Remove prototype. + * engine.c (_gpgme_engine_start): Remove function. + +2003-01-19 Miguel Coca <[email protected]> + + * w32-io.c (_gpgme_io_select): Add missing argument in calls to + DEBUG_BEGIN. + * w32-util.c: Include "sema.h". + (find_program_in_registry): Change DEBUG1 to DEBUG2, fixes compilation + error. - * engine-backend.h (struct engine_ops): New member - get_req_version, remove member check_version. - * engine.h (_gpgme_Engine_get_version): New prototype. - * rungpg.c (gpg_get_req_version): New function. - (gpg_check_version): Function removed. - (_gpgme_engine_ops_gpg): Add gpg_get_req_version, remove - gpg_check_version. - * engine-gpgsm.c (gpgsm_get_req_version): New function. - (gpgsm_check_version): Function removed. - (_gpgme_engine_ops_gpgsm): Add gpgsm_get_req_version, remove - gpgsm_check_version. - * engine.c: Include ops.h. - (_gpgme_engine_get_req_version): New function. - (gpgme_engine_check_version): Rewritten. - * version.c (gpgme_get_engine_info): Rewritten. - * gpgme.h (gpgme_engine_info): New structure. - (GpgmeEngineInfo): New type. - 2003-01-29 Marcus Brinkmann <[email protected]> * types.h: Remove byte and ulong types. @@ -4230,66 +4238,65 @@ * key.c (gpgme_key_sig_get_string_attr): Use validity_to_string instead otrust_to_string to calculate validity. - -2003-01-19 Miguel Coca <[email protected]> - - * w32-io.c (_gpgme_io_select): Add missing argument in calls to - DEBUG_BEGIN. - * w32-util.c: Include "sema.h". - (find_program_in_registry): Change DEBUG1 to DEBUG2, fixes compilation - error. -2003-01-19 Marcus Brinkmann <[email protected]> +2003-01-30 Marcus Brinkmann <[email protected]> - * rungpg.c (_gpgme_engine_ops_gpg): Remove gpg_start. - (gpg_start): Rename to ... - (start): ... this function. Change arguments to GpgObject. - (gpg_decrypt): Call start. - (gpg_edit): Likewise. - (gpg_encrypt): Likewise. - (gpg_encrypt_sign): Likewise. - (gpg_export): Likewise. - (gpg_import): Likewise. - (gpg_keylist): Likewise. - (gpg_keylist_ext): Likewise. - (gpg_trustlist): Likewise. - (gpg_verify): Likewise. + * types.h (EngineObject): Move typedef to ... + * engine.h: ... here. + * types.h (GpgObject): Move typedef to ... + * rungpg.c: ... here. + * types.h (GpgsmObject): Move typedef to ... + * engine-gpgsm.c: ... here. - * engine-gpgsm.c (_gpgme_engine_ops_encrypt): Remove gpgsm_start. - (gpgsm_start): Rename to ... - (struct gpgsm_object_s): Remove member command. - (gpgsm_release): Don't free command. - (start): ... this function. Change arguments to GpgsmObject and - const char *. - (gpgsm_decrypt): Call start. - (gpgsm_delete): Likewise. - (gpgsm_encrypt): Likewise. - (gpgsm_export): Likewise. - (gpgsm_genkey): Likewise. - (gpgsm_import): Likewise. - (gpgsm_keylist): Likewise. - (gpgsm_keylist_ext): Likewise. - (gpgsm_verify): Likewise. + * util.h (return_if_fail, return_null_if_fail, + return_val_if_fail): Remove macro. + * gpgme.c (gpgme_cancel): Don't use return_if_fail. + * key.c (gpgme_key_ref): Likewise. + * signers.c (gpgme_signers_enum): Likewise. + (gpgme_signers_clear): Likewise. - * decrypt.c (_gpgme_decrypt_start): Don't call - _gpgme_engine_start. - * delete.c (_gpgme_op_delete_start): Likewise. - * edit.c (_gpgme_op_edit_start): Likewise. - * encrypt.c (_gpgme_op_encrypt_start): - * encrypt-sign.c (_gpgme_op_encrypt_sign_start): - * export.c (_gpgme_op_export_start): Likewise. - * genkey.c (_gpgme_op_genkey_start): Likewise. - * import.c (_gpgme_op_import_start): Likewise. - * keylist.c (gpgme_op_keylist_ext_start): Likewise. - (gpgme_op_keylist_start): Likewise. - * sign.c (_gpgme_op_sign_start): Likewise. - * trustlist.c (gpgme_op_trustlist_start): Likewise. - * verify.c (_gpgme_op_verify_start): Likewise. + * engine-backend.h (struct engine_ops): Rename get_path to + get_file_name. + * gpgme.h (struct _gpgme_engine_info): Rename member path to + file_name. + * version.c: Do not include <stdio.h>, <stdlib.h>, context.h and + util.h. Other clean ups. + (parse_version_number): Protect more seriously against + overflow. + (gpgme_get_engine_info): Move to ... + * engine.c (gpgme_get_engine_info): ... here. + (_gpgme_engine_get_info): Function removed. + (_gpgme_engine_get_path): Make static and rename to ... + (engine_get_file_name): .. this. + (_gpgme_engine_get_version): Make static and rename to ... + (engine_get_version): ... this. + (_gpgme_engine_get_req_version): Make static and rename to ... + (engine_get_req_version): ... this. + * engine.h (_gpgme_engine_get_path, _gpgme_engine_get_version, + _gpgme_engine_req_version, _gpgme_engine_get_info.): Remove + prototypes. - * engine-backend.h (struct engine_ops): Remove member start. + * gpgme.h (enum GpgmeProtocol): Remove GPGME_PROTOCOL_AUTO. + * gpgme.c (gpgme_set_protocol): Don't handle GPGME_PROTOCOL_AUTO. + (gpgme_get_protocol_name): New function. - * engine.h (_gpgme_engine_start): Remove prototype. - * engine.c (_gpgme_engine_start): Remove function. + * engine-backend.h (struct engine_ops): New member + get_req_version, remove member check_version. + * engine.h (_gpgme_Engine_get_version): New prototype. + * rungpg.c (gpg_get_req_version): New function. + (gpg_check_version): Function removed. + (_gpgme_engine_ops_gpg): Add gpg_get_req_version, remove + gpg_check_version. + * engine-gpgsm.c (gpgsm_get_req_version): New function. + (gpgsm_check_version): Function removed. + (_gpgme_engine_ops_gpgsm): Add gpgsm_get_req_version, remove + gpgsm_check_version. + * engine.c: Include ops.h. + (_gpgme_engine_get_req_version): New function. + (gpgme_engine_check_version): Rewritten. + * version.c (gpgme_get_engine_info): Rewritten. + * gpgme.h (gpgme_engine_info): New structure. + (GpgmeEngineInfo): New type. 2003-01-06 Werner Koch <[email protected]> @@ -4348,7 +4355,7 @@ (mem_release): Change return type to void. * data-user.c (user_read): Change return type to ssize_t. (user_release): Change return type to void. - * data-compat.c (old_user_read): Change return type to ssize_t. + * data-compat.c (old_user_read): Change return type to ssize_t. * gpgme.h (GpgmeDataReadCb): Likewise. (gpgme_data_read): Likewise. (GpgmeDataSeekCb): Change return type to off_t. @@ -4461,7 +4468,7 @@ _gpgme_data_append_string_for_xml rather than _gpgme_data_append_string for the field content. Submitted by Miguel Coca <[email protected]>. - + 2002-10-10 Marcus Brinkmann <[email protected]> * rungpg.h, engine-gpgsm.h: File removed. @@ -4823,7 +4830,7 @@ * import.c (_gpgme_op_import_start): Likewise. * sign.c (_gpgme_op_sign_start): Likewise. * verify.c (_gpgme_op_verify_start): Likewise. - + * encrypt.c (gpgme_op_encrypt): Remove hack that returns invalid no recipient if no data was returned. * encrypt-sign.c (gpgme_op_encrypt_sign): Remove hack that returns @@ -4858,7 +4865,7 @@ (build_argv): Use new member INBOUND to determine direction of file descriptor. Don't check the data type. * rungpg.h (_gpgme_gpg_add_data): Add new argument to prototype. - + * gpgme.c (gpgme_get_op_info): Don't call _gpgme_data_get_as_string if CTX->op_info is NULL. @@ -4993,7 +5000,7 @@ 2002-08-23 Werner Koch <[email protected]> - * gpgme-config.in: Made --prefix work for --libs. + * gpgme-config.in: Made --prefix work for --libs. 2002-08-21 Marcus Brinkmann <[email protected]> @@ -5019,7 +5026,7 @@ * gpgme.m4: Replaced with a new and faster version. This does not anymore try to build test programs. If we really need test - programs, we should add an option to gpgme-config to do so. + programs, we should add an option to gpgme-config to do so. * vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s. @@ -5044,7 +5051,7 @@ * gpgme.h (GPGME_KEYLIST_MODE_SIGS): New. * rungpg.c (_gpgme_gpg_op_keylist): Include sigs in listing depending non the list mode. - + * key.c (gpgme_key_get_string_attr): Use GPGME_ATTR_TYPE to return information about the key type (PGP or X.509). (gpgme_key_get_ulong_attr): Likewise. @@ -5126,7 +5133,7 @@ * rungpg.c (struct gpg_object_s): Likewise for CMD.code. These changes add an edit operation to GPGME: - + * context.h (struct gpgme_context_s): New member RESULT.edit. * ops.h: Add prototype for _gpgme_release_edit_result and _gpgme_passphrase_command_handler. @@ -5236,6 +5243,10 @@ * keylist.c (gpgme_op_keylist_ext_start): Always use our own FD table (eg use synchronous mode). +2002-06-27 Marcus Brinkmann <[email protected]> + + * gpgme.h: Fix documentation of key attribute retrieval functions. + 2002-06-28 Marcus Brinkmann <[email protected]> * ops.h (_gpgme_wait_on_condition): Remove HANG argument from @@ -5257,10 +5268,6 @@ table (eg use synchronous mode). (gpgme_op_trustlist_next): Remove HANG argument from _gpgme_wait_on_condition. Check its return value. - -2002-06-27 Marcus Brinkmann <[email protected]> - - * gpgme.h: Fix documentation of key attribute retrieval functions. 2002-06-26 Werner Koch <[email protected]> @@ -5333,7 +5340,7 @@ 2002-06-12 Werner Koch <[email protected]> * keylist.c (struct keylist_result_s): New. - (_gpgme_release_keylist_result): Release it here + (_gpgme_release_keylist_result): Release it here (keylist_status_handler): Handle truncated. (append_xml_keylistinfo): New. * gpgme.c (_gpgme_release_result): and use it here. @@ -5686,7 +5693,7 @@ * verify.c (_gpgme_verify_status_handler): Handle TRUST_* status lines so that a claim can be made without looking up the key. - (gpgme_get_sig_string_attr): New. + (gpgme_get_sig_string_attr): New. (gpgme_get_sig_ulong_attr): New. * gpgme.h (GpgmeAttr): Added GPGME_ATTR_SIG_STATUS. @@ -5696,7 +5703,7 @@ * gpgme.h (GpgmeSigStat): Add _GOOD_EXP and _GOOD_EXPKEY. * verify.c (_gpgme_verify_status_handler, finish_sig): Handle - these new status codes. Store the expiration time + these new status codes. Store the expiration time 2002-04-27 Werner Koch <[email protected]> @@ -5865,12 +5872,18 @@ 2002-02-25 Marcus Brinkmann <[email protected]> + * verify.c (_gpgme_verify_status_handler): Parse the args line to + see if the problem is due to a missing key, and report that back + to the user. + +2002-02-25 Marcus Brinkmann <[email protected]> + * engine.c (_gpgme_engine_op_encrypt_sign): New function. * engine.h (_gpgme_engine_op_encrypt_sign): New prototype. * rungpg.c (_gpgme_append_gpg_args_from_signers): New function. (_gpgme_gpg_op_sign): Use that new function. (_gpgme_gpg_op_encrypt_sign): New function. - * rungpg.h (_gpgme_gpg_op_encrypt_sign): New prototype. + * rungpg.h (_gpgme_gpg_op_encrypt_sign): New prototype. * gpgme.h (gpgme_op_encrypt_sign_start): New prototype. (gpgme_op_encrypt_sign): Likewise. * Makefile.am (libgpgme_la_SOURCES): Add encrypt-sign.c. @@ -5882,12 +5895,6 @@ (_gpgme_encrypt_status_handler): ... this and make non-static. * encrypt.c (gpgme_op_encrypt_start): Use new status handler name. * sign.c (gpgme_op_sign_start): Likewise. - -2002-02-25 Marcus Brinkmann <[email protected]> - - * verify.c (_gpgme_verify_status_handler): Parse the args line to - see if the problem is due to a missing key, and report that back - to the user. 2002-02-25 Marcus Brinkmann <[email protected]> @@ -6485,7 +6492,7 @@ server process from wait queue. (_gpgme_gpgsm_op_verify, _gpgme_gpgsm_start, _gpgme_gpgsm_set_status_handler, gpgms_status_handler): New function. - + * engine.c (_gpgme_engine_start): Implement for GPGME_PROTOCOL_CMS. (_gpgme_engine_set_status_handler): Likewise. (_gpgme_engine_op_verify): Likewise. @@ -6569,7 +6576,7 @@ * engine.c: Likewise. * engine-gpgsm.h: Likewise. * engine-gpgsm.c: Likewise. - + * rungpg.c (_gpgme_gpg_get_version): New function. (_gpgme_gpg_check_version): Likewise. * rungpg.h: Add prototypes for _gpgme_gpg_get_version and @@ -6764,7 +6771,7 @@ * keylist.c (finish_key): Shortcut for no tmp_key. Changed all callers to use this function without a check for tmp_key. - + * keylist.c (gpgme_op_keylist_next): Reset the key_cond after emptying the queue. Bug reported by Stéphane Corthésy. @@ -6796,12 +6803,12 @@ * keylist.c (keylist_colon_handler): Do a finish key if we receive an EOF here. This is probably the reason for a lot of bugs related to keylisting. It is so obvious. Kudos to Enno Cramer - for pointing that out. + for pointing that out. 2001-08-28 Werner Koch <[email protected]> * gpgme.c, gpgme.h (gpgme_get_op_info): New. - (_gpgme_set_op_info): New. + (_gpgme_set_op_info): New. (_gpgme_release_result): Reset the op_info here. * sign.c (append_xml_siginfo): New. (sign_status_handler): Store the sig create information. @@ -6851,12 +6858,12 @@ 2001-05-01 José Carlos García Sogo <[email protected]> * encrypt.c (gpgme_op_encrypt_start): Deleted the assert ( !c->gpg ) - line, because it gave an error if another operation had been made + line, because it gave an error if another operation had been made before using the same context. - - * decrypt.c (gpgme_op_decrypt_start): The same as above. Also added + + * decrypt.c (gpgme_op_decrypt_start): The same as above. Also added one line to release the gpg object in the context (if any). - + 2001-04-26 Werner Koch <[email protected]> * key.c, key.h (_gpgme_key_cache_init): New. @@ -6879,14 +6886,14 @@ * w32-io.c (_gpgme_io_select): Don't select on the writer if there are still bytes pending. Timo found this not easy to track down - race condition. + race condition. 2001-04-02 Werner Koch <[email protected]> * gpgme.h: Add GPGME_ATTR_KEY_{EXPIRED,DISABLED}. * key.c (gpgme_key_get_ulong_attr): And return those attribs. - * verify.c (gpgme_get_sig_key): Set keyliosting mode depending on + * verify.c (gpgme_get_sig_key): Set keyliosting mode depending on the mode set in the current context. Suggested by Timo. * key.c (gpgme_key_get_ulong_attr): Return can_certify and not @@ -6914,7 +6921,7 @@ 2001-03-14 Werner Koch <[email protected]> - * w32-io.c (destroy_reader,destroy_writer): Fixed syntax error. + * w32-io.c (destroy_reader,destroy_writer): Fixed syntax error. Thanks to Jan Oliver Wagner. 2001-03-13 Werner Koch <[email protected]> @@ -6922,7 +6929,7 @@ * context.h: Add invalid and revoke flags to user_id structure. * keylist.c (gpgme_op_keylist_start): Use --fixed-list-mode. (keylist_colon_handler): Adjust for that. - (set_userid_flags): New. + (set_userid_flags): New. (set_mainkey_trust_info): Handle new key invalid flag (set_subkey_trust_info): Ditto. * gpgme.h: Add new attributes for key and user ID flags. @@ -6944,11 +6951,11 @@ 2001-02-20 Werner Koch <[email protected]> - * w32-io.c (destroy_reader,kill_reader): New. + * w32-io.c (destroy_reader,kill_reader): New. (create_reader, reader): Add a new event to stop the thread. (_gpgme_io_close): Kill the reader thread. - * posix-io.c (_gpgme_io_select): Handle frozen fds here. + * posix-io.c (_gpgme_io_select): Handle frozen fds here. * 32-io.c (_gpgme_io_select): Ditto. Removed a bunch of unused code. * wait.c: Reworked the whole thing. @@ -6972,7 +6979,7 @@ * posix-io.c (_gpgme_io_set_close_notify): New. (_gpgme_io_close): Do the notification. - * rungpg.c (close_notify_handler): New. + * rungpg.c (close_notify_handler): New. (_gpgme_gpg_new): Register a callback for the fd. (_gpgme_gpg_set_colon_line_handler): Ditto. (build_argv): Ditto @@ -6990,19 +6997,19 @@ * keylist.c (gpgme_op_keylist_start): Cancel a pending request. - * posix-io.c (_gpgme_io_read): Add some debug output. + * posix-io.c (_gpgme_io_read): Add some debug output. (_gpgme_io_write): Ditto. (_gpgme_io_select): Increased the timeout. 2001-02-12 Werner Koch <[email protected]> Enhanced the signature verification, so that it can how handle - more than one signature and is able to return more information on + more than one signature and is able to return more information on the signatures. * verify.c (gpgme_get_sig_key): New. (gpgme_get_sig_status): New. - * gpgme.h: Add stdio.h. + * gpgme.h: Add stdio.h. (GpgmeSigStat): New status DIFF. 2001-02-01 Werner Koch <[email protected]> @@ -7017,8 +7024,8 @@ * wait.c (_gpgme_wait_on_condition): Removed all exit code processing. (propagate_term_results,clear_active_fds): Removed. - (count_active_fds): Renamed to .. - (count_active_and_thawed_fds): .. this and count only thawed fds. + (count_active_fds): Renamed to .. + (count_active_and_thawed_fds): .. this and count only thawed fds. * rungpg.c (gpg_colon_line_handler): Return colon.eof and not status.eof ;-) @@ -7039,7 +7046,7 @@ test his fix :-) * w32-io.c: Does now use reader threads, so that we can use - WaitForMultipleObjects. + WaitForMultipleObjects. * sema.h, posix-sema.c, w32-sema.c: Support for Critcial sections. Does currently only work for W32. diff --git a/src/Makefile.am b/src/Makefile.am index 0065c073..18c8b3b3 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,18 +1,18 @@ # Copyright (C) 2000 Werner Koch (dd9jn) # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 g10 Code GmbH -# +# # This file is part of GPGME. -# +# # GPGME is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as # published by the Free Software Foundation; either version 2.1 of the # License, or (at your option) any later version. -# +# # GPGME is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General # Public License for more details. -# +# # You should have received a copy of the GNU Lesser General Public # License along with this program; if not, see <http://www.gnu.org/licenses/>. @@ -99,7 +99,7 @@ endif if HAVE_UISERVER uiserver_components = engine-uiserver.c else -uiserver_components = +uiserver_components = endif # These are the source files common to all library versions. We used @@ -120,6 +120,7 @@ main_sources = \ import.c export.c genkey.c delete.c edit.c getauditlog.c \ opassuan.c passwd.c \ engine.h engine-backend.h engine.c engine-gpg.c status-table.h \ + extra-stati.h \ $(gpgsm_components) $(assuan_components) $(gpgconf_components) \ $(uiserver_components) \ $(g13_components) vfs-mount.c vfs-create.c \ @@ -128,7 +129,7 @@ main_sources = \ debug.c debug.h gpgme.c version.c error.c libgpgme_la_SOURCES = $(main_sources) \ - ath.h ath.c $(system_components_not_extra) + ath.h ath.c $(system_components_not_extra) libgpgme_pthread_la_SOURCES = $(main_sources) \ ath.h ath-pthread.c $(system_components_not_extra) libgpgme_pth_la_SOURCES = $(main_sources) \ @@ -241,8 +242,9 @@ endif noinst_PROGRAMS = gpgme-tool gpgme_tool_LDADD = libgpgme.la -status-table.h : gpgme.h - $(srcdir)/mkstatus < $(builddir)/gpgme.h > status-table.h +status-table.h : gpgme.h extra-stati.h + cat $(builddir)/gpgme.h $(srcdir)extra-stati.h \ + | $(srcdir)/mkstatus > status-table.h install-data-local: install-def-file diff --git a/src/decrypt.c b/src/decrypt.c index 87ae4601..c017b907 100644 --- a/src/decrypt.c +++ b/src/decrypt.c @@ -3,17 +3,17 @@ Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH This file is part of GPGME. - + GPGME is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. - + GPGME is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. - + You should have received a copy of the GNU Lesser General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA @@ -31,6 +31,8 @@ #include "util.h" #include "context.h" #include "ops.h" +#include "extra-stati.h" + typedef struct @@ -39,7 +41,7 @@ typedef struct int okay; int failed; - + /* A pointer to the next pointer of the last recipient in the list. This makes appending new invalid signers painless while preserving the order. */ @@ -200,6 +202,10 @@ _gpgme_decrypt_status_handler (void *priv, gpgme_status_code_t code, return gpg_error (GPG_ERR_NO_DATA); break; + case GPGME_STATUS_DECRYPTION_INFO: + /* Fixme: Provide a way to return the used symmetric algorithm. */ + break; + case GPGME_STATUS_DECRYPTION_OKAY: opd->okay = 1; break; @@ -286,7 +292,7 @@ _gpgme_decrypt_status_handler (void *priv, gpgme_status_code_t code, err = _gpgme_parse_plaintext (args, &opd->result.file_name); if (err) return err; - + default: break; } diff --git a/src/extra-stati.h b/src/extra-stati.h new file mode 100644 index 00000000..59cccf98 --- /dev/null +++ b/src/extra-stati.h @@ -0,0 +1,29 @@ +/* extra-stati.lst - Extra GnuPG status codes. + Copyright 2011 g10 Code GmbH + + This file is free software; as a special exception the author gives + unlimited permission to copy and/or distribute it, with or without + modifications, as long as this notice is preserved. + + This file is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY, to the extent permitted by law; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. */ + +/* A list of internal status code to be processed by mkstatus. Those + * status codes are not part of the API but internally required by + * gpgme. We use a second enum type here but make sure that the + * values don't clash with those of gpgme_status_code_t. + */ + +enum + { + /* This value is the first used one. It needs to be larger than + the last value of gpgme_status_code_t. There is no need to + explictly list the values because they are internal only. */ + _GPGME_STATUS_FIRST_EXTRA = 192, + + GPGME_STATUS_DECRYPTION_INFO, + + _GPGME_STATUS_LAST_EXTRA + }; diff --git a/src/mkstatus b/src/mkstatus index e64ab194..3fbfbf9e 100755 --- a/src/mkstatus +++ b/src/mkstatus @@ -10,12 +10,12 @@ # under the terms of the GNU Lesser General Public License as # published by the Free Software Foundation; either version 2.1 of the # License, or (at your option) any later version. -# +# # GPGME is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General # Public License for more details. -# +# # You should have received a copy of the GNU Lesser General Public # License along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA @@ -34,16 +34,18 @@ struct status_table_s { gpgme_status_code_t code; }; -static struct status_table_s status_table[] = +static struct status_table_s status_table[] = { EOF awk ' -/GPGME_STATUS_ENTER/ { okay = 1 } -!okay { next } -/}/ { exit 0 } +okay == 0 && /GPGME_STATUS_ENTER/ { okay = 1 } +okay == 2 && /_GPGME_STATUS_FIRST_EXTRA/ { okay = 1; next } +okay != 1 { next } +/}/ { okay = 2 } +/_GPGME_STATUS_LAST_EXTRA/ { exit 0 } /GPGME_STATUS_[A-Za-z_]*/ { sub (/,/, "", $1); printf " { \"%s\", %s },\n", substr($1,14), $1 } -' | sort +' | sort cat <<EOF {NULL, 0} |