Problems with GPGME returning "Not Implemented" or "Configuration error"
Jeffrey Stedfast
jestedfa at microsoft.com
Mon Feb 27 15:20:38 CET 2017
Hi all,
I'm working on re-implementing GMime to use libgpgme (1.8.0 on Fedora 25) instead of using my own custom logic for fork()ing/exec()ing gpg & parsing the status-fd output to do PGP encryption and I've gotten that to work just fine for PGP, but I am having trouble using nearly identical logic (only diff is armor/textmode state) to sign or encrypt using the CMS backend.
For some reason, gpgme_op_sign() is returning GPG_ERR_NOT_IMPLEMENTED while gpgme_op_encrypt() is returning "Configuration error".
>From what I can deduce by scouring the web for information, it seems like NOT_IMPLEMENTED should never get returned unless I am using options that just haven't been implemented yet but that doesn't seem like it should be the case since I don't think I'm doing anything out of the ordinary.
When signing, I've set armor=0, textmode=0, mode=DETACH (or NORMAL), and added a signer to the context.
For encrypting, I am getting "Configuration error" which I'm also confused about because I don't know what configuration options could be causing this.
Once again, armor=0, textmode=0, flags=0, and I've created a NULL-terminated list of recipient keys to pass to gpgme_op_encrypt().
Since my unit tests are re-using the same gpgme context to import some smime certs, then export some certs, then sign some streams, etc - could that be the problem? As I write this email, I realize that's something I haven't yet checked...
All I can think of is that perhaps there is some leftover state from gpgme_op_import() or gpgme_op_export_ext() that is breaking the gpgme_op_sign() when run at a later point?
Thanks for any help or guidance in tracking down these issues,
Jeff
More information about the Gnupg-users
mailing list