Commit Graph

1427 Commits

Author SHA1 Message Date
Marco Trevisan (Treviño) 8d7628ba0f Update upstream source from tag 'upstream/1.90.5+tod1'
Update to upstream version '1.90.5+tod1'
with Debian dir b9a5b8de31
2020-12-04 02:44:12 +01:00
Marco Trevisan (Treviño) e84208896c New upstream version 1.90.5+tod1 2020-12-04 02:44:07 +01:00
Marco Trevisan (Treviño) 14d24c49f8 debian/control: Mark libfprint-2-tod-dev as Multi-Arch: same 2020-12-04 02:42:01 +01:00
Laurent Bigonville 39927ef448 debian/control: Mark libfprint-2-dev as Multi-Arch: same 2020-12-04 02:41:18 +01:00
Laurent Bigonville 44807e379a debian/control: Bump Standards-Version to 4.5.1 (no further changes) 2020-12-04 02:41:03 +01:00
Marco Trevisan (Treviño) 80cf417b30 tests: Check if loading a pre-built binary keep working with libfprint
The libfprint tod fake library is built using using libtod v1.90.1+tod1
and we need to ensure that it will continue working until we won't
change ABI/API.
2020-12-04 02:16:16 +01:00
Marco Trevisan (Treviño) 7b0df77c49 tests: Get tod driver name from env variable 2020-12-04 02:06:54 +01:00
Marco Trevisan (Treviño) 1613c0de43 fp-device: Return valid finger status value on error
Not that the two enums have different value, but indeed the type is
wrong.
2020-12-04 00:53:29 +01:00
Marco Trevisan (Treviño) 4da4a7041a fp-device: Ensure finger status is set to proper type on property getter
Finger status is a flag not an enum.

Add tests.
2020-12-04 00:49:53 +01:00
Marco Trevisan (Treviño) c9579ab21b test: Run all the fpi-device tests with the dynamically loaded TOD driver
We can ensure better that it works as expected repeating all the device
tests for it too.

The nice part is that we can just do this by re-defininig its GType as
the gtype of the loaded driver.
2020-12-03 04:38:15 +01:00
Marco Trevisan (Treviño) 9cbb3e5f55 tests: Isolate more the TOD tests so that we build the driver without clashes 2020-12-03 04:35:41 +01:00
Marco Trevisan (Treviño) d83453de02 tests: Move tod context creation into test-utils-tod library 2020-12-03 02:39:33 +01:00
Marco Trevisan (Treviño) 99063246b7 fpi-image-device: Reorder image state not to change values
We need this to avoid breaking already present TOD image devices
drivers.
2020-12-03 02:05:08 +01:00
Marco Trevisan (Treviño) 7dc2cbf8d9 fp-print: Don't byte-swap two times the NBIS array contents
When serializing an image print in big endian machine we ended up
swapping the arrays contents two times, first when adding the values and
eventually when calling g_variant_byteswap which already handles this
properly.

With this, we get the test passing into s390x.

Fixes: #236
2020-12-03 01:34:45 +01:00
Marco Trevisan (Treviño) bbd113594d test-fpi-device: Always check the return values for the API calls
Ensure that the return value of the API calls match the expected one,
as we need to ensure that it also matches with the error/no-error case.
2020-12-03 01:34:44 +01:00
Marco Trevisan (Treviño) 11d4bc2981 fpi-device: Return proper type on identification success
Identify function is supposed to propagate a boolean value, but we make
it return an integer instead on idle, this can be normally the same in
most of architectures, but not in BE ones.

So, make it return the proper type.
Fixes test failures in s390x.

Related to #236
2020-12-03 01:34:42 +01:00
Aris Lin f33a282bb0 synaptics: add support PID 0xE7 2020-12-03 01:34:35 +01:00
Marco Trevisan (Treviño) a3aadd8398 Merge tag 'v1.90.5' into tod
Tag 1.90.5

Git-EVTag-v0-SHA512: 05650e2a6cf2290542936271b140e79015f56e35fbffc4677e37bf30963b2a38b49eb699db80cee6677ff348ea9e8548514a9f1e06a767269e44d7fac3334c45
2020-12-03 01:32:45 +01:00
Benjamin Berg 5cb91a4189 Release 1.90.5 v1.90.5 2020-12-01 10:14:26 +01:00
Benjamin Berg 0bb132b167 NEWS: Fix release date of 1.90.4 2020-12-01 10:14:02 +01:00
Benjamin Berg ce39f27b5e vfs301_proto: Remove usless break after return
Closes: #341
2020-11-30 20:22:18 +00:00
Benjamin Berg 7d0956513b upekts: Remove duplicated err handling path
Closes: #342
2020-11-30 20:22:17 +00:00
Marco Trevisan (Treviño) 4d978f23d1 debian/rules: Also build the virtual drivers, as they're useful for testing 2020-11-30 20:28:48 +01:00
Marco Trevisan (Treviño) f59e608351 Update changelog 2020-11-30 20:25:35 +01:00
Marco Trevisan (Treviño) c8503f301a Update changelog 2020-11-30 20:24:37 +01:00
Marco Trevisan (Treviño) 2866d8a247 debian/patches: Reorder to give upstream more priority 2020-11-30 20:24:11 +01:00
Marco Trevisan (Treviño) 0c9f7cf5ea debian/patches: Don't use power-save mode for USB controller
LP: #1906296
2020-11-30 20:14:09 +01:00
Marco Trevisan (Treviño) 2b7cfa751a list-udev-rules: Remove Wrongly added well-known USB controller vid/pid combo
This was causing USB controllers to use power-saving mode, breaking usb
devices usage.

