To test I'm basically using the examples/ tools, and seems that the drive_data 
has the correct value 5.

I've include the following debug code in the line 
https://gitlab.freedesktop.org/libfprint/libfprint/blob/master/libfprint/drivers/uru4000.c#L1259

fp_dbg("------------------> dev_init() - drive_data value: %d", driver_data);

And I got:

(process:4545): libfprint-uru4000-DEBUG: 10:11:49.701: ------------------> 
dev_init() - drive_data value: 5


See the full log:

root@kleysonr-POS-PIQ77CL:~/libfprint/libfprint/builddir/examples# ./img_capture
(process:4545): libfprint-DEBUG: 10:11:49.696: 3225388671: 
../libfprint/core.c:752
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver upekts
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver upektc
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver upeksonly
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver vcom5s
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver uru4000
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver aes1610
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver aes1660
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver aes2501
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver aes2550
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver aes2660
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver aes3500
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver aes4000
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver vfs101
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver vfs301
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver vfs5011
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver upektc_img
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver etes603
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver vfs0050
(process:4545): libfprint-DEBUG: 10:11:49.701: registered driver elan
(process:4545): libfprint-DEBUG: 10:11:49.701: driver uru4000 supports USB 
device 05ba:000a
(process:4545): libfprint-DEBUG: 10:11:49.701: selected driver uru4000 supports 
USB device 05ba:000a
Found device claimed by Digital Persona U.are.U 4000/4000B/4500 driver
(process:4545): libfprint-sync-DEBUG: 10:11:49.701: 3225394420: 
../libfprint/sync.c:56
(process:4545): libfprint-async-DEBUG: 10:11:49.701: 3225394445: 
../libfprint/async.c:59
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.701: ------------------> 
dev_init() - drive_data value: 5
(process:4545): libfprint-async-DEBUG: 10:11:49.703: status 0
(process:4545): libfprint-sync-DEBUG: 10:11:49.703: status 0
Opened device. It's now time to scan your finger.

(process:4545): libfprint-sync-DEBUG: 10:11:49.703: to be handled by uru4000
(process:4545): libfprint-async-DEBUG: 10:11:49.703: 3225395954: 
../libfprint/async.c:526
(process:4545): libfprint-DEBUG: 10:11:49.703: action 4
(process:4545): libfprint-drv-DEBUG: 10:11:49.703: 0x55eb2072b460 entering 
state 0
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.703: read 1 regs at 7
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.703: reg value 5
(process:4545): libfprint-drv-DEBUG: 10:11:49.703: 0x55eb2072b460 entering 
state 1
(process:4545): libfprint-drv-DEBUG: 10:11:49.703: 0x55eb2072b460 entering 
state 3
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.703: set 85
(process:4545): libfprint-drv-DEBUG: 10:11:49.704: 0x55eb2072b460 entering 
state 4
(process:4545): libfprint-drv-DEBUG: 10:11:49.704: 0x55eb2072b7e0 entering 
state 0
(process:4545): libfprint-drv-DEBUG: 10:11:49.704: 0x55eb2072b7e0 entering 
state 1
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.704: set 05
(process:4545): libfprint-drv-DEBUG: 10:11:49.705: 0x55eb2072b7e0 entering 
state 2
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.705: read 1 regs at 7
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.705: reg value 0
(process:4545): libfprint-drv-DEBUG: 10:11:49.705: 0x55eb2072b7e0 entering 
state 3
(process:4545): libfprint-drv-DEBUG: 10:11:49.705: 0x55eb2072b7e0 completed 
with status 0
(process:4545): libfprint-drv-DEBUG: 10:11:49.705: 0x55eb2072b460 entering 
state 5
(process:4545): libfprint-poll-DEBUG: 10:11:49.705: in 300ms
(process:4545): libfprint-poll-DEBUG: 10:11:49.705: next timeout in 0.299998s
(process:4545): libfprint-poll-DEBUG: 10:11:49.705: next timeout in 0.299987s
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.714: recv irq type 56aa
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.714: late scanpwr interrupt
(process:4545): libfprint-drv-DEBUG: 10:11:49.714: 0x55eb2072b460 entering 
state 6
(process:4545): libfprint-poll-DEBUG: 10:11:49.714: 3225407164: 
../libfprint/poll.c:133
(process:4545): libfprint-drv-DEBUG: 10:11:49.714: 0x55eb2072b460 entering 
state 7
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.714: read 16 regs at f0
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.715: reg value 45
(process:4545): libfprint-drv-DEBUG: 10:11:49.715: 0x55eb2072b460 entering 
state 8
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.715: Versions 0040 and 0014
(process:4545): libfprint-drv-DEBUG: 10:11:49.715: 0x55eb2072b460 completed 
with status 0
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.715: wait finger on
(process:4545): libfprint-DEBUG: 10:11:49.715: status 0
(process:4545): libfprint-async-DEBUG: 10:11:49.715: 3225407724: 
../libfprint/async.c:547
(process:4545): libfprint-uru4000-DEBUG: 10:11:49.715: wait finger on


________________________________________
De: Bastien Nocera <had...@hadess.net>
Enviado: quarta-feira, 22 de agosto de 2018 19:29
Para: Kleyson de Sousa Rios; fprint@lists.freedesktop.org
Assunto: Re: [fprint] UareU 4000B DigitalPersona image encrypted

On Wed, 2018-08-22 at 19:02 +0000, Kleyson de Sousa Rios wrote:
> Hi Bastien,
>
> I figured out that if I comment out the following "if statement", to
> force the execution of the respective code, I get a non-encrypted
> image.
>
>
https://gitlab.freedesktop.org/libfprint/libfprint/blob/master/libfprint/drivers/uru4000.c#L723
>
> For the validation "if (!urudev->profile->encryption)" be true,
> should I set some flag/parameter for the driver on the Linux or is
> the urudev->profile->encryption calculated at run-time ?

It's supposed to be set here:
https://gitlab.freedesktop.org/libfprint/libfprint/blob/master/libfprint/drivers/uru4000.c#L1328

and the "driver_data" value should be the one from this table:
https://gitlab.freedesktop.org/libfprint/libfprint/blob/master/libfprint/drivers/uru4000.c#L1395

Can you please check what the value is for driver_data when dev_init()
is called? It should be 5.

What tool did you use for testing? It's possible that the tool has a
bug, and doesn't call fp_async_dev_open() or fp_dev_open() with a
correct value.

Cheers

_______________________________________________
fprint mailing list
fprint@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/fprint

Reply via email to