summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Kevin Chyn <kchyn@google.com> 2020-06-18 18:28:57 -0700
committer Kevin Chyn <kchyn@google.com> 2020-06-24 23:04:11 -0700
commit870b4863d58b9f32df079f73cb9a85b47e976aca (patch)
tree838fda3e6299ac3a1086b960042992ba6a36cfd4
parentc0191004ed68b76835da7caee7f189c5753c08e9 (diff)
14/n: Remove the use of groupId
GroupId was never used. FingerprintService#enroll sets groupId to always be the same as userId. This change removes it from (almost) everywhere. We should update BiometricUtils and subclasses so that new HIDLs do not take space for groupId. Since the framework persists the info and we do not want to deal with database migration, let's leave it there until the devices which shipped with groupId are EOL. Bug: 157790417 Test: Enroll fingerprints with a build before this change. Update to a build with this change - still able to authenticate, rename, remove previously enrolled fingerprints Change-Id: I21391f5ffb71b27d7f9d4cfd4e6253b6001276dc
-rw-r--r--core/java/android/hardware/fingerprint/FingerprintManager.java8
-rw-r--r--core/java/android/hardware/fingerprint/IFingerprintService.aidl4
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java8
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java11
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/ClientMonitor.java13
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/EnrollClient.java6
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/EnumerateClient.java6
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/InternalCleanupClient.java19
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/InternalEnumerateClient.java4
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/RemovalClient.java6
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/face/FaceAuthenticationClient.java6
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/face/FaceEnrollClient.java4
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/face/FaceInternalCleanupClient.java21
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/face/FaceInternalEnumerateClient.java5
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/face/FaceRemovalClient.java6
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/face/FaceService.java11
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintAuthenticationClient.java14
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintEnrollClient.java11
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalCleanupClient.java19
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalEnumerateClient.java4
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintRemovalClient.java9
-rw-r--r--services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java34
22 files changed, 105 insertions, 124 deletions
diff --git a/core/java/android/hardware/fingerprint/FingerprintManager.java b/core/java/android/hardware/fingerprint/FingerprintManager.java
index 5ff854233b08..713c169352d0 100644
--- a/core/java/android/hardware/fingerprint/FingerprintManager.java
+++ b/core/java/android/hardware/fingerprint/FingerprintManager.java
@@ -558,7 +558,7 @@ public class FingerprintManager implements BiometricAuthenticator, BiometricFing
if (mService != null) try {
mRemovalCallback = callback;
mRemovalFingerprint = fp;
- mService.remove(mToken, fp.getBiometricId(), fp.getGroupId(), userId, mServiceReceiver,
+ mService.remove(mToken, fp.getBiometricId(), userId, mServiceReceiver,
mContext.getOpPackageName());
} catch (RemoteException e) {
Slog.w(TAG, "Remote exception in remove: ", e);
@@ -779,12 +779,6 @@ public class FingerprintManager implements BiometricAuthenticator, BiometricFing
Slog.w(TAG, "Finger id didn't match: " + fingerId + " != " + reqFingerId);
return;
}
- int groupId = fingerprint.getGroupId();
- int reqGroupId = mRemovalFingerprint.getGroupId();
- if (groupId != reqGroupId) {
- Slog.w(TAG, "Group id didn't match: " + groupId + " != " + reqGroupId);
- return;
- }
mRemovalCallback.onRemovalSucceeded(fingerprint, remaining);
}
diff --git a/core/java/android/hardware/fingerprint/IFingerprintService.aidl b/core/java/android/hardware/fingerprint/IFingerprintService.aidl
index 44e290831576..f0c5781f60cb 100644
--- a/core/java/android/hardware/fingerprint/IFingerprintService.aidl
+++ b/core/java/android/hardware/fingerprint/IFingerprintService.aidl
@@ -63,8 +63,8 @@ interface IFingerprintService {
void cancelEnrollment(IBinder token);
// Any errors resulting from this call will be returned to the listener
- void remove(IBinder token, int fingerId, int groupId, int userId,
- IFingerprintServiceReceiver receiver, String opPackageName);
+ void remove(IBinder token, int fingerId, int userId, IFingerprintServiceReceiver receiver,
+ String opPackageName);
// Rename the fingerprint specified by fingerId and userId to the given name
void rename(int fingerId, int userId, String name);
diff --git a/services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java b/services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java
index 93fa295da5c9..0edf75269c0d 100644
--- a/services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/AcquisitionClient.java
@@ -47,10 +47,10 @@ public abstract class AcquisitionClient extends ClientMonitor {
private final VibrationEffect mErrorVibrationEffect;
AcquisitionClient(@NonNull Context context, @NonNull IBinder token,
- @NonNull ClientMonitorCallbackConverter listener, int userId, int groupId,
- boolean restricted, @NonNull String owner, int cookie, int sensorId, int statsModality,
- int statsAction, int statsClient) {
- super(context, token, listener, userId, groupId, restricted, owner, cookie, sensorId,
+ @NonNull ClientMonitorCallbackConverter listener, int userId, boolean restricted,
+ @NonNull String owner, int cookie, int sensorId, int statsModality, int statsAction,
+ int statsClient) {
+ super(context, token, listener, userId, restricted, owner, cookie, sensorId,
statsModality, statsAction, statsClient);
mPowerManager = context.getSystemService(PowerManager.class);
mSuccessVibrationEffect = VibrationEffect.get(VibrationEffect.EFFECT_CLICK);
diff --git a/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java b/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java
index 2d29eb85be04..64cc87af183f 100644
--- a/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/AuthenticationClient.java
@@ -49,12 +49,11 @@ public abstract class AuthenticationClient extends AcquisitionClient {
private long mStartTimeMs;
public AuthenticationClient(@NonNull Context context, @NonNull IBinder token,
- @NonNull ClientMonitorCallbackConverter listener, int targetUserId, int groupId,
- long operationId, boolean restricted, @NonNull String owner, int cookie,
- boolean requireConfirmation, int sensorId, boolean isStrongBiometric, int statsModality,
- int statsClient, @NonNull TaskStackListener taskStackListener,
- @NonNull LockoutTracker lockoutTracker) {
- super(context, token, listener, targetUserId, groupId, restricted, owner, cookie, sensorId,
+ @NonNull ClientMonitorCallbackConverter listener, int targetUserId, long operationId,
+ boolean restricted, @NonNull String owner, int cookie, boolean requireConfirmation,
+ int sensorId, boolean isStrongBiometric, int statsModality, int statsClient,
+ @NonNull TaskStackListener taskStackListener, @NonNull LockoutTracker lockoutTracker) {
+ super(context, token, listener, targetUserId, restricted, owner, cookie, sensorId,
statsModality, BiometricsProtoEnums.ACTION_AUTHENTICATE, statsClient);
mIsStrongBiometric = isStrongBiometric;
mOperationId = operationId;
diff --git a/services/core/java/com/android/server/biometrics/sensors/ClientMonitor.java b/services/core/java/com/android/server/biometrics/sensors/ClientMonitor.java
index 436de8774b46..56b27755c470 100644
--- a/services/core/java/com/android/server/biometrics/sensors/ClientMonitor.java
+++ b/services/core/java/com/android/server/biometrics/sensors/ClientMonitor.java
@@ -39,7 +39,6 @@ public abstract class ClientMonitor extends LoggableMonitor implements IBinder.D
private final Context mContext;
private final int mTargetUserId;
- private final int mGroupId;
// True if client does not have MANAGE_FINGERPRINT permission
private final boolean mIsRestricted;
private final String mOwner;
@@ -59,7 +58,6 @@ public abstract class ClientMonitor extends LoggableMonitor implements IBinder.D
* @param token a unique token for the client
* @param listener recipient of related events (e.g. authentication)
* @param userId target user id for operation
- * @param groupId groupId for the fingerprint set
* @param restricted whether or not client has the MANAGE_* permission
* permission
* @param owner name of the client that owns this
@@ -70,15 +68,14 @@ public abstract class ClientMonitor extends LoggableMonitor implements IBinder.D
* @param statsClient One of {@link BiometricsProtoEnums} CLIENT_* constants
*/
public ClientMonitor(@NonNull Context context, IBinder token,
- @Nullable ClientMonitorCallbackConverter listener, int userId, int groupId,
- boolean restricted, @NonNull String owner, int cookie, int sensorId, int statsModality,
- int statsAction, int statsClient) {
+ @Nullable ClientMonitorCallbackConverter listener, int userId, boolean restricted,
+ @NonNull String owner, int cookie, int sensorId, int statsModality, int statsAction,
+ int statsClient) {
super(statsModality, statsAction, statsClient);
mContext = context;
mToken = token;
mListener = listener;
mTargetUserId = userId;
- mGroupId = groupId;
mIsRestricted = restricted;
mOwner = owner;
mCookie = cookie;
@@ -209,10 +206,6 @@ public abstract class ClientMonitor extends LoggableMonitor implements IBinder.D
return mTargetUserId;
}
- public final int getGroupId() {
- return mGroupId;
- }
-
public final IBinder getToken() {
return mToken;
}
diff --git a/services/core/java/com/android/server/biometrics/sensors/EnrollClient.java b/services/core/java/com/android/server/biometrics/sensors/EnrollClient.java
index 2000795db1b0..cbed06e04c17 100644
--- a/services/core/java/com/android/server/biometrics/sensors/EnrollClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/EnrollClient.java
@@ -42,12 +42,12 @@ public abstract class EnrollClient extends AcquisitionClient {
private long mEnrollmentStartTimeMs;
public EnrollClient(@NonNull Context context, @NonNull IBinder token,
- @NonNull ClientMonitorCallbackConverter listener, int userId, int groupId,
+ @NonNull ClientMonitorCallbackConverter listener, int userId,
@NonNull byte[] hardwareAuthToken, boolean restricted, String owner,
@NonNull BiometricUtils utils, int timeoutSec, int statsModality, int sensorId,
boolean shouldVibrate) {
- super(context, token, listener, userId, groupId, restricted, owner, 0 /* cookie */,
- sensorId, statsModality, BiometricsProtoEnums.ACTION_ENROLL,
+ super(context, token, listener, userId, restricted, owner, 0 /* cookie */, sensorId,
+ statsModality, BiometricsProtoEnums.ACTION_ENROLL,
BiometricsProtoEnums.CLIENT_UNKNOWN);
mBiometricUtils = utils;
mHardwareAuthToken = Arrays.copyOf(hardwareAuthToken, hardwareAuthToken.length);
diff --git a/services/core/java/com/android/server/biometrics/sensors/EnumerateClient.java b/services/core/java/com/android/server/biometrics/sensors/EnumerateClient.java
index 0821fecee1dd..32179a646416 100644
--- a/services/core/java/com/android/server/biometrics/sensors/EnumerateClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/EnumerateClient.java
@@ -34,10 +34,10 @@ public abstract class EnumerateClient extends ClientMonitor implements Enumerate
private static final String TAG = "Biometrics/EnumerateClient";
public EnumerateClient(@NonNull Context context, @NonNull IBinder token,
- @Nullable ClientMonitorCallbackConverter listener, int groupId, int userId,
+ @Nullable ClientMonitorCallbackConverter listener, int userId,
boolean restricted, @NonNull String owner, int sensorId, int statsModality) {
- super(context, token, listener, userId, groupId, restricted, owner, 0 /* cookie */,
- sensorId, statsModality, BiometricsProtoEnums.ACTION_ENUMERATE,
+ super(context, token, listener, userId, restricted, owner, 0 /* cookie */, sensorId,
+ statsModality, BiometricsProtoEnums.ACTION_ENUMERATE,
BiometricsProtoEnums.CLIENT_UNKNOWN);
}
diff --git a/services/core/java/com/android/server/biometrics/sensors/InternalCleanupClient.java b/services/core/java/com/android/server/biometrics/sensors/InternalCleanupClient.java
index ac7f7ec42b0b..7d8c61d670a2 100644
--- a/services/core/java/com/android/server/biometrics/sensors/InternalCleanupClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/InternalCleanupClient.java
@@ -61,18 +61,18 @@ public abstract class InternalCleanupClient extends ClientMonitor implements Enu
private ClientMonitor mCurrentTask;
protected abstract InternalEnumerateClient getEnumerateClient(Context context, IBinder token,
- int groupId, int userId, boolean restricted, String owner,
+ int userId, boolean restricted, String owner,
List<? extends BiometricAuthenticator.Identifier> enrolledList, BiometricUtils utils,
int sensorId, int statsModality);
protected abstract RemovalClient getRemovalClient(Context context, IBinder token,
- int biometricId, int groupId, int userId, boolean restricted, String owner,
- BiometricUtils utils, int sensorId, int statsModality);
+ int biometricId, int userId, boolean restricted, String owner, BiometricUtils utils,
+ int sensorId, int statsModality);
- protected InternalCleanupClient(@NonNull Context context, int userId, int groupId,
- boolean restricted, @NonNull String owner, int sensorId, int statsModality,
+ protected InternalCleanupClient(@NonNull Context context, int userId, boolean restricted,
+ @NonNull String owner, int sensorId, int statsModality,
@NonNull List<? extends BiometricAuthenticator.Identifier> enrolledList,
@NonNull BiometricUtils utils) {
- super(context, null /* token */, null /* ClientMonitorCallbackConverter */, userId, groupId,
+ super(context, null /* token */, null /* ClientMonitorCallbackConverter */, userId,
restricted, owner, 0 /* cookie */, sensorId, statsModality,
BiometricsProtoEnums.ACTION_ENUMERATE, BiometricsProtoEnums.CLIENT_UNKNOWN);
mBiometricUtils = utils;
@@ -83,9 +83,8 @@ public abstract class InternalCleanupClient extends ClientMonitor implements Enu
UserTemplate template = mUnknownHALTemplates.get(0);
mUnknownHALTemplates.remove(template);
mCurrentTask = getRemovalClient(getContext(), getToken(),
- template.mIdentifier.getBiometricId(), 0 /* groupId */, template.mUserId,
- getIsRestricted(), getContext().getPackageName(), mBiometricUtils,
- getSensorId(), mStatsModality);
+ template.mIdentifier.getBiometricId(), template.mUserId, getIsRestricted(),
+ getContext().getPackageName(), mBiometricUtils, getSensorId(), mStatsModality);
FrameworkStatsLog.write(FrameworkStatsLog.BIOMETRIC_SYSTEM_HEALTH_ISSUE_DETECTED,
mStatsModality,
BiometricsProtoEnums.ISSUE_UNKNOWN_TEMPLATE_ENROLLED_HAL);
@@ -95,7 +94,7 @@ public abstract class InternalCleanupClient extends ClientMonitor implements Enu
@Override
public int start() {
// Start enumeration. Removal will start if necessary, when enumeration is completed.
- mCurrentTask = getEnumerateClient(getContext(), getToken(), getTargetUserId(), getGroupId(),
+ mCurrentTask = getEnumerateClient(getContext(), getToken(), getTargetUserId(),
getIsRestricted(), getOwnerString(), mEnrolledList, mBiometricUtils, getSensorId(),
mStatsModality);
return mCurrentTask.start();
diff --git a/services/core/java/com/android/server/biometrics/sensors/InternalEnumerateClient.java b/services/core/java/com/android/server/biometrics/sensors/InternalEnumerateClient.java
index b456b2fa0016..77ba2187dfaf 100644
--- a/services/core/java/com/android/server/biometrics/sensors/InternalEnumerateClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/InternalEnumerateClient.java
@@ -42,13 +42,13 @@ public abstract class InternalEnumerateClient extends EnumerateClient {
// List of templates to remove from the HAL
private List<BiometricAuthenticator.Identifier> mUnknownHALTemplates = new ArrayList<>();
- protected InternalEnumerateClient(@NonNull Context context, @NonNull IBinder token, int groupId,
+ protected InternalEnumerateClient(@NonNull Context context, @NonNull IBinder token,
int userId, boolean restricted, @NonNull String owner,
@NonNull List<? extends BiometricAuthenticator.Identifier> enrolledList,
@NonNull BiometricUtils utils, int sensorId, int statsModality) {
// Internal enumerate does not need to send results to anyone. Cleanup (enumerate + remove)
// is all done internally.
- super(context, token, null /* ClientMonitorCallbackConverter */, groupId, userId,
+ super(context, token, null /* ClientMonitorCallbackConverter */, userId,
restricted, owner, sensorId, statsModality);
mEnrolledList = enrolledList;
mUtils = utils;
diff --git a/services/core/java/com/android/server/biometrics/sensors/RemovalClient.java b/services/core/java/com/android/server/biometrics/sensors/RemovalClient.java
index d5fbbaecd004..ba0df13b9a6b 100644
--- a/services/core/java/com/android/server/biometrics/sensors/RemovalClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/RemovalClient.java
@@ -36,11 +36,11 @@ public abstract class RemovalClient extends ClientMonitor implements RemovalCons
private final BiometricUtils mBiometricUtils;
public RemovalClient(@NonNull Context context, @NonNull IBinder token,
- @NonNull ClientMonitorCallbackConverter listener, int biometricId, int groupId,
+ @NonNull ClientMonitorCallbackConverter listener, int biometricId,
int userId, boolean restricted, @NonNull String owner, @NonNull BiometricUtils utils,
int sensorId, int statsModality) {
- super(context, token, listener, userId, groupId, restricted, owner, 0 /* cookie */,
- sensorId, statsModality, BiometricsProtoEnums.ACTION_REMOVE,
+ super(context, token, listener, userId, restricted, owner, 0 /* cookie */, sensorId,
+ statsModality, BiometricsProtoEnums.ACTION_REMOVE,
BiometricsProtoEnums.CLIENT_UNKNOWN);
mBiometricId = biometricId;
mBiometricUtils = utils;
diff --git a/services/core/java/com/android/server/biometrics/sensors/face/FaceAuthenticationClient.java b/services/core/java/com/android/server/biometrics/sensors/face/FaceAuthenticationClient.java
index 68425d346894..2e09c8a30e43 100644
--- a/services/core/java/com/android/server/biometrics/sensors/face/FaceAuthenticationClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/face/FaceAuthenticationClient.java
@@ -65,12 +65,12 @@ class FaceAuthenticationClient extends AuthenticationClient {
FaceAuthenticationClient(@NonNull Context context, @NonNull IBiometricsFace daemon,
@NonNull IBinder token, @NonNull ClientMonitorCallbackConverter listener,
- int targetUserId, long opId, boolean restricted, String owner, int cookie,
+ int targetUserId, long operationId, boolean restricted, String owner, int cookie,
boolean requireConfirmation, int sensorId, boolean isStrongBiometric, int statsClient,
@NonNull TaskStackListener taskStackListener,
@NonNull LockoutTracker lockoutTracker, @NonNull UsageStats usageStats) {
- super(context, token, listener, targetUserId, 0 /* groupId */, opId,
- restricted, owner, cookie, requireConfirmation, sensorId, isStrongBiometric,
+ super(context, token, listener, targetUserId, operationId, restricted, owner, cookie,
+ requireConfirmation, sensorId, isStrongBiometric,
BiometricsProtoEnums.MODALITY_FACE, statsClient, taskStackListener,
lockoutTracker);
mDaemon = daemon;
diff --git a/services/core/java/com/android/server/biometrics/sensors/face/FaceEnrollClient.java b/services/core/java/com/android/server/biometrics/sensors/face/FaceEnrollClient.java
index 41ccdbe0ec3e..64d2c1c52c7c 100644
--- a/services/core/java/com/android/server/biometrics/sensors/face/FaceEnrollClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/face/FaceEnrollClient.java
@@ -49,10 +49,10 @@ public class FaceEnrollClient extends EnrollClient {
private final int[] mEnrollIgnoreListVendor;
FaceEnrollClient(Context context, IBiometricsFace daemon, IBinder token,
- ClientMonitorCallbackConverter listener, int userId, int groupId, byte[] cryptoToken,
+ ClientMonitorCallbackConverter listener, int userId, byte[] cryptoToken,
boolean restricted, String owner, BiometricUtils utils, int[] disabledFeatures,
int timeoutSec, int statsModality, NativeHandle surfaceHandle, int sensorId) {
- super(context, token, listener, userId, groupId, cryptoToken, restricted, owner, utils,
+ super(context, token, listener, userId, cryptoToken, restricted, owner, utils,
timeoutSec, statsModality, sensorId, false /* shouldVibrate */);
mDaemon = daemon;
mDisabledFeatures = Arrays.copyOf(disabledFeatures, disabledFeatures.length);
diff --git a/services/core/java/com/android/server/biometrics/sensors/face/FaceInternalCleanupClient.java b/services/core/java/com/android/server/biometrics/sensors/face/FaceInternalCleanupClient.java
index b49c5ee412c2..c0a0e691d8e8 100644
--- a/services/core/java/com/android/server/biometrics/sensors/face/FaceInternalCleanupClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/face/FaceInternalCleanupClient.java
@@ -38,31 +38,30 @@ class FaceInternalCleanupClient extends InternalCleanupClient {
private final IBiometricsFace mDaemon;
FaceInternalCleanupClient(@NonNull Context context, @NonNull IBiometricsFace daemon, int userId,
- int groupId, boolean restricted, String owner, int sensorId, int statsModality,
+ boolean restricted, String owner, int sensorId, int statsModality,
@NonNull List<? extends BiometricAuthenticator.Identifier> enrolledList,
@NonNull BiometricUtils utils) {
- super(context, userId, groupId, restricted, owner, sensorId, statsModality, enrolledList,
- utils);
+ super(context, userId, restricted, owner, sensorId, statsModality, enrolledList, utils);
mDaemon = daemon;
}
@Override
- protected InternalEnumerateClient getEnumerateClient(Context context, IBinder token,
- int groupId, int userId, boolean restricted,
- String owner, List<? extends BiometricAuthenticator.Identifier> enrolledList,
+ protected InternalEnumerateClient getEnumerateClient(Context context, IBinder token, int userId,
+ boolean restricted, String owner,
+ List<? extends BiometricAuthenticator.Identifier> enrolledList,
BiometricUtils utils, int sensorId, int statsModality) {
- return new FaceInternalEnumerateClient(context, mDaemon, token, groupId, userId, restricted,
- owner, enrolledList, utils, sensorId, statsModality);
+ return new FaceInternalEnumerateClient(context, mDaemon, token, userId, restricted, owner,
+ enrolledList, utils, sensorId, statsModality);
}
@Override
protected RemovalClient getRemovalClient(Context context, IBinder token, int biometricId,
- int groupId, int userId, boolean restricted, String owner, BiometricUtils utils,
- int sensorId, int statsModality) {
+ int userId, boolean restricted, String owner, BiometricUtils utils, int sensorId,
+ int statsModality) {
// Internal remove does not need to send results to anyone. Cleanup (enumerate + remove)
// is all done internally.
return new FaceRemovalClient(context, mDaemon, token,
- null /* ClientMonitorCallbackConverter */, biometricId, groupId, userId, restricted,
+ null /* ClientMonitorCallbackConverter */, biometricId, userId, restricted,
owner, utils, sensorId, statsModality);
}
}
diff --git a/services/core/java/com/android/server/biometrics/sensors/face/FaceInternalEnumerateClient.java b/services/core/java/com/android/server/biometrics/sensors/face/FaceInternalEnumerateClient.java
index 437221f5a189..608166157029 100644
--- a/services/core/java/com/android/server/biometrics/sensors/face/FaceInternalEnumerateClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/face/FaceInternalEnumerateClient.java
@@ -37,11 +37,10 @@ class FaceInternalEnumerateClient extends InternalEnumerateClient {
private final IBiometricsFace mDaemon;
FaceInternalEnumerateClient(@NonNull Context context, @NonNull IBiometricsFace daemon,
- @NonNull IBinder token, int groupId, int userId, boolean restricted,
- @NonNull String owner,
+ @NonNull IBinder token, int userId, boolean restricted, @NonNull String owner,
@NonNull List<? extends BiometricAuthenticator.Identifier> enrolledList,
@NonNull BiometricUtils utils, int sensorId, int statsModality) {
- super(context, token, groupId, userId, restricted, owner, enrolledList, utils, sensorId,
+ super(context, token, userId, restricted, owner, enrolledList, utils, sensorId,
statsModality);
mDaemon = daemon;
}
diff --git a/services/core/java/com/android/server/biometrics/sensors/face/FaceRemovalClient.java b/services/core/java/com/android/server/biometrics/sensors/face/FaceRemovalClient.java
index 4933b3bcc218..bbc30ce3e7df 100644
--- a/services/core/java/com/android/server/biometrics/sensors/face/FaceRemovalClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/face/FaceRemovalClient.java
@@ -35,10 +35,10 @@ class FaceRemovalClient extends RemovalClient {
FaceRemovalClient(@NonNull Context context, @NonNull IBiometricsFace daemon,
@NonNull IBinder token, @NonNull ClientMonitorCallbackConverter listener,
- int biometricId, int groupId, int userId, boolean restricted, @NonNull String owner,
+ int biometricId, int userId, boolean restricted, @NonNull String owner,
@NonNull BiometricUtils utils, int sensorId, int statsModality) {
- super(context, token, listener, biometricId, groupId, userId, restricted, owner, utils,
- sensorId, statsModality);
+ super(context, token, listener, biometricId, userId, restricted, owner, utils, sensorId,
+ statsModality);
mDaemon = daemon;
}
diff --git a/services/core/java/com/android/server/biometrics/sensors/face/FaceService.java b/services/core/java/com/android/server/biometrics/sensors/face/FaceService.java
index 6474cd2da378..63a2d98412d1 100644
--- a/services/core/java/com/android/server/biometrics/sensors/face/FaceService.java
+++ b/services/core/java/com/android/server/biometrics/sensors/face/FaceService.java
@@ -154,8 +154,8 @@ public class FaceService extends BiometricServiceBase {
final boolean restricted = isRestricted();
final EnrollClient client = new FaceEnrollClient(getContext(),
daemon, token, new ClientMonitorCallbackConverter(receiver),
- userId, 0 /* groupId */, cryptoToken, restricted, opPackageName,
- getBiometricUtils(), disabledFeatures, ENROLL_TIMEOUT_SEC, statsModality(),
+ userId, cryptoToken, restricted, opPackageName, getBiometricUtils(),
+ disabledFeatures, ENROLL_TIMEOUT_SEC, statsModality(),
convertSurfaceToNativeHandle(surface), getSensorId());
enrollInternal(client, userId);
@@ -270,9 +270,8 @@ public class FaceService extends BiometricServiceBase {
final boolean restricted = isRestricted();
final RemovalClient client = new FaceRemovalClient(getContext(), daemon, token,
- new ClientMonitorCallbackConverter(receiver), faceId, 0 /* groupId */, userId,
- restricted, token.toString(), getBiometricUtils(), getSensorId(),
- statsModality());
+ new ClientMonitorCallbackConverter(receiver), faceId, userId, restricted,
+ token.toString(), getBiometricUtils(), getSensorId(), statsModality());
removeInternal(client);
}
@@ -759,7 +758,7 @@ public class FaceService extends BiometricServiceBase {
final List<? extends BiometricAuthenticator.Identifier> enrolledList =
getEnrolledTemplates(userId);
final FaceInternalCleanupClient client = new FaceInternalCleanupClient(
- getContext(), daemon, userId, userId, restricted, getContext().getOpPackageName(),
+ getContext(), daemon, userId, restricted, getContext().getOpPackageName(),
getSensorId(), statsModality(), enrolledList, getBiometricUtils());
cleanupInternal(client);
}
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintAuthenticationClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintAuthenticationClient.java
index 3e27654b6875..abef18e18536 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintAuthenticationClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintAuthenticationClient.java
@@ -49,14 +49,13 @@ class FingerprintAuthenticationClient extends AuthenticationClient {
FingerprintAuthenticationClient(@NonNull Context context,
@NonNull IBiometricsFingerprint daemon, @NonNull IBinder token,
- @NonNull ClientMonitorCallbackConverter listener, int targetUserId, int groupId,
- long operationId, boolean restricted, @NonNull String owner, int cookie,
- boolean requireConfirmation, int sensorId, boolean isStrongBiometric,
- @Nullable Surface surface, int statsClient,
+ @NonNull ClientMonitorCallbackConverter listener, int targetUserId, long operationId,
+ boolean restricted, @NonNull String owner, int cookie, boolean requireConfirmation,
+ int sensorId, boolean isStrongBiometric, @Nullable Surface surface, int statsClient,
@NonNull TaskStackListener taskStackListener,
@NonNull LockoutFrameworkImpl lockoutTracker) {
- super(context, token, listener, targetUserId, groupId, operationId, restricted, owner,
- cookie, requireConfirmation, sensorId, isStrongBiometric,
+ super(context, token, listener, targetUserId, operationId, restricted, owner, cookie,
+ requireConfirmation, sensorId, isStrongBiometric,
BiometricsProtoEnums.MODALITY_FINGERPRINT, statsClient, taskStackListener,
lockoutTracker);
mDaemon = daemon;
@@ -102,7 +101,8 @@ class FingerprintAuthenticationClient extends AuthenticationClient {
@Override
protected int startHalOperation() throws RemoteException {
- return mDaemon.authenticate(mOperationId, getGroupId());
+ // GroupId was never used. In fact, groupId is always the same as userId.
+ return mDaemon.authenticate(mOperationId, getTargetUserId());
}
@Override
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintEnrollClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintEnrollClient.java
index 73830afd20a8..f7eebd9664c4 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintEnrollClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintEnrollClient.java
@@ -36,17 +36,18 @@ public class FingerprintEnrollClient extends EnrollClient {
FingerprintEnrollClient(@NonNull Context context, @NonNull IBiometricsFingerprint daemon,
@NonNull IBinder token, @NonNull ClientMonitorCallbackConverter listener, int userId,
- int groupId, @NonNull byte[] hardwareAuthToken, boolean restricted,
- @NonNull String owner, @NonNull BiometricUtils utils, int timeoutSec, int statsModality,
+ @NonNull byte[] hardwareAuthToken, boolean restricted, @NonNull String owner,
+ @NonNull BiometricUtils utils, int timeoutSec, int statsModality,
int sensorId, boolean shouldVibrate) {
- super(context, token, listener, userId, groupId, hardwareAuthToken, restricted, owner,
- utils, timeoutSec, statsModality, sensorId, shouldVibrate);
+ super(context, token, listener, userId, hardwareAuthToken, restricted, owner, utils,
+ timeoutSec, statsModality, sensorId, shouldVibrate);
mDaemon = daemon;
}
@Override
protected int startHalOperation() throws RemoteException {
- return mDaemon.enroll(mHardwareAuthToken, getGroupId(), mTimeoutSec);
+ // GroupId was never used. In fact, groupId is always the same as userId.
+ return mDaemon.enroll(mHardwareAuthToken, getTargetUserId(), mTimeoutSec);
}
@Override
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalCleanupClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalCleanupClient.java
index 01023a0f55f7..ec27127dae1a 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalCleanupClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalCleanupClient.java
@@ -38,32 +38,31 @@ class FingerprintInternalCleanupClient extends InternalCleanupClient {
private final IBiometricsFingerprint mDaemon;
FingerprintInternalCleanupClient(@NonNull Context context,
- @NonNull IBiometricsFingerprint daemon, int userId, int groupId, boolean restricted,
+ @NonNull IBiometricsFingerprint daemon, int userId, boolean restricted,
@NonNull String owner, int sensorId, int statsModality,
@NonNull List<? extends BiometricAuthenticator.Identifier> enrolledList,
@NonNull BiometricUtils utils) {
- super(context, userId, groupId, restricted, owner, sensorId, statsModality, enrolledList,
- utils);
+ super(context, userId, restricted, owner, sensorId, statsModality, enrolledList, utils);
mDaemon = daemon;
}
@Override
- protected InternalEnumerateClient getEnumerateClient(Context context, IBinder token,
- int groupId, int userId, boolean restricted, String owner,
+ protected InternalEnumerateClient getEnumerateClient(Context context, IBinder token, int userId,
+ boolean restricted, String owner,
List<? extends BiometricAuthenticator.Identifier> enrolledList, BiometricUtils utils,
int sensorId, int statsModality) {
- return new FingerprintInternalEnumerateClient(context, mDaemon, token, groupId,
- userId, restricted, owner, enrolledList, utils, sensorId, statsModality);
+ return new FingerprintInternalEnumerateClient(context, mDaemon, token, userId, restricted,
+ owner, enrolledList, utils, sensorId, statsModality);
}
@Override
protected RemovalClient getRemovalClient(Context context, IBinder token, int biometricId,
- int groupId, int userId, boolean restricted, String owner, BiometricUtils utils,
- int sensorId, int statsModality) {
+ int userId, boolean restricted, String owner, BiometricUtils utils, int sensorId,
+ int statsModality) {
// Internal remove does not need to send results to anyone. Cleanup (enumerate + remove)
// is all done internally.
return new FingerprintRemovalClient(context, mDaemon, token,
- null /* ClientMonitorCallbackConverter */, biometricId, groupId, userId, restricted,
+ null /* ClientMonitorCallbackConverter */, biometricId, userId, restricted,
owner, utils, sensorId, statsModality);
}
}
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalEnumerateClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalEnumerateClient.java
index 5fba03a2352a..054ede82844b 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalEnumerateClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintInternalEnumerateClient.java
@@ -37,11 +37,11 @@ class FingerprintInternalEnumerateClient extends InternalEnumerateClient {
private final IBiometricsFingerprint mDaemon;
FingerprintInternalEnumerateClient(@NonNull Context context,
- @NonNull IBiometricsFingerprint daemon, @NonNull IBinder token, int groupId, int userId,
+ @NonNull IBiometricsFingerprint daemon, @NonNull IBinder token, int userId,
boolean restricted, @NonNull String owner,
@NonNull List<? extends BiometricAuthenticator.Identifier> enrolledList,
@NonNull BiometricUtils utils, int sensorId, int statsModality) {
- super(context, token, groupId, userId, restricted, owner, enrolledList, utils, sensorId,
+ super(context, token, userId, restricted, owner, enrolledList, utils, sensorId,
statsModality);
mDaemon = daemon;
}
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintRemovalClient.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintRemovalClient.java
index 934e234a14d4..884c5f660f60 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintRemovalClient.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintRemovalClient.java
@@ -37,16 +37,17 @@ class FingerprintRemovalClient extends RemovalClient {
FingerprintRemovalClient(@NonNull Context context, @NonNull IBiometricsFingerprint daemon,
@NonNull IBinder token, @NonNull ClientMonitorCallbackConverter listener,
- int biometricId, int groupId, int userId, boolean restricted, @NonNull String owner,
+ int biometricId, int userId, boolean restricted, @NonNull String owner,
@NonNull BiometricUtils utils, int sensorId, int statsModality) {
- super(context, token, listener, biometricId, groupId, userId, restricted, owner, utils,
- sensorId, statsModality);
+ super(context, token, listener, biometricId, userId, restricted, owner, utils, sensorId,
+ statsModality);
mDaemon = daemon;
}
@Override
protected int startHalOperation() throws RemoteException {
- return mDaemon.remove(getGroupId(), mBiometricId);
+ // GroupId was never used. In fact, groupId is always the same as userId.
+ return mDaemon.remove(getTargetUserId(), mBiometricId);
}
@Override
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java
index 61f4a4606848..67eaaacd2af9 100644
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/FingerprintService.java
@@ -132,11 +132,10 @@ public class FingerprintService extends BiometricServiceBase {
}
final boolean restricted = isRestricted();
- final int groupId = userId; // default group for fingerprint enrollment
final EnrollClient client = new FingerprintEnrollClient(getContext(), daemon, token,
- new ClientMonitorCallbackConverter(receiver), userId, groupId, cryptoToken,
- restricted, opPackageName, getBiometricUtils(), ENROLL_TIMEOUT_SEC,
- statsModality(), getSensorId(), true /* shouldVibrate */);
+ new ClientMonitorCallbackConverter(receiver), userId, cryptoToken, restricted,
+ opPackageName, getBiometricUtils(), ENROLL_TIMEOUT_SEC, statsModality(),
+ getSensorId(), true /* shouldVibrate */);
enrollInternal(client, userId);
}
@@ -165,10 +164,10 @@ public class FingerprintService extends BiometricServiceBase {
final int statsClient = isKeyguard(opPackageName) ? BiometricsProtoEnums.CLIENT_KEYGUARD
: BiometricsProtoEnums.CLIENT_FINGERPRINT_MANAGER;
final AuthenticationClient client = new FingerprintAuthenticationClient(getContext(),
- daemon, token, new ClientMonitorCallbackConverter(receiver), userId, userId,
- opId, restricted, opPackageName, 0 /* cookie */,
- false /* requireConfirmation */, getSensorId(), isStrongBiometric(), surface,
- statsClient, mTaskStackListener, mLockoutTracker);
+ daemon, token, new ClientMonitorCallbackConverter(receiver), userId, opId,
+ restricted, opPackageName, 0 /* cookie */, false /* requireConfirmation */,
+ getSensorId(), isStrongBiometric(), surface, statsClient, mTaskStackListener,
+ mLockoutTracker);
authenticateInternal(client, opPackageName);
}
@@ -191,9 +190,9 @@ public class FingerprintService extends BiometricServiceBase {
final boolean restricted = true; // BiometricPrompt is always restricted
final AuthenticationClient client = new FingerprintAuthenticationClient(getContext(),
- daemon, token, new ClientMonitorCallbackConverter(sensorReceiver),
- userId, userId, opId, restricted, opPackageName, cookie,
- false /* requireConfirmation */, getSensorId(), isStrongBiometric(), surface,
+ daemon, token, new ClientMonitorCallbackConverter(sensorReceiver), userId, opId,
+ restricted, opPackageName, cookie, false /* requireConfirmation */,
+ getSensorId(), isStrongBiometric(), surface,
BiometricsProtoEnums.CLIENT_BIOMETRIC_PROMPT, mTaskStackListener,
mLockoutTracker);
authenticateInternal(client, opPackageName, callingUid, callingPid,
@@ -222,9 +221,9 @@ public class FingerprintService extends BiometricServiceBase {
}
@Override // Binder call
- public void remove(final IBinder token, final int fingerId, final int groupId,
- final int userId, final IFingerprintServiceReceiver receiver,
- final String opPackageName) throws RemoteException {
+ public void remove(final IBinder token, final int fingerId, final int userId,
+ final IFingerprintServiceReceiver receiver, final String opPackageName)
+ throws RemoteException {
checkPermission(MANAGE_FINGERPRINT);
updateActiveGroup(userId, opPackageName);
@@ -243,9 +242,8 @@ public class FingerprintService extends BiometricServiceBase {
final boolean restricted = isRestricted();
final RemovalClient client = new FingerprintRemovalClient(getContext(), daemon, token,
- new ClientMonitorCallbackConverter(receiver), fingerId, groupId, userId,
- restricted, token.toString(), getBiometricUtils(), getSensorId(),
- statsModality());
+ new ClientMonitorCallbackConverter(receiver), fingerId, userId, restricted,
+ token.toString(), getBiometricUtils(), getSensorId(), statsModality());
removeInternal(client);
}
@@ -627,7 +625,7 @@ public class FingerprintService extends BiometricServiceBase {
final List<? extends BiometricAuthenticator.Identifier> enrolledList =
getEnrolledTemplates(userId);
final FingerprintInternalCleanupClient client = new FingerprintInternalCleanupClient(
- getContext(), daemon, userId, userId, restricted, getContext().getOpPackageName(),
+ getContext(), daemon, userId, restricted, getContext().getOpPackageName(),
getSensorId(), statsModality(), enrolledList, getBiometricUtils());
cleanupInternal(client);
}