[fprint] Planning libfprint API changes (2.x)

Benjamin Berg benjamin at sipsolutions.net
Tue Jun 18 08:48:41 UTC 2019


Hi,

I realised that I only had talked to a few individuals about this, so
it seems like a good idea to inform the ML about some of the ideas.

The current situation is that we are looking at adding support for
devices that store the print data in the sensor. With these devices, a
few new operations will be necessary:

 * Deleting prints from the device when deleting them from the host
   https://gitlab.freedesktop.org/libfprint/libfprint/merge_requests/54
 * Garbage collecting old prints
   (e.g. left over from e.g. old installations)
   - Listing prints from the device
   - Deleting prints that are unknown on the host

Another important change is to support non-USB devices. My main
motivation for this right now is adding virtual devices for testing
  https://gitlab.freedesktop.org/libfprint/libfprint/merge_requests/53


After some discussions, the idea is to bump the soname/version of
libfprint and then add the required API for the mentioned sensors.
Doing so also gives us the chance to clean up the external API.

I am currently looking into this, considering the following:
 * A GLib based external (and internal API)
   - Allows proper async operations and cancellation
   - Use GError for error reporting; so that applications don't
     need to assume libusb error codes
   - Removes the need for custom mainloop code
 * Possibly port libfprint to libgusb rather than libusb
   - Hopefully easier integration with the above changes
 * Dropping the special fp_dscv_dev and just having an fp_dev
   that needs to be opened/closed.
 * Handling fp_imgdev as a "subclass" (i.e. with the fp_dev struct
   embedded at the start). Maybe even as a GObject.

This will to result in a lot of collateral changes in all drivers.

Benjamin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/fprint/attachments/20190618/b1d0f727/attachment.sig>


More information about the fprint mailing list