gpgme.git
22 years agoAdd support for certificates having the e-mail address stored in GPGME_ATTR_USERID...
Karl-Heinz Zimmer [Thu, 31 Oct 2002 13:59:38 +0000 (13:59 +0000)]
Add support for certificates having the e-mail address stored in GPGME_ATTR_USERID instead of GPGME_ATTR_EMAIL.

22 years agoImplementing the 1st of missing features reported by Ingo: isEmailInCertificate()
Karl-Heinz Zimmer [Thu, 31 Oct 2002 13:14:41 +0000 (13:14 +0000)]
Implementing the 1st of missing features reported by Ingo: isEmailInCertificate()

22 years ago2002-10-12 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 12 Oct 2002 14:32:01 +0000 (14:32 +0000)]
2002-10-12  Marcus Brinkmann  <marcus@g10code.de>

* gpgmeplug.c (checkMessageSignature): Update call to
gpgme_op_verify to use new arguments.

22 years ago2002-10-10 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 12 Oct 2002 00:33:05 +0000 (00:33 +0000)]
2002-10-10  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.h, engine-gpgsm.h: File removed.
* engine-backend.h: New file.
* Makefile.am (gpgsm_components): New variable, set depending on
automake conditional HAVE_GPGSM.
(libgpgme_la_SOURCES): Add engine-backend.h, remove rungpg.h and
engine-gpgsm.h.  Replace engine-gpgsm.c with ${gpgsm_components}.
(status-table.h): Depend on gpgme.h, not rungpg.h.
* conversion.c: Include <stdlib.h>.
* engine-gpgsm.c: Do not set ENABLE_GPGSM here.  Include
"engine-backend.h" instead "engine-gpgsm.h".  Reorder some
functions and remove all function prototypes.
(_gpgme_gpgsm_get_version): Make static and rename to ...
(gpgsm_get_version): ... this.
(_gpgme_gpgsm_check_version): Make static and rename to ...
(gpgsm_check_version): ... this.
(_gpgme_gpgsm_new): Make static.  Change argument type from
GpgsmObject * to void **.  Call gpgsm_release instead
_gpgme_gpgsm_release.
(_gpgme_gpgsm_op_decrypt): Make static and rename to ...
(gpgsm_check_decrypt): ... this.
(_gpgme_gpgsm_op_delete): Make static and rename to ...
(gpgsm_check_delete): ... this.
(_gpgme_gpgsm_set_recipients): Make static and rename to ...
(gpgsm_check_set_recipients): ... this.
(_gpgme_gpgsm_op_encrypt): Make static and rename to ...
(gpgsm_encrypt): ... this.
(_gpgme_gpgsm_op_export): Make static and rename to ...
(gpgsm_export): ... this.
(_gpgme_gpgsm_op_genkey): Make static and rename to ...
(gpgsm_genkey): ... this.
(_gpgme_gpgsm_op_import): Make static and rename to ...
(gpgsm_import): ... this.
(_gpgme_gpgsm_op_keylist): Make static and rename to ...
(gpgsm_keylist): ... this.
(_gpgme_gpgsm_op_keylist_ext): Make static and rename to ...
(gpgsm_keylist_ext): ... this.
(_gpgme_gpgsm_op_sign): Make static and rename to ...
(gpgsm_sign): ... this.
(_gpgme_gpgsm_op_trustlist): Make static and rename to ...
(gpgsm_trustlist): ... this.
(_gpgme_gpgsm_op_verify): Make static and rename to ...
(gpgsm_verify): ... this.
(gpgsm_status_handler): Rename to ...
(status_handler): ... this.
(_gpgme_gpgsm_set_status_handler): Make static and rename to ...
(gpgsm_set_status_handler): ... this.
(_gpgme_gpgsm_set_colon_line_handler): Make static and rename to ...
(gpgsm_set_colon_line_handler): ... this.
(_gpgme_gpgsm_add_io_cb): Rename to ...
(add_io_cb): ... this.
(_gpgme_gpgsm_start): Make static and rename to ...
(gpgsm_start): ... this.
(_gpgme_gpgsm_set_io_cb): Make static and rename to ...
(gpgsm_set_io_cb): ... this.
(_gpgme_gpgsm_io_event): Make static and rename to ...
(gpgsm_io_event): ... this.
(struct _gpgme_engine_ops_gpgsm): New variable.
[!ENABLE_GPGSM]: Removed.
* engine.c: Do not include <time.h>, <sys/types.h>, <string.h>,
<assert.h>, "io.h", "rungpg.h" and "engine-gpgsm.h".  Include
<stdlib.h> and "engine-backend.h".
(struct engine_object_s): Rewritten.
(engine_ops): New variable.
* engine.c (_gpgme_engine_get_path, _gpgme_engine_get_version,
_gpgme_engine_check_version, _gpgme_engine_new,
_gpgme_engine_release, _gpgme_engine_set_verbosity,
_gpgme_engine_set_status_handler,
_gpgme_engine_set_command_handler,
_gpgme_engine_set_colon_line_handler, _gpgme_engine_op_decrypt,
_gpgme_engine_op_delete, _gpgme_engine_op_edit,
_gpgme_engine_op_encrypt, _gpgme_engine_op_encrypt_sign,
_gpgme_engine_op_export, _gpgme_engine_op_genkey,
_gpgme_engine_op_import, _gpgme_engine_op_keylist,
_gpgme_engine_op_keylist_ext, _gpgme_engine_op_sign,
_gpgme_engine_op_trustlist, _gpgme_engine_op_verify,
_gpgme_engine_start, _gpgme_engine_set_io_cbs,
_gpgme_engine_io_event): Reimplement.
* engine.h: Fix a few comments and a variable name in a prototype.
* ops.h: Do not include "rungpg.h".
* passphrase.c: Include config.h only if [HAVE_CONFIG_H].  Do not
include "rungpg.h".
* recipient.c: Likewise.
* signers.c: Likewise.
* version.c: Likewise.
* rungpg.c: Likewise.  Include "engine-backend.h".  Reorder
functions and remove prototypes.
(_gpgme_gpg_get_version): Make static and rename to ...
(gpg_get_version): ... this.
(_gpgme_gpg_check_version): Make static and rename to ...
(gpg_check_version): ... this.
(_gpgme_gpg_new): Make static.  Change argument type from
GpgObject * to void **.  Call gpg_release instead
_gpgme_gpg_release.
(_gpgme_gpg_op_decrypt): Make static and rename to ...
(gpg_check_decrypt): ... this.
(_gpgme_gpg_op_delete): Make static and rename to ...
(gpg_check_delete): ... this.
(_gpgme_gpg_set_recipients): Make static and rename to ...
(gpg_check_set_recipients): ... this.
(_gpgme_gpg_op_encrypt): Make static and rename to ...
(gpg_encrypt): ... this.
(_gpgme_gpg_op_export): Make static and rename to ...
(gpg_export): ... this.
(_gpgme_gpg_op_genkey): Make static and rename to ...
(gpg_genkey): ... this.
(_gpgme_gpg_op_import): Make static and rename to ...
(gpg_import): ... this.
(_gpgme_gpg_op_keylist): Make static and rename to ...
(gpg_keylist): ... this.
(_gpgme_gpg_op_keylist_ext): Make static and rename to ...
(gpg_keylist_ext): ... this.
(_gpgme_gpg_op_sign): Make static and rename to ...
(gpg_sign): ... this.
(_gpgme_gpg_op_trustlist): Make static and rename to ...
(gpg_trustlist): ... this.
(_gpgme_gpg_op_verify): Make static and rename to ...
(gpg_verify): ... this.
(gpg_status_handler): Rename to ...
(status_handler): ... this.
(_gpgme_gpg_set_status_handler): Make static and rename to ...
(gpg_set_status_handler): ... this.
(_gpgme_gpg_set_colon_line_handler): Make static and rename to ...
(gpg_set_colon_line_handler): ... this.
(gpgme_gpg_add_io_cb): Rename to ...
(add_io_cb): ... this.
(_gpgme_gpg_start): Make static and rename to ...
(gpg_start): ... this.
(_gpgme_gpg_set_io_cb): Make static and rename to ...
(gpg_set_io_cb): ... this.
(_gpgme_gpg_io_event): Make static and rename to ...
(gpg_io_event): ... this.
(struct _gpgme_engine_ops_gpg): New variable.

