Commit graph

232 commits

Author SHA1 Message Date
Kevin Chyn
f7890cc53d Return new authenticatorId when invalidation finishes
The new authenticatorId will always be needed by the client after
invalidation finishes. This change allows the client to receive it
without requesting getAuthenticatorId.

Test: m android.hardware.biometrics.face-update-api
Test: m android.hardware.biometrics.fingerprint-update-api
Test: m VtsHalBiometricsFaceTargetTest
Test: m VtsHalBiometricsFingerprintTargetTest

Bug: 159667191
Change-Id: I63166315789945966ff8081e07dd714cc14bc2f0
2021-01-11 17:16:08 -08:00
Kevin Chyn
4e7c016758 Change default face sensorId to 4
Fixes: 174816040
Test: atest CtsBiometricsTestCases
Change-Id: Ib3139dd10752f488ac9da220e8ab5d9104279d0f
2020-12-11 15:45:54 -08:00
Kevin Chyn
f19e9530bb Merge "Default face lockout should be duration==0" 2020-12-04 20:02:57 +00:00
Kevin Chyn
8ef62dea55 Merge "Add example IBiometricsFingerprint@2.2 HAL" 2020-12-04 19:15:57 +00:00
Kevin Chyn
f5405b2123 Default face lockout should be duration==0
The default HAL never actually gets rejects, so should not
have a non-zero lockout

Bug: 172957689
Test: atest CtsBiometricsTestCases
Change-Id: I74af8bd0a8a25f509b5572543dfef7d621f24c4e
2020-12-03 19:55:06 -08:00
Kevin Chyn
22a57205e9 Add example IBiometricsFingerprint@2.2 HAL
The exisitng 2.1 default implementation assumes that the device has
a pre-HIDL HAL. Keep this implementation intact for vendors with
legacy implementations.

This change adds a new example 2.2 HAL that does not assume the
existance of a pre-HIDL HAL, which can be used by cuttlefish
and CTS.

Bug: 172957689
Test: make -j android.hardware.biometrics.fingerprint@2.2-service.example
Test: atest CtsBiometricsTestCases
Test: m vts -j && vts-tradefed run commandAndExit vts -m VtsHalBiometricsFingerprintV2_1Target
Test: m vts -j && vts-tradefed run commandAndExit vts -m VtsHalBiometricsFingerprintV2_2Target
Change-Id: I4d87028d70fdb5c03759080e53e69751cf5e4307
2020-12-03 19:53:16 -08:00
Ilya Matyukhin
39e88771f2 Add new AcquiredInfo constants
Bug: 173711478
Test: m android.hardware.biometrics.face-update-api
Change-Id: Iac8a6f423744782883f141e0012e037630fb43a7
2020-12-01 22:30:13 +00:00
Kevin Chyn
09fc704624 Update fingerprint AIDL for CTS
Bug: 173453845
Test: atest CtsBiometricsTestCases
Change-Id: I9132d366e862b38ccb7fe72082f7a4cb9c7e160f
2020-11-19 18:48:01 -08:00
Kevin Chyn
cfb5499a45 Update default face implementation
Note that we're configuring this default HAL as "STRONG" so that the
framework can eventually test multi-sensor authenticatorId invalidation

Bug: 173453845
Test: atest CtsBiometricsTestCases
Change-Id: Idd7b74f0a22c5078dc5c2b0b99f62fdc4b51e25d
2020-11-17 17:15:18 -08:00
Kevin Chyn
0d13e044f1 Remove sensorId, userId from onChallenge*
These methods were moved into ISession, but forgot to remove the
sensorId, userId parameters

Bug: 173453845
Test: m android.hardware.biometrics.face-update-api
Test: m android.hardware.biometrics.face-service.example
Test: m VtsHalBiometricsFaceTargetTest
Change-Id: I78efd095e0b86f8a8568c8d74d946fd8436f6e65
2020-11-17 15:18:30 -08:00
Kevin Chyn
4d0df26150 Remove HAT from invalidateAuthenticatorId and correct documentation
1) Removes HAT param from fingerprint AIDL
2) Update documentation for fingerprint and face AIDL

Fixes: 173432893
Test: m android.hardware.biometrics.face-update-api
Test: m android.hardware.biometrics.fingerprint-service.example

Change-Id: I9c5e219c6f7a59609b6ff9d692f5a931f4bcea24
2020-11-16 12:42:40 -08:00
Kevin Chyn
bad76851cf Add additional face SensorProps
Fixes: 168541000

