Package org.briarproject.onionwrapper
Interface CircumventionProvider
@ThreadSafe
@NotNullByDefault
public interface CircumventionProvider
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String[]Countries where Tor is blocked, i.e.static final String[]Countries where bridge connections are likely to work.static final String[]Countries where default obfs4 or vanilla bridges are likely to work.static final String[]Countries where vanilla bridges are blocked via DPI but non-default obfs4 bridges, meek and snowflake may work.static final String[]Countries where non-default obfs4 or vanilla bridges are likely to work. -
Method Summary
Modifier and TypeMethodDescriptionbooleandoBridgesWork(String countryCode) Returns true if bridge connections of some type work in the given country.getBridges(CircumventionProvider.BridgeType type, String countryCode, boolean letsEncrypt) getSuitableBridgeTypes(String countryCode) Returns the types of bridge connection that are suitable for the given country, orDEFAULT_BRIDGESif no bridge type is known to work.booleanisTorProbablyBlocked(String countryCode) Returns true if vanilla Tor connections are blocked in the given country.
-
Field Details
-
BLOCKED
Countries where Tor is blocked, i.e. vanilla Tor connection won't work.See https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 and https://trac.torproject.org/projects/tor/wiki/doc/OONI/censorshipwiki
-
BRIDGES
Countries where bridge connections are likely to work. Should be a subset ofBLOCKEDand the union ofDEFAULT_BRIDGES,NON_DEFAULT_BRIDGESandDPI_BRIDGES. -
DEFAULT_BRIDGES
Countries where default obfs4 or vanilla bridges are likely to work. Should be a subset ofBRIDGES. -
NON_DEFAULT_BRIDGES
Countries where non-default obfs4 or vanilla bridges are likely to work. Should be a subset ofBRIDGES. -
DPI_BRIDGES
Countries where vanilla bridges are blocked via DPI but non-default obfs4 bridges, meek and snowflake may work. Should be a subset ofBRIDGES.
-
-
Method Details
-
isTorProbablyBlocked
Returns true if vanilla Tor connections are blocked in the given country. -
doBridgesWork
Returns true if bridge connections of some type work in the given country. -
getSuitableBridgeTypes
Returns the types of bridge connection that are suitable for the given country, orDEFAULT_BRIDGESif no bridge type is known to work. -
getBridges
List<String> getBridges(CircumventionProvider.BridgeType type, String countryCode, boolean letsEncrypt)
-