Found it: I did not initialize gpgme_op_interact's last parameter out with gpgme_data_new. The error is now gone.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Feb 17 2022
Feb 14 2022
Since you are using C++, I suggest that you have a look at GpgSetOwnerTrustEditInteractor in the C++ bindings of gpgme. Have a look at QGpgMEChangeOwnerTrustJob in the Qt bindings of gpgme to see how it's used even if you do not want to use Qt.
Feb 13 2022
Feb 10 2022
Feb 7 2022
Feb 2 2022
Jan 31 2022
Jan 24 2022
Yes, kleo always maps '+' -> ' '
Jan 21 2022
This looks like a missing escaping issue in the sender (scdaemon?) or an unwanted unescaping issue in the receiver of the string (which uses Kleo::hexdecode()).
Jan 20 2022
Thanks
gpgme_key_t is a different kind of object than a gpgme_foo_result_t and thus has different properties.
Jan 12 2022
Dec 17 2021
Thanks!
I will study it soon.
Dec 16 2021
Use the source! GnuPG is free software.
Dec 15 2021
I tested the change of last_update after importing a same key with different content, but found that there is still no change.
Dec 14 2021
On import. Please use gnupg-devel mailing list for further API questions. This is a bug tracker and not a help forum.
Dec 13 2021
Nice. The way with KS_GET and assuan is much better then I thought about using a temporary home and a --locate-key
Dec 10 2021
Dec 7 2021
Dec 6 2021
Nov 25 2021
Nov 22 2021
Nov 15 2021
Nov 10 2021
Also applied to gpgme.
Nov 4 2021
For libgcrypt, it was fixed in: T5637: Use poll for libgcrypt (support more than 1024 fds)
Oct 20 2021
The below change makes the function report a general error if gpgconf didn't write any output on stdout:
diff --git a/src/engine-gpgconf.c b/src/engine-gpgconf.c index 28f91158..21211366 100644 --- a/src/engine-gpgconf.c +++ b/src/engine-gpgconf.c @@ -1245,6 +1245,13 @@ gpgconf_query_swdb (void *engine, } }
Oct 5 2021
Oct 4 2021
Sep 29 2021
Hi, was there any update on this? I found the following bug [0] in libgcrypt, which we solved [1] with using poll ages ago.
Sep 21 2021
Please see T5587
Sep 8 2021
Please talk to the KDE folks who develop Craft. We do not support building anything with Craft. Check out gpg4win (https://dev.gnupg.org/source/gpg4win/) to see how we build our products on Windows.
Sep 5 2021
Nevermind, I found the appropriate link above, thanks again.
Thanks for noticing me but I can't access your git repository at https://dev.gnupg.org/source/gnupg.git and the github mirror at https://github.com/gpg/gpgme is not up to date. Do you have an other mirror?
Thanks. This has already been fixed in July with rM4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e
Sep 1 2021
I filed a bug report to GCC, with modified test case.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102151
Aug 25 2021
Aug 24 2021
t-fam.c: In function 'main':
t-fam.c:34:14: warning: array subscript 'struct arg_and_data_s[0]' is partly outside array bounds of 'unsigned char[22]' [-Warray-bounds]
34 | aad0->next = NULL;
| ^
t-fam.c:30:10: note: referencing an object of size 22 allocated by 'malloc'
30 | aad0 = malloc (offsetof (struct arg_and_data_s, arg) + 2);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
t-fam.c:35:13: warning: array subscript 'struct arg_and_data_s[0]' is partly outside array bounds of 'unsigned char[22]' [-Warray-bounds]
35 | aad0->len = 2;
| ~~~~~~~~~~^~~
t-fam.c:30:10: note: referencing an object of size 22 allocated by 'malloc'
30 | aad0 = malloc (offsetof (struct arg_and_data_s, arg) + 2);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
t-fam.c:36:15: warning: array subscript 'struct arg_and_data_s[0]' is partly outside array bounds of 'unsigned char[22]' [-Warray-bounds]
36 | aad0->flags = 0;
| ~~~~~~~~~~~~^~~
t-fam.c:30:10: note: referencing an object of size 22 allocated by 'malloc'
30 | aad0 = malloc (offsetof (struct arg_and_data_s, arg) + 2);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
t-fam.c:37:18: warning: array subscript 'struct arg_and_data_s[0]' is partly outside array bounds of 'unsigned char[22]' [-Warray-bounds]
37 | aad0->print_fd = fd;
| ~~~~~~~~~~~~~~~^~~~
t-fam.c:30:10: note: referencing an object of size 22 allocated by 'malloc'
30 | aad0 = malloc (offsetof (struct arg_and_data_s, arg) + 2);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~For GCC 11, modified version of struct arg_and_data_s has an issue for x86_64.
Aug 23 2021
For the use case of struct arg_and_data_s in gpgme, which may allocate zero-sized ARG[], it seems that GCC 11 interprets it as an invalid use.
Aug 17 2021
Aug 13 2021
Jul 28 2021
dlopen'ing of gpgme is NOT SUPPORTED. It is in general not a good idea to do this on standard Unix systems.
To extend on this: dlopen'ing of gpgme is NOT SUPPORTED. It is in general not a good idea to do this on standard Unix systems. On Windows we could make it work because DLLs on that platform are well designed and not a hack like the Unix shared objects.
Jul 27 2021
We really want thunderbird users that interact with GPGME to have a great and stable user experience, but the problem with dynamic loading and self compiled versions is that we cannot really know the build settings and enviornment and it is very time consuming to reproduce that. GPGME does some very low level things for optimized IPC that can depend on build options etc. This is why I am mostly in favor that thunderbird ships a defined version that we can debug and see the settings.
Reading the mozilla entry more carefully, there still seems to be an issue.
https://blog.gerv.net/2012/01/mozilla-projects-and-gpled-code/
@kaie, thanks for the pointer!
Jul 26 2021
In T5250#148131, @bernhard wrote:BTW @kaie
Thunderbird cannot use anything requiring GPL in its default configuration, because Thunderbird wants to distribute a single MPL licensed package that includes all components that are required for OpenPGP.
Any pointer why, they have made that choice, though? A bundle of MPL and GNU GPL components is fully allowed by the licenses as far as I know.
Jul 24 2021
Using GPGME is probably the best way, even if gpgme-json might also work for some operations.
Jul 19 2021
This is a duplicate of T5522: gpgme: qt: t-various.cpp TestVarious::testSignKeyWithExpiration fails on 32 bit.
Jul 8 2021
rM6a79e90dedc19877ae1c520fed875b57089a5425 looks good
Jul 7 2021
Thanks for the reply, this source code file and suggestions are very useful. Let gpg execute commands is a solution, but it is not optimal compared to providing a functional interface.
In addition, it is reversible to revoke the subkey by expiring it. But I will use the solutions you provide at this stage, knowing that you have time to provide better solutions. thank you!
What do you mean by "exporting revocation certificates"? Once such a certificate is imported you simply export the public key including the revocation signature. Otherwise, simply takes the revocation certificates from ${GNUPGHOME}/openpgp-revocs.d where they are written to, if you generate a key. Kleopatra uses gpg directly to generate a revocation certificate mimicking what gpgme would do: See https://dev.gnupg.org/source/kleo/browse/master/src/commands/genrevokecommand.cpp.
Jul 6 2021
Jun 29 2021
Jun 26 2021
Thanks for the report. Fixed.
Jun 25 2021
Thanks for the report.