Test: m android.hardware.biometrics.face-update-api
Test: m android.hardware.biometrics.face-service.example
Change-Id: I664fe1f641e09217b27aef232e39ba7d6fa1e171
2020-11-11 13:28:38 -08:00
Kevin Chyn
199bb4a612 Merge "Add FIRST_FRAME_RECEIVED to AcquiredInfo" 2020-10-31 00:59:32 +00:00
Kevin Chyn
898a2e3dd7 Add FIRST_FRAME_RECEIVED to AcquiredInfo
Bug: 164922876
Test: m android.hardware.biometrics.face-update-api
Change-Id: Ia98ff7099d125e6a015f67a0aefb43e006b7f727
2020-10-30 11:39:22 -07:00
Ilya Matyukhin
fbd95222f5 Merge "Enable the Java backend for IFace" 2020-10-28 19:31:37 +00:00
Kevin Chyn
4239f892ee Merge "Add default implementation for several methods" 2020-10-26 17:41:59 +00:00
Ilya Matyukhin
8513ef2cc4 Enable the Java backend for IFace
Bug: 171335732
Test: m android.hardware.biometrics.face-update-api
Change-Id: I4c295513217641c3e494a1b2d83f69aeab4c804e
2020-10-21 17:17:27 -07:00
Kevin Chyn
de2610f075 Add default implementation for several methods
Test: atest FingerprintServiceTest
Bug: 170518383

Change-Id: If724d26e85967a4b3ec07c22c706efca5cfc3f86
2020-10-20 18:27:45 -07:00
Ilya Matyukhin
aff41d866c Merge "Create OWNERS files for biometric AIDLs" 2020-10-19 22:53:17 +00:00
Ilya Matyukhin
103c80345a Merge "Remove sensorId and userId from all Session methods" 2020-10-19 22:52:52 +00:00
Ilya Matyukhin
ed282ac953 Merge "Move [generate|revoke]Challenge under ISession.aidl" 2020-10-17 00:10:47 +00:00
Ilya Matyukhin
3d54f4576c Move [generate|revoke]Challenge under ISession.aidl
Bug: 171002801
Test: m android.hardware.biometrics.fingerprint-update-api
Test: atest VtsHalBiometricsFingerprintTargetTest
Change-Id: I2aa266b7b81003b7fd0ab0328833e5500de99908
2020-10-16 04:53:27 +00:00
Ilya Matyukhin
e503481f87 Remove sensorId and userId from all Session methods
Bug: 168730443
Test: m android.hardware.biometrics.face-update-api
Test: atest VtsHalBiometricsFaceTargetTest
Change-Id: Icc4545f46e5de625127553373128663b9b5c9dbe
2020-10-15 21:49:36 -07:00
Ilya Matyukhin
53af9512bd Create OWNERS files for biometric AIDLs
Bug: none
Test: none
Change-Id: Idbe85483a66365095e0afab9bb64d4ea6068ddf7
2020-10-15 11:46:14 -07:00
Ilya Matyukhin
0916698222 Default implementation skeleton for IFace
Bug: 168730443
Test: atest VtsHalBiometricsFaceTargetTest
Test: atest vts_treble_vintf_vendor_test
Test: atest hal_implementation_test
Change-Id: I97b2b00da928e7f9e175d9853424111d95f285fb
2020-10-12 20:07:13 -07:00
Ilya Matyukhin
3b542cd396 Add VTS tests skeleton for IFace
Bug: 168730443
Test: atest VtsHalBiometricsFaceTargetTest
Change-Id: I90ec41b0b7cc461cce50f55f99e7ee2a836fb2e0
2020-10-12 20:05:33 -07:00
Ilya Matyukhin
457e9d8530 Define IFace
Bug: 168730443
Test: m android.hardware.biometrics.face-update-api
Change-Id: I6bd1d1240ef91680d8b96cb84849431c25265358
2020-10-12 20:05:29 -07:00
Kevin Chyn
749799387e Tweaks to fingerprint AIDL
1) Explicit numbering for Error enum, which contains intentionally
   skipped entries for backwards compatibility
2) Documentation for vendorCode. The vendorCodes must have a well
   defined behavior with the array API for things like GSI to work,
   e.g. generic system image with non-generic HAL implementation -
   with this explicit requirement, both components, as long as the
   contract is followed, would allow proper string feedback to be
   loaded/shown.

Bug: 168843220
Test: Builds
Change-Id: Ie78e42b926351a03162a4a6e40f3325641c34609
2020-09-23 15:48:42 -07:00
Kevin Chyn
3388eebde5 Reformat biometric interface documentation to 100 cols
Bug: 168843220
Test: Builds
Change-Id: Ibf2baa14f8c8bd47250dd964eab68307e3885b4c
2020-09-23 14:29:38 -07:00
Kevin Chyn
ef79d661ba Move lockout callbacks to ISessionCallback
Also fixes backward compatibility for AcquiredInfo and Error
constants.

