From 360b425d4768bf73ef3db4e37d793045dc4f3ad6 Mon Sep 17 00:00:00 2001 From: Mygod Date: Mon, 18 Jul 2016 14:37:18 +0800 Subject: [PATCH] Fix #767 --- src/main/res/values-ru/strings.xml | 1 + src/main/res/values-zh-rCN/strings.xml | 1 + src/main/res/values-zh/strings.xml | 1 + src/main/res/values/strings.xml | 1 + src/main/scala/com/github/shadowsocks/BaseService.scala | 2 ++ src/main/scala/com/github/shadowsocks/database/Profile.scala | 2 ++ 6 files changed, 8 insertions(+) diff --git a/src/main/res/values-ru/strings.xml b/src/main/res/values-ru/strings.xml index 06ae9864..98a5222a 100644 --- a/src/main/res/values-ru/strings.xml +++ b/src/main/res/values-ru/strings.xml @@ -60,6 +60,7 @@ Shadowsocks запущен. Неправильное имя сервера Ошибка при подключении к удалённому серверу + ВНИМАНИЕ:В настоящее время метод шифрования является небезопасным ВНИМАНИЕ:режим NAT не работает в Android 5.0 Режим NAT требует наличия ROOT прав Переключить на режим VPN diff --git a/src/main/res/values-zh-rCN/strings.xml b/src/main/res/values-zh-rCN/strings.xml index f91ce369..6309eb9a 100644 --- a/src/main/res/values-zh-rCN/strings.xml +++ b/src/main/res/values-zh-rCN/strings.xml @@ -35,6 +35,7 @@ 后台服务已开始运行。 无法连接远程服务器 服务器名无效 + 警告:当前使用的加密算法不安全 警告:在 Android 5.0 及更高版本中不建议使用 NAT 模式 NAT 模式需要 ROOT 权限 切换到 VPN 模式 diff --git a/src/main/res/values-zh/strings.xml b/src/main/res/values-zh/strings.xml index d455536e..94af6526 100644 --- a/src/main/res/values-zh/strings.xml +++ b/src/main/res/values-zh/strings.xml @@ -36,6 +36,7 @@ Shadowsocks 已啟動。 連線至遠端伺服器失敗 伺服器名稱無效 + 警告:當前使用的加密算法不安全 警告:自 Android 5.0 開始, NAT 模式已過時 NAT 模式需要 ROOT 權限 切換至 VPN 模式 diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 078c0d24..8c472f3b 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -66,6 +66,7 @@ Shadowsocks started. Invalid server name Failed to connect the remote server + WARNING: The current encryption method is unsafe WARNING: NAT mode has been deprecated since Android 5.0 NAT mode requires ROOT permission Switch to VPN mode diff --git a/src/main/scala/com/github/shadowsocks/BaseService.scala b/src/main/scala/com/github/shadowsocks/BaseService.scala index d2cea36d..c65143b1 100644 --- a/src/main/scala/com/github/shadowsocks/BaseService.scala +++ b/src/main/scala/com/github/shadowsocks/BaseService.scala @@ -166,6 +166,8 @@ trait BaseService extends Service { changeState(State.CONNECTING) + if (profile.isMethodUnsafe) Toast.makeText(this, R.string.method_unsafe, Toast.LENGTH_LONG).show + Utils.ThrowableFuture(connect) } diff --git a/src/main/scala/com/github/shadowsocks/database/Profile.scala b/src/main/scala/com/github/shadowsocks/database/Profile.scala index ede0c720..19570fd3 100644 --- a/src/main/scala/com/github/shadowsocks/database/Profile.scala +++ b/src/main/scala/com/github/shadowsocks/database/Profile.scala @@ -101,4 +101,6 @@ class Profile { override def toString = "ss://" + Base64.encodeToString("%s%s:%s@%s:%d".formatLocal(Locale.ENGLISH, method, if (auth) "-auth" else "", password, host, remotePort).getBytes, Base64.NO_PADDING | Base64.NO_WRAP) + + def isMethodUnsafe = "table".equalsIgnoreCase(method) || "rc4".equalsIgnoreCase(method) }