Loading .gitignore +1 −7 Original line number Diff line number Diff line *.iml .gradle /local.properties /.idea/caches /.idea/libraries /.idea/modules.xml /.idea/workspace.xml /.idea/navEditor.xml /.idea/assetWizardSettings.xml .idea .DS_Store /build /captures .externalNativeBuild .cxx .idea/ /src/main/libs /src/main/obj build.gradle +19 −23 Original line number Diff line number Diff line Loading @@ -6,16 +6,9 @@ apply from : '../exportdependencies/publish.gradle' android { ndkVersion '21.3.6528147' /** sourceSets { main { jniLibs.srcDirs = ['./src/main/libs'] } }**/ defaultConfig { minSdkVersion 24 targetSdkVersion 31 targetSdkVersion 33 } buildTypes { Loading @@ -24,35 +17,38 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { resources { excludes += ['META-INF/androidx.localbroadcastmanager_localbroadcastmanager.version'] } } lintOptions { checkReleaseBuilds false lint { abortOnError true checkReleaseBuilds false disable "InvalidPackage" htmlReport true xmlReport false textReport false lintConfig file("../lint.xml") disable "InvalidPackage" } packagingOptions { exclude 'META-INF/androidx.localbroadcastmanager_localbroadcastmanager.version' textReport false xmlReport false } namespace 'org.torproject.android.service' } dependencies { api orbotlibs.guardian_jtorctl api orbotlibs.orbotlib api orbotlibs.tor_android implementation( orbotlibs.android_shell, orbotlibs.androidx_core, orbotlibs.androidx_localbroadcast, orbotlibs.ipt_proxy, orbotlibs.guardian_geoip, orbotlibs.guardian_jsocks, orbotlibs.portmapper, orbotlibs.tor_android, orbotlibs.pcap_core, orbotlibs.pcap_factory orbotlibs.pcap_factory, orbotlibs.androidx_work, orbotlibs.androidx_work_kotlin ) } src/main/AndroidManifest.xml +1 −2 Original line number Diff line number Diff line <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.torproject.android.service"> <manifest xmlns:android="http://schemas.android.com/apk/res/android"> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> Loading src/main/assets/fronts +11 −9 Original line number Diff line number Diff line snowflake-target https://snowflake-broker.torproject.net.global.prod.fastly.net/ snowflake-fingerprint 2B280B23E1107BB62ABFC40DDCC8824814F80A72 snowflake-front cdn.sstatic.net snowflake-alt-front ajax.aspnetcdn.com snowflake-alt-target https://snowflake-broker.azureedge.net/ snowflake-stun stun:stun.l.google.com:19302,stun:stun.voip.blackberry.com:3478,stun:stun.altar.com.pl:3478,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.sonetel.net:3478,stun:stun.stunprotocol.org:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 moat-cdn https://d50gd378qj74g.cloudfront.net/ moat-url https://moat.torproject.org.global.prod.fastly.net/ moat-front cdn.sstatic.net snowflake-amp-target https://snowflake-broker.torproject.net/ snowflake-front github.githubassets.com snowflake-stun stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.sonetel.net:3478,stun:stun.stunprotocol.org:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 snowflake-target-direct https://snowflake-broker.torproject.net/ snowflake-amp-front www.google.com snowflake-amp-cache https://cdn.ampproject.org/ moat-cdn https://d50gd378qj74g.cloudfront.net/ moat-url https://moat.torproject.org.global.prod.fastly.net/ moat-front github.githubassets.com snowflake-relay-url wss://snowflake.bamsoftware.com snowflake-nat-probe https://snowflake-broker.torproject.net:8443/probe snowflake-broker-1 snowflake 192.0.2.4:80 8838024498816A039FCBBAB14E6F40A0843051FA fingerprint=8838024498816A039FCBBAB14E6F40A0843051FA url=https://snowflake-broker.torproject.net.global.prod.fastly.net/ front=github.githubassets.com ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.net:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn snowflake-broker-2 snowflake 192.0.2.3:80 2B280B23E1107BB62ABFC40DDCC8824814F80A72 fingerprint=2B280B23E1107BB62ABFC40DDCC8824814F80A72 url=https://snowflake-broker.torproject.net.global.prod.fastly.net/ front=github.githubassets.com ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn snowflake-proxy-stun stun:stun.l.google.com:19302 src/main/java/org/torproject/android/service/OrbotConstants.java +39 −19 Original line number Diff line number Diff line Loading @@ -5,6 +5,8 @@ package org.torproject.android.service; import android.content.Intent; import org.torproject.jni.TorService; import java.util.Arrays; import java.util.List; Loading @@ -18,8 +20,6 @@ public interface OrbotConstants { String PREF_REACHABLE_ADDRESSES = "pref_reachable_addresses"; String PREF_REACHABLE_ADDRESSES_PORTS = "pref_reachable_addresses_ports"; String PREF_DISABLE_NETWORK = "pref_disable_network"; String PREF_TOR_SHARED_PREFS = "org.torproject.android_preferences"; String PREF_SOCKS = "pref_socks"; Loading @@ -27,6 +27,8 @@ public interface OrbotConstants { String PREF_HTTP = "pref_http"; String PREF_ISOLATE_DEST = "pref_isolate_dest"; String PREF_ISOLATE_PORT = "pref_isolate_port"; String PREF_ISOLATE_PROTOCOL = "pref_isolate_protocol"; String PREF_CONNECTION_PADDING = "pref_connection_padding"; String PREF_REDUCED_CONNECTION_PADDING = "pref_reduced_connection_padding"; Loading @@ -43,13 +45,11 @@ public interface OrbotConstants { String DIRECTORY_TOR_DATA = "tordata"; String LOG_SNOWFLAKE = "snowflake-log"; //geoip data file asset key String GEOIP_ASSET_KEY = "geoip"; String GEOIP6_ASSET_KEY = "geoip6"; String IP_LOCALHOST = "127.0.0.1"; int TOR_TRANSPROXY_PORT_DEFAULT = 9040; int TOR_DNS_PORT_DEFAULT = 5400; Loading @@ -64,7 +64,7 @@ public interface OrbotConstants { /** * A request to Orbot to transparently start Tor services */ String ACTION_START = "org.torproject.android.intent.action.START"; String ACTION_START = TorService.ACTION_START; String ACTION_STOP = "org.torproject.android.intent.action.STOP"; // needed when Orbot exits and tor is not running, but the notification is still active Loading @@ -74,28 +74,28 @@ public interface OrbotConstants { String ACTION_STOP_VPN = "org.torproject.android.intent.action.STOP_VPN"; String ACTION_RESTART_VPN = "org.torproject.android.intent.action.RESTART_VPN"; String ACTION_LOCAL_LOCALE_SET = "org.torproject.android.intent.LOCAL_LOCALE_SET"; String ACTION_UPDATE_ONION_NAMES = "org.torproject.android.intent.action.UPDATE_ONION_NAMES"; /** * {@link Intent} send by Orbot with {@code ON/OFF/STARTING/STOPPING} status */ String ACTION_STATUS = "org.torproject.android.intent.action.STATUS"; String ACTION_STATUS = TorService.ACTION_STATUS; String ACTION_CHECK_RUNNING_SYNC = "org.torproject.android.intent.action.CHECK_RUNNING_SYNC"; String ACTION_RUNNING_SYNC = "org.torproject.android.intent.action.RUNNING_SYNC"; /** * {@code String} that contains a status constant: {@link #STATUS_ON}, * {@link #STATUS_OFF}, {@link #STATUS_STARTING}, or * {@link #STATUS_STOPPING} */ String EXTRA_STATUS = "org.torproject.android.intent.extra.STATUS"; String EXTRA_STATUS = TorService.EXTRA_STATUS; /** * A {@link String} {@code packageName} for Orbot to direct its status reply * to, used in {@link #ACTION_START} {@link Intent}s sent to Orbot */ String EXTRA_PACKAGE_NAME = "org.torproject.android.intent.extra.PACKAGE_NAME"; String EXTRA_PACKAGE_NAME = TorService.EXTRA_PACKAGE_NAME; /** * The SOCKS proxy settings in URL form. */ Loading @@ -111,28 +111,44 @@ public interface OrbotConstants { String EXTRA_DNS_PORT = "org.torproject.android.intent.extra.DNS_PORT"; String EXTRA_TRANS_PORT = "org.torproject.android.intent.extra.TRANS_PORT"; /** * When present, indicates with certainty that the system itself did *not* send the Intent. * Effectively, the lack of this extra indicates that the VPN is being started by the system * as a result of the user's always-on preference for the VPN. * See: <a href="https://developer.android.com/guide/topics/connectivity/vpn#detect_always-on"> * Detect always-on | VPN | Android Developers</a> */ String EXTRA_NOT_SYSTEM = "org.torproject.android.intent.extra.NOT_SYSTEM"; String LOCAL_ACTION_LOG = "log"; String LOCAL_ACTION_STATUS = "status"; String LOCAL_ACTION_BANDWIDTH = "bandwidth"; String LOCAL_EXTRA_TOTAL_READ = "totalRead"; String LOCAL_EXTRA_TOTAL_WRITTEN = "totalWritten"; String LOCAL_EXTRA_LAST_WRITTEN = "lastWritten"; String LOCAL_EXTRA_LAST_READ = "lastRead"; String LOCAL_EXTRA_LOG = "log"; String LOCAL_EXTRA_BOOTSTRAP_PERCENT = "percent"; String LOCAL_ACTION_PORTS = "ports"; String LOCAL_ACTION_V3_NAMES_UPDATED = "V3_NAMES_UPDATED"; String LOCAL_ACTION_NOTIFICATION_START = "notification_start"; String LOCAL_ACTION_SNOWFLAKE_PROXY = "action_snowflake_proxy"; String LOCAL_ACTION_SMART_CONNECT_EVENT = "smart"; String LOCAL_EXTRA_SMART_STATUS = "status"; String SMART_STATUS_NO_DIRECT = "no_direct"; String SMART_STATUS_CIRCUMVENTION_ATTEMPT_FAILED = "bad_attempt_suggestion"; /** * All tor-related services and daemons are stopped */ String STATUS_OFF = "OFF"; String STATUS_OFF = TorService.STATUS_OFF; /** * All tor-related services and daemons have completed starting */ String STATUS_ON = "ON"; String STATUS_STARTING = "STARTING"; String STATUS_STOPPING = "STOPPING"; String STATUS_ON = TorService.STATUS_ON; String STATUS_STARTING = TorService.STATUS_STARTING; String STATUS_STOPPING = TorService.STATUS_STOPPING; /** * The user has disabled the ability for background starts triggered by Loading @@ -144,6 +160,7 @@ public interface OrbotConstants { // actions for internal command Intents String CMD_SET_EXIT = "setexit"; String CMD_ACTIVE = "ACTIVE"; String CMD_SNOWFLAKE_PROXY = "sf_proxy"; String ONION_SERVICES_DIR = "v3_onion_services"; String V3_CLIENT_AUTH_DIR = "v3_client_auth"; Loading @@ -153,16 +170,19 @@ public interface OrbotConstants { String PREFS_KEY_TORIFIED = "PrefTord"; /** * Include packages here to make the VPNService ignore these apps (On Lollipop+). This is to * Include packages here to make the VPNService ignore these apps. This is to * prevent tor over tor scenarios... */ List<String> BYPASS_VPN_PACKAGES = Arrays.asList("org.torproject.torbrowser_alpha", List<String> BYPASS_VPN_PACKAGES = Arrays.asList( "org.torproject.torbrowser_alpha", "org.torproject.torbrowser", "org.onionshare.android", // issue #618 "org.briarproject.briar.android" // https://github.com/guardianproject/orbot/issues/474 "org.briarproject.briar.android", // https://github.com/guardianproject/orbot/issues/474 "org.torproject.android" // /e/OS update : bypass Orbot app, if used as proxy. ); String SNOWFLAKE_EMOJI = "❄️"; String SNOWFLAKE_PROXY_EMOJI = "\uD83D\uDCF2"; List<String> VPN_SUGGESTED_APPS = Arrays.asList("org.thoughtcrime.securesms", // Signal "com.whatsapp", "com.instagram.android", "im.vector.app", "org.telegram.messenger", "com.twitter.android", "com.facebook.orca", "com.facebook.mlite", "com.brave.browser", "org.mozilla.focus"); String ONION_EMOJI = "\uD83E\uDDC5"; } Loading
.gitignore +1 −7 Original line number Diff line number Diff line *.iml .gradle /local.properties /.idea/caches /.idea/libraries /.idea/modules.xml /.idea/workspace.xml /.idea/navEditor.xml /.idea/assetWizardSettings.xml .idea .DS_Store /build /captures .externalNativeBuild .cxx .idea/ /src/main/libs /src/main/obj
build.gradle +19 −23 Original line number Diff line number Diff line Loading @@ -6,16 +6,9 @@ apply from : '../exportdependencies/publish.gradle' android { ndkVersion '21.3.6528147' /** sourceSets { main { jniLibs.srcDirs = ['./src/main/libs'] } }**/ defaultConfig { minSdkVersion 24 targetSdkVersion 31 targetSdkVersion 33 } buildTypes { Loading @@ -24,35 +17,38 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { resources { excludes += ['META-INF/androidx.localbroadcastmanager_localbroadcastmanager.version'] } } lintOptions { checkReleaseBuilds false lint { abortOnError true checkReleaseBuilds false disable "InvalidPackage" htmlReport true xmlReport false textReport false lintConfig file("../lint.xml") disable "InvalidPackage" } packagingOptions { exclude 'META-INF/androidx.localbroadcastmanager_localbroadcastmanager.version' textReport false xmlReport false } namespace 'org.torproject.android.service' } dependencies { api orbotlibs.guardian_jtorctl api orbotlibs.orbotlib api orbotlibs.tor_android implementation( orbotlibs.android_shell, orbotlibs.androidx_core, orbotlibs.androidx_localbroadcast, orbotlibs.ipt_proxy, orbotlibs.guardian_geoip, orbotlibs.guardian_jsocks, orbotlibs.portmapper, orbotlibs.tor_android, orbotlibs.pcap_core, orbotlibs.pcap_factory orbotlibs.pcap_factory, orbotlibs.androidx_work, orbotlibs.androidx_work_kotlin ) }
src/main/AndroidManifest.xml +1 −2 Original line number Diff line number Diff line <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.torproject.android.service"> <manifest xmlns:android="http://schemas.android.com/apk/res/android"> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> Loading
src/main/assets/fronts +11 −9 Original line number Diff line number Diff line snowflake-target https://snowflake-broker.torproject.net.global.prod.fastly.net/ snowflake-fingerprint 2B280B23E1107BB62ABFC40DDCC8824814F80A72 snowflake-front cdn.sstatic.net snowflake-alt-front ajax.aspnetcdn.com snowflake-alt-target https://snowflake-broker.azureedge.net/ snowflake-stun stun:stun.l.google.com:19302,stun:stun.voip.blackberry.com:3478,stun:stun.altar.com.pl:3478,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.sonetel.net:3478,stun:stun.stunprotocol.org:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 moat-cdn https://d50gd378qj74g.cloudfront.net/ moat-url https://moat.torproject.org.global.prod.fastly.net/ moat-front cdn.sstatic.net snowflake-amp-target https://snowflake-broker.torproject.net/ snowflake-front github.githubassets.com snowflake-stun stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.sonetel.net:3478,stun:stun.stunprotocol.org:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 snowflake-target-direct https://snowflake-broker.torproject.net/ snowflake-amp-front www.google.com snowflake-amp-cache https://cdn.ampproject.org/ moat-cdn https://d50gd378qj74g.cloudfront.net/ moat-url https://moat.torproject.org.global.prod.fastly.net/ moat-front github.githubassets.com snowflake-relay-url wss://snowflake.bamsoftware.com snowflake-nat-probe https://snowflake-broker.torproject.net:8443/probe snowflake-broker-1 snowflake 192.0.2.4:80 8838024498816A039FCBBAB14E6F40A0843051FA fingerprint=8838024498816A039FCBBAB14E6F40A0843051FA url=https://snowflake-broker.torproject.net.global.prod.fastly.net/ front=github.githubassets.com ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.net:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn snowflake-broker-2 snowflake 192.0.2.3:80 2B280B23E1107BB62ABFC40DDCC8824814F80A72 fingerprint=2B280B23E1107BB62ABFC40DDCC8824814F80A72 url=https://snowflake-broker.torproject.net.global.prod.fastly.net/ front=github.githubassets.com ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn snowflake-proxy-stun stun:stun.l.google.com:19302
src/main/java/org/torproject/android/service/OrbotConstants.java +39 −19 Original line number Diff line number Diff line Loading @@ -5,6 +5,8 @@ package org.torproject.android.service; import android.content.Intent; import org.torproject.jni.TorService; import java.util.Arrays; import java.util.List; Loading @@ -18,8 +20,6 @@ public interface OrbotConstants { String PREF_REACHABLE_ADDRESSES = "pref_reachable_addresses"; String PREF_REACHABLE_ADDRESSES_PORTS = "pref_reachable_addresses_ports"; String PREF_DISABLE_NETWORK = "pref_disable_network"; String PREF_TOR_SHARED_PREFS = "org.torproject.android_preferences"; String PREF_SOCKS = "pref_socks"; Loading @@ -27,6 +27,8 @@ public interface OrbotConstants { String PREF_HTTP = "pref_http"; String PREF_ISOLATE_DEST = "pref_isolate_dest"; String PREF_ISOLATE_PORT = "pref_isolate_port"; String PREF_ISOLATE_PROTOCOL = "pref_isolate_protocol"; String PREF_CONNECTION_PADDING = "pref_connection_padding"; String PREF_REDUCED_CONNECTION_PADDING = "pref_reduced_connection_padding"; Loading @@ -43,13 +45,11 @@ public interface OrbotConstants { String DIRECTORY_TOR_DATA = "tordata"; String LOG_SNOWFLAKE = "snowflake-log"; //geoip data file asset key String GEOIP_ASSET_KEY = "geoip"; String GEOIP6_ASSET_KEY = "geoip6"; String IP_LOCALHOST = "127.0.0.1"; int TOR_TRANSPROXY_PORT_DEFAULT = 9040; int TOR_DNS_PORT_DEFAULT = 5400; Loading @@ -64,7 +64,7 @@ public interface OrbotConstants { /** * A request to Orbot to transparently start Tor services */ String ACTION_START = "org.torproject.android.intent.action.START"; String ACTION_START = TorService.ACTION_START; String ACTION_STOP = "org.torproject.android.intent.action.STOP"; // needed when Orbot exits and tor is not running, but the notification is still active Loading @@ -74,28 +74,28 @@ public interface OrbotConstants { String ACTION_STOP_VPN = "org.torproject.android.intent.action.STOP_VPN"; String ACTION_RESTART_VPN = "org.torproject.android.intent.action.RESTART_VPN"; String ACTION_LOCAL_LOCALE_SET = "org.torproject.android.intent.LOCAL_LOCALE_SET"; String ACTION_UPDATE_ONION_NAMES = "org.torproject.android.intent.action.UPDATE_ONION_NAMES"; /** * {@link Intent} send by Orbot with {@code ON/OFF/STARTING/STOPPING} status */ String ACTION_STATUS = "org.torproject.android.intent.action.STATUS"; String ACTION_STATUS = TorService.ACTION_STATUS; String ACTION_CHECK_RUNNING_SYNC = "org.torproject.android.intent.action.CHECK_RUNNING_SYNC"; String ACTION_RUNNING_SYNC = "org.torproject.android.intent.action.RUNNING_SYNC"; /** * {@code String} that contains a status constant: {@link #STATUS_ON}, * {@link #STATUS_OFF}, {@link #STATUS_STARTING}, or * {@link #STATUS_STOPPING} */ String EXTRA_STATUS = "org.torproject.android.intent.extra.STATUS"; String EXTRA_STATUS = TorService.EXTRA_STATUS; /** * A {@link String} {@code packageName} for Orbot to direct its status reply * to, used in {@link #ACTION_START} {@link Intent}s sent to Orbot */ String EXTRA_PACKAGE_NAME = "org.torproject.android.intent.extra.PACKAGE_NAME"; String EXTRA_PACKAGE_NAME = TorService.EXTRA_PACKAGE_NAME; /** * The SOCKS proxy settings in URL form. */ Loading @@ -111,28 +111,44 @@ public interface OrbotConstants { String EXTRA_DNS_PORT = "org.torproject.android.intent.extra.DNS_PORT"; String EXTRA_TRANS_PORT = "org.torproject.android.intent.extra.TRANS_PORT"; /** * When present, indicates with certainty that the system itself did *not* send the Intent. * Effectively, the lack of this extra indicates that the VPN is being started by the system * as a result of the user's always-on preference for the VPN. * See: <a href="https://developer.android.com/guide/topics/connectivity/vpn#detect_always-on"> * Detect always-on | VPN | Android Developers</a> */ String EXTRA_NOT_SYSTEM = "org.torproject.android.intent.extra.NOT_SYSTEM"; String LOCAL_ACTION_LOG = "log"; String LOCAL_ACTION_STATUS = "status"; String LOCAL_ACTION_BANDWIDTH = "bandwidth"; String LOCAL_EXTRA_TOTAL_READ = "totalRead"; String LOCAL_EXTRA_TOTAL_WRITTEN = "totalWritten"; String LOCAL_EXTRA_LAST_WRITTEN = "lastWritten"; String LOCAL_EXTRA_LAST_READ = "lastRead"; String LOCAL_EXTRA_LOG = "log"; String LOCAL_EXTRA_BOOTSTRAP_PERCENT = "percent"; String LOCAL_ACTION_PORTS = "ports"; String LOCAL_ACTION_V3_NAMES_UPDATED = "V3_NAMES_UPDATED"; String LOCAL_ACTION_NOTIFICATION_START = "notification_start"; String LOCAL_ACTION_SNOWFLAKE_PROXY = "action_snowflake_proxy"; String LOCAL_ACTION_SMART_CONNECT_EVENT = "smart"; String LOCAL_EXTRA_SMART_STATUS = "status"; String SMART_STATUS_NO_DIRECT = "no_direct"; String SMART_STATUS_CIRCUMVENTION_ATTEMPT_FAILED = "bad_attempt_suggestion"; /** * All tor-related services and daemons are stopped */ String STATUS_OFF = "OFF"; String STATUS_OFF = TorService.STATUS_OFF; /** * All tor-related services and daemons have completed starting */ String STATUS_ON = "ON"; String STATUS_STARTING = "STARTING"; String STATUS_STOPPING = "STOPPING"; String STATUS_ON = TorService.STATUS_ON; String STATUS_STARTING = TorService.STATUS_STARTING; String STATUS_STOPPING = TorService.STATUS_STOPPING; /** * The user has disabled the ability for background starts triggered by Loading @@ -144,6 +160,7 @@ public interface OrbotConstants { // actions for internal command Intents String CMD_SET_EXIT = "setexit"; String CMD_ACTIVE = "ACTIVE"; String CMD_SNOWFLAKE_PROXY = "sf_proxy"; String ONION_SERVICES_DIR = "v3_onion_services"; String V3_CLIENT_AUTH_DIR = "v3_client_auth"; Loading @@ -153,16 +170,19 @@ public interface OrbotConstants { String PREFS_KEY_TORIFIED = "PrefTord"; /** * Include packages here to make the VPNService ignore these apps (On Lollipop+). This is to * Include packages here to make the VPNService ignore these apps. This is to * prevent tor over tor scenarios... */ List<String> BYPASS_VPN_PACKAGES = Arrays.asList("org.torproject.torbrowser_alpha", List<String> BYPASS_VPN_PACKAGES = Arrays.asList( "org.torproject.torbrowser_alpha", "org.torproject.torbrowser", "org.onionshare.android", // issue #618 "org.briarproject.briar.android" // https://github.com/guardianproject/orbot/issues/474 "org.briarproject.briar.android", // https://github.com/guardianproject/orbot/issues/474 "org.torproject.android" // /e/OS update : bypass Orbot app, if used as proxy. ); String SNOWFLAKE_EMOJI = "❄️"; String SNOWFLAKE_PROXY_EMOJI = "\uD83D\uDCF2"; List<String> VPN_SUGGESTED_APPS = Arrays.asList("org.thoughtcrime.securesms", // Signal "com.whatsapp", "com.instagram.android", "im.vector.app", "org.telegram.messenger", "com.twitter.android", "com.facebook.orca", "com.facebook.mlite", "com.brave.browser", "org.mozilla.focus"); String ONION_EMOJI = "\uD83E\uDDC5"; }