>From this page https://gist.github.com/juvenn/939298
I downloaded the diff file. In the actual version of libfprint not exactly correspond, make some changes based in the actual version of aes4000 driver. The result new aes3500.dif is attached in git form. There is some more changes because im running centos 6 and Not have glib greater than 2.28 which are taked from this mail http://lists.freedesktop.org/archives/fprint/2013-January/000414.html basically /*g_slist_free_full(aesdev->strips, g_free);*/ g_slist_foreach(aesdev->strips, (GFunc) g_free, NULL); g_slist_free(aesdev->strips); and in configure.ac -PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.28]) +PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.00]) The unit APC BIOPOD is now capturing images but have a lot of problem for verify my own fingerprint, fail 9 of 10 times. its related to images or driver? El vie, 19-04-2013 a las 21:26 +0300, Vasily Khoruzhick escribió: > Hi, > > > > Follow "Contributing" section > at http://www.freedesktop.org/wiki/Software/fprint/libfprint > i.e. just create a bug at bugzilla.freedesktop.org with git-formatted > patch > > > Regards > Vasily > > > > On Fri, Apr 19, 2013 at 5:28 PM, Juvenn Woo <mach...@gmail.com> wrote: > > Hi Vasily, > > > > Is there a contribution guideline? Or should I clean up my > code based upon the git master branch, then submit a `git > diff` for you to merge? > > > Thanks! > > > best, > -- > jv ♫ > > m: (+86) 156 5238 4808 > > > > > On Fri, Apr 19, 2013 at 9:24 PM, Juvenn Woo > <mach...@gmail.com> wrote: > > Hi Vasily, > > > > This AES3500 device is a press-typed sensor, with > 128x128 dimension, which is very similiar to Daniel > Drake's AES4000 driver. By investigating Smith's work > (those parameters), and forking Daniel's Aes4000 > driver, I have had been able to make a driver that > could scan images like biobpod, but the verification > rate is too low that I thought it's not qualified to > submit to libfprint. > > > But if anyone interested, I could share my code. > > > > > > > best, > -- > jv ♫ > > m: (+86) 156 5238 4808 > > > > On Fri, Apr 19, 2013 at 9:10 PM, Vasily Khoruzhick > <anars...@gmail.com> wrote: > > This one is licensed under GPL, libfprint is > licensed under LGPL, so it's not legal to use > this code for producing libfprint driver > without author permission to relicense code. > > > > Anyway, it's close to impossible to implement > a driver without access to device :) > > > Regards > Vasily > > > > On Fri, Apr 19, 2013 at 3:15 PM, newzenca > <newze...@gmail.com> wrote: > > Hello, > > I found this site > http://ww2.cs.fsu.edu/~micsmith/devices/ > > "Here you will find the source code > for an open source GPL'd Linux driver > for the APC USB Biopod device which > uses the AES3500 fingerprint sensor" > > in this base is not posible for some > guru build a driver for this unit on > libfprint. > > Thanks > > > > > > _______________________________________________ > fprint mailing list > fprint@lists.freedesktop.org > > http://lists.freedesktop.org/mailman/listinfo/fprint > > > > > > > _______________________________________________ > fprint mailing list > fprint@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/fprint > > > > > > > > > > _______________________________________________ > fprint mailing list > fprint@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/fprint > > > > > > _______________________________________________ > fprint mailing list > fprint@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/fprint
diff --git a/autogen.sh b/autogen.sh index e4366b3..e074d82 100755 --- a/autogen.sh +++ b/autogen.sh @@ -5,6 +5,6 @@ autoheader || exit 1 autoconf || exit 1 automake -a -c || exit 1 if test -z "$NOCONFIGURE"; then - exec ./configure --enable-maintainer-mode --enable-examples-build \ + exec ./configure --enable-examples-build \ --enable-x11-examples-build --enable-debug-log $* fi diff --git a/configure.ac b/configure.ac index b2ec4a7..07c6777 100644 --- a/configure.ac +++ b/configure.ac @@ -23,7 +23,7 @@ AC_SUBST(lt_major) AC_SUBST(lt_revision) AC_SUBST(lt_age) -all_drivers="upeke2 upekts upektc upeksonly vcom5s uru4000 fdu2000 aes1610 aes1660 aes2501 aes2550 aes2660 aes4000 vfs101 vfs301" +all_drivers="upeke2 upekts upektc upeksonly vcom5s uru4000 fdu2000 aes1610 aes1660 aes2501 aes2550 aes2660 aes4000 aes3500 vfs101 vfs301" require_imaging='no' require_aeslib='no' @@ -41,6 +41,7 @@ enable_aes2501='no' enable_aes2550='no' enable_aes2660='no' enable_aes4000='no' +enable_aes3500='no' enable_vfs101='no' enable_vfs301='no' @@ -117,6 +118,12 @@ for driver in `echo ${drivers} | sed -e 's/,/ /g' -e 's/,$//g'`; do require_imaging="yes" enable_aes4000="yes" ;; + aes3500) + AC_DEFINE([ENABLE_AES3500], [], [Build AuthenTec AES3500 driver]) + require_aeslib="yes" + require_imaging="yes" + enable_aes3500="yes" + ;; vfs101) AC_DEFINE([ENABLE_VFS101], [], [Build Validity VFS101 driver]) enable_vfs101="yes" @@ -141,6 +148,7 @@ AM_CONDITIONAL([ENABLE_AES2501], [test "$enable_aes2501" = "yes"]) AM_CONDITIONAL([ENABLE_AES2550], [test "$enable_aes2550" = "yes"]) AM_CONDITIONAL([ENABLE_AES2660], [test "$enable_aes2660" = "yes"]) AM_CONDITIONAL([ENABLE_AES4000], [test "$enable_aes4000" = "yes"]) +AM_CONDITIONAL([ENABLE_AES3500], [test "$enable_aes3500" = "yes"]) AM_CONDITIONAL([REQUIRE_AESLIB], [test "$require_aeslib" = "yes"]) AM_CONDITIONAL([REQUIRE_AESX660], [test "$require_aesX660" = "yes"]) AM_CONDITIONAL([ENABLE_VFS101], [test "$enable_vfs101" = "yes"]) @@ -156,7 +164,7 @@ PKG_CHECK_MODULES(CRYPTO, nss) AC_SUBST(CRYPTO_CFLAGS) AC_SUBST(CRYPTO_LIBS) -PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.28]) +PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.00]) AC_SUBST(GLIB_CFLAGS) AC_SUBST(GLIB_LIBS) @@ -346,6 +354,11 @@ if test x$enable_aes4000 != xno ; then else AC_MSG_NOTICE([ aes4000 driver disabled]) fi +if test x$enable_aes3500 != xno ; then + AC_MSG_NOTICE([** aes3500 driver enabled]) +else + AC_MSG_NOTICE([ aes3500 driver disabled]) +fi if test x$enable_vfs101 != xno ; then AC_MSG_NOTICE([** vfs101 driver enabled]) else diff --git a/libfprint/Makefile.am b/libfprint/Makefile.am index 7a16782..f04d61e 100644 --- a/libfprint/Makefile.am +++ b/libfprint/Makefile.am @@ -13,6 +13,7 @@ AES2501_SRC = drivers/aes2501.c drivers/aes2501.h AES2550_SRC = drivers/aes2550.c drivers/aes2550.h AES2660_SRC = drivers/aes2660.c drivers/aes2660.h AES4000_SRC = drivers/aes4000.c +AES3500_SRC = drivers/aes3500.c FDU2000_SRC = drivers/fdu2000.c VCOM5S_SRC = drivers/vcom5s.c VFS101_SRC = drivers/vfs101.c @@ -30,6 +31,7 @@ EXTRA_DIST = \ $(AES2550_SRC) \ $(AES2660_SRC) \ $(AES4000_SRC) \ + $(AES3500_SRC) \ $(FDU2000_SRC) \ $(VCOM5S_SRC) \ $(VFS101_SRC) \ @@ -149,6 +151,10 @@ if ENABLE_AES4000 DRIVER_SRC += $(AES4000_SRC) endif +if ENABLE_AES3500 +DRIVER_SRC += $(AES3500_SRC) +endif + if ENABLE_VFS101 DRIVER_SRC += $(VFS101_SRC) endif diff --git a/libfprint/core.c b/libfprint/core.c index 5315fdc..b0352a9 100644 --- a/libfprint/core.c +++ b/libfprint/core.c @@ -352,6 +352,9 @@ static struct fp_img_driver * const img_drivers[] = { #ifdef ENABLE_AES4000 &aes4000_driver, #endif +#ifdef ENABLE_AES3500 + &aes3500_driver, +#endif #ifdef ENABLE_AES2501 &aes2501_driver, #endif diff --git a/libfprint/drivers/aes1610.c b/libfprint/drivers/aes1610.c index 2e04c59..0d942c9 100644 --- a/libfprint/drivers/aes1610.c +++ b/libfprint/drivers/aes1610.c @@ -616,7 +616,9 @@ static void capture_read_strip_cb(struct libusb_transfer *transfer) aesdev->strips = g_slist_reverse(aesdev->strips); img = aes_assemble(aesdev->strips, aesdev->strips_len, FRAME_WIDTH, FRAME_HEIGHT); - g_slist_free_full(aesdev->strips, g_free); + /*g_slist_free_full(aesdev->strips, g_free);*/ + g_slist_foreach(aesdev->strips, (GFunc) g_free, NULL); + g_slist_free(aesdev->strips); aesdev->strips = NULL; aesdev->strips_len = 0; aesdev->blanks_count = 0; diff --git a/libfprint/drivers/aes2501.c b/libfprint/drivers/aes2501.c index 75d19fc..e6f4cde 100644 --- a/libfprint/drivers/aes2501.c +++ b/libfprint/drivers/aes2501.c @@ -485,7 +485,9 @@ static void capture_read_strip_cb(struct libusb_transfer *transfer) aesdev->strips = g_slist_reverse(aesdev->strips); img = aes_assemble(aesdev->strips, aesdev->strips_len, FRAME_WIDTH, FRAME_HEIGHT); - g_slist_free_full(aesdev->strips, g_free); + /*g_slist_free_full(aesdev->strips, g_free);*/ + g_slist_foreach(aesdev->strips, (GFunc) g_free, NULL); + g_slist_free(aesdev->strips); aesdev->strips = NULL; aesdev->strips_len = 0; fpi_imgdev_image_captured(dev, img); diff --git a/libfprint/drivers/aes2550.c b/libfprint/drivers/aes2550.c index 96ce590..7e5d9e8 100644 --- a/libfprint/drivers/aes2550.c +++ b/libfprint/drivers/aes2550.c @@ -252,7 +252,9 @@ static void capture_set_idle_reqs_cb(struct libusb_transfer *transfer) aesdev->strips = g_slist_reverse(aesdev->strips); img = aes_assemble(aesdev->strips, aesdev->strips_len, FRAME_WIDTH, FRAME_HEIGHT); - g_slist_free_full(aesdev->strips, g_free); + /*g_slist_free_full(aesdev->strips, g_free);*/ + g_slist_foreach(aesdev->strips, (GFunc) g_free, NULL); + g_slist_free(aesdev->strips); aesdev->strips = NULL; aesdev->strips_len = 0; fpi_imgdev_image_captured(dev, img); diff --git a/libfprint/fp_internal.h b/libfprint/fp_internal.h index 04d304f..145e998 100644 --- a/libfprint/fp_internal.h +++ b/libfprint/fp_internal.h @@ -270,6 +270,9 @@ extern struct fp_img_driver aes2660_driver; #ifdef ENABLE_AES4000 extern struct fp_img_driver aes4000_driver; #endif +#ifdef ENABLE_AES3500 +extern struct fp_img_driver aes3500_driver; +#endif #ifdef ENABLE_FDU2000 extern struct fp_img_driver fdu2000_driver; #endif
_______________________________________________ fprint mailing list fprint@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/fprint