22 years ago2002-10-12 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 12 Oct 2002 00:29:46 +0000 (00:29 +0000)]
2002-10-12  Marcus Brinkmann  <marcus@g10code.de>

* configure.ac: Add automake conditional HAVE_GPGSM.

22 years ago2002-10-10 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 10 Oct 2002 11:34:56 +0000 (11:34 +0000)]
2002-10-10  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (_gpgme_gpgsm_op_verify) [!ENABLE_GPGSM]: Add
missing argument.

22 years ago2002-10-09 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 9 Oct 2002 12:26:00 +0000 (12:26 +0000)]
2002-10-09  Marcus Brinkmann  <marcus@g10code.de>

* data.h, data-user.c, data-stream.c, data-mem.c, data-fd.c,
data-compat.c: New file.  Really check them in this time, completes
2002-10-08 change.

22 years ago2002-10-09 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 9 Oct 2002 12:23:33 +0000 (12:23 +0000)]
2002-10-09  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.h (GpgStatusHandler): Rename type to GpgmeStatusHandler
and move to ...
* types.h (GpgmeStatusHandler): ... here.
* rungpg.h (GpgColonLineHandler): Rename type to GpgmeColonLineHandler.
and move to ...
* types.h (GpgmeColonLineHandler): ... here.
* rungpg.h (GpgCommandHandler): Rename type to GpgmeCommandHandler.
and move to ...
* types.h (GpgmeCommandHandler): ... here.
* engine.h: Don't include "rungpg.h".
(_gpgme_engine_set_status_handler): Change type of
argument from GpgStatusHandler to GpgmeStatusHandler.
(_gpgme_engine_set_colon_line_handler): Change type of
argument from GpgColonLineHandler to GpgmeColonLineHandler.
(_gpgme_engine_set_command_handler): Change type of
argument from GpgCommandHandler to GpgmeCommandHandler.
* engine-gpgsm.h: Don't include "rungpg.h".
(_gpgme_gpgsm_set_status_handler): Change type of
argument from GpgStatusHandler to GpgmeStatusHandler.
(_gpgme_gpgsm_set_colon_line_handler): Change type of
argument from GpgColonLineHandler to GpgmeColonLineHandler.
* engine-gpgsm.c: Do not include "rungpg.h".
(struct gpgsm_object_s): Change type of
status.fnc to GpgmeStatusHandler.  Change type of colon.fnc to
GpgmeColonLineHandler.
(gpgsm_assuan_simple_command): Change type of argument from
GpgStatusHandler to GpgmeStatusHandler.
(_gpgme_gpgsm_set_status_handler): Likewise.
(_gpgme_gpgsm_set_colon_line_handler): Change type of argument from
GpgColonLineHandler to GpgmeColonLineHandler.
* rungpg.h (_gpgme_gpg_set_status_handler): Change type of
argument from GpgStatusHandler to GpgmeStatusHandler.
(_gpgme_gpg_set_colon_line_handler): Change type of
argument from GpgColonLineHandler to GpgmeColonLineHandler.
(_gpgme_gpg_set_command_handler): Change type of
argument from GpgCommandHandler to GpgmeCommandHandler.
* rungpg.c (struct gpg_object_s): Change type of status.fnc to
GpgmeStatusHandler.  Change type of colon.fnc to
GpgmeColonLineHandler.  Change type of cmd.fnc to
GpgmeCommandLineHandler.
(_gpgme_gpg_set_status_handler): Change type of argument FNC to
GpgmeStatusHandler.
(_gpgme_gpg_set_colon_line_handler): Change type of argument FNC
to GpgmeColonLineHandler.
(_gpgme_gpg_set_command_handler): Change type of argument FNC to
GpgmeCommandHandler.
* engine.c (_gpgme_engine_set_status_handler): Change type of
argument FNC to GpgmeStatusHandler.
(_gpgme_engine_set_colon_line_handler): Change type of argument FNC
to GpgmeColonLineHandler.
(_gpgme_engine_set_command_handler): Change type of argument FNC to
GpgmeCommandHandler.

22 years ago2002-10-09 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 9 Oct 2002 11:57:17 +0000 (11:57 +0000)]
2002-10-09  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.h (_gpgme_gpg_enable_pipemode): Remove prototype.
* rungpg.c (struct gpg_object_s): Remove PM.
(pipemode_cb): Prototype removed.
(add_pm_data): Function removed.
(_gpgme_gpg_enable_pipemode): Likewise.
(pipemode_copy): Likewise.
(pipemode_cb): Likewise.
(add_arg): Don't check for pipemode.
(add_data): Likewise.
(_gpgme_gpg_set_status_handler): Likewise.
(_gpgme_gpg_set_colon_line_handler): Likewise.
(_gpgme_gpg_set_command_handler): Likewise.
(_gpgme_gpg_spawn): Likewise.
(_gpgme_gpg_spawn): Don't set PM.active.
(_gpgme_gpg_op_verify): Remove pipemode case.
* verify.c (_gpgme_op_verify_start): Remove pipemode case.

