#783406 lightdm-gtk-greeter ignores fprintd verify-match

Package:
lightdm-gtk-greeter
Source:
lightdm-gtk-greeter
Description:
simple display manager (GTK+ greeter)
Submitter:
Raphaël Halimi
Date:
2015-09-30 19:33:06 UTC
Severity:
minor
#783406#5
Date:
2015-04-26 19:08:49 UTC
From:
To:
Hi,

After switching to Jessie, lightdm doesn't work with fprint anymore. It
correctly asks to "swipe your finger" (with a nice little animation) but
ignores any swipes. It's noteworthy that the password prompt is now
displayed immediately (regardless of the swipes), whereas in Wheezy it
was displayed only after three missed swipe attempts.

This is a regression.

Regards,

#783406#10
Date:
2015-05-03 07:18:26 UTC
From:
To:
Here is a log extract obtained with :

LANG=C journalctl -u fprintd -u lightdm -u dbus -f

May 03 09:02:48 solaris lightdm[1213]: ** (process:3225): WARNING **: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Accounts was not provided by any .service files
May 03 09:02:48 solaris lightdm[3225]: pam_unix(lightdm-greeter:session): session opened for user lightdm by (uid=0)
May 03 09:02:59 solaris dbus[964]: [system] Activating via systemd: service name='net.reactivated.Fprint' unit='fprintd.service'
May 03 09:02:59 solaris dbus[964]: [system] Successfully activated service 'net.reactivated.Fprint'
May 03 09:02:59 solaris fprintd[3250]: Launching FprintObject
May 03 09:02:59 solaris fprintd[3250]: ** Message: D-Bus service launched with name: net.reactivated.Fprint
May 03 09:02:59 solaris fprintd[3250]: ** Message: entering main loop
May 03 09:02:59 solaris fprintd[3250]: ** Message: user 'raph' claiming the device: 0
May 03 09:02:59 solaris fprintd[3250]: ** Message: now monitoring fd 15
May 03 09:02:59 solaris fprintd[3250]: ** Message: device 0 claim status 0
May 03 09:02:59 solaris fprintd[3250]: ** Message: adding finger 8 to the gallery
May 03 09:02:59 solaris fprintd[3250]: ** Message: adding finger 2 to the gallery
May 03 09:02:59 solaris fprintd[3250]: ** Message: adding finger 7 to the gallery
May 03 09:02:59 solaris fprintd[3250]: ** Message: adding finger 3 to the gallery
May 03 09:02:59 solaris fprintd[3250]: ** Message: start identification device 0
May 03 09:03:01 solaris fprintd[3250]: ** Message: identify_cb: result verify-match (1)
May 03 09:03:01 solaris fprintd[3250]: ** Message: no longer monitoring fd 15
May 03 09:03:01 solaris fprintd[3250]: ** Message: released device 0
May 03 09:03:01 solaris lightdm[3249]: gkr-pam: no password is available for user
May 03 09:03:01 solaris lightdm[1213]: ** (process:3249): WARNING **: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Accounts was not provided by any .service files

You can see that the fingerprint is validated, but lightdm ignores it.

Note that it may be due to some other software, or some kind of race
condition, because I *sometimes* have the same problem with the
fingerprint reader when the laptop wakes up after suspend (MATE
desktop), but not always; it seems (I'm not sure) that if I swipe my
finger just after the screen comes up, it doesn't work (and subsequent
swipes are ignored); if I wait a couple of seconds after the screen
comes up, it usually works.  But with lightdm, it never works.

If I can provide more useful info, please tell me how.

Regards,

#783406#15
Date:
2015-05-05 20:05:31 UTC
From:
To:
Try to get a diff with logs from a working case?

Regards,

#783406#20
Date:
2015-05-06 05:13:53 UTC
From:
To:
Le 05/05/2015 22:05, Yves-Alexis Perez a écrit :

