From d18dfef96c176e0d48160daa610b8664dba81c68 Mon Sep 17 00:00:00 2001 From: Arne Schwabe Date: Mon, 2 Jul 2012 21:40:41 +0200 Subject: Import User and Password from auth-user-file if it exists. (closes #issue 42) --- src/de/blinkt/openvpn/ConfigConverter.java | 23 ++++++++++++++++++----- src/de/blinkt/openvpn/ConfigParser.java | 11 +++++++++-- 2 files changed, 27 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/de/blinkt/openvpn/ConfigConverter.java b/src/de/blinkt/openvpn/ConfigConverter.java index 3ccda053..71a17fa2 100644 --- a/src/de/blinkt/openvpn/ConfigConverter.java +++ b/src/de/blinkt/openvpn/ConfigConverter.java @@ -123,7 +123,8 @@ public class ConfigConverter extends ListActivity { continue; // read the file inline - String filedata = VpnProfile.INLINE_TAG; + + String filedata = ""; byte[] buf =new byte[2048]; log(R.string.trying_to_read, possibleFile.getAbsolutePath()); @@ -153,10 +154,22 @@ public class ConfigConverter extends ListActivity { // This where I would like to have a c++ style // void embedFile(std::string & option) - mResult.mCaFilename = embedFile(mResult.mCaFilename); - mResult.mClientCertFilename = embedFile(mResult.mClientCertFilename); - mResult.mClientKeyFilename = embedFile(mResult.mClientKeyFilename); - mResult.mTLSAuthFilename = embedFile(mResult.mTLSAuthFilename); + mResult.mCaFilename = VpnProfile.INLINE_TAG + embedFile(mResult.mCaFilename); + mResult.mClientCertFilename = VpnProfile.INLINE_TAG + embedFile(mResult.mClientCertFilename); + mResult.mClientKeyFilename = VpnProfile.INLINE_TAG + embedFile(mResult.mClientKeyFilename); + mResult.mTLSAuthFilename = VpnProfile.INLINE_TAG + embedFile(mResult.mTLSAuthFilename); + + if(mResult.mUsername != null){ + String data =embedFile(mResult.mName); + mResult.mName=null; + if(data!=null) { + String[] parts = data.split("\n"); + if(parts.length >= 2) { + mResult.mName=parts[0]; + mResult.mPassword=parts[1]; + } + } + } } diff --git a/src/de/blinkt/openvpn/ConfigParser.java b/src/de/blinkt/openvpn/ConfigParser.java index 44af2cdc..b897f63a 100644 --- a/src/de/blinkt/openvpn/ConfigParser.java +++ b/src/de/blinkt/openvpn/ConfigParser.java @@ -225,6 +225,7 @@ public class ConfigParser { "persist-tun", "persist-key", "register-dns", + "route-delay", "route-gateway", "route-metric", "route-method", @@ -424,14 +425,20 @@ public class ConfigParser { if(getOption("nobind", 0, 0) != null) np.mNobind=true; - if(getOption("auth-user-pass",0,1) != null) { + Vector authuser = getOption("auth-user-pass",0,1); + if(authuser !=null){ + if(noauthtypeset) { np.mAuthenticationType=VpnProfile.TYPE_USERPASS; } else if(np.mAuthenticationType==VpnProfile.TYPE_CERTIFICATES) { np.mAuthenticationType=VpnProfile.TYPE_USERPASS_CERTIFICATES; } else if(np.mAuthenticationType==VpnProfile.TYPE_KEYSTORE) { np.mAuthenticationType=VpnProfile.TYPE_USERPASS_KEYSTORE; - } + } + if(authuser.size()>1) { + np.mName=authuser.get(1); + } + } -- cgit v1.2.3