Bug 188854 - [patch] Updated port security/libfprint
Summary: [patch] Updated port security/libfprint
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: John Marino
URL:
Keywords:
Depends on:
Blocks: 192683
  Show dependency treegraph
 
Reported: 2014-04-21 16:40 UTC by Martin Birgmeier
Modified: 2014-08-15 22:05 UTC (History)
4 users (show)

See Also:


Attachments
file.diff (12.68 KB, patch)
2014-04-21 16:40 UTC, Martin Birgmeier
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Birgmeier 2014-04-21 16:40:00 UTC
This bug report deals with fingerprint reading devices.

The attached patch file updates security/libfprint from 0.4.0 to 0.5.1; this makes the fingerprint reader on a Thinkpad W520 work. In addition, it creates a new port security/fprintd; however, the latter is slightly incomplete because while enrollment and listing work, verification does not and fails with the following error:

# fprintd-verify martin
Using device /net/reactivated/Fprint/Device/0
Listing enrolled fingers:
 - #0: right-middle-finger
 - #1: right-index-finger
VerifyStart failed: Connection was disconnected before a reply was received

This seems to be some dbus interaction issue; maybe some kind soul can look into it and fix it. Also, I believe that the port probably needs a few more dependency specifications.

Note: The updated libfprint itself works nicely; this can be tested using the port security/fprint_demo.

Fix: Patch attached with submission follows:
How-To-Repeat: Please apply the attached patch to the ports tree and install security/fprintd. Running fprintd-verify will give the error message shown above.
Comment 1 Edwin Groothuis freebsd_committer 2014-04-21 16:40:07 UTC
Class Changed
From-To: update->change-request

Fix category (new ports should be change-requests) (via the GNATS Auto 
Assign Tool)
Comment 2 John Marino freebsd_committer 2014-08-07 14:50:39 UTC
Hi, if you are still interested in having this port in FreeBSD, it may (or may not) need to be reworked to support stage, and it may need updating to other newer conventions such as "USES" which is expanding all time.
For staging, see http://lists.freebsd.org/pipermail/freebsd-ports-announce/2014-May/000080.html


Additionally, you need to provide some sort of quality assurance.    
In order of preference, we are looking for:

1) "poudriere testport" or "poudriere bulk -t" logs
2) Redports or tinderbox logs

Please provide an updated shar file and attach a test log.  Alternatively, please indicate if you are no longer interested in having this software in the Ports Collection and that we can close the PR.

Thanks!
Comment 3 Martin Birgmeier 2014-08-15 08:48:02 UTC
The first part of the attached patch, upgrading security/libfprint to 0.5.1, is now ready to be committed to ports. See https://redports.org/buildarchive/20140815081554-69200/ .