Alas, in my backups from wheezy I didn't find anything relevant. I
can't find fprintd logs, apart of dbus activating the service, like :

./syslog:Apr 25 20:40:46 solaris dbus[3130]: [system] Activating service name='net.reactivated.Fprint' (using servicehelper)
./syslog:Apr 25 20:40:46 solaris dbus[3130]: [system] Successfully activated service 'net.reactivated.Fprint'

Regards,

#783406#25
Date:
2015-05-06 06:21:30 UTC
From:
To:
Control: tag -1 moreinfo

Then try to investigate by downgrading relevant packages (like lightdm,
pam modules or fprint libraries)?

There's not much we can do here without that kind of information.

Regards,

#783406#32
Date:
2015-05-11 23:07:16 UTC
From:
To:
Le 06/05/2015 08:21, Yves-Alexis Perez a écrit :
found weird that the greeter stayed the same and then I remembered that
in lightdm the greeter is separated from the main display manager. So I
tried to downgrade lightdm-gtk-greeter to wheezy version and the problem
was solved.

Joining an snippet of the logs would be useless since the messages are
strictly the same (even the gkr-pam one), but I tried my best to narrow
down the problem nevertheless (at my humble non-dev level) by
downloading on snapshot.debian.org every version between 1.1.6-2
(wheezy) and 1.8.5-2 (jessie), and upgrade the package step by step.

The problem appeared with version 1.6.0-1. The weird thing (that I
failed to notice before) is that when the syslog shows a fingerprint
mismatch, the greeter acknowledges it (the box shakes and I'm allowed to
retry, up to three times), but if the fingerprint matches, the greeter
just ignores it. No shaking, no message, nothing. I just stays as it is
instead of logging me in. It's not frozen though, since I still can
enter a password (and then I'm able to log in).

Starting from 1.8.1, in case of mismatch, the box doesn't shake anymore,
only the swipe prompt changes, but for for an incredibly short period of
time, that's certainly why until now I didn't identify the exact symptom
so precisely(I watch the syslog from another screen via ssh).

I know it's not much but I hope it helps. Also, I think this bug should
be forwarded to upstream, since it seems to have been introduced by
1.6.0, which seems to have changed a lot of things (it's hard to tell
from the upstream changelog because it rarely mentions version numbers,
but this one introduced rounded corners, a new blue background for the
swipe prompt, [Enter] didn't work anymore (until it was fixed later)...
and this very bug).

Just to be sure, I tried 2.0.0 from unstable, it's even worse : in case
of a match, the password field disappears, I have to click "Cancel" to
be able to enter my password and log in.

I pinned 1.1.6-2 for now.

Regards,

#783406#45
Date:
2015-05-13 09:26:19 UTC
From:
To:
Control: forwarded -1
https://bugs.launchpad.net/lightdm-gtk-greeter/+bug/1454588
I've forwarded the bug upstream, they might need more information,
especially if they don't have a way to reproduce because of lack of
fingerprint reader.

Also, when you downgrade, can you confirm you *only* downgrade the
greeter and not something else, like liblightdm-gobject?

Regards,

#783406#52
Date:
2015-05-13 12:29:12 UTC
From:
To:
Le 13/05/2015 11:26, Yves-Alexis Perez a écrit :

Yes, I do confirm this.

Regards,

#783406#57
Date:
2015-07-14 13:57:57 UTC
From:
To:
I am on Testing + MATE, using lightdm-gtk-greeter 2.0.1-2

When there is a match, the password field does indeed disappear, but it did
accept your authentication: when you hit <enter> it will log you in.
This is rather confusing as you would expect it to login directly.

But this means that 2.0.1-2 actually works, with a quirk.

Peter

#783406#62
Date:
2015-09-30 19:31:16 UTC
From:
To:
Greetings,

I need your assistance in a project that will be mutual benefit to the both of us.Sincerely  Ms. Nonnita.