Daniel Drake
e1691a29dd
update for new libusb_open API
2008-06-15 10:54:07 -05:00
Vasily Khoruzhick
aa7c8ae81e
Adapting to latest libusb-1.0 changes
...
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
[dsd: remove config const qualifier and add freeing of config]
2008-05-13 18:17:37 +01:00
Daniel Drake
63421e3fd6
uru4000: fix compile against latest libusb
2008-05-07 23:46:06 +01:00
Daniel Drake
76cbf21223
uru4000: Add support for Digital Persona U.are.U Fingerprint Keyboard
...
Reported by Tudor Panaitescu
2008-05-02 11:55:50 +01:00
Daniel Drake
f540ae5d5b
Fix memory leak in fpi_print_data_new()
...
Pointed out by Krystian (yoB) on FS#24
2008-04-19 23:12:42 +01:00
Daniel Drake
ebcabc1ade
uru4000: avoid cancelling a completed transfer
2008-04-12 16:58:49 +01:00
Daniel Drake
870ddfb905
some libusb pointers are now const
2008-04-06 23:55:41 +01:00
Vasily Khoruzhick
40e7ac195a
Adapting to latest libusb
...
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
2008-04-06 23:52:04 +01:00
Azzie
1ab52617c7
Update for latest libusb constant names
2008-03-29 18:11:17 +00:00
Daniel Drake
981f2eb0aa
vcom5s: implement finger detection
...
Uses thresholding of average pixel intensity of the center region of
the image.
Also document guessed meanings of magic numbers for registers.
2008-03-20 15:31:03 +00:00
Daniel Drake
d6d4e56ccf
uru4000: add fwenc search location for UareU4000
...
ticket #14 includes a device with a different firmware, this should get
it up and running.
2008-03-20 13:34:48 +00:00
Daniel Drake
d12ad6dea9
Update version number
...
I'm about to do another 0.0 release, so change the tag in this branch to
avoid confusion
2008-03-20 13:19:44 +00:00
Daniel Drake
c9ff2c5541
Add Veridicom 5th Sense driver
...
Based on bus traffic analysis of the windows driver. This device is
working well, but finger presence detection is not yet implemented.
2008-03-19 23:52:28 +00:00
Daniel Drake
617ca8cd15
fix imaging action state for repeated enroll attempts
...
Enroll attempts may retry in some situations, so we need to reset the
state to accept more scans.
2008-03-19 23:28:44 +00:00
Daniel Drake
a11ac7d8f8
uru4000: search for encryption byte
...
New DigitalPersona devices have a new firmware. We now use a search
scheme to find the encryption byte, by examining known locations
in the firmware until we find something that we recognise.
2008-03-19 17:56:21 +00:00
Daniel Drake
fb49c24ae2
uru4000: Unify register I/O
2008-03-19 17:56:13 +00:00
Daniel Drake
d3d68be490
uru4000: fix register widths
...
Encryption byte address was being truncated in the sm_fix_fw_read_cb
path
2008-03-19 17:56:08 +00:00
Daniel Drake
156e5e7d7c
Update for new libusb_get_pollfds API
2008-03-13 12:54:27 +00:00
Daniel Drake
f546fa2555
Fix synchronous enrollment for multi-stage devices
2008-03-10 13:33:32 +00:00
Daniel Drake
4e884807a7
Update for libusb API rework
2008-03-10 13:33:23 +00:00
Daniel Drake
81a5d6d966
Only use -fgnu89-inline when supported
...
This only works for GCC 4.3 and newer. GCC 4.2 and older already have
the semantics introduced by using this argument.
2008-03-07 00:11:56 +00:00
Vasily Khoruzhick
647d140834
Fixed fp_identify_finger_img didn't return result of operation
...
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
2008-03-05 21:45:02 +00:00
Daniel Drake
07a42d5f91
uru4000: Retry initialization 3 times
...
Sometimes we don't get the powerup interrupt, so retry the whole process
up to 3 times if we time out waiting for the interrupt.
2008-03-03 23:29:03 +00:00
Daniel Drake
2d27df0268
Allow timeouts to be cancelled
2008-03-03 23:28:17 +00:00
Daniel Drake
c29c3fa014
Fix low minutiae handling
...
Fixes a crash and adds in a missing break statement
2008-03-03 13:48:33 +00:00
Daniel Drake
b167dd02fc
Add API to determine next timeout
2008-03-01 13:02:20 +00:00
Daniel Drake
3ea28e334d
Provide access to fd set
...
Includes notifications when the set changes.
2008-03-01 13:02:20 +00:00
Daniel Drake
88e9f4a5f8
Public async API implementation
...
Involved some internal overhaul/reorganisation. Nice side effect is that
the synchronous API is now expressed purely in terms of the public async
API.
2008-03-01 13:02:17 +00:00
Daniel Drake
83f9da1b87
uru4000: port to asynchronous model
2008-02-18 18:12:52 +00:00
Daniel Drake
754e56aec1
Allow execution of sub-SSMs
...
A subssm will be executed, and upon completion the parent state machine
will either be advanced to the next state or aborted with error, depending
on the outcome of the subssm.
Also add some debug messages.
2008-02-18 17:55:35 +00:00
Daniel Drake
b8dc77b56e
Fix verify/identify error handling
...
If verify_start failed, we need to run verify_stop. Same for
identification.
2008-02-18 17:55:35 +00:00
Daniel Drake
866dd941cc
Add timing and polling infrastructure
...
Add timeout mechanism as an asynchronous equivalent of sleeping (uru4000
needs this).
Start implementing polling infrastructure which also accounts for pending
timeouts. We don't expose file descriptors yet, but this is a start.
2008-02-16 12:50:01 +00:00
Daniel Drake
eff26bf0be
aes2501: port to asynchronous model
2008-02-16 12:49:58 +00:00
Daniel Drake
0aaffcee33
Allow jumping to arbitrary state in a SSM
...
This is looking less and less like a simple state machine now, but it's
proving a useful model!
2008-02-16 12:49:37 +00:00
Daniel Drake
77b5dab04b
aeslib: introduce user_data for write registers callback
...
aes2501 needs this for state tracking
2008-02-16 12:49:27 +00:00
Daniel Drake
6f08a3666d
aeslib: fix register write boundaries
2008-02-16 12:49:20 +00:00
Daniel Drake
d914712437
aes4000: port to asynchronous model
2008-02-16 12:49:17 +00:00
Daniel Drake
d731d5f3a3
aeslib: port to asynchronous model
2008-02-16 12:49:02 +00:00
Daniel Drake
3048b37176
Port imaging layer to asynchronous model
2008-02-16 12:48:44 +00:00
Daniel Drake
aeeec97fb2
upekts: port to asynchronous model
2008-02-16 12:48:25 +00:00
Daniel Drake
5b1f6a0df7
Port primitive driver layer to asynchronous model
2008-02-16 12:47:56 +00:00
Daniel Drake
69760547df
Disable all drivers while internal API is being reworked
2008-01-30 14:17:08 +00:00
Daniel Drake
bf7093d607
Port to libusb-0.9.0 (synchronous I/O)
...
Straightforward port to libusb-0.9.0 sync I/O functions, to give libusb-1.0
a bit of a test drive and to create a reference point for later.
2008-01-30 14:16:35 +00:00
Gustavo Chain
6f456f399d
Add Secugen FDU2000 driver
...
[dsd@gentoo.org: some trivial changes:
fixed some warnings
fixed fp_img memory leak on error
renamed endpoint constants (calling a bulk endpoint 'ctrl' is confusing,
as a control endpoint is something different)
]
2007-12-27 01:09:32 +00:00
Daniel Drake
659d8346be
Compiler flags update
...
Dropped -Wextra as it is not that useful.
Set compiler flags to be more like the kernel's.
Set std=gnu99
Fixed some warnings.
2007-12-27 01:06:55 +00:00
Daniel Drake
c8aa33da0b
v0.0.5 release
2007-12-07 15:07:07 +00:00
Daniel Drake
642010643d
uru4000: Add support for Microsoft Fingerprint Reader v2
...
After lot 713, Microsoft fingerprint readers changed. The new version
comes with a new USB product ID and a challenge-response authentication
scheme where the device challenges the authenticity of the driver.
An independent third party produced documentation on the computations
needed to convert a challenge into the correct response, and I then used
this documentation to produce a clean-room reimplementation of the
authentication scheme.
2007-12-07 15:05:16 +00:00
Daniel Drake
474da5f2c7
Add a disclaimer for the university
2007-12-07 15:05:13 +00:00
Daniel Drake
c1f8581ec9
Cleanup discover_device in examples
...
Andrei Tchijov pointed out that the discover_device() function is written
in a strange way.
2007-12-01 13:00:33 +00:00
Daniel Drake
3479dee0e4
aeslib: image assembly
...
All 3 authentec drivers now use a shared image assembly function.
2007-11-26 23:28:14 +00:00