1commit d82847a6b4bbd2864388f2bf8e6a2b9d1aed05c4
2Author: Vasily Khoruzhick <anarsoul@gmail.com>
3Date:   Sun May 14 09:26:30 2017 -0700
4
5    0.7.0
6
7commit 5a7e6e07ffa34fd4131f95fbfe5ca23d7eedc592
8Author: Vasily Khoruzhick <anarsoul@gmail.com>
9Date:   Mon Nov 7 08:10:44 2016 -0800
10
11    etes603: fix compilation error caused by a0bbbd7d3
12
13commit 2162aa9f48a739cc8e3b25643f9f8cba979d545e
14Author: Vasily Khoruzhick <anarsoul@gmail.com>
15Date:   Mon Jul 18 20:46:20 2016 -0700
16
17    uru4k: decrypt image if necessary
18
19    Add naive detection of image encryption: if stddev between two
20    adjacent rows is higher than threshold assume that image is encrypted
21    and decrypt it.
22
23    Fixes fd.o bug 88945
24
25commit a1f36c71c9063a5ec179acb2cfbcc56206ba2e4f
26Author: Vasily Khoruzhick <anarsoul@gmail.com>
27Date:   Thu Feb 11 00:14:47 2016 -0800
28
29    upeksonly: decrease bz3_threshold for 147e:1001
30
31    Its width is only 216 pixels, and it appears not to be enough for matching at
32    default threshold.
33
34commit e4eedef27e0b8b9eb5a8f3ae68086e1013e90b85
35Author: Vasily Khoruzhick <anarsoul@gmail.com>
36Date:   Tue Feb 9 20:15:38 2016 -0800
37
38    upeksonly: use fpi_std_sq_dev() and fpi_mean_sq_diff_norm()
39
40    Use fpi_mean_sq_diff_norm() for blank line detection and
41    fpi_mean_sq_diff_norm() for duplicate line detection.
42    Fixes finger presence and removal detection.
43
44commit 5e296959697643aab14feac709c8adda8726d582
45Author: Vasily Khoruzhick <anarsoul@gmail.com>
46Date:   Tue Feb 9 17:19:39 2016 -0800
47
48    lib: move some functions from vfs5011.c into img.c
49
50commit 49a46668ad2f45d26d3b6d6168ada620c54290ab
51Author: Konstantin Semenov <zemen17@gmail.com>
52Date:   Tue Jan 19 14:26:29 2016 +0300
53
54    lib: Add VFS0050 driver
55
56    New driver for 138a:0050 device
57
58    https://bugs.freedesktop.org/show_bug.cgi?id=91616
59
60commit 76269decdd405a0ae919a24c1ba3061c44bf80b2
61Author: Bastien Nocera <hadess@hadess.net>
62Date:   Sat Nov 5 00:12:46 2016 +0100
63
64    aes4000: Fix possible crash if USB init fails
65
66    The code was indented, but only the first call was actually in the
67    conditional, which meant that initialisation carried on as normal on top
68    of a failed USB device. Exit early and remove the conditional to fix
69    this.
70
71    https://bugzilla.gnome.org/show_bug.cgi?id=98594
72
73commit 8454a25ecfc27c5d96867a9fda012d0a73ffeddb
74Author: Bastien Nocera <hadess@hadess.net>
75Date:   Sat Nov 5 00:11:30 2016 +0100
76
77    aes3500: Fix possible crash if USB init fails
78
79    The code was indented, but only the first call was actually in the
80    conditional, which meant that initialisation carried on as normal on top
81    of a failed USB device. Exit early and remove the conditional to fix
82    this.
83
84commit a0bbbd7d32150ab6ed25f466cce05169fbbbaead
85Author: Bastien Nocera <hadess@hadess.net>
86Date:   Sat Nov 5 00:10:17 2016 +0100
87
88    drivers: Print USB error when libusb_claim_interface() fails
89
90    https://bugs.freedesktop.org/show_bug.cgi?id=98594
91
92commit 12f6dae8cd81f363e02849acea40c69a8764f487
93Author: Bastien Nocera <hadess@hadess.net>
94Date:   Thu Nov 3 14:05:11 2016 +0100
95
96    build: Fix 9570c36 on Debian
97
98    Debian's ash doesn't implement pushd/popd.
99
100commit 9570c36fd42bff6246de50ace398a457b9495b46
101Author: Bastien Nocera <hadess@hadess.net>
102Date:   Tue Jul 19 11:18:31 2016 +0200
103
104    build: Fix running autogen.sh out-of-tree
105
106commit 487dae0d2fa5a7a1951581f17b55fa1f411e73e6
107Author: Bastien Nocera <hadess@hadess.net>
108Date:   Tue Apr 12 16:10:53 2016 +0200
109
110    Work-around kernel's lack of USB PM
111
112    The device is already supported by the vfs5011 driver and non-
113    blacklisted, so will show up in the udev rules, but for ease of
114    backporting to older versions, add it to the whitelist anyway.
115
116    https://bugzilla.redhat.com/show_bug.cgi?id=1173367
117
118commit d71018bd8f478baea65cc48c59074abb66813b90
119Author: Vasily Khoruzhick <anarsoul@gmail.com>
120Date:   Tue Nov 24 15:22:46 2015 -0800
121
122    vfs5011: add USB IDs of device found in some Toshiba laptops
123
124commit 61fa57b05dccda8ed855f66e650564e5da9acb1a
125Author: Vasily Khoruzhick <anarsoul@gmail.com>
126Date:   Wed Oct 14 10:45:15 2015 -0700
127
128    aes1610: decrease bz3_threshold to 20
129
130commit fc1781e317f66eb5f9dd10afb765d721f8116f2f
131Author: Volkau Siarhei <lis82@mail.by>
132Date:   Sat Nov 1 15:46:52 2014 +0300
133
134    vfs101: fix broken enrolling by prev commit to vfs101.c
135
136commit ffef6c2bcc87a40767b23891ec1e53a4d459e9c1
137Author: Vasily Khoruzhick <anarsoul@gmail.com>
138Date:   Tue Sep 29 17:10:42 2015 -0700
139
140    vfs5011: add proper dev_deactivate() support
141
142    Driver is not able to cancel imaging process without this change
143
144commit 67d29f79368aab9604b23e1744907bfdbe9ec44c
145Author: Vasily Khoruzhick <anarsoul@gmail.com>
146Date:   Tue Sep 29 17:08:51 2015 -0700
147
148    aes1610: improve gain settings
149
150commit 9437c98d54c33a5a752f4ffd28a761b7cbf32141
151Author: Vasily Khoruzhick <anarsoul@gmail.com>
152Date:   Tue Sep 22 19:49:58 2015 -0700
153
154    lib: frame assembling: flip image for non-reverse direction
155
156    It was here for aes2501 and aes1610 before moving assembling routines
157    into common code.
158
159commit f7d00a828dd0af5db75a80415758c848d48d11f8
160Author: Vasily Khoruzhick <anarsoul@gmail.com>
161Date:   Sat Sep 19 15:27:19 2015 -0700
162
163    lib: use normalized error to make decision about movement direction
164
165    Height is not a good determinant in movement direction, normalized
166    error is much better. Should fix aes1610 and aes2501 driver issues.
167
168commit 0f0a4b2da6704505471aa2797fac7c41de21a862
169Author: Vasily Khoruzhick <anarsoul@gmail.com>
170Date:   Sat Sep 19 12:25:05 2015 -0700
171
172    aes2660: set partial flag on an image
173
174    Set partial flag to remove false minutiae at the perimeter of a scan
175
176commit c9cdbaf8803be8c9ca33029419f006deb55d7e88
177Author: Vasily Khoruzhick <anarsoul@gmail.com>
178Date:   Sat Sep 19 12:24:48 2015 -0700
179
180    aes2550: set partial flag on an image
181
182    Set partial flag to remove false minutiae at the perimeter of a scan
183
184commit 83f29dad9f42f4cae53c4d130ca792d25e6468c3
185Author: Vasily Khoruzhick <anarsoul@gmail.com>
186Date:   Sat Sep 19 12:24:21 2015 -0700
187
188    aes2501: set partial flag on an image
189
190    Set partial flag to remove false minutiae at the perimeter of a scan
191
192commit c2a11c5918684a842c34418fd7630f26492790d2
193Author: Vasily Khoruzhick <anarsoul@gmail.com>
194Date:   Sat Sep 19 12:23:33 2015 -0700
195
196    aes1610: set partial flag on an image
197
198    Set partial flag to remove false minutiae at the perimeter of a scan
199
200commit 3746b2ad5c91e649488916179b44460609bab805
201Author: Vasily Khoruzhick <anarsoul@gmail.com>
202Date:   Tue Sep 1 08:39:38 2015 -0700
203
204    upeksonly: use line assembling routines to account variable swiping speed
205
206commit b51fa446e38e621c1965998e1e404574599dc728
207Author: Vasily Khoruzhick <anarsoul@gmail.com>
208Date:   Sat Sep 5 09:38:10 2015 -0700
209
210    lib: move line assembling routines out of vfs5011 into common code
211
212commit 6fc5293e8330e65ed21c0e43a18b3be061933e74
213Author: Vasily Khoruzhick <anarsoul@gmail.com>
214Date:   Sat Sep 19 10:20:55 2015 -0700
215
216    upeksonly: add support for 147e:1001 device
217
218commit aab3daa28b4b45a94f7142eadfef76343c1b13d3
219Author: Vasily Khoruzhick <anarsoul@gmail.com>
220Date:   Sat Sep 19 10:15:35 2015 -0700
221
222    upeksonly: move regwrite sequences into a header
223
224commit e40f7bd1f7aba96de11a5165a15b3b1783181ac3
225Author: Vasily Khoruzhick <anarsoul@gmail.com>
226Date:   Mon Aug 31 21:25:20 2015 -0700
227
228    lib: move frame assembling routines into a separate file and make them usable by non-aes drivers
229
230    Frame assembling routines are not aes-specific, so move them into a separate file
231    and add an accessor for peeking a pixel.
232
233commit 6664f87d8f2650d7471a110b33839c878f97f8b4
234Author: Vasily Khoruzhick <anarsoul@gmail.com>
235Date:   Sat Sep 19 10:28:49 2015 -0700
236
237    aes1610: fix memory corruption introduced by a457658f1b
238
239commit 6e8d5cd6a199f83fb5f862a8421f8582608032f5
240Author: Vasily Khoruzhick <anarsoul@gmail.com>
241Date:   Sun Aug 30 16:38:44 2015 -0700
242
243    vfs5011: do duplicate line search for 30 lines
244
245    It seems that on faster devices, the driver can get more duplicate lines.
246    Without this change scan looks too stretched.
247
248    Suggested by: Thomas Rinsma <thomasrinsma@gmail.com>
249
250commit 9f7e1ecf40ec86bae0088c847ee2453be8a27ad5
251Author: Vasily Khoruzhick <anarsoul@gmail.com>
252Date:   Sun Aug 30 16:36:58 2015 -0700
253
254    vfs5011: make '5 scans per enroll' work with this driver
255
256    Restart scan if core did not ask to terminate it explicitly.
257
258commit d9567002e458fca4f289d84bb3cb49d9d97585e7
259Author: Vasily Khoruzhick <anarsoul@gmail.com>
260Date:   Wed Apr 1 13:39:54 2015 +0300
261
262    imgdev: reset action_result after reporting it
263
264    Otherwise we end up in reporting the same result on next iteration.
265
266commit a656a4a9f37dcf34cd1047647af7253fae89eb4c
267Author: Vasily Khoruzhick <anarsoul@gmail.com>
268Date:   Thu Mar 19 19:34:08 2015 +0300
269
270    upektc_img: Handle scan status reported by sensor properly
271
272    Sensor can report "short scan" or "finger not centered" instead of image,
273    so it's necessary to handle them gracefully.
274
275commit 2944a35e74fdf1d91789b5715cce81974d6668a3
276Author: Vasily Khoruzhick <anarsoul@gmail.com>
277Date:   Thu Mar 19 19:27:13 2015 +0300
278
279    imgdev: Add fpi_imgdev_abort_scan() to abort scan gracefully from within the driver.
280
281    Smart sensors like Upek TouchChip Coprocessor can provide scan status instead
282    of image, as result we need to report such status as "short scan" or "finger not centered"
283    from within the driver, since it's not a session error.
284
285commit 391373fb0c9e427ef93a71b056a999739297e428
286Author: Vasily Khoruzhick <anarsoul@gmail.com>
287Date:   Thu Mar 19 19:33:26 2015 +0300
288
289    upektc_img: Fix copy/paste error
290
291    Replace upekts_img with upektc_img
292
293commit 985e8c4577cf6e79c6f99cf0c694f4e732daab27
294Author: Vasily Khoruzhick <anarsoul@gmail.com>
295Date:   Sun Mar 15 21:21:37 2015 +0300
296
297    aes1660: set partial flag on an image
298
299    Sensor width seems to be only 128 pixels and that's not enough
300    for scanning whole finger surface. Lower bz3_threshold to 25,
301    since for wrong finger score never goes above 10, but sometimes
302    for right finger score is below 40.
303
304commit bd0d4258e4b27579ecdfa5e91bd6f228d28796f3
305Author: Vasily Khoruzhick <anarsoul@gmail.com>
306Date:   Sun Mar 15 16:18:50 2015 +0300
307
308    upektc_img: set partial flag on an image
309
310    Sensor width seems to be only 128 pixels and that's not enough
311    for scanning whole finger surface. Lower bz3_threshold to 20,
312    since for wrong fingerprint score never goes above 10, but sometimes
313    for right finger score is below 40.
314
315commit 9bbd9b208a69282a7ede960711839b03b6ea4c8c
316Author: Vasily Khoruzhick <anarsoul@gmail.com>
317Date:   Sun Mar 15 16:17:08 2015 +0300
318
319    lib: add partial image flag
320
321    And activate perimeter points removal if this flag is set.
322
323commit 59fe0fb699beca75d087ca146cfd413a9bb3da8a
324Author: Vasily Khoruzhick <anarsoul@gmail.com>
325Date:   Sun Mar 15 16:13:32 2015 +0300
326
327    nbis: add one more step of false minutia removal
328
329    Remove minutiae that are located on scan perimeter
330
331commit f1fdd71613a483e054cd11e19bdcfb49c95fa2cb
332Author: Bastien Nocera <hadess@hadess.net>
333Date:   Sun Mar 15 23:13:08 2015 +0100
334
335    rules: Add driver name to the USB properties
336
337    Makes it easier to see which driver is being used.
338
339commit bb66780cb58daf33d55524a9b434e218a991507c
340Author: Bastien Nocera <hadess@hadess.net>
341Date:   Sun Mar 15 23:10:03 2015 +0100
342
343    build: Document why some drivers are disabled
344
345    This avoids confusion when looking at the build logs
346
347commit 45fb6d790815eec3d9e08a9e459a325fbb9addc0
348Author: Carlos Olmedo Escobar <carlos.olmedo.e@gmail.com>
349Date:   Fri Feb 6 17:22:16 2015 +0100
350
351    vfs101: Logical conjunction always evaluates to false.
352
353commit 9f408bf51b7740e87c3d0b90e5adc5de3c37c052
354Author: Timo Teräs <timo.teras@iki.fi>
355Date:   Tue Oct 7 08:18:41 2014 +0300
356
357    imgdev: fix enum mismatch for dev_change_state() call
358
359    This bug has existed long time, but it was uncovered by commit
360    e215b0509448 which enabled multiple enrollment rounds.
361
362    In practice this broke (at least) URU4000 driver state machine
363    causing it to enter indefinite loop - due to the invalid state
364    change callback.
365
366    Patch originally posted at:
367    http://lists.freedesktop.org/archives/fprint/2014-June/000603.html
368
369    Test and verification results:
370    http://lists.freedesktop.org/archives/fprint/2014-June/000607.html
371
372    Signed-off-by: Timo Teräs <timo.teras@iki.fi>
373
374commit ee32166267323ad6c66c022e18ef6af76a3a5423
375Author: Bastien Nocera <hadess@hadess.net>
376Date:   Tue Feb 3 17:36:32 2015 +0100
377
378    0.6.0
379
380commit a3c90f2b24434aa36f782aca3950fd89af01fce0
381Author: Vasily Khoruzhick <anarsoul@gmail.com>
382Date:   Fri Sep 6 16:31:15 2013 +0300
383
384    upektc_img: handle 0x28 message better
385
386commit dc537ef2c9b1ee62e88db02560abcead4f9486f9
387Author: Arseniy Lartsev <arseniy@chalmers.se>
388Date:   Tue Nov 5 16:32:15 2013 +0800
389
390    lib: Add VFS5011 driver
391
392    New driver for VFS5011 138a:0011 and 138a:0018
393
394    https://bugs.freedesktop.org/show_bug.cgi?id=61692
395
396    [vasilykh]:
397            - use g_get_real_time() instead of non-portable time()
398            - use g_free() instead of free()
399            - comment out "RECV(VFS5011_IN_ENDPOINT_CTRL2, 8)"
400
401commit 061a457658f1b39fe04ceb3c104c46b19a13799f
402Author: Vasily Khoruzhick <anarsoul@gmail.com>
403Date:   Mon Dec 30 12:07:53 2013 +0300
404
405    aeslib: improve frame-assembling routines
406
407    Some scanners provide hardware assistance in frame assemling, i.e.
408    horizontal and vertical offset to previous frame is provided. This
409    commit improves code to utilise that assistance. Sensors without
410    hardware assistance will use software algorithm, which was also
411    improved to do search in horizontal direction.
412
413commit 82ae7c1c0909dba765ed8c42d26c22913841f206
414Author: Vasily Khoruzhick <anarsoul@gmail.com>
415Date:   Mon Dec 30 12:05:08 2013 +0300
416
417    aesx660: fix spelling of define name
418
419commit 79d79c3c875d41379eae418157a8254e87641f85
420Author: Rex Dieter <rdieter@math.unl.edu>
421Date:   Wed Dec 17 07:27:15 2014 -0600
422
423    lib: Test before applying power saving udev rules
424
425    add TEST=="power/control"... to test for the presence of the file
426    before setting it.
427
428    See https://bugzilla.redhat.com/show_bug.cgi?id=950205
429
430    https://bugs.freedesktop.org/show_bug.cgi?id=87414
431
432commit 35e356f625d254f44c14f720c0eb9216297d35c2
433Author: Vasily Khoruzhick <anarsoul@gmail.com>
434Date:   Mon Aug 12 11:45:17 2013 +0300
435
436    build: add subdir-objects option to make automake happy
437
438    Without subdir-object automake throws warnings like this one:
439
440    Makefile.am:x: warning: source file 'drivers/aes2550.c' is in a subdirectory,
441    Makefile.am:x: but option 'subdir-objects' is disabled
442
443commit 948ab02d1a9d321e31dfd501646c29b880c1e5d0
444Author: Vasily Khoruzhick <anarsoul@gmail.com>
445Date:   Fri May 24 12:34:45 2013 +0300
446
447    lib: use pixman for imaging utils
448
449    pixman is very lightweight library for pixel manipulation, and it
450    has no dependencies except glibc, so using it instead of gdkpixbuf/imagemagick
451    makes list for libfprint dependencies a bit shorter.
452
453commit a6101026d2ddff76efe9f46669e24db3a0a6a0e4
454Author: Patrick Marlier <patrick.marlier@gmail.com>
455Date:   Wed Dec 12 20:43:09 2012 +0100
456
457    Add EgisTec ES603 driver
458
459    This driver handles EgisTec ES603 device, ID 1c7a:0603
460
461commit e0966cb20fb7cf1c9ee8165428f5d3810e2e8c4e
462Author: Vasily Khoruzhick <anarsoul@gmail.com>
463Date:   Mon Mar 4 17:50:54 2013 +0300
464
465    vfs101: drop nr_enroll_stages override
466
467    Imaging drivers aren't allowed to change number of enroll stages anymore,
468    all that imaging driver does is providing image to the upper layer.
469    Upper layer decides if it needs more scans.
470
471commit e278e8321cb91bcbf577d05778fe6553a14b4f14
472Author: Vasily Khoruzhick <anarsoul@gmail.com>
473Date:   Mon Feb 18 14:37:48 2013 +0300
474
475    vfs301: drop nr_enroll_stages override
476
477    Imaging drivers aren't allowed to change number of enroll stages anymore,
478    all that imaging driver does is providing image to the upper layer.
479    Upper layer decides if it needs more scans.
480
481commit e1728e7c25d6bd3fdbebf5bc9cc2040cf9063979
482Author: Vasily Khoruzhick <anarsoul@gmail.com>
483Date:   Mon Feb 18 13:41:13 2013 +0300
484
485    aes1660: remove unneeded lowering of bz3_threshold
486
487    Since 5 scans for enroll was introduced it's not necessary to lower
488    bz3_threshold anymore, there's a good probability that scan to verify matches
489    with at least one enrolled sample.
490
491commit e215b0509448e05bf7a352317bc3282a9d5fd437
492Author: Vasily Khoruzhick <anarsoul@gmail.com>
493Date:   Mon Feb 18 12:27:33 2013 +0300
494
495    imgdev: perform 5 scans for enrollment
496
497    This feature dramatically improves matching rate on devices with small
498    sensors.
499
500commit fe3fdd1f5061d3b6fa172758c07705f8bfcb6d07
501Author: Vasily Khoruzhick <anarsoul@gmail.com>
502Date:   Sat Mar 9 14:09:11 2013 +0300
503
504    upeke2: disable by default, device is now handled by upektc_img driver
505
506commit 5ff45658c0921f250e3c24538037b80024287ea7
507Author: Vasily Khoruzhick <anarsoul@gmail.com>
508Date:   Sat Mar 9 14:08:50 2013 +0300
509
510    upektc_img: add support for Upek Eikon 2 devices
511
512commit d12b29478305da18918b2cb0df98c93516cd77d9
513Author: Vasily Khoruzhick <anarsoul@gmail.com>
514Date:   Fri Feb 8 19:04:30 2013 +0300
515
516    Add upektc_img driver
517
518    Imaging driver, handles UPEK 147e:2020 device
519
520commit 2bba4fb0733e97a4f3aca44b170159c5b92cf5b5
521Author: Vasily Khoruzhick <anarsoul@gmail.com>
522Date:   Fri Feb 8 14:38:13 2013 +0300
523
524    Implement image capture (both synchronous and asynchronous variants)
525
526    fp_dev_img_capture() is not implemented and returns -ENOTSUPP for all devices
527    since migration to asynchronous model. This commit implement missing functionality
528
529commit aeca32fc12a4fd98ae39334b301f94d371a34dcf
530Author: Juvenn Woo <machese@gmail.com>
531Date:   Tue May 21 13:40:36 2013 +0800
532
533    aes3k: add aes3500 driver
534
535    This driver supports AES3500 device (08ff:5731) and utilizes common routines from
536    AES4000.
537
538commit 12c1088777b3d700d465f5dca961934837ae9013
539Author: Juvenn Woo <machese@gmail.com>
540Date:   Thu May 16 18:25:10 2013 +0800
541
542    aes3k: extract common routines aes3k from aes4000
543
544    AES3500 and AES4000 are pretty similar devices, have same
545    command send, the only difference is in image size and init sequence.
546    Extract common routines from AES4K to be used later in AES3500 driver
547
548    https://bugs.freedesktop.org/show_bug.cgi?id=64351
549
550commit 9e2f8b5e754bf57fe0379428e7a382dacda165fe
551Author: Bastien Nocera <hadess@hadess.net>
552Date:   Sun Aug 11 17:53:21 2013 +0200
553
554    0.5.1
555
556commit c14ebd8b636574cbe74aa05db0d0c1f6da9e2410
557Author: Bastien Nocera <hadess@hadess.net>
558Date:   Thu Jul 25 12:29:53 2013 +0200
559
560    Add MS keyboard to the suspend blacklist
561
562    045e:00bb isn't a stand-alone fingerprint reader, but a keyboard
563    with a reader integrated.
564
565    https://bugs.freedesktop.org/show_bug.cgi?id=66659
566
567commit a6339a30ef8abea6c4dc90acbc04c49c07906abe
568Author: Bastien Nocera <hadess@hadess.net>
569Date:   Thu Jul 25 12:27:53 2013 +0200
570
571    Fix udev rules printing
572
573    The blacklisted devices weren't correctly checked for past the first
574    item, as we weren't using the right index to get the product ID
575    from the ID table.
576
577commit f3dd55815ec1ef357e343ae1a810c6728d3ffd9a
578Author: Bastien Nocera <hadess@hadess.net>
579Date:   Wed Jun 26 14:21:33 2013 +0200
580
581    lib: Use g_malloc0 instead of g_malloc+memset
582
583commit 6d65bfcf809d9b9be08027472ab1884c709d65c0
584Author: Patrick Marlier <patrick.marlier@gmail.com>
585Date:   Tue Dec 4 09:06:06 2012 +0100
586
587    lib: g_malloc never fails
588
589    Or rather, it never returns errors and aborts instead if
590    memory cannot be allocated, so remove code that handled
591    failures.
592
593    https://bugs.freedesktop.org/show_bug.cgi?id=57869
594
595commit 1acd647b29c50b73d147ccb8c3530198ba44db70
596Author: Jeremy Bicha <jbicha@ubuntu.com>
597Date:   Sat Apr 20 11:33:17 2013 -0400
598
599    build: Fix underlinking against glib
600
601    https://bugs.freedesktop.org/show_bug.cgi?id=63755
602
603commit 0e843ad6b36e370f9b7150a285a901075657cc8d
604Author: Vasily Khoruzhick <anarsoul@gmail.com>
605Date:   Mon Feb 18 12:58:28 2013 +0300
606
607    build: fix autoreconf warnings
608
609    Replace AC_LANG_PROGRAM with AC_LANG_SOURCE and INCLUDES with AM_CFLAGS to fix
610    autoreconf warnings
611
612    https://bugs.freedesktop.org/show_bug.cgi?id=62748
613
614commit 7eafca7babe40bc7dddd27ce9051b13b90ada021
615Author: Vasily Khoruzhick <anarsoul@gmail.com>
616Date:   Thu Jan 24 12:05:36 2013 +0300
617
618    build: glib-2.28 or newer is a requirement
619
620    We're using g_slist_free_full which was introduced in glib-2.28
621
622    https://bugs.freedesktop.org/show_bug.cgi?id=59790
623
624commit 3b3679c900f6739f7067f8d720e15d548bb39be9
625Author: Vasily Khoruzhick <anarsoul@gmail.com>
626Date:   Sun Jan 13 16:43:38 2013 +0300
627
628    upeke2: Add support for 147e:2020 ID
629
630    https://bugs.freedesktop.org/show_bug.cgi?id=59320
631
632commit 43eca622cd49b58c87157e1ff1a2fcfdfba0934e
633Author: Vasily Khoruzhick <anarsoul@gmail.com>
634Date:   Sun Jan 13 16:42:13 2013 +0300
635
636    configure.ac: Use AC_CONFIG_HEADERS
637
638    AM_CONFIG_HEADER is obsolete, use AC_CONFIG_HEADERS instead of it.
639
640    https://bugs.freedesktop.org/show_bug.cgi?id=59320
641
642commit 02509e10731b503b88ce0896ba6bb4c6c9e38679
643Author: Bastien Nocera <hadess@hadess.net>
644Date:   Mon Jan 7 12:36:45 2013 +0100
645
646    build: udev rules must be created when building from git
647
648    https://bugs.freedesktop.org/show_bug.cgi?id=59076
649
650commit 0b2d33c712d6917ed71068188788a258a4dce61e
651Author: Timo Teräs <timo.teras@iki.fi>
652Date:   Mon Dec 3 09:57:25 2012 +0200
653
654    imgdev: fix cancelling of enrollment from stage_completed callback
655
656    Re-check device state after fpi_drvcb_enroll_stage_completed().
657    If enrollment was cancelled after non-completing stage, we must
658    not restart acquire as it would confuse the internal state machine.
659
660    https://bugs.freedesktop.org/show_bug.cgi?id=57829
661
662commit 7751fcb375f81796473074763625e7e948417b4e
663Author: Timo Teräs <timo.teras@iki.fi>
664Date:   Mon Dec 3 09:59:30 2012 +0200
665
666    AUTHORS: Update
667
668    https://bugs.freedesktop.org/show_bug.cgi?id=57829
669
670commit 8a87ba448c62eb14fa51d70ce870dd10b67ba76b
671Author: Timo Teräs <timo.teras@iki.fi>
672Date:   Mon Dec 3 09:51:27 2012 +0200
673
674    uru4000: fix cancelling of imaging from error callback
675
676    Call error callback before resetting img_transfer to NULL. This
677    variable is internally used to detect if we are still in imaging
678    loop and the call to execute_state_change() needs to be postponed.
679    Since this is the final thing imaging_complete() we can't reset
680    img_transfer until just before this call.
681
682    https://bugs.freedesktop.org/show_bug.cgi?id=57829
683
684commit 7e1646c382bbd6dc21a167bf7f0e45afa5ea217e
685Author: Timo Teräs <timo.teras@iki.fi>
686Date:   Tue Dec 4 10:50:30 2012 +0200
687
688    uru4000: fix race condition on waiting power up irq
689
690    It can come before we finish reading the status register on some
691    cases. Arm the irq handler early, and fix the state machine to
692    handle early irq properly.
693
694    https://bugs.freedesktop.org/show_bug.cgi?id=57834
695
696commit a5ec0b30e18275a4fae632c9382d01d5493d5dc6
697Author: Bastien Nocera <hadess@hadess.net>
698Date:   Mon Dec 3 16:16:41 2012 +0100
699
700    0.5.0
701
702commit 29cf86a02e8cef9363fd247f40c17710a88bd57e
703Author: Bastien Nocera <hadess@hadess.net>
704Date:   Mon Dec 3 16:22:33 2012 +0100
705
706    build: Fix configure-time warning
707
708    Due to missing quotes
709
710commit 7892c943e68478b9ef4efaa83b5795ce1d45311d
711Author: Bastien Nocera <hadess@hadess.net>
712Date:   Mon Dec 3 16:18:07 2012 +0100
713
714    build: Create .tar.xz distribution by default
715
716commit a7d6b7c30a7c8de7c1bd306d3766033e1f49397e
717Author: Vasily Khoruzhick <anarsoul@gmail.com>
718Date:   Fri Nov 30 15:17:32 2012 +0300
719
720    nbis: Fix crash in gen_initial_maps()
721
722    If the image is too small some coordinates can become negative.
723    Handle this to avoid memory corruption.
724
725    https://bugs.freedesktop.org/show_bug.cgi?id=57730
726
727commit 258ac2d4da1f7a3beecbeb257e85e19965f4fd58
728Author: Bastien Nocera <hadess@hadess.net>
729Date:   Sat Dec 1 15:10:13 2012 +0100
730
731    build: Build all the drivers by default
732
733commit 31cf7a93833f99f3eccc70c198538e975e732fac
734Author: Vasily Khoruzhick <anarsoul@gmail.com>
735Date:   Fri Nov 30 09:38:57 2012 +0300
736
737    build: Add common routines to the dist
738
739    Fixes dist when aesX660 drivers are disabled from the build.
740
741    https://bugs.freedesktop.org/show_bug.cgi?id=57724
742
743commit f335256cbe9743e405851a001f494a72536e2471
744Author: Vasily Khoruzhick <anarsoul@gmail.com>
745Date:   Fri Nov 30 12:26:51 2012 +0300
746
747    build: Don't build unneeded aesX660 routines
748
749    When neither of the AES drivers are built, no need to build the common
750    routines.
751
752    https://bugs.freedesktop.org/show_bug.cgi?id=57724
753
754commit c02cb3083d90099f8993d2531ffa1ff357cfc963
755Author: Vasily Khoruzhick <anarsoul@gmail.com>
756Date:   Thu Nov 29 17:16:33 2012 +0300
757
758    AES-drivers: drop redudant type cast in g_slist_free_full call
759
760    https://bugs.freedesktop.org/show_bug.cgi?id=57688
761
762commit 2084724115fd470c2e5f446b25829636fa17e493
763Author: Vasily Khoruzhick <anarsoul@gmail.com>
764Date:   Sat Nov 24 16:05:58 2012 +0300
765
766    upektc: add support for Eikon Touch 300
767
768    https://bugs.freedesktop.org/show_bug.cgi?id=45197
769
770commit 59925d20270d2297bdebf14512f8586e2b707822
771Author: Vasily Khoruzhick <anarsoul@gmail.com>
772Date:   Sun Nov 25 21:13:01 2012 +0300
773
774    Update AUTHORS file
775
776    https://bugs.freedesktop.org/show_bug.cgi?id=57426
777
778commit 118c610e293653132d891caab361f7d15fdbb007
779Author: Vasily Khoruzhick <anarsoul@gmail.com>
780Date:   Sun Nov 25 20:51:32 2012 +0300
781
782    lib: add AES2660 driver
783
784    https://bugs.freedesktop.org/show_bug.cgi?id=57426
785
786commit 313bfede7781540dfad831a520a5ffa254945533
787Author: Vasily Khoruzhick <anarsoul@gmail.com>
788Date:   Sun Nov 25 20:50:11 2012 +0300
789
790    lib: add AES1660 driver
791
792    https://bugs.freedesktop.org/show_bug.cgi?id=57426
793
794commit c1da647aedfb604704670d0a0fab4033e067e6d4
795Author: Vasily Khoruzhick <anarsoul@gmail.com>
796Date:   Sun Nov 25 20:47:01 2012 +0300
797
798    lib: add AES1660/AES2660 common routines
799
800    https://bugs.freedesktop.org/show_bug.cgi?id=57426
801
802commit 22d204cc68a244baacb079d434fdf227addca272
803Author: Vasily Khoruzhick <anarsoul@gmail.com>
804Date:   Thu Nov 22 10:12:38 2012 +0300
805
806    lib: Split fpi_im_resize factor into width/height
807
808    https://bugs.freedesktop.org/show_bug.cgi?id=57426
809
810commit bc497f1b263d6d0e7efafba1568a79b644ecc875
811Author: Vasily Khoruzhick <anarsoul@gmail.com>
812Date:   Sun Nov 18 11:30:34 2012 +0300
813
814    aeslib: prevent integer overflow
815
816    AuthenTec devices send 4bpp images, but current code assumes 3bpp for
817    some reason.
818
819    https://bugs.freedesktop.org/show_bug.cgi?id=57426
820
821commit 8c5f2e6434275603da6a5eb21468a43497692575
822Author: Vasily Khoruzhick <anarsoul@gmail.com>
823Date:   Sat Nov 17 15:32:25 2012 +0300
824
825    aes: unify image processing code for AuthenTec devices
826
827    Move overlap detection and assembling code into aeslib to prevent
828    code duplication
829
830    https://bugs.freedesktop.org/show_bug.cgi?id=57426
831
832commit 5b20892dd43ca67071b1e113dd3b2c8c2b310168
833Author: Vasily Khoruzhick <anarsoul@gmail.com>
834Date:   Thu Nov 22 00:19:59 2012 +0300
835
836    Thanks to Greg and Martin from AuthenTec
837
838    https://bugs.freedesktop.org/show_bug.cgi?id=57426
839
840commit b2a53a459cc4294dec049d8d7f1b92ebb704f983
841Author: Colin Walters <walters@verbum.org>
842Date:   Fri Nov 16 13:28:15 2012 -0500
843
844    autogen.sh: Honor NOCONFIGURE=1
845
846    See http://people.gnome.org/~walters/docs/build-api.txt
847
848commit 45ac0eefb0b19a2e37df4065dbf4efeda461edca
849Author: Timo Teräs <timo.teras@iki.fi>
850Date:   Fri Nov 16 18:38:52 2012 +0100
851
852    uru4000: Fix image capture error on ARM
853
854    http://www.mail-archive.com/fprint@lists.freedesktop.org/msg00294.html
855
856commit ea6d5ba6d65aa7ed4b900b23263bc4d8abe4a868
857Author: Vasily Khoruzhick <anarsoul@gmail.com>
858Date:   Sat Nov 10 18:37:41 2012 +0300
859
860    lib: Fix mess with driver IDs
861
862    ID is just a some magic number to make fingerprint from one scanner model
863    incompatible with another scanner model. Get rid of "magic", declare enum
864    and use it.
865
866    https://bugs.freedesktop.org/show_bug.cgi?id=56956
867
868commit ed2c75842a4542b0dbd9e4f188a40057bb537ea6
869Author: Vasily Khoruzhick <anarsoul@gmail.com>
870Date:   Sat Nov 10 18:22:32 2012 +0300
871
872    upektc: Port to asynchronous model
873
874    https://bugs.freedesktop.org/show_bug.cgi?id=56955
875
876commit b307dd1a6abef8f87062d35dcbe2f2c22b959638
877Author: Vasily Khoruzhick <anarsoul@gmail.com>
878Date:   Sat Nov 10 18:21:19 2012 +0300
879
880    aes2550: fix bug introduced by last commit
881
882    ssm->priv is not aesdev, but fp_img_dev
883
884    https://bugs.freedesktop.org/show_bug.cgi?id=56782
885
886commit 39902374ce0f7ca21cf3412a7295ad82198ef053
887Author: Vasily Khoruzhick <anarsoul@gmail.com>
888Date:   Sat Nov 3 18:30:43 2012 +0300
889
890    aes2550: Harden against low finger pressure
891
892    Stop scan only after 3rd heartbeat message
893
894    https://bugs.freedesktop.org/show_bug.cgi?id=56782
895
896commit 9e92d4cf2c8ae4fad0b49576b0b6f8f4e5f2daa1
897Author: Bastien Nocera <hadess@hadess.net>
898Date:   Tue Nov 6 09:30:40 2012 +0100
899
900    examples: Fix compile-time warnings
901
902    A few signedness problems.
903
904commit 6b84c6664fe9da98e013caab99145d8f0279b9bb
905Author: Vasily Khoruzhick <anarsoul@gmail.com>
906Date:   Mon Nov 5 22:39:49 2012 +0300
907
908    AES1610: driver cleanup, part #2
909
910    Remove dead code
911
912    https://bugs.freedesktop.org/show_bug.cgi?id=56439
913
914commit f569d0bf4479c4d6ebf1972b59cd7450ec9a3258
915Author: Vasily Khoruzhick <anarsoul@gmail.com>
916Date:   Sat Oct 20 12:26:38 2012 +0300
917
918    AES1610: driver cleanup, part #1
919
920    Fix warnings reported by gcc
921
922    https://bugs.freedesktop.org/show_bug.cgi?id=56439
923
924commit 1cfd14b7fe8f9e68c5bd74461bcd17e25b9f1d15
925Author: Vasily Khoruzhick <anarsoul@gmail.com>
926Date:   Fri Oct 26 16:40:53 2012 +0300
927
928    nbis: fix rest of warnings reported by gcc
929
930    https://bugs.freedesktop.org/show_bug.cgi?id=56439
931
932commit 5d32102efefe955e9f5bdbf5809a5fb637d77e89
933Author: Vasily Khoruzhick <anarsoul@gmail.com>
934Date:   Fri Oct 26 16:36:21 2012 +0300
935
936    nbis: prefix global variables with "g_"
937
938    It fixes a lot of warnings about shadowing global variable
939
940    https://bugs.freedesktop.org/show_bug.cgi?id=56439
941
942commit 9e10edd422e5130e210e17d90c5db9135029f165
943Author: Bastien Nocera <hadess@hadess.net>
944Date:   Mon Nov 5 19:52:46 2012 +0100
945
946    aes2501: Add year 2008 to the copyright.
947
948    https://bugs.freedesktop.org/show_bug.cgi?id=56715#c7
949
950commit fecf6d6fe5d17f4d0cb5cc8e19d0f51c58fcc712
951Author: Vasily Khoruzhick <anarsoul@gmail.com>
952Date:   Sat Nov 3 16:29:51 2012 +0300
953
954    aes2501: Update copyright line
955
956    https://bugs.freedesktop.org/show_bug.cgi?id=56715
957
958commit e32fa8cc3825a6ce5db558094e81134d433293e3
959Author: Vasily Khoruzhick <anarsoul@gmail.com>
960Date:   Sat Nov 3 16:13:05 2012 +0300
961
962    aes2501: Improve image contrast
963
964    When scanning, check the histogram sum, and increase the
965    ADREFHI register value if the sum is too low, or decrease
966    it if it's too high.
967
968    https://bugs.freedesktop.org/show_bug.cgi?id=56715
969
970commit d8aae30a672485de747e5a58ff7520128b718515
971Author: Vasily Khoruzhick <anarsoul@gmail.com>
972Date:   Sat Nov 3 16:08:04 2012 +0300
973
974    aes2501: Harden against low finger pressure
975
976    Wait for 3 empty frames before stopping the scan
977
978    The driver used to stop the scan immediately after an empty frame
979    (by checking for hist sum == 0), but it is possible to get empty
980    frames in the middle of the scan due to low finger pressure.
981    Waiting for 3 empty frames stop the driver wrongly aborting the scan
982    too early.
983
984    https://bugs.freedesktop.org/show_bug.cgi?id=56715
985
986commit 84b97ea15b519ac26af3a71e2a4d929cb140f0ff
987Author: Vasily Khoruzhick <anarsoul@gmail.com>
988Date:   Fri Oct 26 16:44:37 2012 +0300
989
990    lib: Fix warning when debug logs are disabled
991
992    Fix warning in sync.c when debug logs are not enabled
993
994    https://bugs.freedesktop.org/show_bug.cgi?id=56439
995
996commit 8f987438573d38581039a98a1178a7fd25bba4ad
997Author: Vasily Khoruzhick <anarsoul@gmail.com>
998Date:   Sat Oct 20 12:28:31 2012 +0300
999
1000    upeksonly: Fix build-time warnings
1001
1002    Fix warnings reported by gcc
1003
1004    https://bugs.freedesktop.org/show_bug.cgi?id=56439
1005
1006commit be29f27e254317b713c7a0f007d6e959ee2a3905
1007Author: Vasily Khoruzhick <anarsoul@gmail.com>
1008Date:   Sat Oct 20 12:27:52 2012 +0300
1009
1010    upeke2: Fix build-time warnings
1011
1012    Fix warnings reported by gcc
1013
1014    https://bugs.freedesktop.org/show_bug.cgi?id=56439
1015
1016commit d003f08855ba34be88775e4281e7f686b00f6d2f
1017Author: Timo Teräs <timo.teras@iki.fi>
1018Date:   Wed Sep 26 13:41:13 2012 +0300
1019
1020    lib: Add support for DigitalPersona URU4500
1021
1022    By adding native encryption support, rather than poking at
1023    the firmware to disable it.
1024
1025    This also makes the URU4000B use native encryption.
1026
1027    https://bugs.freedesktop.org/show_bug.cgi?id=55351
1028
1029commit 0f7ad00fc49023ff7f637eb740e7120d0e16b47e
1030Author: Bastien Nocera <hadess@hadess.net>
1031Date:   Mon Oct 15 11:46:03 2012 +0200
1032
1033    HACKING: Update with bugzilla link
1034
1035commit 83333bce3f06ca55651a7516666ee63a5892f09f
1036Author: Vasily Khoruzhick <anarsoul@gmail.com>
1037Date:   Tue Oct 9 01:20:44 2012 +0300
1038
1039    lib: Add AES2550/AES2810 driver
1040
1041    Initial implementation of AES2550/AES2810 driver.
1042    Does not support AES2810 crypto engine and external flash.
1043
1044    https://bugs.freedesktop.org/show_bug.cgi?id=50859
1045
1046commit 132b17830492187b80c8442b1e6e981343b1d27e
1047Author: Bastien Nocera <hadess@hadess.net>
1048Date:   Tue Aug 28 20:02:17 2012 +0100
1049
1050    lib: Add driver names to the udev rules
1051
1052commit c3689665dbf3cd2126f3729792aa71efe13aab8d
1053Author: Andrej Krutak <dev@andree.sk>
1054Date:   Sun Jul 22 21:44:34 2012 +0200
1055
1056    lib: Add VFS300/VFS301 driver
1057
1058    https://bugs.freedesktop.org/show_bug.cgi?id=37574
1059
1060commit 3d222ddda7f6acfadd40fcd06b3ab40192829d5a
1061Author: Bastien Nocera <hadess@hadess.net>
1062Date:   Tue Aug 28 19:42:05 2012 +0100
1063
1064    lib: Fix whitespace errors
1065
1066commit 080c414ce9586d7b4b92e786705e9b716b91aa33
1067Author: Bastien Nocera <hadess@hadess.net>
1068Date:   Tue Aug 28 19:41:41 2012 +0100
1069
1070    build: Whitespace fixes in configure.ac
1071
1072commit ff02115b0fa8b72a1d8c07b8e2c9ad7e90459427
1073Author: Vasily Khoruzhick <anarsoul@gmail.com>
1074Date:   Mon Aug 13 20:41:42 2012 +0300
1075
1076    lib: Fix global variables collision with libusb
1077
1078commit 3b409c767cb5c0c27229994ac47edf47c1c59804
1079Author: Bastien Nocera <hadess@hadess.net>
1080Date:   Tue Aug 14 15:19:35 2012 +0100
1081
1082    build: Allow disabling the update of udev rules
1083
1084    We can only create the udev rules file when we're not cross-compiling,
1085    so allow people to disable updating the file when building from
1086    tarballs.
1087
1088    If you run with --enable-udev-rules=no and the
1089    60-fprint-autosuspend.rules doesn't exist, you're on your own.
1090
1091commit d05c69698c6eb1aadcd5a7cbdb883b7accb35eb2
1092Author: Bastien Nocera <hadess@hadess.net>
1093Date:   Tue Aug 14 15:12:20 2012 +0100
1094
1095    build: Fix distcheck'ing not working
1096
1097    We need to be able to override the udev rules directory for
1098    distchecking to work.
1099
1100commit 2d09b10a2795528134fb0699903160545e153188
1101Author: Bastien Nocera <hadess@hadess.net>
1102Date:   Tue Aug 14 14:52:58 2012 +0100
1103
1104    build: Include udev rules in tarball
1105
1106commit bc03d5618619c3236cd61df77342ede97186622a
1107Author: Bastien Nocera <hadess@hadess.net>
1108Date:   Tue Aug 14 14:51:23 2012 +0100
1109
1110    build: Add list of drivers to include when distchecking
1111
1112commit 96e7224a236d0a7d515fde5593c77cf6eb8fd942
1113Author: Bastien Nocera <hadess@hadess.net>
1114Date:   Tue Aug 14 14:48:43 2012 +0100
1115
1116    build: Fix distchecking of examples directory
1117
1118commit 0f4a75ff61cc156b6cabdb1f6c1e22ea314a9aff
1119Author: Benedikt Morbach <benedikt.morbach@googlemail.com>
1120Date:   Mon May 28 14:13:03 2012 +0200
1121
1122    update udev rules dir location again
1123
1124    Instead of hardcoding whatever the new fashion is every few months, which might
1125    even differ between distributions, just put the rules where udev says we should.
1126
1127    https://bugs.freedesktop.org/show_bug.cgi?id=50426
1128
1129commit dfff16f3e32519ad071bdb1233c75bfe3ffa5557
1130Author: Bastien Nocera <hadess@hadess.net>
1131Date:   Thu Feb 2 05:28:17 2012 +0000
1132
1133    Don't print duplicate udev rules
1134
1135    https://bugs.freedesktop.org/show_bug.cgi?id=45513
1136
1137commit 3d2e54526454ed1436b6436dffb0e8769fdbff1d
1138Author: Patrick Marlier <patrick.marlier@gmail.com>
1139Date:   Wed Jan 18 18:52:02 2012 -0500
1140
1141    Fix possible crash without a deactivate callback
1142
1143    We were checking for ->activate existing instead of ->deactivate.
1144
1145commit c96fa32da4a3d93950039fdc176571376dafc8cb
1146Author: Benedikt Morbach <benedikt.morbach@googlemail.com>
1147Date:   Thu Jan 5 21:49:13 2012 +0100
1148
1149    Move udev rules to libdir
1150
1151    This moves the dir from /etc/udev/rules.d to /lib/udev/rules.d,
1152    which is encouraged by upstream, as /etc is for user overrides only
1153
1154    https://bugs.freedesktop.org/show_bug.cgi?id=44507
1155
1156commit 48ec64f68330452b011d14be67653f1d48fb1405
1157Author: Matthew Garrett <mjg@redhat.com>
1158Date:   Tue Oct 4 15:11:08 2011 +0100
1159
1160    Fix udev control path
1161
1162    Newer kernels uses power/control for USB suspend setup, not power/level.
1163    Fix the udev rules generation.
1164
1165commit f8aa82a554a0862eb9b83869d42dbefbde666543
1166Author: Bastien Nocera <hadess@hadess.net>
1167Date:   Mon Apr 18 18:02:37 2011 +0100
1168
1169    0.4.0
1170
1171commit 1451a2dde2ca0651ec3e5711ee6278d89f3cc32a
1172Author: Bastien Nocera <hadess@hadess.net>
1173Date:   Fri Apr 8 15:38:33 2011 +0100
1174
1175    build: Quiet by default
1176
1177commit d2e957683f5b9bd4781e2216c259e9b10fa3508d
1178Author: Sergio Cerlesi <sergio.cerlesi@gmail.com>
1179Date:   Wed Mar 30 14:20:22 2011 +0200
1180
1181    Added support for Validity VFS101
1182
1183    USB ID 138a:0001
1184
1185commit a3ae96c2143ee7837225772008872ed0627336e1
1186Author: Sergio Cerlesi <sergio.cerlesi@gmail.com>
1187Date:   Tue Feb 22 14:39:11 2011 +0100
1188
1189    Fix function fpi_im_resize on create new image
1190
1191    The function fpi_im_resize copy the new resized image into old fp_img
1192    instead of newimg so, new image is empty and often it generated a
1193    segmentation fault error.
1194
1195commit 3dd905d4e92962a970b877285fa6f39ed997a2ea
1196Author: Sergio Cerlesi <sergio.cerlesi@gmail.com>
1197Date:   Wed Feb 16 09:34:55 2011 +0100
1198
1199    Fix return timeout of fp_get_next_timeout
1200
1201    On function fp_get_next_timeout if exist fprint timeout or libusb
1202    timeout the function return the smaller of they.
1203
1204    But if one of that not exist and have a smaller value the function
1205    return a timeout that not exist.
1206
1207commit aab031ce371e690eb550e8414282180190880ae3
1208Author: Bastien Nocera <hadess@hadess.net>
1209Date:   Wed Sep 8 11:11:31 2010 +0100
1210
1211    0.3.0
1212
1213commit 6bfc516553b8db1ed3a3d275eb3ff3f0bde24b48
1214Author: Bastien Nocera <hadess@hadess.net>
1215Date:   Wed Sep 8 11:03:58 2010 +0100
1216
1217    Add test program for C++ support
1218
1219    So that we don't regress
1220
1221commit ff842125c59ec87028bf53618b0a6acb310702e0
1222Author: Kunal Gangakhedkar <kunal.gangakhedkar@gmail.com>
1223Date:   Wed Sep 8 12:13:17 2010 +0530
1224
1225    Add C++ guards to take care of C++ name-mangling.
1226
1227    The libfprint library is generally built with C calling conventions.
1228    Which makes it difficult to link to C++ programs as it is.
1229
1230    This patch adds the support for linking with C++ code - by telling the C++
1231    compiler to use C calling conventions for libfprint functions.
1232
1233    Reported-by: Guus Ellenkamp <guus@activediscovery.net>
1234    Signed-off-by: Kunal Gangakhedkar <kunal.gangakhedkar@gmail.com>
1235
1236commit 712ebb6d44c421543a999227c92d6e08003c7a96
1237Author: Hugo Grostabussiat <dw23.devel@gmail.com>
1238Date:   Tue Aug 31 16:57:26 2010 +0200
1239
1240    Namespace functions and structs for 147e:2016
1241
1242    Inserted "_2016" in structures, enums and functions names
1243    that are related with device 147e:2016.
1244
1245commit a18f318446df01d27f3a8dc677c2a644fb086a60
1246Author: Hugo Grostabussiat <dw23.devel@gmail.com>
1247Date:   Tue Aug 31 16:09:22 2010 +0200
1248
1249    Added support for UPEK TCS4C (USB ID 147e:1000)
1250
1251    https://bugs.freedesktop.org/show_bug.cgi?id=29719
1252
1253commit 15b8e8f37617306cbfb03679475bb714a4f28a73
1254Author: Bastien Nocera <hadess@hadess.net>
1255Date:   Wed Aug 25 11:20:55 2010 +0100
1256
1257    Remove HAL fdi generation
1258
1259    HAL is deprecated, and the rules are broken when multiple
1260    drivers use the same USB IDs.
1261
1262commit 9f8dd29a553ce61999cd0cee8c81013cbeb07926
1263Author: Bastien Nocera <hadess@hadess.net>
1264Date:   Wed Aug 25 11:17:42 2010 +0100
1265
1266    Make sure all sources are dist'ed
1267
1268    So that you can compile against ImageMagick even if the
1269    distter doesn't.
1270
1271commit f28c5797791edd8b17f05ed3671b45223326dd21
1272Author: Bastien Nocera <hadess@hadess.net>
1273Date:   Wed Aug 25 11:17:19 2010 +0100
1274
1275    Print out summary of build options
1276
1277    At the end of the configure run.
1278
1279commit 375575b701fd1a1187b75c472ea77fb1e89ee7a2
1280Author: Bastien Nocera <hadess@hadess.net>
1281Date:   Wed Aug 25 00:42:01 2010 +0100
1282
1283    Port OpenSSL using code to NSS
1284
1285    As OpenSSL cannot really be used in an LGPLv2+ piece of software
1286    without an exception.
1287
1288    Adapted from the example code at:
1289    http://www.mozilla.org/projects/security/pki/nss/sample-code/sample2.html
1290    and:
1291    http://github.com/bagder/curl/commit/f3b77e5
1292
1293commit 25161286f5c9bde3a03eb181e8c4db8029f94001
1294Author: Alexia Death <alexiadeath@gmail.com>
1295Date:   Sat Dec 26 17:02:03 2009 +0200
1296
1297    Only complete scan with MIN_ROWS in print
1298
1299    Don't consider the scan complete unless theres at least
1300    MIN_ROWS recorded or very long blank read occurred.
1301
1302    Typical problem spot: one brief touch before starting the
1303    actual scan. Happens most commonly if scan is started from
1304    before the first joint resulting in a gap after the inital touch.
1305
1306    http://lists.reactivated.net/pipermail/fprint/2009-December/001406.html
1307
1308commit c575afba9ae9c518f208d5834e2ee72f8aede72c
1309Author: Alexia Death <alexiadeath@gmail.com>
1310Date:   Fri Dec 25 00:04:55 2009 +0200
1311
1312    Make the +2 right shift happen on image handoff.
1313
1314    Rather than when reading the rows. Doing it there seems a lot
1315    more sensible and does not get in the way of minimizing the
1316    impact of lost USB packets.
1317
1318    http://lists.reactivated.net/pipermail/fprint/2009-December/001404.html
1319
1320commit 8cd31f6ad81bc2d8e8d3ffdea7cb4f13a6914684
1321Author: Alexia Death <alexiadeath@gmail.com>
1322Date:   Thu Dec 24 21:42:01 2009 +0200
1323
1324    Try to correct missing packets in image stream
1325
1326    If a packet goes missing, use the data from previous row
1327    to minimize distortion, or use some neutral dummy data.
1328
1329    http://lists.reactivated.net/pipermail/fprint/2009-December/001404.html
1330
1331commit 4b518bd230ef0f3a26c8eb89736815ed9334b6bb
1332Author: Alexia Death <alexiadeath@gmail.com>
1333Date:   Sat Dec 26 01:00:59 2009 +0200
1334
1335    Fix a segfault if a scan was shorter than 8 lines.
1336
1337    This segfault was caused by proceeding to free the conversion result
1338    without checking for an error condition in image to print
1339    data conversion.
1340
1341    http://lists.reactivated.net/pipermail/fprint/2009-December/001405.html
1342
1343commit daee067c4ffabff9836617b90c547873130087f1
1344Author: Bastien Nocera <hadess@hadess.net>
1345Date:   Thu Aug 19 14:43:30 2010 +0100
1346
1347    Release 0.2.0
1348
1349commit 9608ab370763b54c778b27c5b2015d1dda2ecec0
1350Author: Bastien Nocera <hadess@hadess.net>
1351Date:   Wed Aug 18 11:17:20 2010 +0100
1352
1353    Don't crash when no devices are present
1354
1355commit 73561989dd485560e4c62b46a9af31f9fce1bc4e
1356Author: Bastien Nocera <hadess@hadess.net>
1357Date:   Tue Aug 17 23:41:23 2010 +0100
1358
1359    Implement discover() methods for upeke2 and upeksonly
1360
1361    upeksonly handles revision 1 devices, upeke2 revision 2 devices.
1362
1363    https://bugzilla.redhat.com/show_bug.cgi?id=504399
1364
1365commit df4a6f53d2b74f43d453940cebd43d0cd802584d
1366Author: Bastien Nocera <hadess@hadess.net>
1367Date:   Tue Aug 17 23:14:18 2010 +0100
1368
1369    Rework "discover" code for drivers
1370
1371    Check all the drivers for one that'll drive our device in
1372    question, and prefer ones that have a discover() method that runs
1373    successfully to a driver without such a method.
1374
1375    This allow drivers to both reject devices (if 2 drivers handle
1376    the same USB IDs), or a single driver to handle variants of the
1377    same device (through the devtype out value of the discover method).
1378
1379commit 48af46a2c504b43854a3877d962a301921ef7f86
1380Author: Jorge Suarez de Lis <yo@jorgesuarezdelis.name>
1381Date:   Tue Aug 17 19:55:48 2010 +0100
1382
1383    upeke2: Add support for 0x2e status code
1384
1385    As reported working in:
1386    http://www.mail-archive.com/fprint@reactivated.net/msg01426.html
1387
1388commit 5a1926bb416fa4e5a38fa10b9ac3da04ce9f3f72
1389Author: Jorge Suarez de Lis <yo@jorgesuarezdelis.name>
1390Date:   Tue Aug 17 19:36:56 2010 +0100
1391
1392    Add (disabled) UPEK EikonII (TCRD4C) driver
1393
1394    The device driver is always disabled as it uses the same Device ID
1395    as another working reader:
1396    https://bugzilla.redhat.com/show_bug.cgi?id=504399#c38
1397
1398commit 7c7402a697eb7f4d1c2c929922cbd88945d2616f
1399Author: Guido Grazioli <guido.grazioli@gmail.com>
1400Date:   Tue Aug 17 11:36:34 2010 +0100
1401
1402    Finish implementation of AES1610 driver
1403
1404    Ported to the new internal libfprint API.
1405
1406    https://bugzilla.redhat.com/show_bug.cgi?id=499732
1407
1408commit a99e813bbf0cfaa454feda47d11debb98ce6de39
1409Author: Matthew Garrett <mjg@redhat.com>
1410Date:   Thu Oct 1 15:08:41 2009 +0100
1411
1412    Add udev rules to set devices to autosuspend
1413
1414    Most fingerprint readers can be suspended safely, so use
1415    the udev rules to autosuspend them when they appear.
1416
1417    The script itself contains whitelists and blacklists.
1418
1419commit 014b933b2bf635dab4ccbb9beb15be8d55a9d427
1420Author: Bastien Nocera <hadess@hadess.net>
1421Date:   Wed Oct 29 12:53:24 2008 +0000
1422
1423    Add gdk-pixbuf support
1424
1425    When imaging support is required, we prefer to use gdk-pixbuf,
1426    as it's already on things like Live CDs.
1427    Also fix the examples building against the system libfprint.
1428
1429commit 911c6bf102760ba49bcc2f851a7bd7d9cebff46e
1430Author: Daniel Drake <dsd@gentoo.org>
1431Date:   Sat Jun 20 14:50:35 2009 +0100
1432
1433    v0.1.0-pre2 release
1434
1435commit a51763bd9993da7de78f19701cd62c7b7d147bf4
1436Author: Daniel Drake <dsd@gentoo.org>
1437Date:   Sat Jun 20 14:50:23 2009 +0100
1438
1439    New sourceforge file upload system
1440
1441commit e5da34e80a1cc6f5af480cc5343dd48d52c60a96
1442Author: Bastien Nocera <hadess@hadess.net>
1443Date:   Tue Nov 25 15:54:56 2008 +0000
1444
1445    Fix fp_get_pollfds()
1446
1447    It was increasing i too early, and writing past the allocated
1448    structures.
1449
1450commit d816fed5c384e6d45ae11e2530883d54aacedf4b
1451Author: Bastien Nocera <hadess@hadess.net>
1452Date:   Tue Nov 25 15:54:25 2008 +0000
1453
1454    Disable finger_num_to_str when debugging is disabled
1455
1456    One less warning.
1457
1458commit 749bb3e30ebfc08be26bd849753a0e169d46b504
1459Author: Bastien Nocera <hadess@hadess.net>
1460Date:   Mon Nov 24 15:31:21 2008 +0000
1461
1462    Export scan type through HAL
1463
1464    Also export the scan type through HAL.
1465
1466commit d4822283256e153b1d8b61c4126617abcf291f43
1467Author: Daniel Drake <dsd@gentoo.org>
1468Date:   Thu Nov 20 19:59:43 2008 +0000
1469
1470    upekts: Don't choke on non-zero bytes in command response
1471
1472    Alon Bar-Lev's device behaves differently, but seems to work fine with
1473    upekts even if we ignore the difference.
1474
1475commit 7c44c86d4c8838a69d93225bbe3e31f4e7427445
1476Author: Daniel Drake <dsd@gentoo.org>
1477Date:   Thu Nov 20 17:23:04 2008 +0000
1478
1479    Logging control
1480
1481    Don't log anything by default, and let the applications change the log
1482    level.
1483
1484commit 29044d9ca95646596c8c817d470c01381f4b8f9f
1485Author: Bastien Nocera <hadess@hadess.net>
1486Date:   Thu Nov 20 14:40:01 2008 +0000
1487
1488    Export scan type for each driver
1489
1490    For each driver, export the scan type supported by the devices it
1491    handles. This allows front-ends to direct the user better.
1492
1493commit 1fd247ecd7fb000260f2a457e264dcb6f1d09d98
1494Author: Daniel Drake <dsd@gentoo.org>
1495Date:   Tue Nov 18 17:10:49 2008 +0000
1496
1497    v0.1.0-pre1 release
1498
1499    because Bastien asked nicely. No guarantees about API or stability.
1500
1501commit b93f038dbc35b8b8875a26d01811dd4e3dabeac4
1502Author: Daniel Drake <dsd@gentoo.org>
1503Date:   Tue Nov 18 17:18:05 2008 +0000
1504
1505    distcheck fix for fdi file
1506
1507commit 2d30e40ed750d4ccd2a1eea6b2398bbf3275b39f
1508Author: Daniel Drake <dsd@gentoo.org>
1509Date:   Sun Nov 2 14:49:39 2008 +0000
1510
1511    aes2501: Add AES2500 ID
1512
1513    Reported to work with Motion Computing M1400 tablet by Daniel Hazelbaker
1514    and Alex Van Deusen.
1515
1516commit 7c83b6d825f27b1afb7e61dfed7a4ead2e506699
1517Author: Bastien Nocera <hadess@hadess.net>
1518Date:   Thu Oct 30 15:02:52 2008 +0000
1519
1520    Tag fingerprint devices in HAL
1521
1522    Tag all the fprint supported devices in HAL. Patch from
1523    myself and Timo Hoenig <thoenig@suse.de>.
1524
1525commit 7672c43cea603f55e04eceab1d85b9a850400af4
1526Author: Daniel Drake <dsd@gentoo.org>
1527Date:   Sun Nov 2 11:03:32 2008 +0000
1528
1529    distcheck "" fix
1530
1531    Pointed out by Bastien Nocera
1532
1533commit d94ffa22d5c2e05c4fe1a296720d3c01151983bf
1534Author: Gordon Stratton <gordon.stratton@gmail.com>
1535Date:   Fri Oct 31 23:36:55 2008 +0000
1536
1537    Missing parameter in fp_err call
1538
1539commit 6b8b17f575f5932ebe865d1db93a2807a49b961b
1540Author: Daniel Drake <dsd@gentoo.org>
1541Date:   Sun Aug 10 14:34:44 2008 -0500
1542
1543    Split imagemagick hack from main library
1544
1545    Cleans up the conditional compilation system
1546
1547commit bba1c1085fa678e856a3b1e482d68dcc81664d11
1548Author: Pavel Herrman <morpheus.ibis@gmail.com>
1549Date:   Sun Aug 10 14:21:58 2008 -0500
1550
1551    Allow drivers to be included/excluded at compile time
1552
1553commit b6dabaacc8d27c7f3ea54fcce7bf0d3ccc0f97c3
1554Author: Daniel Drake <dsd@gentoo.org>
1555Date:   Wed Jul 9 03:25:23 2008 +0100
1556
1557    Enable libusb debug messages
1558
1559    While we're a noisy library we might as well ask libusb to be as well
1560
1561commit 3915cb262269a32844b3672d8bc3edc188b2f402
1562Author: Daniel Drake <dsd@gentoo.org>
1563Date:   Wed Jul 9 03:23:21 2008 +0100
1564
1565    Add upeksonly driver for UPEK TouchStrip sensor-only devices
1566
1567    The long awaited 147e:2016 reverse engineering efforts.
1568    Image quality is OK, not brilliant - a little fuzzy, but it works
1569    quite well.
1570
1571commit 59c62c7d744a9b5e4c7355932889cd0342044e09
1572Author: Daniel Drake <dsd@gentoo.org>
1573Date:   Wed Jul 2 23:27:37 2008 -0500
1574
1575    Update for libusb-0.9.1
1576
1577commit e1691a29dd21475264134c42d929d90b3d26ceca
1578Author: Daniel Drake <dsd@gentoo.org>
1579Date:   Sun Jun 15 10:54:07 2008 -0500
1580
1581    update for new libusb_open API
1582
1583commit aa7c8ae81eb3eae1afbbae982a6617db8e79e29d
1584Author: Vasily Khoruzhick <anarsoul@gmail.com>
1585Date:   Tue May 13 01:24:05 2008 +0300
1586
1587    Adapting to latest libusb-1.0 changes
1588
1589    Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
1590    [dsd: remove config const qualifier and add freeing of config]
1591
1592commit 63421e3fd61d0779a5cc4c11a59ea7318cdb8f72
1593Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1594Date:   Wed May 7 23:46:06 2008 +0100
1595
1596    uru4000: fix compile against latest libusb
1597
1598commit 76cbf212239e5561a11877a2a3a486844107ec2e
1599Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1600Date:   Fri May 2 11:55:50 2008 +0100
1601
1602    uru4000: Add support for Digital Persona U.are.U Fingerprint Keyboard
1603
1604    Reported by Tudor Panaitescu
1605
1606commit f540ae5d5bc6ef6af3016759f6c9ca26056bec7c
1607Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1608Date:   Sat Apr 19 23:09:53 2008 +0100
1609
1610    Fix memory leak in fpi_print_data_new()
1611
1612    Pointed out by Krystian (yoB) on FS#24
1613
1614commit ebcabc1aded5043e0f5abf08e97ae14cc9ff0a60
1615Author: Daniel Drake <dsd@gentoo.org>
1616Date:   Sat Apr 12 16:58:49 2008 +0100
1617
1618    uru4000: avoid cancelling a completed transfer
1619
1620commit 870ddfb9054d00341ebf87d1e39153feaa96cbc3
1621Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1622Date:   Sun Apr 6 23:55:41 2008 +0100
1623
1624    some libusb pointers are now const
1625
1626commit 40e7ac195a4be0e6951b7a8b0388bdbc88cfc8d7
1627Author: Vasily Khoruzhick <anarsoul@gmail.com>
1628Date:   Sun Apr 6 21:56:33 2008 +0300
1629
1630    Adapting to latest libusb
1631
1632    Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
1633
1634commit 1ab52617c7d857acb01368938b713595af078b4e
1635Author: Azzie <azzie@astronet.pl>
1636Date:   Sat Mar 29 18:11:17 2008 +0000
1637
1638    Update for latest libusb constant names
1639
1640commit 981f2eb0aa133669523938ac17f095d82777fd33
1641Author: Daniel Drake <dsd@gentoo.org>
1642Date:   Thu Mar 20 15:31:03 2008 +0000
1643
1644    vcom5s: implement finger detection
1645
1646    Uses thresholding of average pixel intensity of the center region of
1647    the image.
1648
1649    Also document guessed meanings of magic numbers for registers.
1650
1651commit d6d4e56ccffc8e0b704f4778058f677ad17c2439
1652Author: Daniel Drake <dsd@gentoo.org>
1653Date:   Thu Mar 20 13:34:48 2008 +0000
1654
1655    uru4000: add fwenc search location for UareU4000
1656
1657    ticket #14 includes a device with a different firmware, this should get
1658    it up and running.
1659
1660commit d12ad6dea905758c76558ee66a48bb0fd3c485f3
1661Author: Daniel Drake <dsd@gentoo.org>
1662Date:   Thu Mar 20 13:19:44 2008 +0000
1663
1664    Update version number
1665
1666    I'm about to do another 0.0 release, so change the tag in this branch to
1667    avoid confusion
1668
1669commit c9ff2c5541a522224137beb1fd4ecef453ba8955
1670Author: Daniel Drake <dsd@gentoo.org>
1671Date:   Wed Mar 19 23:29:30 2008 +0000
1672
1673    Add Veridicom 5th Sense driver
1674
1675    Based on bus traffic analysis of the windows driver. This device is
1676    working well, but finger presence detection is not yet implemented.
1677
1678commit 617ca8cd1567091263f77fb37d422290c920c72e
1679Author: Daniel Drake <dsd@gentoo.org>
1680Date:   Wed Mar 19 23:28:44 2008 +0000
1681
1682    fix imaging action state for repeated enroll attempts
1683
1684    Enroll attempts may retry in some situations, so we need to reset the
1685    state to accept more scans.
1686
1687commit a11ac7d8f8e1dc1f04b4721247ef24ca4cd8f7d6
1688Author: Daniel Drake <dsd@gentoo.org>
1689Date:   Wed Mar 19 17:46:59 2008 +0000
1690
1691    uru4000: search for encryption byte
1692
1693    New DigitalPersona devices have a new firmware. We now use a search
1694    scheme to find the encryption byte, by examining known locations
1695    in the firmware until we find something that we recognise.
1696
1697commit fb49c24ae24bc296bb123f00bda1f80f50587eaf
1698Author: Daniel Drake <dsd@gentoo.org>
1699Date:   Wed Mar 19 17:25:53 2008 +0000
1700
1701    uru4000: Unify register I/O
1702
1703commit d3d68be49033f17c9933674d6edc52aea09d9b60
1704Author: Daniel Drake <dsd@gentoo.org>
1705Date:   Wed Mar 19 16:19:07 2008 +0000
1706
1707    uru4000: fix register widths
1708
1709    Encryption byte address was being truncated in the sm_fix_fw_read_cb
1710    path
1711
1712commit 156e5e7d7c691c32e56eecfb0b272d3dbdf6e0fd
1713Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1714Date:   Thu Mar 13 12:54:27 2008 +0000
1715
1716    Update for new libusb_get_pollfds API
1717
1718commit f546fa2555ee180f4fef9a4bb2cf3a8f15edaa35
1719Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1720Date:   Mon Mar 10 13:33:32 2008 +0000
1721
1722    Fix synchronous enrollment for multi-stage devices
1723
1724commit 4e884807a793091e3410ea0ba10e3e314e21818f
1725Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1726Date:   Mon Mar 10 11:35:58 2008 +0000
1727
1728    Update for libusb API rework
1729
1730commit 81a5d6d9664ef9084213cb536218b31ab46d5cd9
1731Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1732Date:   Fri Mar 7 00:11:56 2008 +0000
1733
1734    Only use -fgnu89-inline when supported
1735
1736    This only works for GCC 4.3 and newer. GCC 4.2 and older already have
1737    the semantics introduced by using this argument.
1738
1739commit 647d1408343b5a14ee70984865535aa5d02019a4
1740Author: Vasily Khoruzhick <anarsoul@gmail.com>
1741Date:   Wed Mar 5 22:15:32 2008 +0200
1742
1743    Fixed fp_identify_finger_img didn't return result of operation
1744
1745    Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
1746
1747commit 07a42d5f91c072bcb4639744c1e79d03cfd9f9dc
1748Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1749Date:   Mon Mar 3 23:24:00 2008 +0000
1750
1751    uru4000: Retry initialization 3 times
1752
1753    Sometimes we don't get the powerup interrupt, so retry the whole process
1754    up to 3 times if we time out waiting for the interrupt.
1755
1756commit 2d27df0268002eb55d41fbf384d200e7b0418ad2
1757Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1758Date:   Mon Mar 3 23:23:50 2008 +0000
1759
1760    Allow timeouts to be cancelled
1761
1762commit c29c3fa01493bd03e218cf846adb90932f4c3c04
1763Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1764Date:   Mon Mar 3 13:47:59 2008 +0000
1765
1766    Fix low minutiae handling
1767
1768    Fixes a crash and adds in a missing break statement
1769
1770commit b167dd02fc691a9760e80a5848762fd47f060843
1771Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1772Date:   Sat Mar 1 12:16:31 2008 +0000
1773
1774    Add API to determine next timeout
1775
1776commit 3ea28e334d2acfa0f988dbc155b4f9618a5b5fb2
1777Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1778Date:   Tue Feb 26 22:40:38 2008 +0000
1779
1780    Provide access to fd set
1781
1782    Includes notifications when the set changes.
1783
1784commit 88e9f4a5f80cf78aaf448a7fd6cd60beba7abd5b
1785Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1786Date:   Tue Feb 26 18:04:54 2008 +0000
1787
1788    Public async API implementation
1789
1790    Involved some internal overhaul/reorganisation. Nice side effect is that
1791    the synchronous API is now expressed purely in terms of the public async
1792    API.
1793
1794commit 83f9da1b874ce31ea69d21a2079b909c0f1f5343
1795Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1796Date:   Sun Feb 17 00:08:56 2008 +0000
1797
1798    uru4000: port to asynchronous model
1799
1800commit 754e56aec1e78d02d9f984402be33df931350d1b
1801Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1802Date:   Mon Feb 18 17:54:15 2008 +0000
1803
1804    Allow execution of sub-SSMs
1805
1806    A subssm will be executed, and upon completion the parent state machine
1807    will either be advanced to the next state or aborted with error, depending
1808    on the outcome of the subssm.
1809
1810    Also add some debug messages.
1811
1812commit b8dc77b56e89194a185a4d3db1e830459e551c5d
1813Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1814Date:   Mon Feb 18 17:50:48 2008 +0000
1815
1816    Fix verify/identify error handling
1817
1818    If verify_start failed, we need to run verify_stop. Same for
1819    identification.
1820
1821commit 866dd941cc85b28ff5f0ec80b7f3696150efa50f
1822Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1823Date:   Sat Feb 16 12:44:50 2008 +0000
1824
1825    Add timing and polling infrastructure
1826
1827    Add timeout mechanism as an asynchronous equivalent of sleeping (uru4000
1828    needs this).
1829
1830    Start implementing polling infrastructure which also accounts for pending
1831    timeouts. We don't expose file descriptors yet, but this is a start.
1832
1833commit eff26bf0be5c1ea22469958abcdb65ce6e9ec428
1834Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1835Date:   Fri Feb 15 18:11:01 2008 +0000
1836
1837    aes2501: port to asynchronous model
1838
1839commit 0aaffcee33015163d79320433cfd9d9c5941143a
1840Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1841Date:   Fri Feb 15 18:09:14 2008 +0000
1842
1843    Allow jumping to arbitrary state in a SSM
1844
1845    This is looking less and less like a simple state machine now, but it's
1846    proving a useful model!
1847
1848commit 77b5dab04b1305ba1e65eb7459349f99f36eba73
1849Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1850Date:   Fri Feb 15 18:06:24 2008 +0000
1851
1852    aeslib: introduce user_data for write registers callback
1853
1854    aes2501 needs this for state tracking
1855
1856commit 6f08a3666d71a4992b4af037164493ad633b8b1b
1857Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1858Date:   Fri Feb 15 18:03:03 2008 +0000
1859
1860    aeslib: fix register write boundaries
1861
1862commit d914712437a63f9671233bd0a29bef6adb16402c
1863Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1864Date:   Sun Feb 10 18:36:10 2008 +0000
1865
1866    aes4000: port to asynchronous model
1867
1868commit d731d5f3a3970aa8a8560096c137b2eda1b462e1
1869Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1870Date:   Sun Feb 10 18:35:19 2008 +0000
1871
1872    aeslib: port to asynchronous model
1873
1874commit 3048b37176263201cde7e754abb33feff47eafd8
1875Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1876Date:   Sun Feb 10 18:35:01 2008 +0000
1877
1878    Port imaging layer to asynchronous model
1879
1880commit aeeec97fb2efafdc22d55e505e28c41ff9d117ed
1881Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1882Date:   Mon Feb 4 10:24:27 2008 +0000
1883
1884    upekts: port to asynchronous model
1885
1886commit 5b1f6a0df7eb7c8fa84ced7177188a5a1b845e2c
1887Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1888Date:   Mon Feb 4 10:23:11 2008 +0000
1889
1890    Port primitive driver layer to asynchronous model
1891
1892commit 69760547df424710b9c92e935aebac4107a37e2a
1893Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1894Date:   Wed Jan 30 14:17:08 2008 +0000
1895
1896    Disable all drivers while internal API is being reworked
1897
1898commit bf7093d6077131031e89e447082c4f21352aa46d
1899Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1900Date:   Wed Jan 30 14:16:35 2008 +0000
1901
1902    Port to libusb-0.9.0 (synchronous I/O)
1903
1904    Straightforward port to libusb-0.9.0 sync I/O functions, to give libusb-1.0
1905    a bit of a test drive and to create a reference point for later.
1906
1907commit 6f456f399d99c49c48d28441d471a55c1d94081a
1908Author: Gustavo Chain <g@0xff.cl>
1909Date:   Thu Dec 27 01:09:32 2007 +0000
1910
1911    Add Secugen FDU2000 driver
1912
1913    [dsd@gentoo.org: some trivial changes:
1914    fixed some warnings
1915    fixed fp_img memory leak on error
1916    renamed endpoint constants (calling a bulk endpoint 'ctrl' is confusing,
1917    as a control endpoint is something different)
1918    ]
1919
1920commit 659d8346beb4a0506d5c2f20c918a57804b4f591
1921Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1922Date:   Thu Dec 27 00:46:11 2007 +0000
1923
1924    Compiler flags update
1925
1926    Dropped -Wextra as it is not that useful.
1927    Set compiler flags to be more like the kernel's.
1928    Set std=gnu99
1929    Fixed some warnings.
1930
1931commit c8aa33da0bd2467594a92eeda641fe7749b9f33d
1932Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1933Date:   Fri Dec 7 15:03:27 2007 +0000
1934
1935    v0.0.5 release
1936
1937commit 642010643d04a5e43eac6fcb3d41b18003cde132
1938Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1939Date:   Fri Nov 16 17:25:41 2007 +0000
1940
1941    uru4000: Add support for Microsoft Fingerprint Reader v2
1942
1943    After lot 713, Microsoft fingerprint readers changed. The new version
1944    comes with a new USB product ID and a challenge-response authentication
1945    scheme where the device challenges the authenticity of the driver.
1946
1947    An independent third party produced documentation on the computations
1948    needed to convert a challenge into the correct response, and I then used
1949    this documentation to produce a clean-room reimplementation of the
1950    authentication scheme.
1951
1952commit 474da5f2c779a1c4a1309fd9f05972372ced7568
1953Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1954Date:   Fri Dec 7 14:59:38 2007 +0000
1955
1956    Add a disclaimer for the university
1957
1958commit c1f8581ec93d4e7d32f3880524cb1d775020d5b9
1959Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1960Date:   Sat Dec 1 13:00:33 2007 +0000
1961
1962    Cleanup discover_device in examples
1963
1964    Andrei Tchijov pointed out that the discover_device() function is written
1965    in a strange way.
1966
1967commit 3479dee0e4f6e0a2e779289378cb90c7a7710f88
1968Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1969Date:   Mon Nov 26 23:28:14 2007 +0000
1970
1971    aeslib: image assembly
1972
1973    All 3 authentec drivers now use a shared image assembly function.
1974
1975commit e228f2c7dab4960ed008d2170f07b6a53fa57eb3
1976Author: Daniel Drake <dsd@cs.manchester.ac.uk>
1977Date:   Tue Nov 20 12:23:27 2007 +0000
1978
1979    Introduce shared functions for authentec drivers
1980
1981    Currently provides register writing functionality only, more common ground
1982    will be moved here soon.
1983
1984commit 8e0e8e43867dbd214149edeb83ad5688b5d9e8f2
1985Author: Anthony Bretaudeau <wxcover@gmail.com>
1986Date:   Mon Nov 26 17:51:31 2007 +0000
1987
1988    aes1610: imaging improvements
1989
1990    bz threshold is now 10 (instead of 15). I think it is ok for the moment.
1991    If we manage to get higher image quality in the future, we'll change that.
1992
1993    max_frame is set to 350. 150 was too low => incomplete fingerprints
1994
1995    the driver was designed to stop the acquisition as soon as it gets a blank
1996    frame (=> incomplete fingerprints). Now it waits to have at least 50 blank
1997    frames before stopping.
1998
1999commit 4e2be56db7f977672fbf7a4cb5d260cbdc55a58c
2000Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2001Date:   Thu Nov 22 17:59:33 2007 +0000
2002
2003    v0.0.4 release
2004
2005commit 1ee6210be320c471e448f7e5aa772e63b7ae85e8
2006Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2007Date:   Thu Nov 22 17:25:27 2007 +0000
2008
2009    Hookup AES1610 driver
2010
2011    An oversight pointed out by Michele B.
2012
2013commit 69700855e27c655262de0d908a0447100238c5e4
2014Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2015Date:   Tue Nov 20 22:13:18 2007 +0000
2016
2017    Implement identification for imaging devices
2018
2019commit 3f70d6f79410f483a9b34945dfe5b1cf5bfc23f6
2020Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2021Date:   Tue Nov 20 21:52:10 2007 +0000
2022
2023    Identification infrastructure
2024
2025commit dbcd293ab31cabd44b6c840d6701d4f79a9aeee2
2026Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2027Date:   Mon Nov 19 18:41:03 2007 +0000
2028
2029    v0.0.3 release
2030
2031commit c5a550e42c716be0fe3aa61e135fd62b1e861ed7
2032Author: Anthony Bretaudeau <wxcover@users.sourceforge.net>
2033Date:   Mon Nov 19 18:39:03 2007 +0000
2034
2035    Add Authentec AES1610 driver
2036
2037    This is an active capacitance swipe-type device similar to but smaller
2038    than the AES2501.
2039
2040    Image processing performance is good but matching performance is not so
2041    good. The bozorth3 matcher needs tweaking in order to better cope with
2042    small sets of minutiae.
2043
2044    With a lowered threshold, matching performance is good enough for now.
2045
2046commit 6245acea848392861c2cd175d0292ef6b4f6638e
2047Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2048Date:   Mon Nov 19 18:29:26 2007 +0000
2049
2050    Add API to delete enroll data
2051
2052commit 887e0e6acf8767c1f3bf571fc1ef8f5223c4c33b
2053Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2054Date:   Mon Nov 19 00:27:27 2007 +0000
2055
2056    Add API to access minutiae
2057
2058commit fa742a2142ec969e9392823d6113f046c336cfb8
2059Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2060Date:   Sat Nov 17 23:47:06 2007 +0000
2061
2062    Use G_N_ELEMENTS macro
2063
2064commit af945b2738ee3f8a50e8aafcce91a8f1d356b512
2065Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2066Date:   Sat Nov 17 12:48:26 2007 +0000
2067
2068    Version 0.0.2
2069
2070commit fa24d51304316f8d9901368164a133232834ead4
2071Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2072Date:   Sat Nov 17 13:15:25 2007 +0000
2073
2074    Fix variable get_img_width/height return value
2075
2076    Fix the functions to conform to the documentation: -1 means non-imaging
2077    device, 0 means variable. Internally, -1 is used to represent variable
2078    height (to be noticably different from the memset-imposed default of zero).
2079
2080commit ba24c0884a6c193854104bc234d981928ca33c32
2081Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2082Date:   Sat Nov 17 12:46:00 2007 +0000
2083
2084    Rework some image handling; add public binarization API
2085
2086    I want to offer the ability for an application to view a binarized
2087    version of a scanned print. This lead onto a few changes:
2088
2089     1. Store minutiae and binarized data inside fp_img
2090     2. Move resize code to the capture path, it previously happened much
2091        later.
2092     3. Add fp_img_binarize() to return a new image in binarized form.
2093     4. Add a BINARIZED_FORM flag to prevent an image being binarized again.
2094
2095    In future, it would be nice to be able to binarize without detecting
2096    minutiae, but this involves some work on the NBIS interaction.
2097
2098commit 72c304999a07af03f0bad9485ebee6f9d0fcb520
2099Author: Jan-Michael Brummer <buzz2@gmx.de>
2100Date:   Fri Nov 16 18:15:43 2007 +0000
2101
2102    Add UPEK TouchChip driver
2103
2104    The UPEK TouchChip is an active capacitance imaging device with a
2105    press-type sensor. It also has image storage capabilities which will
2106    hopefully be accessible through libfprint in the near future.
2107
2108    This device can be found in the Samsung P35 laptop.
2109
2110commit 791eeab85991f513d437809b83863f400105db13
2111Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2112Date:   Fri Nov 16 15:44:09 2007 +0000
2113
2114    aes2501: restore default bozorth3 match threshold
2115
2116    With the multiple register writing code, the image quality is much
2117    better. It's trivially easy to get a match score of 100, and 200 is
2118    possible with a little effort. Remove the lowered match threshold.
2119
2120commit be0e9debd90592525cc135a22fc92e08be4b0274
2121Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2122Date:   Fri Nov 16 15:35:48 2007 +0000
2123
2124    aes2501: write multiple registers simultaneously
2125
2126    Instead of writing each register in a separate USB transaction, we now
2127    write up to 16 at once.
2128
2129    This drastically improves scan image quality due to reducing the amount of
2130    time needed per iteration of the sampling loop (sending 1 USB transaction
2131    per iteration instead of 7).
2132
2133commit bfc55c4f0f4ff75b52c9d9c2d7b2fffb01c5dc8e
2134Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2135Date:   Fri Nov 16 12:49:29 2007 +0000
2136
2137    Use older ImageMagick API
2138
2139    Debian ship an ImageMagick that is more than 2 years old. Switch to using
2140    older APIs so that we have compatibility all-round.
2141
2142commit 3fa3c0daf7f909187870f4f8136a9e830d18bdfb
2143Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2144Date:   Fri Nov 16 13:14:30 2007 +0000
2145
2146    Initialize enrolled image pointer to NULL
2147
2148    Currently this is a dangling pointer if the image capture fails, and then
2149    we try to standardize an invalid pointer --> crash
2150
2151commit 069b4a30ebdac8723a1f7a3e2d880924a6be9552
2152Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2153Date:   Thu Nov 15 17:23:36 2007 +0000
2154
2155    Doc and build updates
2156
2157    Add ChangeLog generation makefile target.
2158    Group all copyright notices in AUTHORS.
2159    Update some doxygen comments, and allow fp_dev_close(NULL)
2160
2161commit 06e8040956013fcba3c36d58356fb281b3888a58
2162Author: Vasily Khoruzhick <anarsoul@gmail.com>
2163Date:   Thu Nov 15 16:09:38 2007 +0000
2164
2165    aes2501: Detect reversed scans
2166
2167    aes2501 can be mounted 180 degrees rotated (this happens on most part of
2168    laptops), so driver should detect whether sensor is 180degrees rotated
2169    and assemble frames in right order.
2170
2171commit 6866ea626e22a861ade880c9eb1c1e2fd48e3510
2172Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2173Date:   Thu Nov 15 09:56:14 2007 +0000
2174
2175    v0.0.1 release
2176
2177commit 2ad14c021299fd362072a1fc36e634fc491df255
2178Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2179Date:   Wed Nov 7 17:49:10 2007 +0000
2180
2181    Add AES2501 driver
2182
2183    This driver works quite nicely. Seems a little too sensitive though (too
2184    much black in the standardized image, not enough ridge gap definition).
2185
2186    Processing results are quite good, but you need a good enrollment image
2187    (i.e. long!). It's best to get such images by pressing harder than you
2188    might think necessary and swiping slowly.
2189
2190commit 5485f8031d97f26a88ae51e83872c6c79edafc3e
2191Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2192Date:   Tue Nov 13 20:46:15 2007 +0000
2193
2194    Return images through enroll/verify path
2195
2196    Added new API functions to obtain images, even when scans are bad, perhaps
2197    a useful way to show the user just how good/bad the scan actually was.
2198
2199    Drivers and examples updated accordingly.
2200
2201commit a86cd51959cdb6e34ba0ddee4eed07880ac0fa2c
2202Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2203Date:   Tue Nov 13 14:32:31 2007 +0000
2204
2205    Clean up on exit, and convert to singly-linked-lists
2206
2207    This adds fp_exit() to the public API, intended to be called while the
2208    driving app is shutting down.
2209
2210commit a76f55db0d668278e1a8108a203e685b65400458
2211Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2212Date:   Mon Nov 12 23:32:17 2007 +0000
2213
2214    upekts relicensing
2215
2216    Pavel Machek and Timo Hoenig agreed to relicense their work. Thanks guys,
2217    I look forward to working together.
2218
2219commit 71e4bb39ec214883bc707b5ba2b95423f1fd05b6
2220Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2221Date:   Fri Nov 9 14:57:42 2007 +0000
2222
2223    Allow drivers to specify custom bz3 match threshold
2224
2225    aes4000 detects fewer minutiae and hence returns lower scores.
2226
2227commit e3451158e9e1d0d2cb1f81197a8e392ac4294ec0
2228Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2229Date:   Thu Nov 8 17:04:45 2007 +0000
2230
2231    Custom image resizing
2232
2233    mindtct appears to completely ignore the pixels-per-mm input parameter
2234    (ippmm). When processing AES4000 images, the binarized image is
2235    completely mangled and a lot of ridge information is lost.
2236
2237    Resizing the AES4000's small images results in a huge imaging performance
2238    gain.
2239
2240    We use imagemagick for the resizing, as it's resizing code resamples the
2241    image too (smoothing it out), which further improves performance.
2242
2243commit a73cbc10fb2ab3ded4551707b772a4c8b88ec8c4
2244Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2245Date:   Fri Nov 9 13:47:32 2007 +0000
2246
2247    aes4000: image quality improvements
2248
2249    The windows driver takes one sample at the previous register settings
2250    and then changes some registers before resamping (and getting much better
2251    images). The exact changes that it makes seem to vary, perhaps based on
2252    the histogram.
2253
2254    Anyway, this is an approximation of the settings used for the 2nd sample
2255    which should help matching results.
2256
2257commit b9238e8b8a308f15fc0cadd2217ed105aab0cdde
2258Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2259Date:   Thu Nov 8 13:56:21 2007 +0000
2260
2261    Support images with variable dimensions
2262
2263    For example, AES2501 returns images that vary in height.
2264
2265commit e1a25eeb672fdc0de2f1bb019b234587138b37f1
2266Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2267Date:   Thu Nov 8 13:41:52 2007 +0000
2268
2269    Doc update
2270
2271commit 8e7afef736711d81a4f33b17800b8e132ac251d7
2272Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2273Date:   Sun Nov 4 21:12:48 2007 +0000
2274
2275    uru4000: add Digital Persona U.are.U 4000 support
2276
2277    My UareU4000 device isn't working properly -- only seeing an all-white
2278    image and no finger-on detection, however I think this code should work
2279    for working devices.
2280
2281commit f498fcd1eac49b2d5cee6285d6e16e0cd1498f7c
2282Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2283Date:   Sun Nov 4 19:10:23 2007 +0000
2284
2285    Fix img_capture_continuous build
2286
2287    Also enable it in the default development build
2288
2289commit f733ddcc3b3748a73a3c63865be681af4fc5ed12
2290Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2291Date:   Sun Nov 4 19:01:15 2007 +0000
2292
2293    uru4000: retry scanner powerup 3 times
2294
2295    When we include the await_finger_off procedure (i.e. set mode 12), the
2296    current power-up code is unreliable - no 56aa interrupt arrives sometimes.
2297    Comparing the F0 data and hwstat at this point between a working and a
2298    non-working run yields no differences.
2299
2300    Work around this issue by retrying power-on 3 times.
2301
2302commit cbe1111e4e68702ac3d1b23c4a65b81052f0656c
2303Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2304Date:   Sun Nov 4 18:57:44 2007 +0000
2305
2306    uru4000: handle images without headers
2307
2308    While testing the new code on my MS keyboard, I found some strange
2309    conditions where occasionally, the device will stop providing images
2310    headers until it is replugged.
2311
2312    Detect and work around this when it happens.
2313
2314commit 2e6c3b940cf30705e7a2aa4bbb5c1c191fa94fdc
2315Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2316Date:   Thu Nov 1 23:11:29 2007 +0000
2317
2318    API documentation
2319
2320commit 7e6f25908bbd160f7f2a44618f29bbaded748bf9
2321Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2322Date:   Fri Nov 2 17:04:19 2007 +0000
2323
2324    remove imgdev abstraction from public API
2325
2326    Make it easier for application developers, don't have to care about this
2327    level of abstraction which we're intending to make superfluous to them.
2328
2329commit fc77786e46f8e7e8912426e13e858eb041b8ecc2
2330Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2331Date:   Wed Oct 31 22:42:09 2007 +0000
2332
2333    uru4000: interrupt handling fixes
2334
2335    This should improve driver stability somewhat. Powerup problems seem to
2336    happen when we receive 3 unrelated interrupts while waiting for the
2337    power-on interrupt, so let's assume that the device can only buffer 3
2338    interrupts, and when the buffer is full, it discards new ones.
2339
2340    When we detect a possible buffer overflow, ask the caller to retry the
2341    operation.
2342
2343    Also, saw the interrupt of death a few times, so add in a warning when
2344    this happens. Haven't seen it since handling interrupt overflows though.
2345
2346commit 07a81b07becb597d919c706e9894c31b2e95432f
2347Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2348Date:   Wed Oct 31 21:51:37 2007 +0000
2349
2350    upekts: initialise and deinitialise device during verify/capture
2351
2352    Otherwise it heats up, and verify retries fail because we didn't end the
2353    session.
2354
2355commit fc0a97a801377fb5d9666d81a18b2c93c4c37f61
2356Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2357Date:   Wed Oct 31 13:18:30 2007 +0000
2358
2359    Build system tweaks
2360
2361    Install fprint.h header
2362    Include headers in distribution
2363    distcheck fixes
2364    Include and install pkgconfig file
2365
2366commit 447b1f01b3163bebf640f2f44d09a7fbf0c4e79c
2367Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2368Date:   Wed Oct 31 13:12:04 2007 +0000
2369
2370    Print discovery
2371
2372    Add concept of "discovered prints" and flesh out the API. A discovered print
2373    was found based on file name but has not been checked for file integrity,
2374    and of course there is no guarantee that it is usable when you try to
2375    use it later (might have been deleted, etc).
2376
2377    The .fprint directory structure was changed - instead of using mnemonics
2378    like "rind" we use their numeric value in the fp_finger enum as the filename.
2379
2380commit b96aade69ca93c28ed20bdac8be432d4feb0f9fd
2381Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2382Date:   Tue Oct 30 22:24:31 2007 +0000
2383
2384    Flesh out driver_id/devtype API
2385
2386    Add accessor functions to the various structures
2387
2388commit cc3e976042e49587ecca87a7fdb3d6dbdcf76d0e
2389Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2390Date:   Tue Oct 30 22:15:45 2007 +0000
2391
2392    Add 'discover' hook for drivers
2393
2394    Drivers can now offer a discover function, and are expected to offer the
2395    device devtype during discovery, without accessing the USB device. Hmm.
2396    Maybe we'll have to change that later...
2397
2398commit f0ef386f43d944430654f3ef486464db5717b4c9
2399Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2400Date:   Mon Oct 29 23:37:28 2007 +0000
2401
2402    More NBIS cleanups
2403
2404commit 6f633cc771c5290593880c79304234eafb5e8e83
2405Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2406Date:   Mon Oct 29 23:06:06 2007 +0000
2407
2408    Use glib's byte order functions
2409
2410commit 294f9ad44730400800f9de0cd213a7050f6ef2a5
2411Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2412Date:   Sun Oct 28 22:02:04 2007 +0000
2413
2414    Improve print_data structure and on-disk format
2415
2416    Drivers now have an ID number. These will be assigned by me and documented
2417    on the wiki. 0 cannot be used.
2418
2419    Drivers now define a devtype for each device they initialise. This is to
2420    cope with the situation where a driver can support varying devices where
2421    their print data is incompatible (i.e. image scaling is totally changed).
2422    This doesn't apply to any existing supported devices.
2423
2424    Print data no longer includes driver name, and includes driver ID instead.
2425
2426    Paths to saved print data now include driver ID and devtype, and no longer
2427    include driver name.
2428
2429    APIs exposed for converting a print_data into a blob which can then
2430    be loaded back again later. Useful for systems who don't want to use
2431    my simple storage system (which is only aimed at a single user).
2432
2433    File format is now defined and will be documented on the wiki. The header
2434    is larger as we can no longer rely on directory paths in all scenarios.
2435
2436    Print data compat check now checks devtype and driver ID.
2437
2438commit 4e5cfdf92aa305a5d8ed58fb650ccdad028742ac
2439Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2440Date:   Sun Oct 28 15:45:28 2007 +0000
2441
2442    NBIS cleanup
2443
2444    Part 1 of many. Remove some unused/pointless code, and made some code
2445    static.
2446
2447commit 6b8d17ef2654ad7f42fa9941074d132fb4d6e324
2448Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2449Date:   Sun Oct 28 00:21:49 2007 +0100
2450
2451    Add bozorth3 from NBIS; implement verify for image devices
2452
2453    uru4000 works splendiferously (YAY!)
2454    aes4000 is going to need some work though :(
2455
2456commit 41b25f28a4dd980b88fef2e9ff9f243390793639
2457Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2458Date:   Sat Oct 27 22:48:09 2007 +0100
2459
2460    Add mindtct from NBIS; implement enroll for image devices
2461
2462    mindtct is mostly as-is for now, with just a couple of bits ripped out.
2463
2464commit be67f85caa1c65c4c55d4e969d757e7f2790bd7e
2465Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2466Date:   Sat Oct 27 18:12:16 2007 +0100
2467
2468    Add Authentec AES4000 driver
2469
2470commit 3bbb7b8b51829acd5b8efaf54d60338aec0c4717
2471Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2472Date:   Sat Oct 27 18:10:06 2007 +0100
2473
2474    Internal image allocation API changes
2475
2476    Creating by dimensions is likely not useful now that we can infer image
2477    size from a device in question.
2478
2479commit 351ccb4ab7f60ce2225f10bab13fd0862c1d17de
2480Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2481Date:   Sat Oct 27 15:17:19 2007 +0100
2482
2483    Add XV-based img_capture_continuous example
2484
2485commit da071ff8a2a20984b5f3ea5c355c8a7063f51860
2486Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2487Date:   Sat Oct 27 15:16:54 2007 +0100
2488
2489    Add API for freeing images
2490
2491commit c2a83ec948ffb5604e30cb9cba4f6b71b5ad2b43
2492Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2493Date:   Sat Oct 27 14:45:14 2007 +0100
2494
2495    Improved image dimension handling
2496
2497    Drivers now specify the size of the image they provide, and theres an API
2498    so that you can get the size of an image before you capture it.
2499
2500commit 9960a7ff3450fe6df892f794904c8fa2ac398115
2501Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2502Date:   Sat Oct 27 12:07:11 2007 +0100
2503
2504    Image standardization
2505
2506    Initially supports flipping and colour inversion
2507
2508commit 0ddfef6c21e9944e1ed34e4cbb895e105b82359d
2509Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2510Date:   Sat Oct 27 00:10:32 2007 +0100
2511
2512    Add uru4000 driver
2513
2514commit f367ae8f4be9dc504d5526d4e74fab497f9f1f59
2515Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2516Date:   Sat Oct 27 00:09:46 2007 +0100
2517
2518    Zero out fprint_data fields on allocation
2519
2520commit f3a838e856423af802de1d777a19163843cdf635
2521Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2522Date:   Sat Oct 27 00:06:53 2007 +0100
2523
2524    Initial implementation for image device access and capture
2525
2526    Also added new example: img_capture
2527
2528commit 0aac3706d707b26f478656282d2d7dce47e3adbf
2529Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2530Date:   Thu Oct 25 15:35:10 2007 +0100
2531
2532    upekts: release interface on error condition and normal exit
2533
2534commit 0ac74ef649802000da82bb1bddf8c1637c515de6
2535Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2536Date:   Thu Oct 25 15:00:30 2007 +0100
2537
2538    Pass driver_data from ID table to driver init function
2539
2540commit 2709c6dc8c2429c3202b88b709593376d69392e5
2541Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2542Date:   Tue Oct 23 23:24:21 2007 +0100
2543
2544    Basic image driver foundations
2545
2546    The basic model is that image drivers declare a fp_img_driver structure
2547    rather than a fp_driver struct. fp_img_driver will contain primitive imaging
2548    operations such as 'scan finger and return image'. The imgdev layer will
2549    generically implement the primitive fp_driver operations, and the imgdev
2550    layer will fix up the enroll/verify/etc pointers at driver registration
2551    time.
2552
2553    Removed const from all fp_driver declarations, as these are now modified
2554    dynamically in the case of imaging drivers.
2555
2556commit c97f4bb1a721c7cee3acd8dec081a3f0fb86a5bb
2557Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2558Date:   Tue Oct 16 14:35:33 2007 +0100
2559
2560    Fix verify debug messages
2561
2562    Teach it about the various error conditions.
2563
2564commit 801fcfc07ce3cee36ce8c16e8e4fa26d22ae8db3
2565Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2566Date:   Tue Oct 16 14:34:47 2007 +0100
2567
2568    upekts: fix memory corruption
2569
2570    Found by valgrind
2571
2572commit 680142f268ad8bdfd0cbcbd6654f2e0dc2d20187
2573Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2574Date:   Tue Oct 16 14:23:30 2007 +0100
2575
2576    storage: add save/load functionality
2577
2578    Prints can now be saved to disk (but you currently must classify which
2579    finger they are) and you can load them later.
2580
2581    Added 2 simple example programs to demonstrate this.
2582
2583commit 3b8f8c195cc49532669cce859be7969ff5813611
2584Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2585Date:   Tue Oct 16 13:41:23 2007 +0100
2586
2587    upekts: support large messages
2588
2589    Add support for messages with a length greater than 255.
2590    Also picked out a few more retry codes.
2591
2592commit 10bb96a0dfd9dfb50e870499661f2adf8050f11f
2593Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2594Date:   Mon Oct 15 22:16:22 2007 +0100
2595
2596    Rename verify to verify_live
2597
2598    ...to make way for an enroll example which stores on disk, and
2599    a verify example that loads from disk.
2600
2601commit bf9ce44f43c013a3822fe63a5214faf946a2ce8b
2602Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2603Date:   Mon Oct 15 22:09:46 2007 +0100
2604
2605    upekts: verify implementation
2606
2607    We can now verify live fingerprints using the verify example.
2608    Error handling during verification needs to be improved.
2609
2610commit f59112d57cf008969d074ff4ffa5f31c5d29a099
2611Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2612Date:   Mon Oct 15 22:07:22 2007 +0100
2613
2614    Unhide fprint_data buffer from drivers
2615
2616    May as well keep things out in the open.
2617
2618commit 68bdfc7868f8a0467da58cba4796a44569f806b9
2619Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2620Date:   Sun Oct 14 00:58:45 2007 +0100
2621
2622    Verification infrastructure
2623
2624    Similar model to enrollment.
2625
2626commit 39271b4fe50b5f3ceb880e47c951f906b9bc8ff2
2627Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2628Date:   Sun Oct 14 00:45:49 2007 +0100
2629
2630    Enrollment: improved error reporting
2631
2632    Convert enrollment function to return a signed integer, which is negative
2633    on error or corresponds into fp_enroll_result otherwise.
2634    Now we can treat a 'FAIL' condition differently from an actual error: fail
2635    means that enrollment didn't complete because the data was nonsense or
2636    whatever (e.g. scanned a different finger for each stage?).
2637
2638    Updated upekts accordingly.
2639
2640commit ab5b1ca8e9815599a5e5034736db7bcabebc9101
2641Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2642Date:   Sat Oct 13 16:24:20 2007 +0100
2643
2644    upekts: communication handling and enrollment implementation
2645
2646    This completes an enrollment implementation for the upekts driver.
2647    It's based on code from libthinkfinger, but as there seemed to be many
2648    unknown details there, I spent some time analysing the bus messages in
2649    more detail and have effectively rewritten almost all of the borrowed code.
2650
2651    Note that libthinkfinger is GPL licensed, so that reflects on this code too.
2652    At release time I will ask them if they are OK for me to relicense it.
2653
2654commit 299514431073828585c10b27af34a43936014703
2655Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2656Date:   Sat Oct 13 15:52:50 2007 +0100
2657
2658    Build system tweaks
2659
2660    Add configure-time controls for logging
2661    Set some default compile-time warnings
2662
2663commit 50e2de0730c5d93dd1ad5f0f07e010ee1d92ad01
2664Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2665Date:   Fri Oct 12 15:27:23 2007 +0100
2666
2667    Enrollment tweaks
2668
2669    upekts will need to know when the first enrollment stage is attempted for
2670    the first time, so add an __enroll_stage counter which actually indicates
2671    the next stage to enroll. -1 is a special value and it means 0 is next *and*
2672    it is the initial attemt.
2673
2674    Added more debug output to the enroll handler.
2675    Added new fp_enroll_status codes for too short or uncentered scans.
2676
2677    Changed the print_data allocator to consider the device rather than the
2678    driver, this feels more natural. Added missing return value.
2679
2680    Make fp_enroll_status codes start at 1. 0 can now be used as a
2681    special/temporary value by the drivers. Also check that we aren't exceeding
2682    the number of enroll stages.
2683
2684    Also add a missing exit() call to the verify example and update for the
2685    above.
2686
2687commit e6624fe5086dc3d86a3947e396ab7c52c0cdddb8
2688Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2689Date:   Fri Oct 12 15:16:51 2007 +0100
2690
2691    Add 16 bit endianness functions
2692
2693commit ec91736ac4fb77e5d852959820d0070d1b4fc56f
2694Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2695Date:   Wed Oct 10 15:51:50 2007 +0100
2696
2697    Add logging infrastructure
2698
2699    Also added some debug/error messages to existing code. For now debugging is
2700    always on, this will be made optional later.
2701
2702commit 016ff33533bf4930e05ed5c818b83a5610e6b219
2703Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2704Date:   Mon Oct 8 19:53:50 2007 +0100
2705
2706    Enrolment infrastructure
2707
2708commit b071f3cdb928117401d173aa5ea0bb9555295618
2709Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2710Date:   Mon Oct 8 18:24:29 2007 +0100
2711
2712    Initial fingerprint data representation ideas
2713
2714commit 59b73af909162c5fa7d57d3c14f66508a7589873
2715Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2716Date:   Mon Oct 8 17:37:58 2007 +0100
2717
2718    Documentation update
2719
2720commit f81aa47a19a8ab7c1e53d9b483ead064fdd85884
2721Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2722Date:   Mon Oct 8 17:15:21 2007 +0100
2723
2724    Add 'verify' example skeleton
2725
2726    This will become an example program to enroll a fingerprint and then
2727    verify a finger against it.
2728
2729commit 2c06a4ebfaed93505bb7daa7d9a49bb394bdbfb4
2730Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2731Date:   Mon Oct 8 17:05:58 2007 +0100
2732
2733    Expose driver info to library users
2734
2735commit 711bb1151b161f3696d97b78de975221ccee82cd
2736Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2737Date:   Mon Oct 8 17:01:08 2007 +0100
2738
2739    open/close device functions
2740
2741commit 7d31cb4d456185a951fc98276b1244039317a0a2
2742Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2743Date:   Mon Oct 8 16:55:50 2007 +0100
2744
2745    Basic device discovery infrastructure
2746
2747commit 046bdc0bdab54d1890c5a5445b6ca711e4a13f19
2748Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2749Date:   Mon Oct 8 16:46:42 2007 +0100
2750
2751    Initial driver registration mechanism
2752
2753    Also added the basis of the upekts driver, which is the first I'll
2754    implement.
2755
2756commit 7d3612d9f6ebc5ecbdc400acbb97333c7bb402c9
2757Author: Daniel Drake <dsd@cs.manchester.ac.uk>
2758Date:   Sun Oct 7 23:20:12 2007 +0100
2759
2760    Create repo structure
2761