22 years ago2002-10-09 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 9 Oct 2002 09:50:41 +0000 (09:50 +0000)]
2002-10-09  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.h (_gpgme_gpg_add_arg, _gpgme_gpg_add_data,
_gpgme_gpg_add_pm_data, _gpgme_gpg_housecleaning,
_gpgme_gpg_set_simple_line_handler): Prototype removed.
(_gpgme_gpg_set_verbosity): New prototype.
* rungpg.c (_gpgme_gpg_add_data): Make static and rename to ...
(add_data): ... this.
(_gpgme_gpg_add_pm_data): Call add_data, not _gpgme_gpg_add_data.
(_gpgme_gpg_set_command_handler): Likewise.
(_gpgme_gpg_op_decrypt, _gpgme_gpg_op_edit, _gpgme_gpg_op_encrypt,
_gpgme_gpg_op_encrypt_sign, _gpgme_gpg_op_export,
_gpgme_gpg_op_genkey, _gpgme_gpg_op_import, _gpgme_gpg_op_sign,
_gpgme_gpg_op_verify): Likewise.
(_gpgme_gpg_add_pm_data): Rename to ...
(add_pm_data): ... this.
(_gpgme_gpg_op_verify): Call add_pm_data, not
_gpgme_gpg_add_pm_data.
(_gpgme_gpg_add_arg): Make static and rename to ...
(add_arg): ... this.
(_gpgme_gpg_set_command_handler, _gpgme_gpg_new,
_gpgme_gpg_op_decrypt, _gpgme_gpg_op_delete,
_gpgme_append_gpg_args_from_signers, _gpgme_gpg_op_edit,
_gpgme_append_gpg_args_from_recipients, _gpgme_gpg_op_encrypt,
_gpgme_gpg_op_encrypt_sign, _gpgme_gpg_op_export,
_gpgme_gpg_op_genkey, _gpgme_gpg_op_import, _gpgme_gpg_op_keylist,
_gpgme_gpg_op_keylist_ext, _gpgme_gpg_op_trustlist,
_gpgme_gpg_op_sign, _gpgme_gpg_op_verify): Use add_arg, not
_gpgme_gpg_add_arg.
(_gpgme_gpg_set_verbosity): New function.
(struct gpg_object_s): Remove member simple from colon.
(_gpgme_gpg_set_colon_line_handler): Don't initialize simple.
(_gpgme_gpg_set_simple_line_handler): Removed function.
(read_colon_line): Don't check the GPG->colon.simple.
* engine.c (_gpgme_engine_set_verbosity): Call
_gpgme_gpg_set_verbosity instead _gpgme_gpg_add_arg.

22 years ago2002-10-08 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 9 Oct 2002 01:08:21 +0000 (01:08 +0000)]
2002-10-08  Marcus Brinkmann  <marcus@g10code.de>

* util.h (_gpgme_malloc, _gpgme_realloc, _gpgme_calloc,
_gpgme_strdup, _gpgme_free): Remove prototypes.
(xtrymalloc, xtrycalloc, xtryrealloc, xtrystrdup, xfree): Remove
macros.
* util.c: File removed.
* Makefile.am (libgpgme_la_SOURCES): Remove util.h.
* conversion.c (_gpgme_decode_c_string): Use malloc instead of
xtrymalloc, realloc instead of xtryrealloc, calloc instead of
xtrycalloc, free instead of xfree.
(_gpgme_data_append_percentstring_for_xml): Likewise.
* data.c (_gpgme_data_new, _gpgme_data_release): Likewise.
* data-compat.c (gpgme_data_new_from_filepart): Likewise.
* data-mem.c (mem_write, mem_release, gpgme_data_new_from_mem,
_gpgme_data_get_as_string): Likewise.
* debug.c (debug_init): Likewise.
* decrypt.c (_gpgme_release_decrypt_result): Likewise.
* delete.c (_gpgme_release_delete_result): Likewise.
* edit.c (_gpgme_release_edit_result, _gpgme_op_edit_start):
Likewise.
* encrypt.c (_gpgme_release_encrypt_result): Likewise.
* engine.c (_gpgme_engine_get_info, _gpgme_engine_new,
_gpgme_engine_release): Likewise.
* engine-gpgsm.c (_gpgme_gpgsm_new, _gpgme_gpgsm_release,
_gpgme_gpgsm_op_decrypt, _gpgme_gpgsm_op_delete,
gpgsm_set_recipients, _gpgme_gpgsm_op_encrypt,
_gpgme_gpgsm_op_export, _gpgme_gpgsm_op_genkey,
_gpgme_gpgsm_op_import, _gpgme_gpgsm_op_keylist,
_gpgme_gpgsm_op_keylist_ext, _gpgme_gpgsm_op_sign,
_gpgme_gpgsm_op_verify, gpgsm_status_handler): Likewise.
* genkey.c (_gpgme_release_genkey_result): Likewise.
* gpgme.c (gpgme_new, gpgme_release): Likewise.
* import.c (_gpgme_release_import_result): Likewise.
* key.c (_gpgme_key_cache_init, _gpgme_key_cache_add, key_new,
add_subkey, gpgme_key_release, _gpgme_key_append_name): Likewise.
* keylist.c (_gpgme_release_keylist_result, keylist_colon_handler,
_gpgme_op_keylist_event_cb, gpgme_op_keylist_next): Likewise.
* ops.h (test_and_allocate_result): Likewise.
* passphrase.c (_gpgme_release_passphrase_result,
_gpgme_passphrase_status_handler,
_gpgme_passphrase_command_handler): Likewise.
* progress.c (_gpgme_progress_status_handler): Likewise.
* recipient.c (gpgme_recipients_new, gpgme_recipients_release,
gpgme_recipients_add_name_with_validity): Likewise.
* rungpg.c (_gpgme_gpg_new, _gpgme_gpg_release,
_gpgme_gpg_add_arg, _gpgme_gpg_add_data,
_gpgme_gpg_set_colon_line_handler, free_argv, free_fd_data_map,
build_argv, _gpgme_gpg_spawn, read_status, read_colon_line):
Likewise.
* sign.c (_gpgme_release_sign_result): Likewise.
* signers.c (_gpgme_signers_add): Likewise.
* trustlist.c (trust_item_new, trustlist_colon_handler,
_gpgme_op_trustlist_event_cb, gpgme_op_trustlist_next,
gpgme_trustitem_release): Likewise.
* verify.c (_gpgme_release_verify_result, finish_sig): Likewise.
* version.c (gpgme_get_engine_info, _gpgme_get_program_version):
Likewise.
* w32-io.c (create_reader, create_writer, destroy_reader,
destroy_writer, build_commandline, _gpgme_io_spawn): Likewise.
* w32-sema.c (critsect_init, _gpgme_sema_cs_destroy): Likewise.
* w32-util.c (read_w32_registry_string): Likewise.
* wait.c (_gpgme_fd_table_deinit, _gpgme_fd_table_put,
_gpgme_wait_event_cb, _gpgme_add_io_cb, _gpgme_remove_io_cb)
* data-compat.c: Include <stdlib.h>.

