Skip to content

Commit

Permalink
make sure proxy mode is started properly, and only use one stun serve…
Browse files Browse the repository at this point in the history
…r for proxy mode
  • Loading branch information
n8fr8 committed Apr 12, 2023
1 parent cb1ec71 commit b2f746a
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 4 deletions.
5 changes: 5 additions & 0 deletions app/src/main/java/org/torproject/android/KindnessFragment.kt
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import android.widget.TextView
import androidx.appcompat.widget.SwitchCompat
import androidx.core.content.ContextCompat
import org.torproject.android.service.OrbotConstants
import org.torproject.android.service.OrbotService
import org.torproject.android.service.util.Prefs
import org.w3c.dom.Text

Expand Down Expand Up @@ -56,6 +57,10 @@ class KindnessFragment : Fragment() {
swVolunteerMode.setOnCheckedChangeListener { _, isChecked ->
Prefs.setBeSnowflakeProxy(isChecked)
showPanelStatus(isChecked)
sendIntentToService(
Intent(requireActivity(), OrbotService::class.java)
.setAction(OrbotConstants.CMD_SNOWFLAKE_PROXY)
)
}

view.findViewById<TextView>(R.id.swVolunteerAdjust).setOnClickListener {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
import java.util.HashMap;
import java.util.Locale;
import java.util.Objects;
import java.util.Random;
import java.util.StringTokenizer;
import java.util.UUID;
import java.util.concurrent.ExecutorService;
Expand Down Expand Up @@ -362,7 +363,10 @@ public void enableSnowflakeProxy () { // This is to host a snowflake entrance no
var capacity = 1;
var keepLocalAddresses = false;
var unsafeLogging = false;
var stunUrl = getCdnFront("snowflake-stun");
var stunServers = getCdnFront("snowflake-stun").split(",");
Random generator = new Random();
int randomIndex = generator.nextInt(stunServers.length);
var stunUrl = stunServers[randomIndex];
var relayUrl = getCdnFront("snowflake-relay-url");//"wss://snowflake.bamsoftware.com";
var natProbeUrl = getCdnFront("snowflake-nat-probe");//"https://snowflake-broker.torproject.net:8443/probe";
var brokerUrl = getCdnFront("snowflake-target-direct");//https://snowflake-broker.torproject.net/";
Expand Down Expand Up @@ -488,6 +492,11 @@ public void onCreate() {
ifilter.addAction(Intent.ACTION_POWER_DISCONNECTED);
registerReceiver(mPowerReceiver, ifilter);

manageSnowflakeProxy ();

}

public void manageSnowflakeProxy () {
if (Prefs.beSnowflakeProxy()) {

if (Prefs.limitSnowflakeProxyingCharging())
Expand All @@ -497,8 +506,8 @@ public void onCreate() {
else if (Prefs.limitSnowflakeProxyingWifi())
{
//check if on wifi
ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
boolean hasWifi = false;
ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
boolean hasWifi = false;

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
hasWifi = connMgr.getNetworkCapabilities(connMgr.getActiveNetwork()).hasTransport(NetworkCapabilities.TRANSPORT_WIFI);
Expand Down Expand Up @@ -556,7 +565,6 @@ public void onLost(@NonNull Network network) {
else
enableSnowflakeProxy();
}

}

protected String getCurrentStatus() {
Expand Down

0 comments on commit b2f746a

Please sign in to comment.