fixes bug 35358801
Test: ran enumeration in template with
1) more fingerprints in fingerprintd
2) more fingerprints in framework
3) no fingerprints in fingerprintd, but fingerprints in framework
4) no fingerprints in framework, but fingerprints in fingerprintd
Change-Id: Id150f0225d597939cf1af6bac218fe0fdeeca93d
This is already in the framework, but wasn't visible in HAL 2.1. Required to
properly enforce HIDL 2.1 compliance.
Bug: 33199080
Test: Fingerprint enroll, remove, unlock, fingerprint arbitration.
Change-Id: I3400005df57fe6ac0f42f70fa17786876202be1f
Some vendors are confused by the use of errors vs acquired messages
This adds documentation on how they should be used.
Fixes bug 22728578
Change-Id: I5e6a8f7b159ec331a59202fa64b7320e43661429
This adds vendor-specific messaging capabilities to the
HAL driver to avoid the possibility of vendors clobbering
general-purpose methods. The framework translates these
additional messages as an offset into a custom message array.
Additionally, authenticate() now takes a group id to restrict
authentication to a subset of possible fingerprints.
Bug 16487912
Change-Id: I8a92a6c86b4729af03a5576b4a150b1c73fbc9cc
Inheritance of HAL object is performed by composing a child structure of a
single parent structure located at offset 0 followed by new data members
and function pointers in the child structure.
For example,
struct child {
struct parent common;
int a_data_member;
void (*a_method)(struct child *c, int v);
};
HAL code assumes this layout when accessing child structures given a pointer
to a parent structure such that users write code like the following...
void child_method(struct *parent, int v) {
struct child * c = (struct child*)parent;
// do stuff with c
}
Code above will break if a member is added before "common" in "struct child".
This change adds comments that describe the restriction on the location of
parent HAL objects within a derived HAL object. HAL objects that already
have comments that describe the required location of parent objects are not
modified.
Change-Id: Ibe4300275286ef275b2097534c84f1029d761d87