|
@@ -449,16 +449,36 @@ class VPNConnectionUtilsTV: VpnStatus.StateListener {
|
|
|
App.backend = App.getBackend()
|
|
|
}
|
|
|
val listEnable = basePreferenceHelper.getEnableTvAppsSplit()
|
|
|
+ val listDisable = basePreferenceHelper.getDisableTvAppsSplit()
|
|
|
+
|
|
|
+ Log.d("listEnable", "server = ${basePreferenceHelper.getServerObject()?.dns}")
|
|
|
+
|
|
|
+ listEnable?.forEachIndexed { index, tvEnableApps ->
|
|
|
+ Log.d("listEnable", "tvEnableApps = ${tvEnableApps.appNames}")
|
|
|
+ }
|
|
|
+
|
|
|
+ listDisable?.forEachIndexed { index, tvDisableApps ->
|
|
|
+ Log.d("listEnable", "tvDisableApps = ${tvDisableApps.appNames}")
|
|
|
+ }
|
|
|
|
|
|
// Log.d("testing_wg_on_tv WG s", "${App.backend.toString()} , ${App.getTunnel()} + ${App.tunnelStatus} + ${App.peerBuilder}")
|
|
|
|
|
|
- if (listEnable?.size == 0)
|
|
|
+ if (listEnable?.size == 0 && listDisable?.size != 0)
|
|
|
{
|
|
|
+ Log.d("listEnable", "on -> listEnable?.size == 0 && listDisable?.size != 0")
|
|
|
+
|
|
|
+ val tempDisabledList = ArrayList<String>()
|
|
|
+
|
|
|
+ listDisable?.forEachIndexed { index, tvSplitTunneling ->
|
|
|
+ tempDisabledList.add(index, tvSplitTunneling.appPackageName)
|
|
|
+ }
|
|
|
+
|
|
|
App.backend?.setState(
|
|
|
App.getTunnel(), App.tunnelStatus, Config.Builder().setInterface(
|
|
|
interfaceBuilder!!.addAddress(InetNetwork.parse(basePreferenceHelper.getWireGuard()?.ip + "/32"))
|
|
|
.parsePrivateKey(basePreferenceHelper.getWireGuard()?.key)
|
|
|
.parseDnsServers(dnswg)
|
|
|
+ .excludeApplications(tempDisabledList)
|
|
|
.build()
|
|
|
).addPeer(
|
|
|
App.peerBuilder.addAllowedIp(InetNetwork.parse("0.0.0.0/0"))
|
|
@@ -469,11 +489,17 @@ class VPNConnectionUtilsTV: VpnStatus.StateListener {
|
|
|
|
|
|
|
|
|
}
|
|
|
- else{
|
|
|
+ else if (listEnable?.let {
|
|
|
+ it.size > 0
|
|
|
+ } == true)
|
|
|
+ {
|
|
|
+ Log.d("listEnable", "on -> listEnable?.size > 0")
|
|
|
+
|
|
|
val tempEnabledList = ArrayList<String>()
|
|
|
|
|
|
listEnable?.forEachIndexed { index, tvSplitTunneling ->
|
|
|
tempEnabledList.add(index, tvSplitTunneling.appPackageName)
|
|
|
+ Log.d("listEnable", "on -> ${tempEnabledList[index]}")
|
|
|
}
|
|
|
|
|
|
App.backend?.setState(
|
|
@@ -489,6 +515,24 @@ class VPNConnectionUtilsTV: VpnStatus.StateListener {
|
|
|
.parsePublicKey(basePreferenceHelper.getServerObject()?.wg_key).build()
|
|
|
).build()
|
|
|
)
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ Log.d("listEnable", "on -> else - ${listEnable?.size} ${listDisable?.size}")
|
|
|
+
|
|
|
+ App.backend?.setState(
|
|
|
+ App.getTunnel(), App.tunnelStatus, Config.Builder().setInterface(
|
|
|
+ interfaceBuilder!!.addAddress(InetNetwork.parse(basePreferenceHelper.getWireGuard()?.ip + "/32"))
|
|
|
+ .parsePrivateKey(basePreferenceHelper.getWireGuard()?.key)
|
|
|
+ .parseDnsServers(dnswg)
|
|
|
+ .build()
|
|
|
+ ).addPeer(
|
|
|
+ App.peerBuilder.addAllowedIp(InetNetwork.parse("0.0.0.0/0"))
|
|
|
+ .setEndpoint(InetEndpoint.parse(basePreferenceHelper.getServerObject()?.dns + ":51820"))
|
|
|
+ .parsePublicKey(basePreferenceHelper.getServerObject()?.wg_key).build()
|
|
|
+ ).build()
|
|
|
+ )
|
|
|
}
|
|
|
}
|
|
|
else
|