am aad8d90c
: am b4881f79
: am 451d8225
: am 49187c94
: am 53a56ad8
: am 447415f4
: am 78708503
: am 77aa51e5
: Make sure that external callers cannot pass in the confirm bypass extra
* commit 'aad8d90ce082d01e6420227572891a2fce65306a': Make sure that external callers cannot pass in the confirm bypass extra
This commit is contained in:
@@ -988,7 +988,6 @@
|
|||||||
|
|
||||||
<!-- Second and third-level settings -->
|
<!-- Second and third-level settings -->
|
||||||
|
|
||||||
|
|
||||||
<!-- Lock screen settings -->
|
<!-- Lock screen settings -->
|
||||||
<activity android:name="ConfirmLockPattern"/>
|
<activity android:name="ConfirmLockPattern"/>
|
||||||
|
|
||||||
@@ -1004,6 +1003,11 @@
|
|||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
|
<activity android:name="ChooseLockGeneric$InternalActivity" android:exported="false"
|
||||||
|
android:label="@string/lockpassword_choose_lock_generic_header"
|
||||||
|
android:excludeFromRecents="true"
|
||||||
|
/>
|
||||||
|
|
||||||
<activity android:name="ChooseLockPattern" android:exported="false"/>
|
<activity android:name="ChooseLockPattern" android:exported="false"/>
|
||||||
|
|
||||||
<activity android:name="ChooseLockPassword" android:exported="false"
|
<activity android:name="ChooseLockPassword" android:exported="false"
|
||||||
|
@@ -49,6 +49,9 @@ public class ChooseLockGeneric extends PreferenceActivity {
|
|||||||
return modIntent;
|
return modIntent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static class InternalActivity extends ChooseLockGeneric {
|
||||||
|
}
|
||||||
|
|
||||||
public static class ChooseLockGenericFragment extends SettingsPreferenceFragment {
|
public static class ChooseLockGenericFragment extends SettingsPreferenceFragment {
|
||||||
private static final int MIN_PASSWORD_LENGTH = 4;
|
private static final int MIN_PASSWORD_LENGTH = 4;
|
||||||
private static final String KEY_UNLOCK_BACKUP_INFO = "unlock_backup_info";
|
private static final String KEY_UNLOCK_BACKUP_INFO = "unlock_backup_info";
|
||||||
@@ -86,7 +89,9 @@ public class ChooseLockGeneric extends PreferenceActivity {
|
|||||||
// Defaults to needing to confirm credentials
|
// Defaults to needing to confirm credentials
|
||||||
final boolean confirmCredentials = getActivity().getIntent()
|
final boolean confirmCredentials = getActivity().getIntent()
|
||||||
.getBooleanExtra(CONFIRM_CREDENTIALS, true);
|
.getBooleanExtra(CONFIRM_CREDENTIALS, true);
|
||||||
mPasswordConfirmed = !confirmCredentials;
|
if (getActivity() instanceof ChooseLockGeneric.InternalActivity) {
|
||||||
|
mPasswordConfirmed = !confirmCredentials;
|
||||||
|
}
|
||||||
|
|
||||||
if (savedInstanceState != null) {
|
if (savedInstanceState != null) {
|
||||||
mPasswordConfirmed = savedInstanceState.getBoolean(PASSWORD_CONFIRMED);
|
mPasswordConfirmed = savedInstanceState.getBoolean(PASSWORD_CONFIRMED);
|
||||||
@@ -325,7 +330,8 @@ public class ChooseLockGeneric extends PreferenceActivity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private Intent getBiometricSensorIntent() {
|
private Intent getBiometricSensorIntent() {
|
||||||
Intent fallBackIntent = new Intent().setClass(getActivity(), ChooseLockGeneric.class);
|
Intent fallBackIntent = new Intent().setClass(getActivity(),
|
||||||
|
ChooseLockGeneric.InternalActivity.class);
|
||||||
fallBackIntent.putExtra(LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK, true);
|
fallBackIntent.putExtra(LockPatternUtils.LOCKSCREEN_BIOMETRIC_WEAK_FALLBACK, true);
|
||||||
fallBackIntent.putExtra(CONFIRM_CREDENTIALS, false);
|
fallBackIntent.putExtra(CONFIRM_CREDENTIALS, false);
|
||||||
fallBackIntent.putExtra(EXTRA_SHOW_FRAGMENT_TITLE,
|
fallBackIntent.putExtra(EXTRA_SHOW_FRAGMENT_TITLE,
|
||||||
|
@@ -154,6 +154,9 @@ public class ChooseLockPassword extends PreferenceActivity {
|
|||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
mLockPatternUtils = new LockPatternUtils(getActivity());
|
mLockPatternUtils = new LockPatternUtils(getActivity());
|
||||||
Intent intent = getActivity().getIntent();
|
Intent intent = getActivity().getIntent();
|
||||||
|
if (!(getActivity() instanceof ChooseLockPassword)) {
|
||||||
|
throw new SecurityException("Fragment contained in wrong activity");
|
||||||
|
}
|
||||||
mRequestedQuality = Math.max(intent.getIntExtra(LockPatternUtils.PASSWORD_TYPE_KEY,
|
mRequestedQuality = Math.max(intent.getIntExtra(LockPatternUtils.PASSWORD_TYPE_KEY,
|
||||||
mRequestedQuality), mLockPatternUtils.getRequestedPasswordQuality());
|
mRequestedQuality), mLockPatternUtils.getRequestedPasswordQuality());
|
||||||
mPasswordMinLength = Math.max(
|
mPasswordMinLength = Math.max(
|
||||||
|
@@ -301,6 +301,9 @@ public class ChooseLockPattern extends PreferenceActivity {
|
|||||||
public void onCreate(Bundle savedInstanceState) {
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
mChooseLockSettingsHelper = new ChooseLockSettingsHelper(getActivity());
|
mChooseLockSettingsHelper = new ChooseLockSettingsHelper(getActivity());
|
||||||
|
if (!(getActivity() instanceof ChooseLockPattern)) {
|
||||||
|
throw new SecurityException("Fragment contained in wrong activity");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -331,7 +334,7 @@ public class ChooseLockPattern extends PreferenceActivity {
|
|||||||
topLayout.setDefaultTouchRecepient(mLockPatternView);
|
topLayout.setDefaultTouchRecepient(mLockPatternView);
|
||||||
|
|
||||||
final boolean confirmCredentials = getActivity().getIntent()
|
final boolean confirmCredentials = getActivity().getIntent()
|
||||||
.getBooleanExtra("confirm_credentials", false);
|
.getBooleanExtra("confirm_credentials", true);
|
||||||
|
|
||||||
if (savedInstanceState == null) {
|
if (savedInstanceState == null) {
|
||||||
if (confirmCredentials) {
|
if (confirmCredentials) {
|
||||||
|
Reference in New Issue
Block a user