VpnSettings: add support for server certificates.
Bug: 5714397 Change-Id: I5ce13e244fba554bec31c4935571b09127b9270a
This commit is contained in:
@@ -61,6 +61,7 @@ class VpnDialog extends AlertDialog implements TextWatcher,
|
||||
private TextView mIpsecSecret;
|
||||
private Spinner mIpsecUserCert;
|
||||
private Spinner mIpsecCaCert;
|
||||
private Spinner mIpsecServerCert;
|
||||
private CheckBox mSaveLogin;
|
||||
|
||||
VpnDialog(Context context, DialogInterface.OnClickListener listener,
|
||||
@@ -94,6 +95,7 @@ class VpnDialog extends AlertDialog implements TextWatcher,
|
||||
mIpsecSecret = (TextView) mView.findViewById(R.id.ipsec_secret);
|
||||
mIpsecUserCert = (Spinner) mView.findViewById(R.id.ipsec_user_cert);
|
||||
mIpsecCaCert = (Spinner) mView.findViewById(R.id.ipsec_ca_cert);
|
||||
mIpsecServerCert = (Spinner) mView.findViewById(R.id.ipsec_server_cert);
|
||||
mSaveLogin = (CheckBox) mView.findViewById(R.id.save_login);
|
||||
|
||||
// Second, copy values from the profile.
|
||||
@@ -113,6 +115,8 @@ class VpnDialog extends AlertDialog implements TextWatcher,
|
||||
0, mProfile.ipsecUserCert);
|
||||
loadCertificates(mIpsecCaCert, Credentials.CA_CERTIFICATE,
|
||||
R.string.vpn_no_ca_cert, mProfile.ipsecCaCert);
|
||||
loadCertificates(mIpsecServerCert, Credentials.USER_CERTIFICATE,
|
||||
R.string.vpn_no_server_cert, mProfile.ipsecServerCert);
|
||||
mSaveLogin.setChecked(mProfile.saveLogin);
|
||||
|
||||
// Third, add listeners to required fields.
|
||||
@@ -215,7 +219,7 @@ class VpnDialog extends AlertDialog implements TextWatcher,
|
||||
mView.findViewById(R.id.l2tp).setVisibility(View.GONE);
|
||||
mView.findViewById(R.id.ipsec_psk).setVisibility(View.GONE);
|
||||
mView.findViewById(R.id.ipsec_user).setVisibility(View.GONE);
|
||||
mView.findViewById(R.id.ipsec_ca).setVisibility(View.GONE);
|
||||
mView.findViewById(R.id.ipsec_peer).setVisibility(View.GONE);
|
||||
|
||||
// Then, unhide type-specific fields.
|
||||
switch (type) {
|
||||
@@ -237,7 +241,7 @@ class VpnDialog extends AlertDialog implements TextWatcher,
|
||||
mView.findViewById(R.id.ipsec_user).setVisibility(View.VISIBLE);
|
||||
// fall through
|
||||
case VpnProfile.TYPE_IPSEC_HYBRID_RSA:
|
||||
mView.findViewById(R.id.ipsec_ca).setVisibility(View.VISIBLE);
|
||||
mView.findViewById(R.id.ipsec_peer).setVisibility(View.VISIBLE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -363,6 +367,9 @@ class VpnDialog extends AlertDialog implements TextWatcher,
|
||||
if (mIpsecCaCert.getSelectedItemPosition() != 0) {
|
||||
profile.ipsecCaCert = (String) mIpsecCaCert.getSelectedItem();
|
||||
}
|
||||
if (mIpsecServerCert.getSelectedItemPosition() != 0) {
|
||||
profile.ipsecServerCert = (String) mIpsecServerCert.getSelectedItem();
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user