Swipe-type scanners make it hard to get a reliably good scan on the
first try, so allow a number of retries before returning with a
failure.
---
src/pam_fprint.c | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/pam_fprint.c b/src/pam_fprint.c
index 24fc104..b0f6eeb 100644
--- a/src/pam_fprint.c
+++ b/src/pam_fprint.c
@@ -163,7 +163,8 @@ static int do_identify(pam_handle_t *pamh, struct fp_dev
*dev,
if (fp_dev_supports_identification(dev)) {
- snprintf(msg, sizeof(msg), "Scan finger on %s",
driver_name);
+ snprintf(msg, sizeof(msg), "Scan finger on %s, %d %s left",
+ driver_name, max_tries, max_tries==1 ? "attempt" :
"attempts");
msg[sizeof(msg) - 1] = 0;
send_info_msg(pamh, msg);
r = fp_identify_finger(dev, gallery, &offset);
@@ -183,7 +184,11 @@ static int do_identify(pam_handle_t *pamh, struct fp_dev
*dev,
}
switch (r) {
case FP_VERIFY_NO_MATCH:
- return PAM_AUTH_ERR;
+ if (max_tries==1)
+ return PAM_AUTH_ERR;
+ else {
+ break;
+ }
case FP_VERIFY_MATCH:
return PAM_SUCCESS;
case FP_VERIFY_RETRY:
--
1.7.1
_______________________________________________
fprint mailing list
[email protected]
http://lists.reactivated.net/mailman/listinfo/fprint