[pkg-gnupg-maint] Bug#834829: Bug#834829: gnupg-agent: gpg-agent looses connection to usb dongle and stops working

Norbert Preining preining at logic.at
Thu Sep 1 01:41:27 UTC 2016


Hi Daniel,

> it's a little bit weird that you say that "updatestartuptty" did not
> change anything:
> 
> > [~] gpg-connect-agent updatestartuptty /bye
> > OK
> > [~]
> >
> >>     gpg-connect-agent 'getinfo std_startup_env' /bye
> >
> > [~] gpg-connect-agent 'getinfo std_startup_env' /bye
> > D GPG_TTY=/dev/pts/2
> > D TERM=xterm
> > D DISPLAY=:0
> > D XAUTHORITY=/home/norbert/.Xauthority
> > D XMODIFIERS=@im=fcitx
> > D GTK_IM_MODULE=fcitx
> > D DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-CY1VsRjJ7v,guid=d93c4131d59dc5ca299bf49f57c6d42e
> > D QT_IM_MODULE=fcitx
> > OK
> > [~]
> 
> can you compare this content of "std_startup_env" with the same query on
> the first login after a reboot, before any invocation of
> "updatestartuptty" ?


Logging in after reboot and systemd started gpg-agent, I get first:

[~] gpg-connect-agent 'getinfo std_startup_env' /bye
OK
[~] gpg-connect-agent updatestartuptty /bye
OK
[~] gpg-connect-agent 'getinfo std_startup_env' /bye
D GPG_TTY=/dev/pts/1
D TERM=xterm
D DISPLAY=:0
D XAUTHORITY=/home/norbert/.Xauthority
D XMODIFIERS=@im=fcitx
D GTK_IM_MODULE=fcitx
D DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-eav2P5eDYT,guid=ab31db8dd7c34660f839f49857c78567
D QT_IM_MODULE=fcitx
OK
[~]

So ok, something changes.

What I meant is that I still cannot logL
[~] ssh <somehost>
sign_and_send_pubkey: signing failed: agent refused operation
sign_and_send_pubkey: signing failed: agent refused operation
user at somehost 's password:


> >> one other question for those following this bug: do you have
> >> the dbus-user-session package installed?
> >
> > dbus-user-session installed.

Maybe that was lost: I do *NOT* have dbus-user-session installed.

> ok, but can you clarify that a pinentry prompt does work for you in
> general?

How should I run it without the /run/user/1000/bus ? 

> sorry, i'm pretty confused by this -- when you say this "actually works"
> can you be clear about what the change is before and after you run this?

Ok, here is what I have seen/am seeing:
There are three methods to start gpg-agent:
1* systemd
2* gpgconf --launch gpg-agent
3* gpg-agent --daemon

1* is discussed above

2* This was my initial report that starting gpg-agent with the gpgconf
method gives me disconnects/usbstick becomes unusable and needs
replugging

3* Is the only method where I have consistent access to the usb stick/
smartcard where my gpg/ssh key is served from, and logging in 
gives me a pinentry - this is what I meant with "working".

1* is broken (sorry, for me not surprising since it involves systemd :-(
2* is *somehow* broken, but not completely
3* is working fine, but is suboptimal because it requires manual start
   of the daemon

> Are you saying that running "gpg-agent --daemon" separately somehow
> allows access to your usb dongle?

In fact what needs to be done is disabling the systemd gpg-agent
(otherwise it is permanently restarted), then killing all gpg-agents,
and starting gpg-agent --daemon by hand is the only way I can get
consistent access to my usb dongle.

All the best

Norbert

--
PREINING Norbert + TeX Live & Debian Developer + http://www.preining.info
GPG: 0x860CDC13    fp: F7D8 A928 26E3 16A1 9FA0  ACF0 6CAC A448 860C DC13



More information about the pkg-gnupg-maint mailing list