Related to: https://gitlab.freedesktop.org/libfprint/libfprint/-/issues/327
2020-11-30 20:03:32 +01:00
Vincent Huang 0eee6a56dd synaptics: add support to sensor PID 0xC9 2020-11-30 13:53:07 +08:00
Benjamin Berg 8962e14fde Release 1.90.4 v1.90.4 2020-11-27 13:55:49 +01:00
tt83 e246e00ba3 elan: added 0c4d device to the array of supported devices 2020-11-26 12:39:19 +01:00
Marco Trevisan (Treviño) 8ab27bb03f Finalise changelog 2020-11-25 19:18:20 +01:00
Marco Trevisan (Treviño) bdaf73c01d Update changelog 2020-11-25 19:17:58 +01:00
Marco Trevisan (Treviño) aa75b6f027 debian/patches: Add identification support to synaptics driver
It allows to unlock / log-in with any finger.

LP: #1905600
2020-11-25 19:04:33 +01:00
Marco Trevisan (Treviño) e8d6f1bd01 debian/patches: Ensure we do not waste power for unsupported devices
LP: #1905603
2020-11-25 19:04:33 +01:00
Marco Trevisan (Treviño) 3c35c01af9 debian/patches: Fix vfs301 verification using device pointer on callbacks
LP: #1905597
2020-11-25 18:56:26 +01:00
Marco Trevisan (Treviño) 576beb1ff5 debian/patches: Add support for new Synaptics devices IDs
LP: #1905593
2020-11-25 18:56:08 +01:00
Marco Trevisan (Treviño) fa3bdb874d udev-rules: Regenerate from wiki to include VFS495 2020-11-25 18:28:41 +01:00
Marco Trevisan (Treviño) 32767f4e16 debian/patches: Properly handle aes3k devices, resubmitting commands
This also needs proper commands cancellation

LP: #1897613
2020-11-25 18:15:09 +01:00
Marco Trevisan (Treviño) e4d2eaeff7 debian/patches: Refresh 2020-11-25 18:15:05 +01:00
Marco Trevisan (Treviño) de761cd741 debian/gbp.conf: Include debian's GNOME team preferred settings 2020-11-25 18:06:51 +01:00
Benjamin Berg 2caeb8cbb3 udev-rules: Add unsupported devices from wiki page to rules
This ensures we are putting all these devices (which are unusable) into
power save mode.
2020-11-25 14:56:06 +00:00
Marco Trevisan (Treviño) dda3587b76 identify: Use stored print to show identify information
The stored print may contain more metadata, so let's use that for
device-stored print, if available.
2020-11-23 17:00:01 +00:00
Marco Trevisan (Treviño) fb5854213a examples: Add Identify example
It was the only main action left in the examples, we use the gallery
from the device if available, otherwise the local one.
2020-11-23 17:00:01 +00:00
Benjamin Berg 21ee241f0c virtual-image: Add command to trigger device removal
This is primarily useful for fprintd testing.
2020-11-23 17:47:03 +01:00
Benjamin Berg 280f916ace image-device: Fix incorrect g_free of error
GError needs to be free'ed using g_error_free, fix this.
2020-11-23 17:47:03 +01:00
Benjamin Berg 1b5dd0057f tests: Add device removal test
This tests all relevant scenarios of device removal, i.e.:
 * device is not open
 * device is currently closing
 * device is open and idle
 * device is currently opening
 * device is open and active

The test ensures that in all scenarios the following holds true:
 * device "removed" signal is only emitted after the action completes
 * context "device-removed" signal is only emitted after the device has
   been closed

Note that the "opening" case is special. Here we confirm that a success
from "open" will not be overriden by a FP_DEVICE_ERROR_REMOVED error, in
order to correctly signal that the internal device state is open and it
needs to be closed.
2020-11-23 17:47:03 +01:00
Benjamin Berg 8a6f1932f8 virtual-image: Add a notify::removed handler
In general, we rely on the underlying transport layer to throw errors
which will abort the current operation. This does not work for the
virtual image device though, but we need it there for testing purposes.

Add a notify::removed handler that makes things work as expected. Let it
throw a protocol error which should not be visible to the outside.
2020-11-23 17:47:03 +01:00
Benjamin Berg 0051ff6352 device: Treat devices as closed even after a close failure
We require the close call, but as the underlying transport layer is
gone, it will generally just return an error.

In principle, it makes sense to think of close as a function that always
succeeds (i.e. it makes no sense to try again). Should the device be in
a bad state, then a subsequent open() will simply fail.
2020-11-23 17:47:03 +01:00
Benjamin Berg b6dd522459 Rework device removal to have a nice API
This enhances the device removal to create a well defined behaviour.

Primarily, it means that:
 * "device-removed" will only be called for closed devices
 * "removed" will be called only when no operation is active

Note that all actions will fail with FP_DEVICE_ERROR_REMOVED, *except*
for open which will only return this error if it failed.

Resolves: #330
2020-11-23 17:47:03 +01:00