From 991d5e1d3f0bf8a1daad3ed41bff9489ffb17fe2 Mon Sep 17 00:00:00 2001 From: Arne Schwabe Date: Sat, 30 Jun 2012 11:38:31 +0200 Subject: Relase version 0.5.9 --- openvpn/src/openvpn/options.c | 2 +- res/values/strings.xml | 3 ++- src/de/blinkt/openvpn/OpenVpnManagementThread.java | 8 ++++++-- src/de/blinkt/openvpn/VpnProfile.java | 9 +++++++-- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/openvpn/src/openvpn/options.c b/openvpn/src/openvpn/options.c index b83c1de6..b3a41d7b 100644 --- a/openvpn/src/openvpn/options.c +++ b/openvpn/src/openvpn/options.c @@ -2732,7 +2732,7 @@ options_postprocess_filechecks (struct options *options) "--extra-certs"); #ifdef MANAGMENT_EXTERNAL_KEY - if(!(options->management_flags | MF_EXTERNAL_KEY)) + if(!(options->management_flags & MF_EXTERNAL_KEY)) #endif errs |= check_file_access (CHKACC_FILE|CHKACC_INLINE, options->priv_key_file, R_OK, "--key"); diff --git a/res/values/strings.xml b/res/values/strings.xml index ba4f6b02..d6b55458 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -220,6 +220,7 @@ Keep the notification displayed after the connection is established to show traffic statistics. Show Traffic Statistics Running on %1$s (%2$s) %3$s, Android API %4$d - Error signing with Android keystore key %s + Error signing with Android keystore key %1$s: %2$s + Reading from Android Keystore does not work in Jelly Beans (Google change the way private keys are returned) diff --git a/src/de/blinkt/openvpn/OpenVpnManagementThread.java b/src/de/blinkt/openvpn/OpenVpnManagementThread.java index e1b37342..69129eb1 100644 --- a/src/de/blinkt/openvpn/OpenVpnManagementThread.java +++ b/src/de/blinkt/openvpn/OpenVpnManagementThread.java @@ -403,9 +403,12 @@ public class OpenVpnManagementThread implements Runnable { private void processSignCommand(String b64data) { PrivateKey privkey = mProfile.getKeystoreKey(); Exception err =null; + try{ byte[] data = Base64.decode(b64data, Base64.DEFAULT); - Cipher rsasinger = javax.crypto.Cipher.getInstance("RSA/ECB/PKCS1PADDING"); + + Cipher rsasinger = Cipher.getInstance("RSA/ECB/PKCS1PADDING"); + rsasinger.init(Cipher.ENCRYPT_MODE, privkey); byte[] signed_bytes = rsasinger.doFinal(data); @@ -425,8 +428,9 @@ public class OpenVpnManagementThread implements Runnable { err =e; } if(err !=null) { - OpenVPN.logError(R.string.error_rsa_sign,err.getLocalizedMessage()); + OpenVPN.logError(R.string.error_rsa_sign,err.getClass().toString(),err.getLocalizedMessage()); } + } } diff --git a/src/de/blinkt/openvpn/VpnProfile.java b/src/de/blinkt/openvpn/VpnProfile.java index 8b758b3b..54eaae88 100644 --- a/src/de/blinkt/openvpn/VpnProfile.java +++ b/src/de/blinkt/openvpn/VpnProfile.java @@ -24,6 +24,7 @@ import org.spongycastle.util.io.pem.PemWriter; import android.content.Context; import android.content.Intent; import android.content.pm.ApplicationInfo; +import android.os.Build; import android.security.KeyChain; import android.security.KeyChainException; @@ -551,8 +552,12 @@ public class VpnProfile implements Serializable{ //! Return an error if somethign is wrong int checkProfile() { - if((mAuthenticationType==TYPE_KEYSTORE || mAuthenticationType==TYPE_USERPASS_KEYSTORE) && mAlias==null) - return R.string.no_keystore_cert_selected; + if(mAuthenticationType==TYPE_KEYSTORE || mAuthenticationType==TYPE_USERPASS_KEYSTORE) { + if(mAlias==null) + return R.string.no_keystore_cert_selected; + if(Build.VERSION.SDK_INT == 16) + return R.string.keychain_jellybeans; + } if(!mUsePull) { if(mIPv4Address == null || cidrToIPAndNetmask(mIPv4Address) == null) -- cgit v1.2.3 From 5435cd62e945a47f3a506acde2af3affe3c72790 Mon Sep 17 00:00:00 2001 From: Arne Schwabe Date: Sat, 30 Jun 2012 11:38:50 +0200 Subject: Added tag v0.5.9 for changeset 48b22ec6bc73 --- .hgtags | 1 + 1 file changed, 1 insertion(+) diff --git a/.hgtags b/.hgtags index da13ce67..1f755e0f 100644 --- a/.hgtags +++ b/.hgtags @@ -3,3 +3,4 @@ 8183d8aed401e9dea5c1e353d59bce758a75b714 v0.5.6 9b07d417e626a43930e4123697be177597769f3e v0.5.7 dfec89862d5b7088091c1c44c9ffcccc9925d488 v0.5.8 +48b22ec6bc7323fa9a4d405e8c5baf8141e513d8 v0.5.9 -- cgit v1.2.3 From a7e5a8faad65d9cdc3eb3cf9373ba27e582ac793 Mon Sep 17 00:00:00 2001 From: Arne Schwabe Date: Sun, 1 Jul 2012 12:08:50 +0200 Subject: 0.5.9 removed the configimporter activity from the manifest. Fix this. --- AndroidManifest.xml | 7 ++++--- res/values-de/strings.xml | 15 ++++++++++----- res/values/strings.xml | 1 - 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 3a2b458e..e601f11e 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -17,8 +17,8 @@ + android:versionCode="33" + android:versionName="0.5.9b" > @@ -53,6 +53,7 @@ + @@ -92,7 +93,7 @@ android:pathPattern=".*\\.ovpn" android:scheme="file" /> - + diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index aebfe351..f0be67e8 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -146,9 +146,7 @@ Log Eintrag in die Zwischenablage kopiert Tap Mode Die VPN API von Android, die ohne rooten des Telefons funktioniert, unterstützt nur den tun modus. Das Unterstützen des Tap Modus ist daher nicht möglich. - Again? Are you kidding? No tap mode is really not supported and sending more mail aksing if it will be supported will not help. - A third time? Actually one could write a a tap emulator based on tun that would add layer2 information on send and strip layer2 information on receive. But this tap emulator would have to implement also ARP and possible a DHCP client. I am not aware of anybody doing any work in this direction. Contact me if you want to start coding on this. - FAQ + FAQ häufig gestellte Fragen und Hinweise Kopieren von Log Einträgen To copy a single log entry press and and hold on the log entry. To copy/send the whole log use the Send Log option. Use the hardware menu button if not visible in the gui. @@ -175,5 +173,12 @@ Beim Abfragen des Android KeyStore wurde kein CA Zertifikat zurückgegeben. Überprüfen des Serverzertifikat wird warscheinlich fehlschlagen. Geben Sie manuell ein CA Zertifikat an. Zertifikat (KeyStore): \'%s\' Das CA Zertifikat wird meist aus dem Zertifikatsspeicher automatisch ausgewählt. Sollte dies nicht funktionieren und Sie Verifizierungsprobleme erhalten(self signed certificate), wählen Sie manuell ein Zertifikat aus. - - \ No newline at end of file + Zeigt das Status Log, wenn ein VPN verbunden wird. Das Status log kann immer über die Benachrichtigung aufgerufen werden. + Zeige Log + Zeige die OpenVPN Benachrichtung nach Verbinden zusätzlich zu der System Benachrichtigung an um Traffic Statistiken anzuzeigen. + Traffic Statistiken + Modell %1$s (%2$s) %3$s, Android API %4$d + Fehler beim Zugriff auf den Android Keystore %1$s: %2$s + + diff --git a/res/values/strings.xml b/res/values/strings.xml index d6b55458..59b89042 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -33,7 +33,6 @@ Client Certificate Key PKCS12 File CA Certificate - Select Nothing selected Copyright © 2002–2010 OpenVPN Technologies, Inc. <sales@openvpn.net>\n -- cgit v1.2.3 From d9608521bf431a648999d06581404fef4ff57ce0 Mon Sep 17 00:00:00 2001 From: Arne Schwabe Date: Sun, 1 Jul 2012 12:09:08 +0200 Subject: Added tag v0.5.9b for changeset f9326cc1b082 --- .hgtags | 1 + 1 file changed, 1 insertion(+) diff --git a/.hgtags b/.hgtags index 1f755e0f..63ef1b7e 100644 --- a/.hgtags +++ b/.hgtags @@ -4,3 +4,4 @@ 9b07d417e626a43930e4123697be177597769f3e v0.5.7 dfec89862d5b7088091c1c44c9ffcccc9925d488 v0.5.8 48b22ec6bc7323fa9a4d405e8c5baf8141e513d8 v0.5.9 +f9326cc1b082b81c9bbddbced8c837924510a261 v0.5.9b -- cgit v1.2.3