22 years agogpgme/
Marcus Brinkmann [Wed, 9 Oct 2002 00:16:38 +0000 (00:16 +0000)]
gpgme/
2002-10-08  Marcus Brinkmann  <marcus@g10code.de>

New data object component:

* gpgme.h (GpgmeDataReadCb, GpgmeDataWriteCb, GpgmeDataSeekCb,
GpgmeDataReleaseCb): New types.
(struct GpgmeDataCbs): New structure.
(gpgme_data_read): Changed prototype to match that of read() closely.
(gpgme_data_write): Similar for write().
(gpgme_data_seek, gpgme_data_new_from_cbs, gpgme_data_new_from_fd,
gpgme_data_new_from_stream): New prototypes.
(gpgme_data_get_type, gpgme_check_engine): Prototype removed.

* Makefile.am (libgpgme_la_SOURCES): Add data.h, data-fd.c,
data-stream.c, data-mem.c, data-user.c and data-compat.c.
* data.c: Reimplemented from scratch.
* (data-compat.c, data-fd.c, data.h, data-mem.c, data-stream.c,
data-user.c): New file.
* context.h (struct gpgme_data_s): Removed.
* conversion.c: Include <errno.h> and <sys/types.h>.
(_gpgme_data_append): New function.
* data.c (_gpgme_data_append_string): Move to ...
* conversion.c (_gpgme_data_append_string): ... here.
* data.c (_gpgme_data_append_for_xml): Move to ...
* conversion.c (_gpgme_data_append_for_xml): ... here.
* data.c (_gpgme_data_append_string_for_xml): Move to ...
* conversion.c (_gpgme_data_append_string_for_xml): ... here.
* data.c (_gpgme_data_append_percentstring_for_xml): Move to ...
* conversion.c (_gpgme_data_append_percentstring_for_xml): ... here.

* ops.h (_gpgme_data_get_mode, _gpgme_data_set_mode): Prototype
removed.
* types.h (GpgmeDataMode): Type removed.

* decrypt.c (_gpgme_decrypt_start): Don't check data type or mode.
* edit.c (_gpgme_op_edit_start): Likewise.
* encrypt.c (_gpgme_op_encrypt_start): Likewise.
* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Likewise.
* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Likewise.
* export.c (_gpgme_op_export_start): Likewise.
* genkey.c (_gpgme_op_genkey_start): Likewise.
* 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
no recipient if no data was returned.
* encrypt-sign.c (gpgme_op_encrypt_sign): Remove hack that returns
no recipient if no data was returned.

* engine.c (_gpgme_engine_op_verify): Add new argument to
differentiate detached from normal signatures.
* engine.h (_gpgme_engine_op_verify): Likewise for prototype.
* engine-gpgsm.c (_gpgme_gpgsm_op_verify): Likewise.  Don't check
mode of data argument.
* engine-gpgsm.h (_gpgme_gpgsm_op_verify): Likewise for prototype.
* gpgme.h (gpgme_op_verify_start): Likewise for prototype.
(gpgme_op_verify): Likewise for prototype.
* rungpg.c (_gpgme_gpg_op_verify): Likewise.
* rungpg.h (_gpgme_gpg_op_verify): Likewise for prototype.
* verify.c (_gpgme_op_verify_start): Likewise.
(gpgme_op_verify_start): Likewise.
(gpgme_op_verify): Likewise.

* rungpg.c (struct arg_and_data_s): New member INBOUND to hold
direction of data object.
(_gpgme_gpg_add_data): Add new argument INBOUND.  Use it to
determine direction of data object.
(_gpgme_gpg_add_pm_data, _gpgme_gpg_set_command_handler,
_gpgme_gpg_op_decrypt, _gpgme_gpg_op_edit, _gpgme_gpg_op_encrypt,
_gpgme_gpg_op_encrypt_sign, _gpgme_gpg_op_export,
_gpgme_gpg_op_genkey, _gpgme_gpg_op_import, _gpgme_gpg_op_sign,
_gpgme_gpg_op_verify): Add new argument to _gpgme_gpg_add_data
invocation.
(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.

* version.c (gpgme_check_engine): Function removed.

tests/
2002-10-09  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-decrypt.c (print_data): Update to new gpgme_data_read
interface, and use gpgme_engine_check_version instead
gpgme_check_version.
* gpg/t-decrypt-verify.c (print_data): Likewise.
* gpg/t-edit.c (main): Likewise.
* gpg/t-encrypt.c (print_data): Likewise.
* gpg/t-encrypt-sign.c (print_data): Likewise.
* gpg/t-encrypt-sym.c (print_data): Likewise.
* gpg/t-eventloop.c (print_data): Likewise.
* gpg/t-export.c (print_data): Likewise.
* gpg/t-sign.c (print_data): Likewise.
* gpg/t-signers.c (print_data): Likewise.
* gpgsm/t-decrypt.c (print_data): Likewise.
* gpgsm/t-encrypt.c (print_data): Likewise.
* gpgsm/t-export.c (print_data): Likewise.
* gpgsm/t-sign.c (print_data): Likewise.
* gpg/t-verify.c (main): Likewise for gpgme_op_verify.
* gpgsm/t-verify.c (main): Likewise for gpgme_op_verify.
* t-data.c (read_once_test): Likewise.
(write_test): Update for new behaviour of data objects.
(main): Remove type test.

22 years ago2002-10-08 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 8 Oct 2002 21:52:38 +0000 (21:52 +0000)]
2002-10-08  Marcus Brinkmann  <marcus@g10code.de>

* configure.ac (AC_INIT): Bump version up to 0.4.0.
(NEED_GPG_VERSION): Bump up to 1.2.0.
(NEED_GPGSM_VERSION): Bump up to 0.9.0.
* README: Update version numbers.
* NEWS: Start entry for 0.4.0.

22 years agotypo gpgme-0-3-12
Werner Koch [Mon, 30 Sep 2002 08:04:16 +0000 (08:04 +0000)]
typo

22 years ago* gpgsm/t-keylist.c (doit): Add arg SECRET. gpgme-0-3-13 gpgme-0-3-14 gpgme-0-3-15 gpgme-0-3-16
Werner Koch [Mon, 30 Sep 2002 08:03:56 +0000 (08:03 +0000)]
* gpgsm/t-keylist.c (doit): Add arg SECRET.
(main): Add option --secret.

22 years ago* keylist.c (keylist_colon_handler): Take care when printing a
Werner Koch [Mon, 30 Sep 2002 08:03:27 +0000 (08:03 +0000)]
* keylist.c (keylist_colon_handler): Take care when printing a
NULL with the DEBUG.

* engine-gpgsm.c (struct gpgsm_object_s): New member ANY.
(gpgsm_status_handler): Run the colon function to indicate.
(_gpgme_gpgsm_set_colon_line_handler): Better reset ANY here.

