commit 53673dae75b168cc555a01dc0e4f35ab9c6f1169 Author: Nathan Freitas nathan@freitas.net Date: Sun May 4 00:35:14 2014 -0400
fix bridge/PT enable code based on bridge types --- src/org/torproject/android/TorConstants.java | 2 +- src/org/torproject/android/service/TorService.java | 38 ++++++++++---------- 2 files changed, 21 insertions(+), 19 deletions(-)
diff --git a/src/org/torproject/android/TorConstants.java b/src/org/torproject/android/TorConstants.java index 36cdf48..79ea7e0 100644 --- a/src/org/torproject/android/TorConstants.java +++ b/src/org/torproject/android/TorConstants.java @@ -32,7 +32,7 @@ public interface TorConstants { public final static String PREF_BRIDGES_ENABLED = "pref_bridges_enabled"; public final static String PREF_BRIDGES_UPDATED = "pref_bridges_enabled"; public final static String PREF_BRIDGES_LIST = "pref_bridges_list"; - public final static String PREF_BRIDGES_OBFUSCATED = "pref_bridges_obfuscated"; + //public final static String PREF_BRIDGES_OBFUSCATED = "pref_bridges_obfuscated"; public final static String PREF_OR = "pref_or"; public final static String PREF_OR_PORT = "pref_or_port"; public final static String PREF_OR_NICKNAME = "pref_or_nickname"; diff --git a/src/org/torproject/android/service/TorService.java b/src/org/torproject/android/service/TorService.java index 13c653c..a54c3e2 100644 --- a/src/org/torproject/android/service/TorService.java +++ b/src/org/torproject/android/service/TorService.java @@ -1710,23 +1710,8 @@ public class TorService extends Service implements TorServiceConstants, TorConst { logMessage ("Using bridges"); - boolean obfsBridges = prefs.getBoolean(TorConstants.PREF_BRIDGES_OBFUSCATED, false); String bridgeCfgKey = "Bridge";
- - if (obfsBridges) - { - String bridgeConfig = "obfs2,obfs3,scramblesuit exec " + fileObfsclient.getAbsolutePath(); - - logMessage ("Using OBFUSCATED bridges: " + bridgeConfig); - - mBinder.updateConfiguration("ClientTransportPlugin",bridgeConfig, false); - } - else - { - logMessage ("Using standard bridges"); - } - String bridgeList = prefs.getString(TorConstants.PREF_BRIDGES_LIST,null);
if (bridgeList == null || bridgeList.length() == 0) @@ -1738,6 +1723,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst return false; } + String bridgeDelim = "\n"; @@ -1747,9 +1733,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst } showToolbarNotification(getString(R.string.notification_using_bridges) + ": " + bridgeList, TRANSPROXY_NOTIFY_ID, R.drawable.ic_stat_tor, -1, false); - - - + StringTokenizer st = new StringTokenizer(bridgeList,bridgeDelim); while (st.hasMoreTokens()) { @@ -1759,6 +1743,24 @@ public class TorService extends Service implements TorServiceConstants, TorConst
}
+ //check if any PT bridges are needed + boolean obfsBridges = bridgeList.contains("obfs2")||bridgeList.contains("obfs3")||bridgeList.contains("scramblesuit"); + + if (obfsBridges) + { + String bridgeConfig = "obfs2,obfs3,scramblesuit exec " + fileObfsclient.getAbsolutePath(); + + logMessage ("Using OBFUSCATED bridges: " + bridgeConfig); + + mBinder.updateConfiguration("ClientTransportPlugin",bridgeConfig, false); + } + else + { + logMessage ("Using standard bridges"); + } + + + mBinder.updateConfiguration("UpdateBridgesFromAuthority", "0", false);
tor-commits@lists.torproject.org