* gpgme.c (_gpgme_release_result): Call
_gpgme_release_delete_result.
* ops.h (_gpgme_release_delete_result): Add prototype.
* types.h (DeleteResult): New type.
* context.h (gpgme_context_s): Add DeleteResult to member result.
* delete.c (enum delete_problem): New type.
(struct delete_result_s): New structure.
(_gpgme_release_delete_result): New function.
(delete_status_handler): Implement more status codes.
(gpgme_op_delete): Return error on failure.
* import.c (MAX_IMPORTED_FIELDS): Bump up to 14.
2002-01-22 Marcus Brinkmann <marcus@g10code.de>
* gpgme.texi (Passphrase callback): Change GpgmePassphraseCb's
R_HD type from void* to void**.
gpgme/
2002-01-22 Marcus Brinkmann <marcus@g10code.de>
* gpgme.h (GpgmePassphraseCb): Change type of R_HD from void* to
void**.
tests/
2002-01-22 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-signers.c (passphrase_cb): Change type of r_hd to void**.
* gpg/t-sign.c (passphrase_cb): Likewise.
* gpg/t-decrypt-verify.c (passphrase_cb): Likewise.
* gpg/t-decrypt.c (passphrase_cb): Likewise.
* gpgme.c: Various source clean ups, like renaming C to CTX where
appropriate.
(gpgme_new): Clear R_CTX before starting the work.
(my_isdigit): Removed.
(my_isxdigit): Likewise.
* data.c: Various source clean ups.
(gpgme_data_new_from_mem): Check BUFFER after clearing R_DH.
(gpgme_data_new_with_read_cb): Similar for READ_CB.
(gpgme_data_new_from_file): Loop over fread while EINTR.
(gpgme_data_new_from_filepart): Rediddled a bit. Allow LENGTH to
be zero. Loop over fread while EINTR.
(my_isdigit): Removed.
(my_isxdigit): Likewise.
* passphrase.c: New file.
* Makefile.am (libgpgme_la_SOURCES): Add passphrase.c.
* ops.h (_gpgme_passphrase_result): Add prototypes from
passphrase.c.
* types.h: Likewise.
* context.h: Add member passphrase to result.
* gpgme.c (_gpgme_release_result): Release passphrase member.
* decrypt.c: Some formatting and variable name changes (like
CTX instead C).
(struct decrypt_result_s): Remove members now found in
passphrase result.
(_gpgme_release_decrypt_result): Don't release removed members.
(decrypt_status_handler): Call _gpgme_passphrase_status_handler,
and don't handle the cases catched there.
(command_handler): Removed.
(gpgme_op_decrypt_start): Don't set command handler, but invoke
_gpgme_passphrase_start which does it.
(gpgme_op_decrypt): Invoke _gpgme_passphrase_result and drop the
cases covered by it.
* sign.c Some formatting and variable name changes (like
CTX instead C).
(struct sign_result_s): Remove members now found in
passphrase result.
(_gpgme_release_sign_result): Don't release removed members.
(sign_status_handler): Call _gpgme_passphrase_status_handler,
and don't handle the cases catched there.
(command_handler): Removed.
(gpgme_op_sign_start): Don't set command handler, but invoke
_gpgme_passphrase_start which does it.
(gpgme_op_sign): Invoke _gpgme_passphrase_result and drop the
cases covered by it.
* verify.c (_gpgme_release_verify_result): Rename RES to RESULT.
Rename R2 to NEXT_RESULT.
(intersect_stati): Rename RES to RESULT.
(gpgme_get_sig_status): Likewise. Do not check return_type, but
the member verify of result.
(gpgme_get_sig_key): Likewise.
* sign.c (_gpgme_release_sign_result): Rename RES to RESULT. If
RESULT is zero, return.
(sign_status_handler, command_handler): Do not check return_type,
but the member sign of result.
(gpgme_op_sign): Likewise. Drop assertion.
* encrypt.c (_gpgme_release_encrypt_result): Rename RES to RESULT.
If RESULT is zero, return.
(encrypt_status_handler): Do not check return_type, but the member
encrypt of result.
(gpgme_op_encrypt): Likewise. Drop assertion.
* decrypt.c (_gpgme_release_decrypt_result): Rename RES to RESULT.
(create_result_struct): Do not set result_type.
(command_handler, decrypt_status_handler): Do not check
return_type, but the member decrypt of result.
(gpgme_op_decrypt): Likewise. Drop assertion.
* context.h (enum ResultType): Removed.
(struct gpgme_context_s): Remove member result_type.
(struct result): Replaces union result.
* gpgme.c: Include string.h.
(_gpgme_release_result): Release all members of c->result, which
is now a struct. Zero out all members of the struct afterwards.