diff options
author | cyberta <cyberta@riseup.net> | 2022-06-09 01:09:35 +0000 |
---|---|---|
committer | cyberta <cyberta@riseup.net> | 2022-06-09 01:09:35 +0000 |
commit | c20478bfa2a07487b81f79c58fbe8a11f4b64bc1 (patch) | |
tree | 47e2c09efa030644bd98086d518ec0d3d966fb21 /app/src/main/java/se/leap/bitmaskclient/eip | |
parent | 2c79b891cb4e946b400374fb1cd7e08ce14b25d6 (diff) | |
parent | 568ee211b417f5b3632e22f61a28cedcbb89cc51 (diff) |
Merge branch 'hidden_gateway_pinning' into 'master'
add debug feature to pin single gateways
See merge request leap/bitmask_android!193
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/eip')
-rw-r--r-- | app/src/main/java/se/leap/bitmaskclient/eip/GatewaysManager.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/eip/GatewaysManager.java b/app/src/main/java/se/leap/bitmaskclient/eip/GatewaysManager.java index 76ec9650..7fc810cc 100644 --- a/app/src/main/java/se/leap/bitmaskclient/eip/GatewaysManager.java +++ b/app/src/main/java/se/leap/bitmaskclient/eip/GatewaysManager.java @@ -41,6 +41,7 @@ import de.blinkt.openvpn.core.ConfigParser; import de.blinkt.openvpn.core.VpnStatus; import de.blinkt.openvpn.core.connection.Connection; import de.blinkt.openvpn.core.connection.Connection.TransportType; +import se.leap.bitmaskclient.BuildConfig; import se.leap.bitmaskclient.base.models.Location; import se.leap.bitmaskclient.base.models.Provider; import se.leap.bitmaskclient.base.models.ProviderObservable; @@ -419,7 +420,9 @@ public class GatewaysManager { private void configureFromCurrentProvider() { Provider provider = ProviderObservable.getInstance().getCurrentProvider(); parseDefaultGateways(provider); - if (hasSortedGatewaysWithLoad(provider)) { + if (BuildConfig.BUILD_TYPE.equals("debug")) { + keepOnlyPinnedGateway(); + } else if (hasSortedGatewaysWithLoad(provider)) { parseGatewaysWithLoad(provider); } else { parseSimpleGatewayList(provider); @@ -427,5 +430,16 @@ public class GatewaysManager { } + private void keepOnlyPinnedGateway() { + String host = PreferenceHelper.getPinnedGateway(this.context); + if (host == null) { + return; + } + Gateway gateway = gateways.get(host); + gateways.clear(); + if (gateway != null) { + gateways.put(host, gateway); + } + } } |