For lockout-related changes:
1) If a session doesn't exist, it means the framework (or higher)
   doesn't care about its lockout state.
2) This allows the ISession#authenticate lifecycle to be clearer,
   e.g. no need for ILockoutCallback#onLockoutTimed followed by
   ISessionCallback#onError(LOCKOUT)

Bug: 168842956
Bug: 168843220

Test: make -j android.hardware.biometrics.fingerprint-update-api
Test: make -j
Test: make -j VtsHalBiometricsFingerprintTargetTest
Change-Id: I0b7e7ab3b89d0d1d7647535af07766c493a2067b
2020-09-23 11:40:13 -07:00
Kevin Chyn
8b3cd5db21 Finish remainder of documentation.
Note that this doesn't mean documentation is done, it just means that
previously undocumented areas now at least have some documentation.

Bug: 168843220
Test: Builds

Change-Id: I92db9b228d46b3925d3f7ae56698f7c52a0ae1bf
2020-09-23 11:27:01 -07:00
Kevin Chyn
1288c105a7 Minor API changes and additional documentation for IFingerprint
1) Removes vendorCode from onEnrollmentProgress. This is already
   being sent in ISessionCallback#onAcquired
2) Adds missing SessionState::INVALIDATING_AUTHENTICATOR_ID state

Test: make -j56 android.hardware.biometrics.fingerprint-update-api
Test: make -j56 VtsHalBiometricsFingerprintTargetTest
Test: make -j56

Change-Id: I246153339b336c029c9f156868127456aecf1a04
2020-09-23 11:07:59 -07:00
Kevin Chyn
64c13a083a Update fingerprint #authenticate interfaces & documentation
1) Split into onAuthenticationSucceeded and onAuthenticaitonFailed.
   No longer need to use "weird behavior" below:
   A) authenticated(id=0) == reject
   B) onEnrolled(id=0) --> previously forbidden
   C) remove(id=0) --> previously magic number to remove all
      enrollments. The new interface has remove(int[] ids).
2) Renames keystoreOperationId to operationId, since keystore
   is only one example of a valid use case. operationId and HATs
   can be used as attestation for any opaque operation.

Bug: 168842956
Bug: 168843220

Test: make -j56 android.hardware.biometrics.fingerprint-update-api
Test: make -j56 VtsHalBiometricsFingerprintTargetTest
Change-Id: I7ca0365be9cf82539d6cabc6d9fcec916badc323
2020-09-23 00:18:55 -07:00
Kevin Chyn
571caa6a45 Start adding documentation for IFingerprint
Minor changes to interface:
1) IResetLockoutCallback renamed to ILockoutCallback
2) Removes unnecessary parameter from onChallengeGenerated
3) Adds "challenge" param to revokeChallenge to support multiple
   in-flight challenges

Bug: 168842956
Bug: 168843220

Test: make -j56 android.hardware.biometrics.fingerprint-update-api
Test: make -j
Test: make -j56 VtsHalBiometricsFingerprintTargetTest

Change-Id: If1f63a6d0c135d7b59690a31728b4d3fc8c2d2c4
2020-09-21 17:06:32 -07:00
Kevin Chyn
e33abd6456 Move ICancellationSignal to common, add supportsNavigationGestures
Bug: 168842956
Test: Builds
Test: make -j56 android.hardware.biometrics.common-update-api
Test: make -j56 android.hardware.biometrics.fingerprint-update-api
Test: make -j56 VtsHalBiometricsFingerprintTargetTest

Change-Id: Ie35ccc2ea8b7ef710914e9a18fc28f49c2d6f0be
2020-09-18 12:07:34 -07:00
Kevin Chyn
c306b76f7f Add HardwareInfo to CommonProps
Bug: 168541000
Test: make -j android.hardware.biometrics.common-update-api
Test: make -j
Change-Id: I2a96a46dc768b4cdb500ca8ea6bfd23c9f724866
2020-09-17 14:27:48 -07:00
Kevin Chyn
94a82210c9 Add sensorLocation, sensorRadius, displayId to SensorProps
Bug: 168541000
Test: make -j56 android.hardware.biometrics.fingerprint-update-api

Change-Id: Ia8323a114c74ec9c6680333c868881ac51e6363f
2020-09-17 13:29:45 -07:00
Kevin Chyn
6e862c31a1 Add authenticatorId changes to Fingerprint aidl
Also adds a top-level README for the biometric package

Bug: 159667191
Bug: 168541000

Test: make -j56 android.hardware.biometrics.fingerprint-update-api
Test: make -j56 VtsHalBiometricsFingerprintTargetTest

Change-Id: I3dba8e7ee16700865662c1a00b75576d2513f930
2020-09-17 13:16:58 -07:00
Kevin Chyn
7d3fdf5ef6 Add android.hardware.biometrics.common
Bug: 168541000

