Commit Graph

1820 Commits

Author SHA1 Message Date
Marco Trevisan (Treviño) 677c50fc51 fprint-list-supported-devices: Do not double-free usb_list
We were leaking the spi_list instead.
2023-03-15 14:50:41 +01:00
Bastien Nocera bb5feeca77 ci: Use detached pipelines
See https://gitlab.freedesktop.org/freedesktop/freedesktop/-/issues/438#what-it-means-for-me-a-maintainer-of-a-project-part-of-gitlabfreedesktoporg
2023-03-15 13:33:52 +01:00
wagner.oliveira 22683ec490 Fix AES4000 wrong IDs (swapped pid/vid) 2023-01-27 18:23:55 -05:00
Enrik Berkhan 0bf7d58c5e goodixmoc: cleanup enroll state machine
As suggested by @benzea, the following cleanup actions have been
performed:

  - let case order match enroll states enum

  - remove FP_ENROLL_IDENTIFY that is no longer used

  - finally use fpi_ssm_next_state instead of explicitly jumping to
    FP_ENROLL_CREATE

Additionally, all types/functions/variables referring to "enroll_init"
used for FP_ENROLL_CREATE have been renamed to match "enroll_create".
All other states use similar name matching.

Signed-off-by: Enrik Berkhan <Enrik.Berkhan@inka.de>
2023-01-19 20:30:05 +01:00
Enrik Berkhan 86566e8d0b goodixmoc: Fix missing "enroll create" state
After the driver internal duplicate check had been removed in
46669e9f53, all templates were saved with
an all-zeroes template ID.

By going through FP_ENROLL_CREATE before starting to capture, the
template ID returned from the device is taken into account again.

Signed-off-by: Enrik Berkhan <Enrik.Berkhan@inka.de>
2023-01-19 20:28:33 +01:00
Zoltán Böszörményi 7080a5ff8b Abort initialization if unknown sensor dimensions are reported
Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
2023-01-17 19:50:21 +00:00
Zoltán Böszörményi 5e52ad2ad1 upektc_img: Add new unit test for the TCS1s chip variant 2023-01-17 19:50:21 +00:00
Zoltán Böszörményi bfaa9a9241 upektc_img: Fix asynchronous problem in init_read_data_cb() 2023-01-17 19:50:21 +00:00
Zoltán Böszörményi 9c900789de upektc_img: Add asserts for expected height reported by the device 2023-01-17 19:50:21 +00:00
Zoltán Böszörményi 29a24ba67f upektc_img: Add finger status changes 2023-01-17 19:50:21 +00:00
Zoltán Böszörményi 987f23698e upektc_img: Deduce sensor type from the information packet 2023-01-17 19:50:21 +00:00
Toni cda4e6136c upektc_img: Fix protocol for area sensors 2023-01-17 19:50:21 +00:00
Toni 522b481297 upektc_img: Add sensor chip detection
Move setting up sensor type and image dimensions to
activation time.
2023-01-17 19:50:21 +00:00
Toni fafe70f985 upektc_img: Fix CRC for upek2020_init_capture. 2023-01-17 19:50:21 +00:00
Vasily Khoruzhick 62818b9407 fpcmoc: fix use-after free in multiple callbacks
Drop if statement that retrieves internal ssm->error.
"error" is already a copied ssm->error, so it makes no sense to return
internal copy which will be freed when ssm is marked as done.

Fixes #526
2023-01-10 11:22:22 -08:00
Vasily Khoruzhick db2fa81358 tests: valgrind: update python and libfprint suppressions list 2023-01-10 11:15:17 -08:00
Vasily Khoruzhick d492901c3e tests: valgrind: generate suppressions list for new tests-suppress-new-valgrind-errors-in-python
That will help with updating suppresions lists in future
2023-01-10 11:14:51 -08:00
Vasily Khoruzhick a5d52eb853 Fix indentation issues with uncrustify-0.76.0
Apparently older version didn't find this indentation issues
2023-01-08 23:36:18 -08:00
Bastien Nocera 89509c76f4 build: Print the list of enabled drivers
This saves us from having to figure out which drivers were enabled
during a build in some other way.
2022-11-02 12:04:34 +01:00
Marco Trevisan (Treviño) 6395dda012 fp-image: Remove config.h inclusion in fpi-header
And also avoid defining a function we expose depending on it's presency.
2022-10-13 20:35:52 +00:00
Marco Trevisan (Treviño) 54bb0c12e6 fpi-image: Check for PIXMAN presency using #ifdef
That's a defined variable that may be there or not, and currently we
warn with:
 - fpi-image.c:29:5: warning: "HAVE_PIXMAN" is not defined, evaluates to 0
2022-10-13 20:35:52 +00:00
Marco Trevisan (Treviño) 1f1ed80dbf test-device-fake: Add more logging showing the current device action 2022-10-13 20:31:28 +00:00
Marco Trevisan (Treviño) 36bcb24b3a fp-device: Move FpDevice private functions to public library
This these functions are not really needed by anything else than
FpDevice, so move them back to the cpp file, so that we don't expose
them in the private library, given that we don't need them
2022-10-13 20:31:28 +00:00
Marco Trevisan (Treviño) ddacf07e3b meson: Actually bump the version to 1.94.5 2022-10-13 20:31:28 +00:00
Marco Trevisan (Treviño) 3ea2ee8a76 tod: Change namespace of internal functions to tod_*
In this way we don't have the risk of them being exported because
starting with `fpi_*`.
2022-10-13 20:42:31 +02:00
Marco Trevisan (Treviño) 17818cffe6 ci: allow failure on valgrind job
We have tests depending on external libraries that must not be updated
just to fix such issues
2022-10-13 20:21:15 +02:00
Marco Trevisan (Treviño) 18ca916c4d tod: Add fpi_device_suspend and fpi_device_resume to 1.94 version 2022-10-13 20:12:14 +02:00
Marco Trevisan (Treviño) 082b335300 Merge tag 'v1.94.5' into tod
v1.94.5

 * New driver: fpcmoc, supporting various FPC MOC Fingerprint Sensors
 * goodixmoc: New PIDs 0x6014, 0x6094, 0x631C, 0x634C, 0x6384, 0x659A.
 * goodixmoc: Support resetting device on firmware failure due to corrupted DB.
 * elanmoc: New PIDs 0x0c88, 0x0c8c, 0x0c8d.
 * synaptics: New PID 0x0104.
 * upektc: New PID 0x2017.
 * Fixed various memory leaks
 * More tests

Git-EVTag-v0-SHA512: a36e4b627ffc830a78932266119b73e53921965990bd1b6cae6fd8d166b1b8e62f5a538151a74b82a2a2d83a4ab7399ed17cb2bef39441f881a38a24252e4efa
2022-10-13 20:08:10 +02:00
Marco Trevisan (Treviño) 2e79e6f353 tod-goodix-wrapper: Fix syntax as per uncrustify 2022-10-13 20:06:13 +02:00
Marco Trevisan (Treviño) e96669208b test-fp-context-tod: Try to open/close a device from the public library
We need to skip this for devices with no close vfunc (like the SSM one)
2022-10-13 20:06:13 +02:00
Marco Trevisan (Treviño) f2816024e0 test-device-fake: Add more logging showing the current device action 2022-10-13 20:06:13 +02:00
Marco Trevisan (Treviño) 2f3d9240b7 tod-symbols: Define other macros that could be useful in future 2022-10-13 19:46:26 +02:00
Marco Trevisan (Treviño) c36310fed1 tod: Force libfprint-tod to be a shared library and link whole with private
Also unset the private library if set and make libfprint to only link
with the tod one.

