Page MenuHome GnuPG
Feed Advanced Search

Jun 17 2016

aheinecke added a comment to T2314: Improve detection of gpgme_data_identify.

Would it be possible to also detect if data should be decrypt_verified or just
verified?

I'm having trouble with PGP MESSAGES that can be either encrypted or Opaque
Signed, or nothing.

If I do a decrypt_verify I get a No Data error in the result because decryption
failed. Should I just ignore No Data error and check for the status of the
signatures in that case?

Jun 17 2016, 4:23 PM · gpgme, Feature Request, gpg4win

Jun 15 2016

werner added a comment to T2385: support more than 1024 fds..

poll is not available on all platforms and has other semantics. Thus we will
introduce new bugs. We are planning to move some of the lower level I/O stuff
to libgpg-error and in the course of this we will fix this problem.

Jun 15 2016, 8:13 AM · gpgrt, Feature Request, gpgme

Jun 14 2016

vperelman added a comment to T2385: support more than 1024 fds..

Just curious, why can you not start using poll() instead of select()?

Jun 14 2016, 11:06 PM · gpgrt, Feature Request, gpgme
werner added a comment to T2385: support more than 1024 fds..

We can't easily solve this. For now I pushed a fix to return an error instead
of crashing. (commit 8173c4f). Thanks for reporting.

Jun 14 2016, 8:41 AM · gpgrt, Feature Request, gpgme
vperelman added projects to T2385: support more than 1024 fds.: Bug Report, gpgme.
Jun 14 2016, 12:14 AM · gpgrt, Feature Request, gpgme

Jun 1 2016

werner added a comment to T2373: GPA should explain problems with expired subkeys..

Do you mean "unusable public key"? That might be due to an expired or revoked
subkey of that key.

Jun 1 2016, 2:02 PM · Feature Request, gpa

May 31 2016

MrBazuki added a comment to T2373: GPA should explain problems with expired subkeys..

May 31 2016, 2:28 PM · Feature Request, gpa
MrBazuki added projects to T2373: GPA should explain problems with expired subkeys.: Bug Report, gpgme.
May 31 2016, 2:28 PM · Feature Request, gpa
MrBazuki set Version to GPA 0.9.1 & 0.9.9 on T2373: GPA should explain problems with expired subkeys..
May 31 2016, 2:28 PM · Feature Request, gpa

May 27 2016

aheinecke claimed T2368: Integer overflow in gpgme_progress_cb arguments.
May 27 2016, 11:40 AM · gpgme, Bug Report
aheinecke added a comment to T2368: Integer overflow in gpgme_progress_cb arguments.

No, I'll do a Version check in for the GnuPG Version in Kleo master and I won't
backport any changes to the KDE4 / Gpg4win stable variant.

I'm assigning testing to me, I'll test it by using it in Kleo :-)

May 27 2016, 11:40 AM · gpgme, Bug Report
werner added a project to T2368: Integer overflow in gpgme_progress_cb arguments: Restricted Project.
May 27 2016, 11:31 AM · gpgme, Bug Report
werner added a comment to T2368: Integer overflow in gpgme_progress_cb arguments.

Done with commit 6c957c3.
Do we need to backport this?

May 27 2016, 11:31 AM · gpgme, Bug Report
aheinecke added a comment to T2368: Integer overflow in gpgme_progress_cb arguments.

The best solution I can see is to keep CURENT and TOTAL in gpg below 2^31.

Ok, this would work for me, too.

May 27 2016, 10:50 AM · gpgme, Bug Report
werner added a comment to T2368: Integer overflow in gpgme_progress_cb arguments.

Actually the specs does not say anything about the valid range of the values.

However, gpg uses unsigned long for CURRENT and TOTAL in the progress status
lines for decryption. Unfortunatley the WHAT value is set to the filename and
thus there is no easy way to determine in GPGME how CURRENT and TOTAL are used.

The best solution I can see is to keep CURENT and TOTAL in gpg below 2^31. This
can be done by switching from bytes to KiB and MiB before the 2^31 limit is
reached. I checked GPA and it should not chnage anything, due to

    gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (pbar),
				   (gdouble) current / (gdouble) total);
May 27 2016, 10:05 AM · gpgme, Bug Report

May 25 2016

aheinecke added projects to T2368: Integer overflow in gpgme_progress_cb arguments: Bug Report, gpgme.
May 25 2016, 5:49 PM · gpgme, Bug Report
aheinecke set Version to master on T2368: Integer overflow in gpgme_progress_cb arguments.
May 25 2016, 5:49 PM · gpgme, Bug Report

