More questions on gpgme
Stephane Corthesy
stephane@sente.ch
Thu Sep 27 19:00:02 2001
Hi,
Here are some more questions on gpgme use:
- Is there a particular return code we can expect when sign
operation has been cancelled, either user cancelled entry, or program
aborted context operation? Can we always expect GPGME_No_Data to be
returned for this case only?
- There is an inconsistent behaviour: if we pass three times an
invalid (but non empty) passphrase, return code is GPGME_No_Data, but
if we pass three times an empty (and invalid) passphrase, we get
GPGME_No_Passphrase.
- I have the following problem: my passphrase callback wants to find
the GpgmeKey corresponding to the keyID given in the passphrase
callback (using gpgme_op_trustlist_start()), but DURING the
passphrase callback. If I use the same GpgmeContext as the one which
is currently asking for a passphrase, my app crashes: the r_hd in the
callback has become invalid; if I use a brand new one, the callback
is called recursively, when I ask to enumerate keys.
Seems there is no way to retrieve the corresponding GpgmeKey during
passphrase callback... This could be OK when signing, 'cause I know
the key, but this is not the case when decrypting (though I didn't
test this case yet).
- Currently there is no way to perform encrypt+sign operations!!!
gpgme_signers_add() cannot be used for gpgme_op_encrypt().
- Is there a way to get the currently used hash algorithm? Or to set
it in a GpgmeContext operation?
Thanks,
Stephane