On Wed, Oct 28, 2015 at 05:39:39AM GMT, Antoine Jacoutot wrote:
> On Wed, Oct 28, 2015 at 04:35:14AM +0000, Raf Czlonka wrote:
> > On Sat, Oct 24, 2015 at 08:59:48AM BST, Antoine Jacoutot wrote:
> > > > > Hi Antoine,
> > > > >
> > > > > On a (somewhat), related note - since the last (so it seems) update to
> > > > > pinentry, it doesn't prompt for pass{word,phrase} any more, i.e.
> > > > >
> > > > > gpg2 -d file.gpg
> > > > >
> > > > > starts gpg-agent, which in turn starts pinentry, all I can see is
> > > > > blank tty and after a couple of seconds, pinentry runs at 99% CPU:
> > > > >
> > > > > USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME
> > > > > COMMAND
> > > > > rjc 20819 99.0 0.1 1996 5392 ?? R 6:41AM 1:25.35
> > > > > pinentry (pinentry-curses)
> > > >
> > > > Hmm that's odd... my initial tests did work.
> > > > I'll have a look this week-end, thanks for the report.
> > >
> > > Can you wait for and try the new ports snapshot when it is there.
> > > I cannot reproduce your issue, pinentry works just fine here.
> >
> > Hi Antoine,
> >
> > The newest i386 package (new amd64 ones haven't been built yet so can't
> > verify) does something really strange:
> >
> > $ file /usr/local/bin/pinentry*
> > /usr/local/bin/pinentry: symbolic link to
> > '/usr/local/bin/pinentry-curses'
> > /usr/local/bin/pinentry-curses: Bourne shell script text executable
> >
> > So, the pinentry is still a symbolic link instead of the intended
> > wrapper script and pinentry-curses is the actual wrapper -
> > pinentry-curses (the binary) is not even a part of the package.
>
> The pkg snapshot is too old I guess.
Nope, something goes wrong during 'make package', as the actual
pinentry-curses (the binary) *is* being built with 'make build':
$ file
/usr/obj/ports/pinentry-0.9.6-no_gtk2-no_gnome3-bootstrap/pinentry-0.9.6/curses/pinentry-curses
/usr/obj/ports/pinentry-0.9.6-no_gtk2-no_gnome3-bootstrap/pinentry-0.9.6/curses/pinentry-curses:
ELF 32-bit LSB shared object, Intel 80386, version 1
but doesn't end up in the package itself.
$ pkg_info -I pinentry
pinentry-0.9.6p1 PIN or passphrase entry dialog (ncurses interface)
$ ls -l /usr/local/bin/pinentry*
lrwxr-xr-x 1 root wheel 15 Oct 28 21:44 /usr/local/bin/pinentry ->
pinentry-curses
-r-xr-xr-x 1 root bin 2844 Oct 25 14:35 /usr/local/bin/pinentry-curses
$ file /usr/local/bin/pinentry*
/usr/local/bin/pinentry: symbolic link to
'/usr/local/bin/pinentry-curses'
/usr/local/bin/pinentry-curses: Bourne shell script text executable
In the end, I had renamed the above two files and copied the built
binary in its place:
$ ls -l /usr/local/bin/pinentry*
-r-xr-xr-x 1 root bin 2844 Oct 23 15:14 /usr/local/bin/pinentry
-rwxr-xr-x 1 root wheel 65760 Oct 30 01:06 /usr/local/bin/pinentry-curses
lrwxr-xr-x 1 root wheel 15 Oct 28 04:13 /usr/local/bin/pinentry.old
-> pinentry-curses
$ file /usr/local/bin/pinentry*
/usr/local/bin/pinentry: Bourne shell script text executable
/usr/local/bin/pinentry-curses: ELF 32-bit LSB shared object, Intel 80386,
version 1
/usr/local/bin/pinentry.old: symbolic link to
'/usr/local/bin/pinentry-curses'
This, however, only "solves" the problem with the package but does *not*
resolve the issue which I had initially reported - pinentry doesn't
prompt for password, the terminal stays blank and pinentry-curses eats
up 100% CPU.
Regards,
Raf