May 24 2016

aheinecke updated subscribers of T2314: Improve detection of gpgme_data_identify.
May 24 2016, 10:07 AM · gpgme, Feature Request, gpg4win
aheinecke assigned T2314: Improve detection of gpgme_data_identify to werner.
May 24 2016, 10:07 AM · gpgme, Feature Request, gpg4win
aheinecke added a comment to T2314: Improve detection of gpgme_data_identify.

CRL detection is not really important. But detection of binary data is so that I
can properly handle .pgp and .gpg file extensions.

Detached signatures are also important so that I can look / guess for the signed
data and setup the verify operation accordingly or handle it in the GUI if no
Data is found. Maybe we can use flags for this so we don't break the current
behaviror that does not distinguish between detached signatures?

May 24 2016, 10:07 AM · gpgme, Feature Request, gpg4win

May 20 2016

werner added a project to T2360: Add support for TOFU in GpgME: In Progress.
May 20 2016, 1:37 PM · gnupg (gpg22), gpgme, Feature Request

May 17 2016

justus closed T2264: Merging pyme as language binding in gpgme master as Resolved.
May 17 2016, 4:43 PM · gpgme, Feature Request
justus removed a project from T2264: Merging pyme as language binding in gpgme master: In Progress.
May 17 2016, 4:43 PM · gpgme, Feature Request
justus added a comment to T2264: Merging pyme as language binding in gpgme master.

Fixed in 4711a1e1.

May 17 2016, 4:43 PM · gpgme, Feature Request
aheinecke set Version to master on T2360: Add support for TOFU in GpgME.
May 17 2016, 12:23 PM · gnupg (gpg22), gpgme, Feature Request
aheinecke added projects to T2360: Add support for TOFU in GpgME: Feature Request, gnupg (gpg21), gpgme.
May 17 2016, 12:23 PM · gnupg (gpg22), gpgme, Feature Request

May 12 2016

justus added a comment to T2264: Merging pyme as language binding in gpgme master.

Quoting Ben McGinnes (2016-05-11 19:54:21)

On Wed, May 11, 2016 at 12:44:00PM +0000, Justus Winter via BTS wrote:

Justus Winter <justus@g10code.com> added the comment:

I have integrated the Python bindings into our build system. See branch
'justus/pyme3'.

Open issues:

  • (API) Change the name of the Python module. Currently it is named 'pyme',

shouldn't we use 'gpgme' instead?

No, simply because other (abandoned) attempts at writing wrappers for
GPGME already exist in the Python ecosystem. If we rename a module to
match the name of an existing one this will break things somewhere.
It also makes us no different from poor Isis Lovecruft who selected
the name gnupg for her fork of python-gnupg, but the original was
always imported as just gnupg so when she increased the version number
of her fork she broke a *lot* of things in other people's code.

That's also why the entirely new thing I've called GPyGME, not just to
play word games with Pygmy, but also because the name is not used by
any existing Python module.

May 12 2016, 11:34 AM · gpgme, Feature Request

May 11 2016

justus added a project to T2264: Merging pyme as language binding in gpgme master: In Progress.
May 11 2016, 2:44 PM · gpgme, Feature Request
justus added a comment to T2264: Merging pyme as language binding in gpgme master.

I have integrated the Python bindings into our build system. See branch
'justus/pyme3'.

Open issues:

  • (API) Change the name of the Python module. Currently it is named 'pyme',

shouldn't we use 'gpgme' instead?

  • (API) One has to hand 'bytes' objects to pyme where 'char *' is expected. We

should make SWIG magically encode strings as utf-8 instead.

  • Documentation. Needs to be build, likely updated, and installed. Ben was

thinking about using another tool for this. Needs investigation.

  • No test suite.
  • 'lang/python/examples/simple.py' segfaults.
May 11 2016, 2:44 PM · gpgme, Feature Request
justus renamed T2352: doc/version.texi is sometimes not generated from doc/version.texi is only generated if configured with --enable-maintainer-mode to doc/version.texi is sometimes not generated.
May 11 2016, 1:29 PM · gpgme, Bug Report
justus added a comment to T2352: doc/version.texi is sometimes not generated.

Hmm, it is not about the maintainer mode...

May 11 2016, 1:29 PM · gpgme, Bug Report
justus added projects to T2352: doc/version.texi is sometimes not generated: Bug Report, gpgme.
May 11 2016, 1:11 PM · gpgme, Bug Report