22 years agoApplying Ingo's patch: Makes signatureCertificateDaysLeftToExpiry() and receiverCerti...
Karl-Heinz Zimmer [Sun, 29 Sep 2002 21:14:16 +0000 (21:14 +0000)]
Applying Ingo's patch: Makes signatureCertificateDaysLeftToExpiry() and receiverCertificateDaysLeftToExpiry() handle the case that a certificate _never_ expires correctly.

22 years ago2002-09-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 28 Sep 2002 20:09:12 +0000 (20:09 +0000)]
2002-09-28  Marcus Brinkmann  <marcus@g10code.de>

* t-version.c: Include <string.h>.  Reported by St�phane Corth�sy.

22 years ago2002-09-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 28 Sep 2002 20:08:01 +0000 (20:08 +0000)]
2002-09-28  Marcus Brinkmann  <marcus@g10code.de>

* conversion.c (_gpgme_hextobyte): Prevent superfluous
multiplication with base.  Reported by St�phane Corth�sy.

* keylist.c (gpgme_op_keylist_ext_start): Use private asynchronous
operation type in invocation of _gpgme_op_reset.

22 years agochanged version number after release.
Werner Koch [Fri, 20 Sep 2002 13:33:42 +0000 (13:33 +0000)]
changed version number after release.

22 years ago* configure.ac: Bump up LIBGPGME_LT_REVISION. gpgme-0-3-11
Werner Koch [Fri, 20 Sep 2002 11:48:27 +0000 (11:48 +0000)]
* configure.ac: Bump up LIBGPGME_LT_REVISION.

* configure.ac (AC_CHECK_HEADERS): Check for sys/select.h.

22 years ago* gpgmeplug.c (nextCertificate): Sanity check for empty tmp_dn.
Werner Koch [Fri, 20 Sep 2002 11:47:55 +0000 (11:47 +0000)]
* gpgmeplug.c (nextCertificate): Sanity check for empty tmp_dn.

22 years ago* ath.c: Include sys/time.h if sys/select.h is not available.
Werner Koch [Fri, 20 Sep 2002 10:44:22 +0000 (10:44 +0000)]
* ath.c: Include sys/time.h if sys/select.h is not available.
* configure.ac (AC_CHECK_HEADERS): Check for sys/select.h.

22 years ago2002-09-13 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 13 Sep 2002 20:54:52 +0000 (20:54 +0000)]
2002-09-13  Marcus Brinkmann  <marcus@g10code.de>

* keylist.c (keylist_status_handler): Do not call finish_key() here.
(gpgme_op_keylist_ext_start): Set CTX->tmp_key to NULL.

22 years agoRegenerated.
Marcus Brinkmann [Fri, 13 Sep 2002 20:54:31 +0000 (20:54 +0000)]
Regenerated.

22 years agoBugfix #1276 (equals KDE bug #43868). Make sure to update kde/kdenetwork/libkdenet...
Karl-Heinz Zimmer [Thu, 12 Sep 2002 11:02:02 +0000 (11:02 +0000)]
Bugfix #1276 (equals KDE bug #43868).    Make sure to update kde/kdenetwork/libkdenetwork and kde/kdenetwork/kmail.

22 years agoBugfix: The value text of protocol parameter of OpenPGP's multipart/signed Content...
Karl-Heinz Zimmer [Fri, 6 Sep 2002 11:52:05 +0000 (11:52 +0000)]
Bugfix: The value text of protocol parameter of OpenPGP's multipart/signed Content-Type header must be enclosed in double quotes.  Bugfix was provided by Marc Mutz solving problems with pine.

22 years ago2002-09-04 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 4 Sep 2002 01:18:08 +0000 (01:18 +0000)]
2002-09-04  Marcus Brinkmann  <marcus@g10code.de>

* autogen.sh (autoconf_vers): Bump up to 2.53 to get the @&t@
quadrigraph.  Always cutting the edge!

22 years agoAEgypten bugfix #1220: make sure that (a) negative numbers of days-left-to-expire...
Karl-Heinz Zimmer [Tue, 3 Sep 2002 16:21:34 +0000 (16:21 +0000)]
AEgypten bugfix #1220: make sure that (a) negative numbers of days-left-to-expire-of-certificate are reported correctly by using an int instead of a time_t and (b) return the special value CRYPTPLUG_CERT_DOES_NEVER_EXPIRE to indicate that no expire date is stored in this certificate

22 years ago2002-09-03 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 3 Sep 2002 11:26:01 +0000 (11:26 +0000)]
2002-09-03  Marcus Brinkmann  <marcus@g10code.de>

