Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 971f0f3c authored by Joe Bolinger's avatar Joe Bolinger
Browse files

Add userId parameter to all uses of challenge in settings.

Bug: 184915229

Test: manually on device (as normal, extra user, & work profile)
Change-Id: Id509b5866d53525b38a5bb95bbbcc723d6651745
parent e19d238d
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -126,7 +126,7 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase
    public abstract void onClick(LinkSpan span);

    protected interface GenerateChallengeCallback {
        void onChallengeGenerated(int sensorId, long challenge);
        void onChallengeGenerated(int sensorId, int userId, long challenge);
    }

    @Override
@@ -261,7 +261,7 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase
                updatePasswordQuality();
                overridePendingTransition(R.anim.sud_slide_next_in, R.anim.sud_slide_next_out);
                getNextButton().setEnabled(false);
                getChallenge(((sensorId, challenge) -> {
                getChallenge(((sensorId, userId, challenge) -> {
                    mSensorId = sensorId;
                    mChallenge = challenge;
                    mToken = BiometricUtils.requestGatekeeperHat(this, data, mUserId, challenge);
@@ -277,7 +277,7 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase
            if (resultCode == RESULT_OK && data != null) {
                overridePendingTransition(R.anim.sud_slide_next_in, R.anim.sud_slide_next_out);
                getNextButton().setEnabled(false);
                getChallenge(((sensorId, challenge) -> {
                getChallenge(((sensorId, userId, challenge) -> {
                    mSensorId = sensorId;
                    mChallenge = challenge;
                    mToken = BiometricUtils.requestGatekeeperHat(this, data, mUserId, challenge);
+2 −2
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ public class MultiBiometricEnrollHelper {

    private void launchFaceEnroll() {
        final FaceManager faceManager = mActivity.getSystemService(FaceManager.class);
        faceManager.generateChallenge((sensorId, challenge) -> {
        faceManager.generateChallenge(mUserId, (sensorId, userId, challenge) -> {
            final byte[] hardwareAuthToken = BiometricUtils.requestGatekeeperHat(mActivity,
                    mGkPwHandle, mUserId, challenge);
            final Intent faceIntent = BiometricUtils.getFaceIntroIntent(mActivity,
@@ -96,7 +96,7 @@ public class MultiBiometricEnrollHelper {
    private void launchFingerprintEnroll() {
        final FingerprintManager fingerprintManager = mActivity
                .getSystemService(FingerprintManager.class);
        fingerprintManager.generateChallenge(mUserId, ((sensorId, challenge) -> {
        fingerprintManager.generateChallenge(mUserId, ((sensorId, userId, challenge) -> {
            final byte[] hardwareAuthToken = BiometricUtils.requestGatekeeperHat(mActivity,
                    mGkPwHandle, mUserId, challenge);
            final Intent intent = BiometricUtils.getFingerprintIntroIntent(mActivity,
+2 −2
Original line number Diff line number Diff line
@@ -115,7 +115,7 @@ public abstract class BiometricsSettingsBase extends DashboardFragment {
        // since FingerprintSettings and FaceSettings revoke the challenge when finishing.
        if (getFacePreferenceKey().equals(key)) {
            mDoNotFinishActivity = true;
            mFaceManager.generateChallenge((sensorId, challenge) -> {
            mFaceManager.generateChallenge(mUserId, (sensorId, userId, challenge) -> {
                final byte[] token = BiometricUtils.requestGatekeeperHat(getActivity(), mGkPwHandle,
                        mUserId, challenge);
                final Bundle extras = preference.getExtras();
@@ -125,7 +125,7 @@ public abstract class BiometricsSettingsBase extends DashboardFragment {
            });
        } else if (getFingerprintPreferenceKey().equals(key)) {
            mDoNotFinishActivity = true;
            mFingerprintManager.generateChallenge(mUserId, (sensorId, challenge) -> {
            mFingerprintManager.generateChallenge(mUserId, (sensorId, userId, challenge) -> {
                final byte[] token = BiometricUtils.requestGatekeeperHat(getActivity(), mGkPwHandle,
                        mUserId, challenge);
                final Bundle extras = preference.getExtras();
+3 −3
Original line number Diff line number Diff line
@@ -110,7 +110,7 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
            mFooterBarMixin.getPrimaryButton().setEnabled(false);
            // We either block on generateChallenge, or need to gray out the "next" button until
            // the challenge is ready. Let's just do this for now.
            mFaceManager.generateChallenge((sensorId, challenge) -> {
            mFaceManager.generateChallenge(mUserId, (sensorId, userId, challenge) -> {
                mToken = BiometricUtils.requestGatekeeperHat(this, getIntent(), mUserId, challenge);
                mSensorId = sensorId;
                mChallenge = challenge;
@@ -196,10 +196,10 @@ public class FaceEnrollIntroduction extends BiometricEnrollIntroduction {
    protected void getChallenge(GenerateChallengeCallback callback) {
        mFaceManager = Utils.getFaceManagerOrNull(this);
        if (mFaceManager == null) {
            callback.onChallengeGenerated(0, 0L);
            callback.onChallengeGenerated(0, 0, 0L);
            return;
        }
        mFaceManager.generateChallenge(callback::onChallengeGenerated);
        mFaceManager.generateChallenge(mUserId, callback::onChallengeGenerated);
    }

    @Override
+1 −1
Original line number Diff line number Diff line
@@ -249,7 +249,7 @@ public class FaceSettings extends DashboardFragment {
        if (requestCode == CONFIRM_REQUEST) {
            if (resultCode == RESULT_FINISHED || resultCode == RESULT_OK) {
                // The pin/pattern/password was set.
                mFaceManager.generateChallenge((sensorId, challenge) -> {
                mFaceManager.generateChallenge(mUserId, (sensorId, userId, challenge) -> {
                    mToken = BiometricUtils.requestGatekeeperHat(getPrefContext(), data, mUserId,
                            challenge);
                    mSensorId = sensorId;
Loading