May 10 2016

werner reassigned T2264: Merging pyme as language binding in gpgme master from gnupg-hackers to justus.
May 10 2016, 8:44 AM · gpgme, Feature Request
werner updated subscribers of T2264: Merging pyme as language binding in gpgme master.
May 10 2016, 8:44 AM · gpgme, Feature Request
werner added a comment to T2264: Merging pyme as language binding in gpgme master.

Justus, can you take care of this?

May 10 2016, 8:44 AM · gpgme, Feature Request

Apr 16 2016

werner closed T2304: Buffer Overrun in GPGME encrypt-sign.c:168? as Resolved.
Apr 16 2016, 10:46 AM · gpgme, Not A Bug, Bug Report

Apr 15 2016

dylanetaft added a comment to T2304: Buffer Overrun in GPGME encrypt-sign.c:168?.

Apr 15 2016, 4:58 PM · gpgme, Not A Bug, Bug Report
dylanetaft added a comment to T2304: Buffer Overrun in GPGME encrypt-sign.c:168?.

Thank you! All set.

Apr 15 2016, 4:58 PM · gpgme, Not A Bug, Bug Report
werner added projects to T2304: Buffer Overrun in GPGME encrypt-sign.c:168?: Not A Bug, gpgme.
Apr 15 2016, 8:59 AM · gpgme, Not A Bug, Bug Report

Apr 12 2016

aheinecke added projects to T2314: Improve detection of gpgme_data_identify: gpg4win, Feature Request, gpgme.
Apr 12 2016, 3:35 PM · gpgme, Feature Request, gpg4win

Feb 23 2016

aheinecke added projects to T2264: Merging pyme as language binding in gpgme master: Feature Request, gpgme.
Feb 23 2016, 10:21 AM · gpgme, Feature Request
aheinecke updated subscribers of T2264: Merging pyme as language binding in gpgme master.
Feb 23 2016, 10:21 AM · gpgme, Feature Request

Jan 25 2016

werner added a comment to T1415: gpgme_cancel() does not stop gpg process from finishing asynchronous call.

GnuPG 2.1.11 will print PROGRESS lines which allows in connection with
--exit-on-status-write-error to use that correctly. We should add that option
to gpg invocation of gpgme, though.

Jan 25 2016, 11:49 AM · gpgme, Bug Report, Debian
werner added a project to T1415: gpgme_cancel() does not stop gpg process from finishing asynchronous call: In Progress.
Jan 25 2016, 11:49 AM · gpgme, Bug Report, Debian
werner reopened T1415: gpgme_cancel() does not stop gpg process from finishing asynchronous call as "Open".
Jan 25 2016, 11:49 AM · gpgme, Bug Report, Debian

Nov 20 2015

neal closed T2061: Receiving keys from server fails as Resolved.
Nov 20 2015, 1:55 PM · gpgme, Bug Report

Oct 29 2015

aheinecke added a comment to T2092: Gpgme-pthread keylist not thread safe.

I've just disabled the unit tests in Kleopatra that expose this bug.
The tests should be renabled depending on a version check for a version of gpgme
where the problems are fixed.

Oct 29 2015, 7:46 PM · gpgme, Bug Report, kleopatra

Sep 21 2015

werner removed a project from T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work: Restricted Project.
Sep 21 2015, 8:56 AM · gpgme, Bug Report
werner closed T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work as Resolved.
Sep 21 2015, 8:56 AM · gpgme, Bug Report

Sep 9 2015

aheinecke added a comment to T2092: Gpgme-pthread keylist not thread safe.

Sep 9 2015, 10:30 AM · gpgme, Bug Report, kleopatra
aheinecke added a comment to T2092: Gpgme-pthread keylist not thread safe.

I've searched for the context in question and it turns out the last 1000 lines
are not nearly enough to follow it.

So here is the full log of that run.

Sep 9 2015, 10:30 AM · gpgme, Bug Report, kleopatra
aheinecke added a comment to T2092: Gpgme-pthread keylist not thread safe.

I can still see the asserts and segfaults when running the tests in gdb or with
logging enabled. So it's not a heisenbug ;-) (Although I was never able to get a
backtrace from kleopatras unit test. That test passed when running in gdb)

Do you want me to provide you with logs?

Here is an example segfault:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffe50f01700 (LWP 25135)]
0x00007ffff7babfe3 in _gpgme_wait_on_condition (ctx=ctx@entry=0x7fff6c0070e0,
cond=0x6a8844002920, cond@entry=0x7fff6c007f20,

op_err_p=op_err_p@entry=0x0) at wait-private.c:155

