diff options
Diffstat (limited to 'src/de')
-rw-r--r-- | src/de/blinkt/openvpn/ConfigParser.java | 14 | ||||
-rw-r--r-- | src/de/blinkt/openvpn/RemoteCNPreference.java | 3 | ||||
-rw-r--r-- | src/de/blinkt/openvpn/VpnProfile.java | 21 |
3 files changed, 21 insertions, 17 deletions
diff --git a/src/de/blinkt/openvpn/ConfigParser.java b/src/de/blinkt/openvpn/ConfigParser.java index 28608c9a..f16198ee 100644 --- a/src/de/blinkt/openvpn/ConfigParser.java +++ b/src/de/blinkt/openvpn/ConfigParser.java @@ -454,17 +454,17 @@ public class ConfigParser { np.mX509AuthType = VpnProfile.X509_VERIFY_TLSREMOTE_COMPAT_NOREMAPPING; } - Vector<String> x509verifyname = getOption("x509-verify-name",1,2); - if(x509verifyname!=null){ - np.mRemoteCN = x509verifyname.get(1); + Vector<String> verifyx509name = getOption("verify-x509-name",1,2); + if(verifyx509name!=null){ + np.mRemoteCN = verifyx509name.get(1); np.mCheckRemoteCN=true; - if(x509verifyname.size()>2) { - if (x509verifyname.get(2).equals("name")) + if(verifyx509name.size()>2) { + if (verifyx509name.get(2).equals("name")) np.mX509AuthType=VpnProfile.X509_VERIFY_TLSREMOTE_RDN; - else if (x509verifyname.get(2).equals("name-prefix")) + else if (verifyx509name.get(2).equals("name-prefix")) np.mX509AuthType=VpnProfile.X509_VERIFY_TLSREMOTE_RDN_PREFIX; else - throw new ConfigParseError("Unknown parameter to x509-verify-name: " + x509verifyname.get(2) ); + throw new ConfigParseError("Unknown parameter to x509-verify-name: " + verifyx509name.get(2) ); } else { np.mX509AuthType = VpnProfile.X509_VERIFY_TLSREMOTE_DN; } diff --git a/src/de/blinkt/openvpn/RemoteCNPreference.java b/src/de/blinkt/openvpn/RemoteCNPreference.java index 4daf54c2..3d142527 100644 --- a/src/de/blinkt/openvpn/RemoteCNPreference.java +++ b/src/de/blinkt/openvpn/RemoteCNPreference.java @@ -2,12 +2,9 @@ package de.blinkt.openvpn; import android.content.Context; import android.preference.DialogPreference; -import android.preference.EditTextPreference; -import android.preference.ListPreference; import android.util.AttributeSet; import android.util.Pair; import android.view.View; -import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.Spinner; diff --git a/src/de/blinkt/openvpn/VpnProfile.java b/src/de/blinkt/openvpn/VpnProfile.java index fcb0679f..ee202369 100644 --- a/src/de/blinkt/openvpn/VpnProfile.java +++ b/src/de/blinkt/openvpn/VpnProfile.java @@ -274,9 +274,16 @@ public class VpnProfile implements Serializable{ if(!configForOvpn3) { String[] ks =getKeyStoreCertificates(context); cfg+="### From Keystore ####\n"; - cfg+="<ca>\n" + ks[0] + "</ca>\n"; - cfg+="<cert>\n" + ks[0] + "</cert>\n"; - cfg+="management-external-key\n"; + if(ks != null) { + cfg+="<ca>\n" + ks[0] + "</ca>\n"; + cfg+="<cert>\n" + ks[0] + "</cert>\n"; + cfg+="management-external-key\n"; + } else { + cfg += context.getString(R.string.keychain_access) +"\n"; + if(Build.VERSION.SDK_INT==Build.VERSION_CODES.JELLY_BEAN) + if(!mAlias.matches("^[a-zA-Z0-9]$")) + cfg += context.getString(R.string.jelly_keystore_alphanumeric_bug)+ "\n"; + } } break; case VpnProfile.TYPE_USERPASS: @@ -358,7 +365,7 @@ public class VpnProfile implements Serializable{ // Authentication if(mCheckRemoteCN) { if(mRemoteCN == null || mRemoteCN.equals("") ) - cfg+="x509-verify-name " + mServerName + " name\n"; + cfg+="verify-x509-name " + mServerName + " name\n"; else switch (mX509AuthType) { @@ -370,15 +377,15 @@ public class VpnProfile implements Serializable{ break; case X509_VERIFY_TLSREMOTE_RDN: - cfg+="x509-verify-name " + openVpnEscape(mRemoteCN) + " name\n"; + cfg+="verify-x509-name " + openVpnEscape(mRemoteCN) + " name\n"; break; case X509_VERIFY_TLSREMOTE_RDN_PREFIX: - cfg+="x509-verify-name " + openVpnEscape(mRemoteCN) + " name-prefix\n"; + cfg+="verify-x509-name " + openVpnEscape(mRemoteCN) + " name-prefix\n"; break; case X509_VERIFY_TLSREMOTE_DN: - cfg+="x509-verify-name " + openVpnEscape(mRemoteCN) + "\n"; + cfg+="verify-x509-name " + openVpnEscape(mRemoteCN) + "\n"; break; } } |