* Makefile.am (assuan_libobjs): Remove @LTLIBOBJS@ as we link them
into gpgme unconditionally.
(libgpgme_la_LIBADD): Change @LIBOBJS@ into @LTLIBOBJS@.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Mon, 2 Sep 2002 13:01:44 +0000 (13:01 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

* configure.ac: Create and substitute LTLIBOBJS.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Mon, 2 Sep 2002 13:01:29 +0000 (13:01 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-keylist.c (main): Test PATTERN for NULL before printing.
Reported by Dr. Stefan Dalibor <Dr.Stefan.Dalibor@bfa.de>.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Mon, 2 Sep 2002 12:38:43 +0000 (12:38 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

* Makefile.am (assuan_libobjs): Use @LTLIBOBJS@ instead @LIBOBJS@.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Mon, 2 Sep 2002 12:29:53 +0000 (12:29 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

* debug.c (_gpgme_debug_add): Test *LINE, not LINE.
(_gpgme_debug_end): Likewise.
Reported by Dr. Stefan Dalibor <Dr.Stefan.Dalibor@bfa.de>.

22 years agoWrap the lines nicer.
Marcus Brinkmann [Mon, 2 Sep 2002 12:19:15 +0000 (12:19 +0000)]
Wrap the lines nicer.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Mon, 2 Sep 2002 12:17:51 +0000 (12:17 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

* posix-io.c (_gpgme_io_select): Don't use a non-constant struct initializer.
* version.c (_gpgme_get_program_version): Likewise.
Reported by Dr. Stefan Dalibor <Dr.Stefan.Dalibor@bfa.de>.

22 years agoBump up version number.
Marcus Brinkmann [Sun, 1 Sep 2002 23:55:31 +0000 (23:55 +0000)]
Bump up version number.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de> gpgme-0-3-10
Marcus Brinkmann [Sun, 1 Sep 2002 23:29:55 +0000 (23:29 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

* conversion.c (_gpgme_decode_c_string): Set DESTP before modifying DEST.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 1 Sep 2002 23:08:50 +0000 (23:08 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

* conversion.c (_gpgme_decode_c_string): Fix off by one error in last change.
* rungpg.c (_gpgme_append_gpg_args_from_signers): Move before
_gpgme_op_edit so its prototype is known early on.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 1 Sep 2002 22:30:28 +0000 (22:30 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

Released 0.3.10.

* NEWS: Update for 0.3.9 release.
* configure.ac: Bump up LIBGPGME_LT_REVISION.

22 years agoAdd item about prior change.
Marcus Brinkmann [Sun, 1 Sep 2002 22:24:58 +0000 (22:24 +0000)]
Add item about prior change.

22 years ago2002-09-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 1 Sep 2002 22:23:56 +0000 (22:23 +0000)]
2002-09-02  Marcus Brinkmann  <marcus@g10code.de>

* conversion.c: New file.
* util.h: Add prototypes for _gpgme_decode_c_string and
_gpgme_hextobyte.
* keylist.c (keylist_colon_handler): Call _gpgme_decode_c_string
on issuer name.
* Makefile.am (libgpgme_la_SOURCES): Add conversion.c
* key.c (_gpgme_key_append_name): Replace calls to hextobyte by
calls to _gpgme_hextobyte.
(hash_key): Likewise.

22 years ago2002-09-01 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 1 Sep 2002 19:47:11 +0000 (19:47 +0000)]
2002-09-01  Marcus Brinkmann  <marcus@g10code.de>

* op-support.c (_gpgme_op_reset): Set CTX->pending after calling
_gpgme_engine_release, as this will reset pending to zero in the
event done callback on cancelled operations.

22 years ago2002-08-30 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 31 Aug 2002 02:34:26 +0000 (02:34 +0000)]
2002-08-30  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_op_edit): Add bogus ctx argument.
* rungpg.h: Also to prototype.
* engine.c (_gpgme_engine_op_edit): Likewise.
* engine.h: Likewise.
* edit.c (_gpgme_op_edit_start): Likewise.

22 years ago2002-08-30 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 30 Aug 2002 11:37:59 +0000 (11:37 +0000)]
2002-08-30  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Selecting Signers): Fix reference count.

22 years ago2002-08-30 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 30 Aug 2002 11:00:58 +0000 (11:00 +0000)]
2002-08-30  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_op_edit): Add args from signers.
Suggested by Miguel Coca <e970095@zipi.fi.upm.es>.

22 years agonew news
Werner Koch [Thu, 29 Aug 2002 11:58:41 +0000 (11:58 +0000)]
new news

22 years ago* vasprintf.c (va_copy): Define macro if not yet defined.
Werner Koch [Thu, 29 Aug 2002 11:58:22 +0000 (11:58 +0000)]
* vasprintf.c (va_copy): Define macro if not yet defined.

22 years ago* engine-gpgsm.c (_gpgme_gpgsm_op_sign): Implement signer
Werner Koch [Thu, 29 Aug 2002 11:57:53 +0000 (11:57 +0000)]
* engine-gpgsm.c (_gpgme_gpgsm_op_sign): Implement signer
selection.
* vasprintf.c (va_copy): Define macro if not yet defined.

22 years ago* acinclude.m4 (GNUPG_CHECK_VA_COPY): New.
Werner Koch [Thu, 29 Aug 2002 11:47:21 +0000 (11:47 +0000)]
* acinclude.m4 (GNUPG_CHECK_VA_COPY): New.
* configure.ac: Use it.

22 years ago2002-08-29 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 29 Aug 2002 10:24:21 +0000 (10:24 +0000)]
2002-08-29  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.spec.in: Changed user name in Wojciech Polak's email
address from ghostface to polak per request by himself.

22 years ago2002-08-29 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 29 Aug 2002 00:30:31 +0000 (00:30 +0000)]
2002-08-29  Marcus Brinkmann  <marcus@g10code.de>

* passphrase.c (_gpgme_passphrase_status_handler): Reset
CTX->result.passphrase->no_passphrase if passphrase is given (good
or bad).  Submitted by Jean DIRAISON <jean.diraison@free.fr>.

22 years ago2002-08-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 28 Aug 2002 20:31:31 +0000 (20:31 +0000)]
2002-08-28  Marcus Brinkmann  <marcus@g10code.de>

* posix-io.c (_gpgme_io_spawn): Use a double-fork approach.
Return 0 on success, -1 on error.
* version.c (_gpgme_get_program_version): Don't wait for the child.
* engine.c (_gpgme_engine_housecleaning): Function removed.
(do_reaping): Likewise.
(_gpgme_engine_add_child_to_reap_list): Likewise.
(struct reap_s): Removed.
(reap_list): Likewise.
(reap_list_lock): Likewise.
* engine.h (_gpgme_engine_io_event): Remove prototypes for
_gpgme_engine_housecleaning and
_gpgme_engine_add_child_to_reap_list.
* rungpg.c (_gpgme_gpg_release): Don't add child to reap list.
(struct gpg_object_s): Remove PID member.
(_gpgme_gpg_new): Don't initialize GPG->pid.
(_gpgme_gpg_spawn): Don't set GPG->pid.
* wait.c (run_idle): Removed.
(gpgme_wait): Run idle_function directly.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 28 Aug 2002 17:29:32 +0000 (17:29 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* encrypt-sign.c (encrypt_sign_status_handler): Remove dead
variables encrypt_info and encrypt_info_len.
* trustlist.c (gpgme_op_trustlist_start): Set colon line handler.
* posix-sema.c (sema_fatal): Remove function.
All these reported by St�phane Corth�sy.

22 years ago* configure.ac (GPGME_CONFIG_CFLAGS): Renamed from GPGME_CFLAGS
Werner Koch [Fri, 23 Aug 2002 19:48:43 +0000 (19:48 +0000)]
* configure.ac (GPGME_CONFIG_CFLAGS): Renamed from GPGME_CFLAGS
and removed the libpath because it is set by the config script.

22 years ago* gpgme-config.in: Made --prefix work for --libs.
Werner Koch [Fri, 23 Aug 2002 19:48:30 +0000 (19:48 +0000)]
* gpgme-config.in: Made --prefix work for --libs.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 21 Aug 2002 00:52:06 +0000 (00:52 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* NEWS: Add template for development version.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 21 Aug 2002 00:36:27 +0000 (00:36 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* configure.ac: Bump version number to 0.3.10.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de> gpgme-0-3-9
Marcus Brinkmann [Wed, 21 Aug 2002 00:09:52 +0000 (00:09 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

Released 0.3.9.

* NEWS: Update for 0.3.9 release.
* Makefile.am (EXTRA_DIST): Add gpgme.spec.in.

22 years agoUse gpgme_op_import_ext() instead of gpgme_op_import()
Steffen Hansen [Tue, 20 Aug 2002 23:37:43 +0000 (23:37 +0000)]
Use gpgme_op_import_ext() instead of gpgme_op_import()

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 23:25:49 +0000 (23:25 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Header): Document name space.

22 years agoRemove item about namespace, we are clean now.
Marcus Brinkmann [Tue, 20 Aug 2002 23:19:28 +0000 (23:19 +0000)]
Remove item about namespace, we are clean now.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 23:15:03 +0000 (23:15 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* ath.h: Update list of symbols that get a prefix: Rename the
ath_mutex_*_available symbols to ath_*_available.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 22:53:13 +0000 (22:53 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* jnlib/argparse.c, jnlib/argparse.h, jnlib/ChangeLog,
jnlib/dotlock.c, jnlib/dotlock.h, jnlib/libjnlib-config.h,
jnlib/logging.c, jnlib/logging.h,jnlib/Makefile.am,
jnlib/mischelp.h, jnlib/README, jnlib/stringhelp.c,
jnlib/stringhelp.h, jnlib/strlist.c, jnlib/strlist.h,
jnlib/types.h, jnlib/xmalloc.c, jnlib/xmalloc.h: Remove files.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 22:42:48 +0000 (22:42 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* Makefile.am (SUBDIRS): Remove jnlib.
* configure.ac: Don't check for unsigned short or unsigned long.
Don't check for memicmp, strlwr, strtoul, memmove, stricmp.
Make stpcpy a replaced function.
Don't define HAVE_JNLIB_LOGGING.
Don't generate jnlib/Makefile.

gpgme/
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* stpcpy.c: New file from gnulib.
* Makefile.am (assuan_libobjs): Remove jnlib.

22 years agoReplaced with a new and faster version. This does not anymore try to
Werner Koch [Tue, 20 Aug 2002 16:11:46 +0000 (16:11 +0000)]
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.

22 years ago2002-08-20 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 15:44:48 +0000 (15:44 +0000)]
2002-08-20  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Importing Keys): Undocument EOF.

22 years agodoc/
Marcus Brinkmann [Tue, 20 Aug 2002 13:38:40 +0000 (13:38 +0000)]
doc/
2002-08-20  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Importing Keys): Document gpgme_op_import_ext.

gpgme/
2002-08-20  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.h: Add prototype for gpgme_op_import_ext.
* import.c (struct import_result_s): New member `nr_considered'.
Rename `any_imported' to `nr_imported'.
(import_status_handler): Increment nr_imported.  Set nr_considered
if appropriate.
(gpgme_op_import_ext): New function.
(gpgme_op_import): Implement in terms of gpgme_op_import_ext.

22 years ago* vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s.
Werner Koch [Tue, 20 Aug 2002 11:59:38 +0000 (11:59 +0000)]
* vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s.

22 years agoAdded some feature requests.
Werner Koch [Tue, 20 Aug 2002 11:59:24 +0000 (11:59 +0000)]
Added some feature requests.

22 years ago2002-08-20 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 11:01:43 +0000 (11:01 +0000)]
2002-08-20  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.c (_gpgme_set_op_info): Append data on subsequent calls.
* encrypt-sign.c (encrypt_sign_status_handler): Remove op_info
handling.

22 years ago* decrypt.c (is_token,skip_token): Duplicated from verify.c
Werner Koch [Mon, 19 Aug 2002 16:55:08 +0000 (16:55 +0000)]
* decrypt.c (is_token,skip_token): Duplicated from verify.c
(gpgme_op_decrypt): Hack to properly return Decryption_Failed..
(_gpgme_decrypt_status_handler): Create an operation info.

22 years ago* key.h (struct certsig_s): New. Use it in gpgme_key_s.
Werner Koch [Wed, 14 Aug 2002 14:01:09 +0000 (14:01 +0000)]
* key.h (struct certsig_s): New.  Use it in gpgme_key_s.
* key.c (gpgme_key_release): Release it. We need to add more code
of course.
(_gpgme_key_append_name): Use memset to intialize the struct.
* 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.

* keylist.c (keylist_colon_handler): Include 1 in the check for
valid algorithms so that RSA is usable.  Store the issuer name and
serial number also for "crs" records.  Parse the expire date for
subkeys.
(set_userid_flags): Put them onto the last appended key.

22 years ago* gpgme.texi (Information About Keys): Changed GPGME_ATTR_TYPE.
Werner Koch [Wed, 14 Aug 2002 13:57:59 +0000 (13:57 +0000)]
* gpgme.texi (Information About Keys): Changed GPGME_ATTR_TYPE.

22 years agoFixed a missing update in the fix to the update conflict ;)
Marcus Brinkmann [Fri, 2 Aug 2002 10:43:58 +0000 (10:43 +0000)]
Fixed a missing update in the fix to the update conflict ;)
(STATUS_EOF -> GPGME_STATUS_EOF).

22 years agoCorrect path to test programs.
Marcus Brinkmann [Thu, 1 Aug 2002 17:40:38 +0000 (17:40 +0000)]
Correct path to test programs.

22 years ago2002-08-01 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 1 Aug 2002 16:02:19 +0000 (16:02 +0000)]
2002-08-01  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-edit.c: Also add a test for the expire command (testing
the passphrase callback).

22 years agoFixed an update conflict.
Werner Koch [Thu, 1 Aug 2002 10:16:21 +0000 (10:16 +0000)]
Fixed an update conflict.

22 years agonew cryptplug function importCertificateFromMem()
Steffen Hansen [Wed, 31 Jul 2002 12:37:34 +0000 (12:37 +0000)]
new cryptplug function importCertificateFromMem()

22 years ago2002-07-29 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Mon, 29 Jul 2002 11:01:53 +0000 (11:01 +0000)]
2002-07-29  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_op_edit): Use --with-colons.

22 years agoAdd items about the edit key operation.
Marcus Brinkmann [Sun, 28 Jul 2002 18:45:52 +0000 (18:45 +0000)]
Add items about the edit key operation.

22 years ago2002-07-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 28 Jul 2002 18:43:48 +0000 (18:43 +0000)]
2002-07-28  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-edit.c: New file.
* gpg/Makefile (TESTS): Add t-edit.

22 years ago2002-07-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 28 Jul 2002 18:41:02 +0000 (18:41 +0000)]
2002-07-28  Marcus Brinkmann  <marcus@g10code.de>

* data.c (gpgme_data_read): For GPGME_DATA_TYPE_NONE, return EOF
instead an error.

The following changes make it possible to flush an inbound data
pipe before invoking a command handler:

* posix-io.c (_gpgme_io_select): Accept new argument NONBLOCK to
_gpgme_io_select.  Set timeout of 0 if this is set.
* w32-io.c (_gpgme_io_select): Likewise.
* io.h: Add new argument NONBLOCK to _gpgme_io_select prototype.
* wait.c (do_select): Add new argument to _gpgme_io_select
invocation.
* rungpg.h (_gpgme_gpg_set_command_handler): Add new argument
linked_data to prototype.
* engine.h (_gpgme_engine_set_command_handler): Likewise.
* engine.c (_gpgme_engine_set_command_handler): Likewise.
* passphrase.c (_gpgme_passphrase_start): Pass NULL as linked_data
argument to _gpgme_engine_set_command_handler.
* rungpg.c (struct gpg_object_s): New members linked_data and
linked_idx in CMD.
(_gpgme_gpg_new): Initialize those new members.
(_gpgme_gpg_set_command_handler): Accept new argument linked_data.
(build_argv): Handle linked_data in the same hack as cb_data.
(read_status): If linked_data is in use, flush the pipe before
activating the command handler.
* gpgme.h: Add prototypes for gpgme_op_edit_start and
gpgme_op_edit.