155 if (cond && *cond)
(gdb) bt
#0 0x00007ffff7babfe3 in _gpgme_wait_on_condition
(ctx=ctx@entry=0x7fff6c0070e0, cond=0x6a8844002920, cond@entry=0x7fff6c007f20,

op_err_p=op_err_p@entry=0x0) at wait-private.c:155

#1 0x00007ffff7bb3236 in gpgme_op_keylist_next (ctx=0x7fff6c0070e0,
r_key=r_key@entry=0x7ffe50f00ef8) at keylist.c:996
#2 0x00000000004010de in start_keylist (arg=<optimized out>) at
t-thread-keylist-verify.c:62
#3 0x00007ffff798c0a4 in start_thread (arg=0x7ffe50f01700) at pthread_create.c:309
#4 0x00007ffff76c104d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Attached is the corresponding gpgme-log (issue-2092-gpgme-log-1.txt)

Sep 9 2015, 10:21 AM · gpgme, Bug Report, kleopatra
aheinecke added a comment to T2092: Gpgme-pthread keylist not thread safe.

Sep 9 2015, 10:21 AM · gpgme, Bug Report, kleopatra
werner added a comment to T2092: Gpgme-pthread keylist not thread safe.

Needs to be run under GPMGE_DEBUG but I bet that this well defeat the bug.

Sep 9 2015, 9:25 AM · gpgme, Bug Report, kleopatra

Sep 8 2015

aheinecke added projects to T2092: Gpgme-pthread keylist not thread safe: kleopatra, Bug Report, gpgme.
Sep 8 2015, 7:43 PM · gpgme, Bug Report, kleopatra
werner added a comment to T2089: retype timestamps to time_t for portability.

Sorry, we can't change the type because that would be an ABI break. Well, on
platforms with sizeof(time_t) == sizeof(long) we could use time_t there but for
the application programmer that does not help because assigning to a time_t var
first will still be required for portability.

You are right that this is a bug because internally we use time_t and at least
for Windows we will evntually run into problems.

Back in 2003 we went with long int because that is on all 32 bit platforms
sufficient to express OpenPGP timestamps which are 32 bit. Fortunately on
almost all 64 bit Unix platforms a long int is 64 bit and would also allow us to
express timestamps after 2106 and avoid ABI problems due to different time_t
like we have with off_t. Later, when we came up with gpgsm we gave up our hope
for a 64 bit time_t on 32 bit glibc systems and started to use a string instead
of a scalar. With 64 bit Windows things got even more complicated becuase tehre
a long is still 32 bit. Thus there is no clear way forward even if we decide to
break the ABI: Use time_t or a string?

Sep 8 2015, 8:01 AM · Won't Fix, gpgme, Bug Report

Sep 4 2015

wenzehan added projects to T2089: retype timestamps to time_t for portability: Bug Report, gpgme.
Sep 4 2015, 1:43 PM · Won't Fix, gpgme, Bug Report

Aug 25 2015

werner added a comment to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.

With the current gpgme and gnupg master things should be a bit better.

Aug 25 2015, 3:41 PM · gpgme, Bug Report
werner added a project to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work: Restricted Project.
Aug 25 2015, 3:41 PM · gpgme, Bug Report

Aug 24 2015

werner added a comment to T2061: Receiving keys from server fails.

Can you please ask on gnupg-devel for help?

Aug 24 2015, 9:40 PM · gpgme, Bug Report
werner added a comment to T1958: Use vfork/posix_spawn in gpgme.

ANy news?

Aug 24 2015, 9:39 PM · Info Needed, gpgme, Feature Request
werner claimed T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.
Aug 24 2015, 9:36 PM · gpgme, Bug Report
werner added a comment to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.

Debug message are for debugging and thus you need access to the source.
I'll see what I can do regarding better error messages for signing.

Aug 24 2015, 9:36 PM · gpgme, Bug Report
werner removed a project from T1929: GPGME_SIGSUM_KEY_REVOKED not set on revoked key: Restricted Project.
Aug 24 2015, 8:30 PM · gpgme, Bug Report
werner closed T1929: GPGME_SIGSUM_KEY_REVOKED not set on revoked key as Resolved.
Aug 24 2015, 8:30 PM · gpgme, Bug Report
werner closed T2044: GPGME needs better support for managing keys as Resolved.
Aug 24 2015, 12:42 PM · Feature Request, gpgme