Test: make -j56 android.hardware.biometrics.common-update-api
Test: make -j56 android.hardware.biometrics.fingerprint-update-api
Test: make -j56 android.hardware.biometrics.fingerprint-service.example

Change-Id: Icaa1c2a0363a7fa446747ef89b5e50ca44dcd42e
2020-09-16 13:59:33 -07:00
Ilya Matyukhin
a9a3c850bc Default implementation for IFingerprint
Bug: 152416783
Test: atest VtsHalBiometricsFingerprintTargetTest
Test: atest vts_treble_vintf_vendor_test
Test: atest hal_implementation_test
Change-Id: I67efda2d5418147a7cac9cc54920005a199fcbe3
2020-09-10 19:38:49 -07:00
Ilya Matyukhin
14412df89f Add VTS tests for IFingerprint
Bug: 152416783
Test: atest VtsHalBiometricsFingerprintTargetTest
Change-Id: I6aec70e8f9f4342cab2f7ce367698841e22f57f1
2020-09-10 19:38:49 -07:00
Ilya Matyukhin
ed361970c6 Define IFingerprint
Bug: 152416783
Test: m android.hardware.biometrics.fingerprint-update-api
Change-Id: Iba1fae1739366955b6aaed55b59eed0a3fed5a57
2020-09-10 19:38:49 -07:00
Dan Shi
ff985a85a8 Suppress gtest error for tests without any instance
Bug: 162052785
Test: m -j vts
Change-Id: I58bc808a82b2128bb8774f762f9b9fcecd2614fb
2020-07-29 09:46:36 -07:00
Dan Shi
9eaab747fe Suppress gtest error for tests without any instance am: ba4d532fee am: 73122cd284 am: e5c9b5e722 am: 1a52c0eb25 am: 1a3e0f86eb
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1374050

Change-Id: I6ddea2dcb636e3ba67ad11d53b9fe12c51314c7a
2020-07-29 06:36:31 +00:00
Dan Shi
e5c9b5e722 Suppress gtest error for tests without any instance am: ba4d532fee am: 73122cd284
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1374050

Change-Id: Ie5e956d4613f5e947c36ba4f1048f0c3aa8944ba
2020-07-29 05:45:58 +00:00
Dan Shi
ba4d532fee Suppress gtest error for tests without any instance
Bug: 162052785
Test: m -j vts
Change-Id: I8c1a48e6fbd7c8161137902b5332911fa0d7b8b3
2020-07-28 15:12:32 -07:00
Jooyung Han
d610435ac4 update hidl .bp
HIDL libs are not necessarily part of VNDK now. Because some are
used by VNDK libs, they are still VNDK. But rest are now just
vendor-available.

.hidl_for_test files are also removed because they are used to exclude
test-purpose hidl libs from VNDK libs.

Instead, .hidl_for_system_ext files are added to tests/lazy to
distinguish them from others which are installed /system.

Bug: 143933769
Test: update-makefiles.sh && m com.android.vndk.current
Merged-In: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
Change-Id: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
(cherry picked from commit b0907a6bb8)
2020-07-07 16:22:36 +09:00
Jooyung Han
d18cba85fe update hidl .bp
HIDL libs are not necessarily part of VNDK now. Because some are
used by VNDK libs, they are still VNDK. But rest are now just
vendor-available.

.hidl_for_test files are also removed because they are used to exclude
test-purpose hidl libs from VNDK libs.

Instead, .hidl_for_system_ext files are added to tests/lazy to
distinguish them from others which are installed /system.

Bug: 143933769
Test: update-makefiles.sh && m com.android.vndk.current
Merged-In: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
Change-Id: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
(cherry picked from commit b0907a6bb8)
2020-07-02 12:26:37 +09:00
Jooyung Han
b0907a6bb8 update hidl .bp
HIDL libs are not necessarily part of VNDK now. Because some are
used by VNDK libs, they are still VNDK. But rest are now just
vendor-available.

.hidl_for_test files are also removed because they are used to exclude
test-purpose hidl libs from VNDK libs.

Instead, .hidl_for_system_ext files are added to tests/lazy to
distinguish them from others which are installed /system.

Bug: 143933769
Test: update-makefiles.sh && m com.android.vndk.current
Change-Id: Ia81312dda340b6b5cbdd7a3c21e1d323bda39a4a
2020-07-02 09:18:17 +09:00
Ilya Matyukhin
134ace098a Add isUdfps method to biometrics.fingerprint@2.3
Bug: 158135499
Test: atest VtsHalBiometricsFingerprintV2_3TargetTest
Change-Id: I10a75f8362f2596709399a45555bf9f09451f962
2020-06-29 15:25:42 -07:00