(Note that the port revision is already at 2, because that's what I have here internally after merging the upstream changes.)

The new port security/fprintd will follow later.

-- Martin
Comment 4 John Marino freebsd_committer 2014-08-15 08:58:30 UTC
We have to get lichray approval on this.
If he doesn't respond in 2 weeks, ping the PR and we'll move it to "patch-ready".

Lichray has been scarce lately so don't wait a day longer than 2 weeks.
Comment 5 Martin Birgmeier 2014-08-15 15:42:16 UTC
The second part of the patch, the new port security/fprintd, can now also be committed: https://redports.org/buildarchive/20140815111701-48039/

-- Martin
Comment 6 John Marino freebsd_committer 2014-08-15 15:45:04 UTC
why don't you split that off into another PR, and then link them?  lichray has nothing to do with second one.
Comment 7 zy 2014-08-15 15:52:29 UTC
fprintd should has a maintainer.

I only received an email after the bugzilla migration...

The patch looks good to me.
Comment 8 lichray 2014-08-15 20:56:56 UTC
Approved.  zy@miator.net is my another address.  See comment above.
Comment 9 John Marino freebsd_committer 2014-08-15 21:02:45 UTC
Thanks lichray.
I'll check the other PR to see if a maintainer is listed.  You are right, it must come with one.  Moving this to "patch-ready" status.
Comment 10 John Marino freebsd_committer 2014-08-15 21:10:05 UTC
I'll take it (libprintf only)
Lichray, fprintd  was moved to bug 192683 but the diff wasn't updated.
Comment 11 John Marino freebsd_committer 2014-08-15 21:29:54 UTC
What was this tested on?  It doesn't build in FreeBSD 10/amd64 poudriere:




=======================<phase: build          >============================
===>  Building for libfprint-0.5.1
/usr/bin/make  all-recursive
Making all in libfprint
  CC       libfprint_la-async.lo
  CC       libfprint_la-core.lo
  CC       libfprint_la-data.lo
  CC       libfprint_la-drv.lo
  CC       libfprint_la-img.lo
  CC       libfprint_la-imgdev.lo
imgdev.c:154:29: warning: implicit conversion from enumeration type 'enum fp_imgdev_enroll_state' to different enumeration type 'enum fp_imgdev_state' [-Wenum-conversion]
                        dev_change_state(imgdev, IMG_ACQUIRE_STATE_AWAIT_FINGER_ON);
                        ~~~~~~~~~~~~~~~~         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
  CC       libfprint_la-poll.lo
  CC       libfprint_la-sync.lo
  CC       libfprint_la-upeke2.lo
  CC       libfprint_la-upekts.lo
  CC       libfprint_la-upeksonly.lo
  CC       libfprint_la-upektc.lo
  CC       libfprint_la-uru4000.lo
  CC       libfprint_la-vcom5s.lo
  CC       libfprint_la-aes1610.lo
  CC       libfprint_la-aes1660.lo
  CC       libfprint_la-aes2501.lo
  CC       libfprint_la-aes2550.lo
  CC       libfprint_la-aes2660.lo
  CC       libfprint_la-aes4000.lo
  CC       libfprint_la-vfs101.lo
  CC       libfprint_la-vfs301.lo
drivers/vfs301.c:30:10: fatal error: 'libusb-1.0/libusb.h' file not found
#include <libusb-1.0/libusb.h>
         ^
1 error generated.
*** Error code 1

Stop.
make[3]: stopped in /wrkdirs/usr/ports/security/libfprint/work/libfprint-0.5.1/libfprint
*** Error code 1

Stop.
make[2]: stopped in /wrkdirs/usr/ports/security/libfprint/work/libfprint-0.5.1
*** Error code 1

Stop.
make[1]: stopped in /wrkdirs/usr/ports/security/libfprint/work/libfprint-0.5.1
*** Error code 1

Stop.
make: stopped in /usr/ports/security/libfprint
===>  Cleaning for libfprint-0.5.1
build of /usr/ports/security/libfprint ended at Fri Aug 15 23:23:14 CEST 2014
build time: 00:00:46
Comment 12 lichray 2014-08-15 21:34:56 UTC
(In reply to John Marino from comment #11)
> What was this tested on?  It doesn't build in FreeBSD 10/amd64 poudriere:
> 
> 
> 
> 
> =======================<phase: build          >============================
> ===>  Building for libfprint-0.5.1
> /usr/bin/make  all-recursive
> Making all in libfprint
>   CC       libfprint_la-async.lo
>   CC       libfprint_la-core.lo
>   CC       libfprint_la-data.lo
>   CC       libfprint_la-drv.lo
>   CC       libfprint_la-img.lo
>   CC       libfprint_la-imgdev.lo
> imgdev.c:154:29: warning: implicit conversion from enumeration type 'enum
> fp_imgdev_enroll_state' to different enumeration type 'enum fp_imgdev_state'
> [-Wenum-conversion]
>                         dev_change_state(imgdev,
> IMG_ACQUIRE_STATE_AWAIT_FINGER_ON);
>                         ~~~~~~~~~~~~~~~~        
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 1 warning generated.
>   CC       libfprint_la-poll.lo
>   CC       libfprint_la-sync.lo
>   CC       libfprint_la-upeke2.lo
>   CC       libfprint_la-upekts.lo
>   CC       libfprint_la-upeksonly.lo
>   CC       libfprint_la-upektc.lo
>   CC       libfprint_la-uru4000.lo
>   CC       libfprint_la-vcom5s.lo
>   CC       libfprint_la-aes1610.lo
>   CC       libfprint_la-aes1660.lo
>   CC       libfprint_la-aes2501.lo
>   CC       libfprint_la-aes2550.lo
>   CC       libfprint_la-aes2660.lo
>   CC       libfprint_la-aes4000.lo
>   CC       libfprint_la-vfs101.lo
>   CC       libfprint_la-vfs301.lo
> drivers/vfs301.c:30:10: fatal error: 'libusb-1.0/libusb.h' file not found
> #include <libusb-1.0/libusb.h>
>          ^
> 1 error generated.
> *** Error code 1
> 
> Stop.
> make[3]: stopped in
> /wrkdirs/usr/ports/security/libfprint/work/libfprint-0.5.1/libfprint
> *** Error code 1
> 
> Stop.
> make[2]: stopped in
> /wrkdirs/usr/ports/security/libfprint/work/libfprint-0.5.1
> *** Error code 1
> 
> Stop.
> make[1]: stopped in
> /wrkdirs/usr/ports/security/libfprint/work/libfprint-0.5.1
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/ports/security/libfprint
> ===>  Cleaning for libfprint-0.5.1
> build of /usr/ports/security/libfprint ended at Fri Aug 15 23:23:14 CEST 2014
> build time: 00:00:46

You did not fully applied the patch.  There are some new patches under the files/ directory.
Comment 13 John Marino freebsd_committer 2014-08-15 21:44:23 UTC
oh.
It's because the diff version doesn't show it.  I manually added it because I didn't want the other port so I didn't see more than the diff viewer showed.
Comment 14 John Marino freebsd_committer 2014-08-15 21:56:28 UTC
there's one thing to clean up:

===========================================================================
====> Running Q/A tests (stage-qa)
Warning: 'lib/libfprint.so.0.0.0' is not stripped consider using ${STRIP_CMD}

It has an "install-strip" target, so that will probably fix it.
If it does, I'll make the change and commit.
Comment 15 commit-hook freebsd_committer 2014-08-15 22:04:45 UTC
A commit references this bug:

Author: marino
Date: Fri Aug 15 22:04:23 UTC 2014
New revision: 365059
URL: http://svnweb.freebsd.org/changeset/ports/365059

Log:
  security/libfprint: Upgrade version 0.4.0 => 0.5.1

  PR:		188854
  Submitted by:	Martin Birgmeier
  Approved by:	maintainer (lichray)

Changes:
  head/security/libfprint/Makefile
  head/security/libfprint/distinfo
  head/security/libfprint/files/patch-libfprint-drivers-vfs301.c
  head/security/libfprint/files/patch-libfprint-drivers-vfs301_proto.c
  head/security/libfprint/files/patch-libfprint-drivers-vfs301_proto.h
Comment 16 John Marino freebsd_committer 2014-08-15 22:05:36 UTC
one down, one to go.