Find a file
Leonardo Francisco a486b58c5a validity: enrollment, verification & DB operations\n\nImplement the complete enrollment and verification flow for\nSynaptics VCSFW (Validity) fingerprint sensors:\n\n- Enrollment state machine: LED control, capture loop with\n scan_complete polling, enrollment_update_start/end cycle,\n template building across ~8-9 stages until TID is received\n- DB write phase: StgWindsor storage auto-creation (0x04b3),\n user record creation, finger record creation with proper\n write_enable/call_cleanups wrapping\n- Pre-enrollment cleanup: delete existing user records from\n sensor DB before re-enrolling (prevents 0x0526 errors)\n- Stale session cleanup: send enrollment_update_end before\n starting new enrollment to close interrupted sessions\n- Verification: match_finger command with proper response\n parsing, delete and clear_storage operations\n- Print data: FPI_PRINT_RAW with fpi-data GVariant containing\n user identity string\n- Capture fixes: TST instruction search bug (save patched_tst\n before key_line replacement), ENROLL vs IDENTIFY mode\n differences in capture command structure\n- TLS improvements: proper session state tracking, reconnect\n handling, extended response buffer management\n- Pairing: device certificate chain validation, Windows Hello\n compatible key exchange\n\nTested on 06cb:009a (Synaptics Metallica MIS Touch):\n- Fresh enrollment: completes in 7-9 stages\n- Re-enrollment: pre-cleanup deletes stale records, then enrolls\n- Verification: verify-match confirmed (3x consecutive)\n\nReference: python-validity by uunicorn"
2026-04-22 03:06:34 +00:00
.ci ci: Add ABI check 2019-08-05 20:05:13 +02:00
.gitlab-ci ci: Add PyGObject symbols 2026-02-10 06:33:00 +01:00
data validity: Add new driver for Validity/Synaptics VCSFW sensors 2026-04-22 03:06:34 +00:00
demo scripts/uncrustify: Use 2-spaces indentation for defines too 2025-02-20 15:50:46 +00:00
doc build: Stop using deprecated dep.get_pkgconfig_variable() method 2024-02-20 01:02:00 +01:00
examples examples/clear-storage: Remove local storage for devices without storage 2025-02-20 16:37:11 +01:00
libfprint validity: enrollment, verification & DB operations\n\nImplement the complete enrollment and verification flow for\nSynaptics VCSFW (Validity) fingerprint sensors:\n\n- Enrollment state machine: LED control, capture loop with\n scan_complete polling, enrollment_update_start/end cycle,\n template building across ~8-9 stages until TID is received\n- DB write phase: StgWindsor storage auto-creation (0x04b3),\n user record creation, finger record creation with proper\n write_enable/call_cleanups wrapping\n- Pre-enrollment cleanup: delete existing user records from\n sensor DB before re-enrolling (prevents 0x0526 errors)\n- Stale session cleanup: send enrollment_update_end before\n starting new enrollment to close interrupted sessions\n- Verification: match_finger command with proper response\n parsing, delete and clear_storage operations\n- Print data: FPI_PRINT_RAW with fpi-data GVariant containing\n user identity string\n- Capture fixes: TST instruction search bug (save patched_tst\n before key_line replacement), ENROLL vs IDENTIFY mode\n differences in capture command structure\n- TLS improvements: proper session state tracking, reconnect\n handling, extended response buffer management\n- Pairing: device certificate chain validation, Windows Hello\n compatible key exchange\n\nTested on 06cb:009a (Synaptics Metallica MIS Touch):\n- Fresh enrollment: completes in 7-9 stages\n- Re-enrollment: pre-cleanup deletes stale records, then enrolls\n- Verification: verify-match confirmed (3x consecutive)\n\nReference: python-validity by uunicorn" 2026-04-22 03:06:34 +00:00
scripts scripts/uncrustify: Use 2-spaces indentation for defines too 2025-02-20 15:50:46 +00:00
tests validity: Iteration 8 — Final Polish 2026-04-22 03:06:34 +00:00
.git-blame-ignore-revs .git-blame-ignore-revs: Ignore formatting commit and add hint how to use it 2020-12-07 19:01:10 +01:00
.gitignore gitignore: Remove autotools ignores, add _build 2020-02-10 11:41:40 +01:00
.gitlab-ci.yml ci: Make jobs interrumpible 2026-02-10 06:35:26 +01:00
AUTHORS AUTHORS: Update 2012-12-14 13:17:24 +01:00
code-of-conduct.md Add code of conduct document 2019-07-25 12:04:39 +02:00
COPYING upekts relicensing 2007-11-15 09:54:35 +00:00
gcovr.cfg gcovr: Add gcovr project configuration 2025-08-01 01:42:01 +02:00
HACKING.md HACKING: Clarify the intent of the license 2019-08-05 13:37:28 +02:00
INSTALL INSTALL: Update for Meson 2018-05-18 01:16:30 +02:00
MAINTAINERS Add MAINTAINERS file 2020-05-22 15:00:11 +02:00
meson.build validity: Add TLS session management (Iteration 2) 2026-04-22 03:06:34 +00:00
meson_options.txt tests: Add support for installed tests 2023-06-28 16:35:16 +02:00
NEWS Release 1.94.10 2026-02-10 03:18:14 +01:00
README.md README: Add contact information 2024-05-03 15:35:11 +02:00
THANKS Thanks to Greg and Martin from AuthenTec 2012-11-29 09:51:55 +01:00

LibFPrint

LibFPrint is part of the FPrint project.


Button Website Button Documentation

Button Supported Button Unsupported

Button Contribute Button Contributors

History

LibFPrint was originally developed as part of an academic project at the University Of Manchester.

It aimed to hide the differences between consumer fingerprint scanners and provide a single uniform API to application developers.

Goal

The ultimate goal of the FPrint project is to make fingerprint scanners widely and easily usable under common Linux environments.

License

Section 6 of the license states that for compiled works that use this library, such works must include LibFPrint copyright notices alongside the copyright notices for the other parts of the work.

LibFPrint includes code from NIST's NBIS software distribution.

We include Bozorth3 from the US Export Controlled distribution, which we have determined to be fine being shipped in an open source project.

Get in touch

  • IRC - #fprint @ irc.oftc.net
  • Matrix - #fprint:matrix.org bridged to the IRC channel
  • MailingList - low traffic, not much used these days

Badge License