Aug 1 2015

ximion added projects to T2061: Receiving keys from server fails: Bug Report, gpgme.
Aug 1 2015, 5:46 PM · gpgme, Bug Report

Jul 23 2015

flok added a comment to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.

Ok I found why it did not work on a system:

[pid 6507] write(7, "OPTION pinentry-mode=loopback", 29) = 29
[pid 6507] write(7, "\n", 1) = 1
[pid 6507] read(7, "ERR 67108924 Not supported <GPG Agent>\n", 1002) = 39
[pid 6507] brk(0x7f87645c0000) = 0x7f87645c0000
[pid 6507] write(2, "gpg: setting pinentry mode 'loopback' failed: Not
supported", 59) = 59

This is caused by a gpg-agent running with DISPLAY=... set.

Imho there's room for improvement regarding error messages/trace messages:
'general error' is unusable.
Also all those hex-codes in the tracing with no explanations and pointers to
objects that tell you nothing is not helping.

Jul 23 2015, 7:00 PM · gpgme, Bug Report
flok added a comment to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.

Werner Koch <wk@gnupg.org> added the comment:

A brief check shows that the pinentry mode is passed to the egine for decrypt
and sign. Please double check your code that you set the pinentry mode for

the

conext before signing. You should also set GPGME_DEBUG=4:/foo/bar/logfile for

a

log.

I found that on some systems it works and on some it doesn't.

working:
ii gnupg 1.4.18-7
ii gnupg-agent 2.1.4-1
ii gnupg2 2.1.4-1
ii libgpgme++2 4:4.14.2-2+b1
ii libgpgme11:amd64 1.5.5-2
ii libgpgme11-dev 1.5.5-2
ii python-gnupginterface 0.3.2-9.1

failing:
ii gnupg 1.4.18-4
ii gnupg-agent 2.1.6-1
ii gnupg2 2.1.6-1
ii libgpgme++2 4:4.14.2-2+b1
ii libgpgme11:amd64 1.5.5-3
ii libgpgme11-dev 1.5.5-3

Tested it on 3 different debian systems.

When doing an strace, I see the following:

write(1, "85:1060269507::::::e::::::\nfpr::"..., 4096) = -1 EPIPE (Broken pipe)

  • SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=25365, si_uid=1000} ---

write(1, "85:1060269507::::::e::::::\nfpr::"..., 4096) = -1 EPIPE (Broken pipe)

  • SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=25365, si_uid=1000} ---

write(1, "85:1060269507::::::e::::::\nfpr::"..., 4096) = -1 EPIPE (Broken pipe)

  • SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=25365, si_uid=1000} ---

write(1, "85:1060269507::::::e::::::\nfpr::"..., 4096) = -1 EPIPE (Broken pipe)

  • SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=25365, si_uid=1000} ---

write(1, "85:1060269507::::::e::::::\nfpr::"..., 4096) = -1 EPIPE (Broken pipe)

  • SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=25365, si_uid=1000} ---

write(1, "85:1060269507::::::e::::::\nfpr::"..., 4096) = -1 EPIPE (Broken pipe)

  • SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=25365, si_uid=1000} ---

...ad infinitum

So it looks like gpg2 tries to send more data to gpgme but maybe it
closed the file descriptor? Maybe some timeout?

The trace also speaks about an error but I don't know what the number
means:

GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_new: enter: r_ctx=0x7ffce1a86a18
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_new: leave: ctx=0x6a2b40
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_set_passphrase_cb: call: ctx=0x6a2b40,
passphrase_cb=(nil)/(nil)
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_set_pinentry_mode: call: ctx=0x6a2b40,
pinentry_mode=4
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_set_passphrase_cb: call: ctx=0x6a2b40,
passphrase_cb=0x4130c0/0x6a6488
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_new: enter: r_ctx=0x7ffce1a869b8
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_new: leave: ctx=0x694a30
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_op_keylist_start: enter: ctx=0x694a30,
pattern=9101D24C869F57E712BCB6BC435F59B679A28EB6, secret_only=0
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_add_io_cb: call: ctx=0x694a30, fd
5, dir=1 -> tag=0x697670
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_add_io_cb: call: ctx=0x694a30, fd
7, dir=1 -> tag=0x6977d0
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:gpg_io_event: call: gpg=0x6a3bd0,
event 0x7fb66f730eb0, type 0, type_data (nil)
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_op_keylist_start: leave
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_op_keylist_next: enter: ctx=0x694a30
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x697800,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x697800,
handler (0x6a3bd0, 7)
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = (nil), line = tru::0:1437598451:1438634760:3:1:5
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = (nil), line = pub:u:4096:1:435F59B679A28EB6:1437562181:::-
:::scESC::::::
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697830, line =
fpr:::::::::9101D24C869F57E712BCB6BC435F59B679A28EB6:
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697830, line =
uid:u::::1437562181::67B02486BE612BD1F799DD1EF250DA9FDB9C601C::pgf test key (pgf
test key) <test@vanheusden.com>:
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697830, line =
sub:u:4096:1:3B7DB05915752DE2:1437562181::::::e::::::
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697830, line =
fpr:::::::::1D4A144B830EBD875B3A17D73B7DB05915752DE2:
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697830, line =
pub:u:4096:1:435F59B679A28EB6:1437562181:::-:::scESC::::::
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:gpg_io_event: call: gpg=0x6a3bd0,
event 0x7fb66f730eb0, type 2, type_data 0x697830
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697a70, line =
fpr:::::::::9101D24C869F57E712BCB6BC435F59B679A28EB6:
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697a70, line =
uid:u::::1437562181::67B02486BE612BD1F799DD1EF250DA9FDB9C601C::pgf test key (pgf
test key) <test@vanheusden.com>:
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697a70, line =
sub:u:4096:1:3B7DB05915752DE2:1437562181::::::e::::::
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:keylist_colon_handler: call:
ctx=0x694a30, key = 0x697a70, line =
fpr:::::::::1D4A144B830EBD875B3A17D73B7DB05915752DE2:
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_op_keylist_next: leave: key=0x697830
(9101D24C869F57E712BCB6BC435F59B679A28EB6)
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_release: call: ctx=0x694a30
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_remove_io_cb: call: data=0x697670,
setting fd 0x5 (item=0x6976a0) done
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_remove_io_cb: call: data=0x6977d0,
setting fd 0x7 (item=0x697800) done
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_signers_clear: call: ctx=0x6a2b40
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_signers_add: enter: ctx=0x6a2b40,
key=0x694bc0 (387FB9C2DE84B200436962A0207A035AD316FA65)
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_signers_add: leave
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_op_encrypt_sign: enter: ctx=0x6a2b40,
flags=0x1, plain=0x695240, cipher=0x696290
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_op_encrypt_sign: check: ctx=0x6a2b40,
recipient[0] = 0x697830 (9101D24C869F57E712BCB6BC435F59B679A28EB6)
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_sig_notation_get: call:
ctx=0x6a2b40, ctx->sig_notations=(nil)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_add_io_cb: call: ctx=0x6a2b40, fd
5, dir=1 -> tag=0x693e10
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_add_io_cb: call: ctx=0x6a2b40, fd
9, dir=1 -> tag=0x693f70
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_add_io_cb: call: ctx=0x6a2b40, fd
12, dir=0 -> tag=0x693fd0
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:gpg_io_event: call: gpg=0x6a3bd0,
event 0x7fb66f730eb0, type 0, type_data (nil)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x694000,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x694000,
handler (0x695240, 12)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_data_outbound_handler: enter:
dh=0x695240, fd=0xc
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_data_outbound_handler: leave
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x694000,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x694000,
handler (0x695240, 12)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_data_outbound_handler: enter:
dh=0x695240, fd=0xc
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_remove_io_cb: call:
data=0x693fd0, setting fd 0xc (item=0x694000) done
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_data_outbound_handler: leave
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
handler (0x6a3bd0, 5)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
handler (0x6a3bd0, 5)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693fa0,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693fa0,
handler (0x696290, 9)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_data_inbound_handler: enter:
dh=0x696290, fd=0x9
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_data_inbound_handler: leave
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
handler (0x6a3bd0, 5)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
handler (0x6a3bd0, 5)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693fa0,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693fa0,
handler (0x696290, 9)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_data_inbound_handler: enter:
dh=0x696290, fd=0x9
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_data_inbound_handler: leave
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
need to check
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_run_io_cb: call: item=0x693e40,
handler (0x6a3bd0, 5)
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_cancel_with_err: enter:
ctx=0x6a2b40, ctx_err=117440513, op_err=0
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_remove_io_cb: call:
data=0x693e10, setting fd 0x5 (item=0x693e40) done
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_remove_io_cb: call:
data=0x693f70, setting fd 0x9 (item=0x693fa0) done
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme:gpg_io_event: call: gpg=0x6a3bd0,
event 0x7fb66f730eb0, type 1, type_data 0x7ffce1a86910
GPGME 2015-07-22 23:18:39 <0x66f2> _gpgme_cancel_with_err: leave
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_op_encrypt_sign:178: error: General
error <GPGME>
GPGME 2015-07-22 23:18:39 <0x66f2> gpgme_release: call: ctx=0x6a2b40

