]> git.ipfire.org Git - thirdparty/strongswan.git/commitdiff
android: Show an error if a profile without a password is initiated
authorTobias Brunner <tobias@strongswan.org>
Thu, 14 Jun 2018 13:16:45 +0000 (15:16 +0200)
committerTobias Brunner <tobias@strongswan.org>
Tue, 3 Jul 2018 09:31:37 +0000 (11:31 +0200)
This could happen if an incomplete profile is used with Always-on VPN.

src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java
src/frontends/android/app/src/main/java/org/strongswan/android/logic/VpnStateService.java
src/frontends/android/app/src/main/res/values-de/strings.xml
src/frontends/android/app/src/main/res/values-pl/strings.xml
src/frontends/android/app/src/main/res/values-ru/strings.xml
src/frontends/android/app/src/main/res/values-ua/strings.xml
src/frontends/android/app/src/main/res/values-zh-rCN/strings.xml
src/frontends/android/app/src/main/res/values-zh-rTW/strings.xml
src/frontends/android/app/src/main/res/values/strings.xml

index 24cc1da9097f5c76b6f3cc1a070b698871c9c131..458204c5332705261cdc27cc39a3e6419cd52261 100644 (file)
@@ -274,6 +274,14 @@ public class CharonVpnService extends VpnService implements Runnable, VpnStateSe
                                                if (initializeCharon(builder, mLogFile, mAppDir, mCurrentProfile.getVpnType().has(VpnTypeFeature.BYOD)))
                                                {
                                                        Log.i(TAG, "charon started");
+
+                                                       if (mCurrentProfile.getVpnType().has(VpnTypeFeature.USER_PASS) &&
+                                                               mCurrentProfile.getPassword() == null)
+                                                       {       /* this can happen if Always-on VPN is enabled with an incomplete profile */
+                                                               setError(ErrorState.PASSWORD_MISSING);
+                                                               continue;
+                                                       }
+
                                                        SettingsWriter writer = new SettingsWriter();
                                                        writer.setValue("global.language", Locale.getDefault().getLanguage());
                                                        writer.setValue("global.mtu", mCurrentProfile.getMTU());
index 5effafdf10cbe5fb4db9dc9fb7b5660dbb565d58..4f3073691a09192c75fc912c044c742fa4dc4126 100644 (file)
@@ -61,6 +61,7 @@ public class VpnStateService extends Service
                LOOKUP_FAILED,
                UNREACHABLE,
                GENERIC_ERROR,
+               PASSWORD_MISSING,
        }
 
        /**
@@ -191,6 +192,8 @@ public class VpnStateService extends Service
                                return R.string.error_lookup_failed;
                        case UNREACHABLE:
                                return R.string.error_unreachable;
+                       case PASSWORD_MISSING:
+                               return R.string.error_password_missing;
                        default:
                                return R.string.error_generic;
                }
index 45de885dd5759a39039b96cceec8e29d07fb9e03..2dbe13fb2f6a3a0dd9ac96d1ae40a096f23576b0 100644 (file)
     <string name="error_auth_failed">Benutzerauthentifizierung ist fehlgeschlagen</string>
     <string name="error_assessment_failed">Sicherheitsassessment ist fehlgeschlagen</string>
     <string name="error_generic">Unbekannter Fehler während des Verbindens</string>
+    <string name="error_password_missing">Passwort nicht verfügbar</string>
     <string name="vpn_connected">VPN verbunden</string>
     <string name="vpn_profile_connected">Dieses VPN Profil ist momentan verbunden!</string>
     <string name="reconnect">Neu verbinden</string>
index 091417b5259553ebde083ffbaaea4146cae4589c..f9a88b825dc851449e153ca98dca21533140786a 100644 (file)
     <string name="error_auth_failed">Błąd przy autoryzacji użytkownika</string>
     <string name="error_assessment_failed">Security assessment failed</string>
     <string name="error_generic">Nieznany błąd w czasie połączenia</string>
+    <string name="error_password_missing">Password unavailable</string>
     <string name="vpn_connected">Połączenie z VPN</string>
     <string name="vpn_profile_connected">Ten profil VPN jest obecnie połaczony!</string>
     <string name="reconnect">Połączyć ponownie</string>
index 5b53893bad95cc29c93366a10b89bac7757aa19d..8fec5a1d729d867a87a917bb3e40ce8dc7b9761a 100644 (file)
     <string name="error_auth_failed">Ошибка авторизации пользователя</string>
     <string name="error_assessment_failed">Security assessment failed</string>
     <string name="error_generic">Неизвестная ошибка</string>
+    <string name="error_password_missing">Password unavailable</string>
     <string name="vpn_connected">Соединение с VPN установлено</string>
     <string name="vpn_profile_connected">Подключение к этому профилю VPN уже существует!</string>
     <string name="reconnect">Переподключить</string>
index c21c2f8fff7979410e52b5ecc832f5a3cba23499..d9525223b15cdea10c4931caf72299b009f75bc1 100644 (file)
     <string name="error_auth_failed">Помилка аутентифікації користувача</string>
     <string name="error_assessment_failed">Security assessment failed</string>
     <string name="error_generic">Невідома помилка під час підключення</string>
+    <string name="error_password_missing">Password unavailable</string>
     <string name="vpn_connected">VPN підключено</string>
     <string name="vpn_profile_connected">Цей VPN профіль зараз підключений!</string>
     <string name="reconnect">Перепідключитися</string>
index 74ad2490a9a02fc53da242cf09352ecd703b1902..00e6e8ba23c15613517a1fafad7ffacb38f5ec24 100644 (file)
     <string name="error_auth_failed">用户鉴权失败</string>
     <string name="error_assessment_failed">可靠性评估失败</string>
     <string name="error_generic">连接中遭遇未知失败</string>
+    <string name="error_password_missing">Password unavailable</string>
     <string name="vpn_connected">VPN已连接</string>
     <string name="vpn_profile_connected">此VPN配置目前已连接。</string>
     <string name="reconnect">重连</string>
index e7f004e3872773ec446cc1feadd824a38b67498f..cb7b3438d178568b4f604b38f64cb109a030d669 100644 (file)
     <string name="error_auth_failed">用戶授權失敗</string>
     <string name="error_assessment_failed">穩定性評估失敗</string>
     <string name="error_generic">連線中遇到不明錯誤</string>
+    <string name="error_password_missing">Password unavailable</string>
     <string name="vpn_connected">VPN已連線</string>
     <string name="vpn_profile_connected">這個VPN設定檔目前已經連線。</string>
     <string name="reconnect">重新連線</string>
index 8c0bf5f6c5dedc47dbabf769c56c60e769902ff0..a86a1b5111fb35d98daea39645453fa7be2d3237 100644 (file)
     <string name="error_auth_failed">User authentication failed</string>
     <string name="error_assessment_failed">Security assessment failed</string>
     <string name="error_generic">Unspecified failure while connecting</string>
+    <string name="error_password_missing">Password unavailable</string>
     <string name="vpn_connected">VPN connected</string>
     <string name="vpn_profile_connected">This VPN profile is currently connected!</string>
     <string name="reconnect">Reconnect</string>