diff options
author | Arne Schwabe <arne@rfc2549.org> | 2013-07-01 00:07:52 +0200 |
---|---|---|
committer | Arne Schwabe <arne@rfc2549.org> | 2013-07-01 00:07:52 +0200 |
commit | 784177121710cbb75ec730babb3a51e9eaf64d82 (patch) | |
tree | f30b2ee278fc6b7b5146914f2d0921f2e337335a /src/de/blinkt/openvpn/core | |
parent | 7b20c41be2651e2721fd3b151e4e27f0ee92d656 (diff) |
Fix GUI certificate display/parsing a bit
Diffstat (limited to 'src/de/blinkt/openvpn/core')
-rw-r--r-- | src/de/blinkt/openvpn/core/OpenVpnService.java | 8 | ||||
-rw-r--r-- | src/de/blinkt/openvpn/core/X509Utils.java | 16 |
2 files changed, 16 insertions, 8 deletions
diff --git a/src/de/blinkt/openvpn/core/OpenVpnService.java b/src/de/blinkt/openvpn/core/OpenVpnService.java index 0bfc150a..6aacf891 100644 --- a/src/de/blinkt/openvpn/core/OpenVpnService.java +++ b/src/de/blinkt/openvpn/core/OpenVpnService.java @@ -155,7 +155,6 @@ public class OpenVpnService extends VpnService implements StateListener, Callbac private int getIconByConnectionStatus(ConnectionStatus level) { switch (level) { case LEVEL_CONNECTED: - case UNKNOWN_LEVEL: return R.drawable.ic_stat_vpn; case LEVEL_AUTH_FAILED: case LEVEL_NONETWORK: @@ -168,6 +167,7 @@ public class OpenVpnService extends VpnService implements StateListener, Callbac return R.drawable.ic_stat_vpn_empty_halo; case LEVEL_VPNPAUSED: return android.R.drawable.ic_media_pause; + case UNKNOWN_LEVEL: default: return R.drawable.ic_stat_vpn; @@ -228,7 +228,7 @@ public class OpenVpnService extends VpnService implements StateListener, Callbac // Let the configure Button show the Log Intent intent = new Intent(getBaseContext(),LogWindow.class); intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); - PendingIntent startLW = PendingIntent.getActivity(getApplicationContext(), 0, intent, 0); + PendingIntent startLW = PendingIntent.getActivity(this, 0, intent, 0); intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); return startLW; @@ -373,8 +373,8 @@ public class OpenVpnService extends VpnService implements StateListener, Callbac ProfileManager.setConnectedVpnProfile(this, mProfile); - return START_NOT_STICKY; - } + return START_NOT_STICKY; + } private OpenVPNManagement instantiateOpenVPN3Core() { return null; diff --git a/src/de/blinkt/openvpn/core/X509Utils.java b/src/de/blinkt/openvpn/core/X509Utils.java index ff1e932f..b533c886 100644 --- a/src/de/blinkt/openvpn/core/X509Utils.java +++ b/src/de/blinkt/openvpn/core/X509Utils.java @@ -18,10 +18,18 @@ public class X509Utils { InputStream inStream; - if(certfilename.startsWith(VpnProfile.INLINE_TAG)) - inStream = new ByteArrayInputStream(certfilename.replace(VpnProfile.INLINE_TAG,"").getBytes()); - else + if(certfilename.startsWith(VpnProfile.INLINE_TAG)) { + // The java certifcate reader is ... kind of stupid + // It does NOT ignore chars before the --BEGIN ... + int subIndex = certfilename.indexOf("-----BEGIN CERTIFICATE-----"); + subIndex = Math.max(0,subIndex); + inStream = new ByteArrayInputStream(certfilename.substring(subIndex).getBytes()); + + + } else { inStream = new FileInputStream(certfilename); + } + return certFact.generateCertificate(inStream); } @@ -55,7 +63,7 @@ public class X509Utils { OpenVPN.logError("Could not read certificate" + e.getLocalizedMessage()); } } - return "Could not read/parse certificate"; + return "Cannot display certificate information"; } public static String getCertificateFriendlyName(X509Certificate cert) { |