This fixes the issue we had with wrong symbols shared by multiple
libraries
2022-10-13 19:45:17 +02:00
Marco Trevisan (Treviño) c04d15bbf1 fp-device: Move FpDevice private functions to public library
This these functions are not really needed by anything else than
FpDevice, so move them back to the cpp file, so that we don't expose
them in the private library, given that we don't need them
2022-10-13 19:42:50 +02:00
Marco Trevisan (Treviño) 8e7e5bf710 tests: Add tests to ensure that we don't duplicate symbols in libraries
We have an issue where some symbols are exposed by both the tod library
and the public one, and this may lead to big issues like GType's being
defined multiple times.

So add a test checking whether this is working

See: 3v1n0/libfprint#1
2022-10-13 19:41:39 +02:00
Marco Trevisan (Treviño) 4824380f79 Revert "fpi-device: Avoid using device action strings"
This reverts commit fbffb62ecb.
2022-10-13 14:09:25 +02:00
Marco Trevisan (Treviño) 86961a9429 Release 1.94.5 v1.94.5 2022-10-13 05:57:04 +02:00
Marco Trevisan (Treviño) 3ca20a8e70 ci: Do not run two image rebuild pipelines on schedules 2022-10-13 05:37:12 +02:00
Marco Trevisan (Treviño) 3100404419 ci: Install more debug symbols 2022-10-13 05:27:44 +02:00
Marco Trevisan (Treviño) 892c9767a2 tests: Be stricter on valgrind leak checks
We used to ignore leaks, and we are ending up in having various of them,
so let's make valgrind to exit with error when using the valgrind test
setup (so in CI) to catch them better.
2022-10-13 05:20:28 +02:00
Marco Trevisan (Treviño) 2718dc02e0 vfs0050: Initialize the usb transfer buffer when allocating it
Ensure that the memory that we're going to populate via USB transfer is
initialized, otherwise valgrind may complain about (even if that's not
really an issue).
2022-10-13 05:04:03 +02:00
Marco Trevisan (Treviño) abd7c66833 fp-device: Do not setup current action before updating temperature
At every action we update the device temperature, and this can
potentially lead to a failure, if the temperature is too hot.

However in such case we were failing a task that we had just stolen,
causing an error, tasks never returning and the device was left in an
undefined state.

So, just return early in case temperature is too hot, as we don't really
need to have the current task or action set at this point because
there's no active action to cancel yet.

This was causing random errors when running tests under valgrind
2022-10-13 05:04:03 +02:00
Marco Trevisan (Treviño) 8716ddb07a fp-print: Fix a typo in documentation 2022-10-13 05:04:03 +02:00
Marco Trevisan (Treviño) fd7d93e619 fpi-device: Do not leak suspend/resume tasks
We kept suspend/resume GTask's around but at the moment of completing
them we didn't unref them, leading to leaks.
2022-10-13 05:04:02 +02:00
Marco Trevisan (Treviño) 0592c0e5ad uru4000: Cleanup cancelled error before early return 2022-10-13 05:04:02 +02:00
Marco Trevisan (Treviño) 684e3c460a uru4000: Shutdown NSS on device close
We were allocating NSS during device opening but never closing it,
causing many leaks.
2022-10-13 05:04:02 +02:00
Marco Trevisan (Treviño) 4278668c8f egis0570: Cleanup the received image that is going to be resized
It's just temporary for us as we're providing the resized one instead.
2022-10-13 05:04:02 +02:00
Marco Trevisan (Treviño) a86ab6c854 test-fpi-device: Cleanup the device ID / driver before overriding it
Otherwise we'd leak the one that was initially set.
2022-10-13 05:04:02 +02:00
Marco Trevisan (Treviño) b04eed0aea test-device-fake: Consume the identify print if we're returning with error 2022-10-13 05:04:02 +02:00
Marco Trevisan (Treviño) 669e091b03 virtual-device: Use an autoptr to handle the new scan print
We may not use this print, so let's use an autoptr to handle its life
cycle to clean it up when not used.
2022-10-13 05:04:02 +02:00