Commit f38981e5 authored by Max Lv's avatar Max Lv

bump version

parent 9c3b97b4
...@@ -5,7 +5,8 @@ import org.scalasbt.androidplugin._ ...@@ -5,7 +5,8 @@ import org.scalasbt.androidplugin._
import org.scalasbt.androidplugin.AndroidKeys._ import org.scalasbt.androidplugin.AndroidKeys._
object App { object App {
val version = "1.4.0" val version = "1.4.1"
val versionCode = 23
} }
object General { object General {
...@@ -13,7 +14,7 @@ object General { ...@@ -13,7 +14,7 @@ object General {
val settings = Defaults.defaultSettings ++ Seq ( val settings = Defaults.defaultSettings ++ Seq (
name := "shadowsocks", name := "shadowsocks",
version := App.version, version := App.version,
versionCode := 22, versionCode := App.versionCode,
scalaVersion := "2.9.2", scalaVersion := "2.9.2",
compileOrder := CompileOrder.JavaThenScala, compileOrder := CompileOrder.JavaThenScala,
platformName in Android := "android-16", platformName in Android := "android-16",
......
...@@ -244,6 +244,11 @@ class ShadowVpnService extends VpnService { ...@@ -244,6 +244,11 @@ class ShadowVpnService extends VpnService {
def startVpn() { def startVpn() {
val address = appHost.split('.')
val prefix1 = address(0)
val prefix2 = address.slice(0, 2).mkString(".")
val prefix3 = address.slice(0, 3).mkString(".")
val builder = new Builder() val builder = new Builder()
builder builder
.setSession(getString(R.string.app_name)) .setSession(getString(R.string.app_name))
...@@ -256,19 +261,28 @@ class ShadowVpnService extends VpnService { ...@@ -256,19 +261,28 @@ class ShadowVpnService extends VpnService {
builder.addRoute("0.0.0.0", 0) builder.addRoute("0.0.0.0", 0)
} else if (isGFWList) { } else if (isGFWList) {
val gfwList = getResources.getStringArray(R.array.gfw_list) val gfwList = getResources.getStringArray(R.array.gfw_list)
val address = appHost.split('.')
val prefix = address(0) + "." + address(1)
gfwList.foreach(addr => gfwList.foreach(addr =>
if (addr != prefix) { if (addr != prefix2) {
builder.addRoute(addr + ".0.0", 16) builder.addRoute(addr + ".0.0", 16)
} else {
for (i <- 0 to 255) {
val prefix = Array(addr, i.toString).mkString(".")
if (prefix != prefix3) builder.addRoute(prefix + ".0", 24)
}
} }
) )
builder.addRoute("8.8.0.0", 16) builder.addRoute("8.8.0.0", 16)
} else { } else {
val prefix = appHost.split('.')(0).toInt
for (i <- 1 to 254) { for (i <- 1 to 254) {
if (i != prefix && i != 127 if (i != 127 && i != 172 && i != 192 && i != 10 && i.toString != prefix1) {
&& i != 172 && i != 192 && i != 10) builder.addRoute(i + ".0.0.0", 8) builder.addRoute(i + ".0.0.0", 8)
} else if (i.toString == prefix1) {
for (j <- 0 to 255) {
val prefix = Array(i.toString, j.toString).mkString(".")
if (prefix != prefix2) builder.addRoute(prefix + ".0.0", 16)
}
}
builder.addRoute("8.8.0.0", 16)
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment