Merge "Require non-null HAT for fingerprint enrollment" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
0295c273bd
@@ -215,9 +215,9 @@ public class FingerprintService extends SystemService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override // Binder call
|
@Override // Binder call
|
||||||
public void enroll(final IBinder token, final byte[] hardwareAuthToken, final int userId,
|
public void enroll(final IBinder token, @NonNull final byte[] hardwareAuthToken,
|
||||||
final IFingerprintServiceReceiver receiver, final String opPackageName,
|
final int userId, final IFingerprintServiceReceiver receiver,
|
||||||
@FingerprintManager.EnrollReason int enrollReason) {
|
final String opPackageName, @FingerprintManager.EnrollReason int enrollReason) {
|
||||||
Utils.checkPermission(getContext(), MANAGE_FINGERPRINT);
|
Utils.checkPermission(getContext(), MANAGE_FINGERPRINT);
|
||||||
|
|
||||||
final Pair<Integer, ServiceProvider> provider = getSingleProvider();
|
final Pair<Integer, ServiceProvider> provider = getSingleProvider();
|
||||||
|
|||||||
@@ -85,9 +85,12 @@ public interface ServiceProvider {
|
|||||||
void scheduleRevokeChallenge(int sensorId, int userId, @NonNull IBinder token,
|
void scheduleRevokeChallenge(int sensorId, int userId, @NonNull IBinder token,
|
||||||
@NonNull String opPackageName, long challenge);
|
@NonNull String opPackageName, long challenge);
|
||||||
|
|
||||||
void scheduleEnroll(int sensorId, @NonNull IBinder token, byte[] hardwareAuthToken, int userId,
|
/**
|
||||||
@NonNull IFingerprintServiceReceiver receiver, @NonNull String opPackageName,
|
* Schedules fingerprint enrollment.
|
||||||
@FingerprintManager.EnrollReason int enrollReason,
|
*/
|
||||||
|
void scheduleEnroll(int sensorId, @NonNull IBinder token, @NonNull byte[] hardwareAuthToken,
|
||||||
|
int userId, @NonNull IFingerprintServiceReceiver receiver,
|
||||||
|
@NonNull String opPackageName, @FingerprintManager.EnrollReason int enrollReason,
|
||||||
@NonNull FingerprintStateCallback fingerprintStateCallback);
|
@NonNull FingerprintStateCallback fingerprintStateCallback);
|
||||||
|
|
||||||
void cancelEnrollment(int sensorId, @NonNull IBinder token);
|
void cancelEnrollment(int sensorId, @NonNull IBinder token);
|
||||||
|
|||||||
@@ -329,9 +329,10 @@ public class FingerprintProvider implements IBinder.DeathRecipient, ServiceProvi
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void scheduleEnroll(int sensorId, @NonNull IBinder token, byte[] hardwareAuthToken,
|
public void scheduleEnroll(int sensorId, @NonNull IBinder token,
|
||||||
int userId, @NonNull IFingerprintServiceReceiver receiver,
|
@NonNull byte[] hardwareAuthToken, int userId,
|
||||||
@NonNull String opPackageName, @FingerprintManager.EnrollReason int enrollReason,
|
@NonNull IFingerprintServiceReceiver receiver, @NonNull String opPackageName,
|
||||||
|
@FingerprintManager.EnrollReason int enrollReason,
|
||||||
@NonNull FingerprintStateCallback fingerprintStateCallback) {
|
@NonNull FingerprintStateCallback fingerprintStateCallback) {
|
||||||
mHandler.post(() -> {
|
mHandler.post(() -> {
|
||||||
final int maxTemplatesPerUser = mSensors.get(sensorId).getSensorProperties()
|
final int maxTemplatesPerUser = mSensors.get(sensorId).getSensorProperties()
|
||||||
|
|||||||
@@ -2174,6 +2174,7 @@ public class LockSettingsService extends ILockSettings.Stub {
|
|||||||
@Override
|
@Override
|
||||||
public VerifyCredentialResponse verifyGatekeeperPasswordHandle(long gatekeeperPasswordHandle,
|
public VerifyCredentialResponse verifyGatekeeperPasswordHandle(long gatekeeperPasswordHandle,
|
||||||
long challenge, int userId) {
|
long challenge, int userId) {
|
||||||
|
|
||||||
checkPasswordReadPermission();
|
checkPasswordReadPermission();
|
||||||
|
|
||||||
final VerifyCredentialResponse response;
|
final VerifyCredentialResponse response;
|
||||||
@@ -2185,6 +2186,7 @@ public class LockSettingsService extends ILockSettings.Stub {
|
|||||||
|
|
||||||
synchronized (mSpManager) {
|
synchronized (mSpManager) {
|
||||||
if (gatekeeperPassword == null) {
|
if (gatekeeperPassword == null) {
|
||||||
|
Slog.d(TAG, "No gatekeeper password for handle");
|
||||||
response = VerifyCredentialResponse.ERROR;
|
response = VerifyCredentialResponse.ERROR;
|
||||||
} else {
|
} else {
|
||||||
response = mSpManager.verifyChallengeInternal(getGateKeeperService(),
|
response = mSpManager.verifyChallengeInternal(getGateKeeperService(),
|
||||||
|
|||||||
Reference in New Issue
Block a user