Jul 23 2015, 11:39 AM · gpgme, Bug Report

Jul 21 2015

werner added a comment to T2044: GPGME needs better support for managing keys.

Huh?
GPA uses GPGME and allows to delete and import keys.

Jul 21 2015, 3:21 PM · Feature Request, gpgme
werner removed a project from T2044: GPGME needs better support for managing keys: Bug Report.
Jul 21 2015, 3:21 PM · Feature Request, gpgme
werner added a project to T2044: GPGME needs better support for managing keys: Feature Request.
Jul 21 2015, 3:21 PM · Feature Request, gpgme
werner added a comment to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.

A brief check shows that the pinentry mode is passed to the egine for decrypt
and sign. Please double check your code that you set the pinentry mode for the
conext before signing. You should also set GPGME_DEBUG=4:/foo/bar/logfile for a
log.

Jul 21 2015, 3:10 PM · gpgme, Bug Report

Jul 15 2015

neal added projects to T2044: GPGME needs better support for managing keys: Bug Report, gpgme.
Jul 15 2015, 4:42 PM · Feature Request, gpgme

Jul 14 2015

flok added a comment to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.

Did an strace (with fork-follow) of my code and saw the following:

The first is a sign + encrypt:

[pid 19904] execve("/usr/bin/gpg2", ["gpg2", "--enable-special-filenames", "--
batch", "--no-sk-comments", "--lc-messages", "C", "--lc-ctype", "C", "--status-
fd", "4", "--no-tty", "--charset", "utf8", "--enable-progress-filter", "--
display", ":0.0", "--encrypt", "--sign", "--always-trust", "-r",
"E96F346A94A761F898F9DA35D8CD7D21B2A93EF9", "-u", "D8CD7D21B2A93EF9", "--
output", "-", "--", "-&7"], [/* 30 vars */]) = 0

The second is a decrypt:

[pid 19907] execve("/usr/bin/gpg2", ["gpg2", "--enable-special-filenames", "--
pinentry-mode=loopback", "--no-sk-comments", "--lc-messages", "C", "--lc-ctype",
"C", "--status-fd", "4", "--no-tty", "--charset", "utf8", "--enable-progress-
filter", "--display", ":0.0", "--command-fd", "5", "--decrypt", "--output", "-",
"--", "-&9"], [/* 30 vars */]) = 0

Now the decrypt does a --pinentry-mode=loopback while the sign, which also
requires password interaction, does not!

Jul 14 2015, 9:53 PM · gpgme, Bug Report

Jul 10 2015

flok added a comment to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.

I had not. But when I do:

2015-07-10 12:10:07 (gpgme_test) my_key: D8CD7D21B2A93EF9
encrypt: 0
error: gpgme_op_encrypt failed: General error (117440513)

folkert@travelmate:~/Projects/PGF/trunk$ cat ~/.gnupg/gpg-agent.conf
allow-loopback-pinentry

Jul 10 2015, 2:13 PM · gpgme, Bug Report
gniibe added a comment to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work.

Do you have 'allow-loopback-pinentry' option in your .gnupg/gpg-agent.conf?
It is not enabled by default, since allowing loopback mode gives easier access
to private keys.

Jul 10 2015, 2:37 AM · gpgme, Bug Report

Jul 9 2015

flok added projects to T2036: gpgme_set_pinentry_mode GPGME_PINENTRY_MODE_LOOPBACK doesn't work: Bug Report, gpgme.
Jul 9 2015, 3:44 PM · gpgme, Bug Report

Jun 8 2015

werner removed a project from T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible?: Restricted Project.
Jun 8 2015, 7:56 PM · gnupg (gpg20), gpgme, Bug Report
werner closed T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible? as Resolved.
Jun 8 2015, 7:56 PM · gnupg (gpg20), gpgme, Bug Report
werner added a comment to T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible?.

1.5.5 has been released.

Jun 8 2015, 7:56 PM · gnupg (gpg20), gpgme, Bug Report
werner added a project to T1929: GPGME_SIGSUM_KEY_REVOKED not set on revoked key: Restricted Project.
Jun 8 2015, 7:56 PM · gpgme, Bug Report
werner added a comment to T1929: GPGME_SIGSUM_KEY_REVOKED not set on revoked key.

Thanks. Fixed in 1.5.5 (and als in master of course).

Jun 8 2015, 7:56 PM · gpgme, Bug Report
werner removed a project from T1997: Segmentation fault in gpgme when searching keyservers for some keywords: Restricted Project.
Jun 8 2015, 7:55 PM · gpgme, Bug Report, KDE
werner closed T1997: Segmentation fault in gpgme when searching keyservers for some keywords as Resolved.
Jun 8 2015, 7:55 PM · gpgme, Bug Report, KDE
werner added a comment to T1997: Segmentation fault in gpgme when searching keyservers for some keywords.

1.5.5 has been released. Closing.

Jun 8 2015, 7:55 PM · gpgme, Bug Report, KDE
werner added a comment to T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible?.

Thanks for the log. This reveals a bug which has been with us since the support
for gpgsm: If there is no status line handler but a status line is received
anyway the command handling loop terminates and thus the command/answer order
gets out of sync. In this concrete case this is triggered by sending an option
which starts the agent and that starting emits a "PROGRESS" status line.

My solution is not to stop reading after a status line but record a possible
error code and return that only after OK or ERR.

This will go into 1.5.5 which I am already preparing.

Jun 8 2015, 12:28 PM · gnupg (gpg20), gpgme, Bug Report
werner added a project to T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible?: Restricted Project.
Jun 8 2015, 12:28 PM · gnupg (gpg20), gpgme, Bug Report
werner removed a project from T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible?: Not A Bug.
Jun 8 2015, 12:28 PM · gnupg (gpg20), gpgme, Bug Report

Jun 5 2015

alonbl reopened T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible? as "Open".
Jun 5 2015, 7:00 PM · gnupg (gpg20), gpgme, Bug Report
alonbl added a comment to T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible?.

I am unsure I understand, this causes gpgme to fail.

GPGME 2014-12-26 01:12:58 <0x5f44> _gpgme_run_io_cb: call: item=0xd2e804f5b00,
handler (0xd2e804f5970, 13)
GPGME 2014-12-26 01:12:58 <0x5f44> chan_12 <- ERR 50331822 Unknown option <GpgSM>

GPGME 2014-12-26 01:12:58 <0x5f44> gpgme:status_handler: call:
gpgsm=0xd2e804f5970, fd 0xd: ERR line - mapped to: Unknown option

Jun 5 2015, 7:00 PM · gnupg (gpg20), gpgme, Bug Report
werner added a project to T1958: Use vfork/posix_spawn in gpgme: Info Needed.
Jun 5 2015, 2:41 PM · Info Needed, gpgme, Feature Request
werner added a comment to T1958: Use vfork/posix_spawn in gpgme.

Did you asked on the GUIX list whether they have a similar problem?

Jun 5 2015, 2:41 PM · Info Needed, gpgme, Feature Request
werner closed T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible? as Resolved.
Jun 5 2015, 2:39 PM · gnupg (gpg20), gpgme, Bug Report
werner added a comment to T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible?.

The error return from sending this option is not checked on purpose. We do the
same for all such options.

Jun 5 2015, 2:39 PM · gnupg (gpg20), gpgme, Bug Report
werner added a project to T1795: gpgme-1.5.3 and gnupg-2 (gpgsm) incompatible?: Not A Bug.
Jun 5 2015, 2:39 PM · gnupg (gpg20), gpgme, Bug Report
werner set Version to <= 1.5.4 on T1997: Segmentation fault in gpgme when searching keyservers for some keywords.
Jun 5 2015, 2:33 PM · gpgme, Bug Report, KDE
werner added a project to T1997: Segmentation fault in gpgme when searching keyservers for some keywords: Restricted Project.
Jun 5 2015, 2:29 PM · gpgme, Bug Report, KDE
werner added a comment to T1997: Segmentation fault in gpgme when searching keyservers for some keywords.

Oops. Long standing bug.

Fix in commit
0d28a696163677d6b34a802b6beddecd805d0fc7

Jun 5 2015, 2:29 PM · gpgme, Bug Report, KDE
aheinecke added projects to T1997: Segmentation fault in gpgme when searching keyservers for some keywords: KDE, Bug Report, gpgme.
Jun 5 2015, 1:54 PM · gpgme, Bug Report, KDE