The next changes export the status codes to the user:

* decrypt.c (_gpgme_decrypt_status_handler): Likewise, also prefix
all STATUS_ with GPGME_.
* delete.c (delete_status_handler): Likewise.
* decrypt-verify.c (decrypt_verify_status_handler): Likewise.
* encrypt.c (_gpgme_encrypt_status_handler): Likewise.
(_gpgme_encrypt_sym_status_handler): Likewise.
* encrypt-sign.c (encrypt_sign_status_handler): Likewise.
* engine-gpgsm.c (parse_status): Likewise.
(gpgsm_status_handler): Likewise.
(gpgsm_set_recipients): Likewise.
* export.c (export_status_handler): Likewise.
* genkey.c (genkey_status_handler): Likewise.
* import.c (append_xml_impinfo): Likewise.
(import_status_handler): Likewise.
* keylist.c (keylist_status_handler): Likewise.
* passphrase.c (_gpgme_passphrase_status_handler): Likewise.
(command_handler): Likewise.
* progress.c (_gpgme_progress_status_handler): Likewise.
* sign.c (_gpgme_sign_status_handler): Likewise.
* trustlist.c (trustlist_status_handler): Likewise.
* verify.c (_gpgme_verify_status_handler): Likewise.
* gpgme.h (GpgmeEditCb): New type.
* rungpg.h (GpgStatusCode): Rename and move to ...
* gpgme.h (GpgmeStatusCode): ... this and here.
* Makefile.am (status-table.h): Run mkstatus on gpgme.h, not rungpg.h.
* mkstatus: Prefix STATUS with GPGME_.
* rungpg.h (GpgStatusHandler, GpgCommandHandler): Change type
accordingly.
* ops.h (_gpgme_verify_status_handler,
_gpgme_decrypt_status_handler, _gpgme_sign_status_handler,
_gpgme_encrypt_status_handler, _gpgme_passphrase_status_handler,
_gpgme_progress_status_handler): Likewise.
* 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.
* passphrase.c (command_handler): Make non-static and rename to ...
(_gpgme_passphrase_command_handler): ... this.
(_gpgme_passphrase_start): Use new name for command handler.
* types.h: Add EditResult type.
* gpgme.c (_gpgme_release_result): Release EDIT result.
* edit.c: New file.
* Makefile.am (libgpgme_la_SOURCES): Add edit.c.
(libgpgme_la_LDADD): Rename to libgpgme_la_LIBADD, and include
assuan_libobjs.
(assuan_libobjs): New variable, set this instead
libgpgme_la_LIBADD.
* engine.h (_gpgme_engine_op_edit): New prototype.
* engine.c (_gpgme_engine_op_edit): New function.
* rungpg.h (_gpgme_gpg_op_edit): New prototype.
* rungpg.c (_gpgme_gpg_op_edit): New function.

22 years agoUpdate the file.
Marcus Brinkmann [Sat, 27 Jul 2002 20:21:36 +0000 (20:21 +0000)]
Update the file.

22 years ago2002-07-27 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 27 Jul 2002 14:24:07 +0000 (14:24 +0000)]
2002-07-27  Marcus Brinkmann  <marcus@g10code.de>

* delete.c (delete_problem): New case ambigious specification.
(delete_status_handler): Handle new case (poorly).

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 18:50:23 +0000 (18:50 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Deleting Keys): Say that secret keys might not be
deleted.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 18:44:57 +0000 (18:44 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (_gpgme_gpgsm_op_delete): Implement this.

22 years agoUpdate version information.
Marcus Brinkmann [Thu, 25 Jul 2002 18:20:23 +0000 (18:20 +0000)]
Update version information.

22 years agoUpdate version requirement.
Marcus Brinkmann [Thu, 25 Jul 2002 18:15:52 +0000 (18:15 +0000)]
Update version requirement.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 18:15:11 +0000 (18:15 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-encrypt-sym.c (main): Change type of I to size_t and
rename to LEN.
* gpg/t-verify.c (main): Likewise.  Submitted by St�phane
Corth�sy.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 17:51:42 +0000 (17:51 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* Makefile.am (libgpgme_la_LDADD): Add @LIBOBJS@ for vasprintf and
fopencookie.
* vasprintf.c: Update to more recent libiberty version.
* debug.h: Replace #elsif with #elif.

Submitted by St�phane Corth�sy:
* util.h (vasprintf): Correct prototype.
* encrypt-sign.c: Include <stddef.h>.
(encrypt_sign_status_handler): Change type of ENCRYPT_INFO_LEN to
size_t.
* ath-pthread.c: Include <stdlib.h>, not <malloc.h>.
* ath-pth.c: Likewise.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 16:08:14 +0000 (16:08 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_new): Always set utf8 as charset.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 16:01:55 +0000 (16:01 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* key.c (gpgme_key_get_as_xml): Add OTRUST attribute.  Requested
by St�phane Corth�sy.
(gpgme_key_get_string_attr): Add GPGME_ATTR_SIG_SUMMARY case to
silence gcc warning.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 15:52:23 +0000 (15:52 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Manipulating Data Buffers): Mention that backend
tries to detect encoding automatically.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 15:50:46 +0000 (15:50 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Information About Keys): Document (badly) the new
key attributes.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 15:45:40 +0000 (15:45 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_op_keylist_ext): Skip empty string
patterns.  Reported by St�phane Corth�sy.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 15:33:03 +0000 (15:33 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* wait.c (fdt_global): Make static.  Reported by St�phane
Corth�sy.

22 years agoCRASH prevention fix: Memory was overwritten if there were more than 1 email address...
Karl-Heinz Zimmer [Thu, 4 Jul 2002 00:02:19 +0000 (00:02 +0000)]
CRASH prevention fix: Memory was overwritten if there were more than 1 email address in a signature certificate found in checkMessageSignature() function.

22 years agofixing bug #1154
Karl-Heinz Zimmer [Wed, 3 Jul 2002 15:43:41 +0000 (15:43 +0000)]
fixing bug #1154

22 years ago* gpgmeplug.c (nextCertificate): Actually free the entire array
Werner Koch [Wed, 3 Jul 2002 11:04:54 +0000 (11:04 +0000)]
* gpgmeplug.c (nextCertificate): Actually free the entire array
and don't loop over tmp_dn and double free the first item.
Spotted by Bernhard Herzog.