[tbb-commits] [tor-android-service/master] Bug 33931 - Indicate bridge type in stream
gk at torproject.org
gk at torproject.org
Fri May 1 20:02:26 UTC 2020
commit ed2e1479eeddede01b1d510ef79dc5ec798b39c0
Author: Matthew Finkel <Matthew.Finkel at gmail.com>
Date: Thu Apr 30 15:47:07 2020 +0000
Bug 33931 - Indicate bridge type in stream
Use the first-byte to indicate if the following data stream contains
default bridges or custom bridges. In addition, if the stream contains
default bridges, then indicate if only one type of bridge should be used
after parsing the stream.
---
.../org/torproject/android/service/CustomTorInstaller.java | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/service/src/main/java/org/torproject/android/service/CustomTorInstaller.java b/service/src/main/java/org/torproject/android/service/CustomTorInstaller.java
index e962137..198c981 100644
--- a/service/src/main/java/org/torproject/android/service/CustomTorInstaller.java
+++ b/service/src/main/java/org/torproject/android/service/CustomTorInstaller.java
@@ -48,6 +48,18 @@ public class CustomTorInstaller extends TorInstaller {
*/
String userDefinedBridgeList = Prefs.getBridgesList();
byte bridgeType = (byte) (userDefinedBridgeList.length() > 5 ? 1 : 0);
+ // Terrible hack. Must keep in sync with topl::addBridgesFromResources.
+ if (bridgeType == 0) {
+ switch (userDefinedBridgeList) {
+ case "obfs4":
+ bridgeType = 2;
+ break;
+ case "meek":
+ bridgeType = 3;
+ break;
+ }
+ }
+
ByteArrayInputStream bridgeTypeStream = new ByteArrayInputStream(new byte[]{bridgeType});
InputStream bridgeStream = (bridgeType == 1) ? new ByteArrayInputStream((userDefinedBridgeList + "\r\n").getBytes())
: context.getResources().getAssets().open("common/bridges.txt");
More information about the tbb-commits
mailing list