Andrei Borzenkov wrote:
12.03.2017 01:38, Carlos E. R. пишет:
On 2017-03-11 23:25, Richmond wrote:
Why do I get this error? It happens if I use "su - user" to switch to a different user and then try to decrypt a file. I am pretty sure it used to work. And it will work if I log in on the console as the different user. It should prompt for the passphrase in a window.
gpg: CAST5 encrypted data gpg-agent[5394]: command get_passphrase failed: Operation cancelled gpg: cancelled by user gpg: encrypted with 1 passphrase gpg: decryption failed: No secret key
I'm on 42.2 64 bit.
gpg --version gpg (GnuPG) 2.0.24 libgcrypt 1.6.1 But what desktop? It makes a difference.
No.
When you su to a user, no, you will not get a window prompting for the passphrase, because the desktop doesn't belong to that user. The gpg agent (which depends on the desktop and configuration used) does not act, it has not been started for the su-ed user.
You should get the prompt for the user passphrase in the same terminal.
It tries but fails because it has no access to terminal:
3165 open("/dev/pts/0", O_RDONLY) = -1 EACCES (Permission denied) 3165 write(1, "ERR 83886179 canceled", 21) = 21
I wonder - did it ever work before?
I think it did. I have found a work-around which is instead of using su - user, I use ssh -Y user@localhost I have not yet tried installing the gtk-pinentry. Another of my systems is running Tumbleweed and I think I got it to work on there by using gpg --pintentry-mode=loopback But I can't find any such option in the version of gpg on 42.2. I think it should be possible to bypass any pinentry external programs and use gpg alone, as is possible on the console. I don't have a desktop installed, I am using xdm, xorg and ctwm window manager. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org