diff options
| author | Philipp Winter <phw@nymity.ch> | 2020-02-18 16:07:48 -0800 |
|---|---|---|
| committer | Philipp Winter <phw@nymity.ch> | 2020-02-18 16:07:48 -0800 |
| commit | 0f2349d1355584cca65c7c7a45a78aea39203b35 (patch) | |
| tree | 550a541279bda9288f71905bb59461f9199404da | |
| parent | ae0c4eb80047735ff6e7498309332d8d497e37f9 (diff) | |
| parent | 0594e98d7de843c9404227e55a8b259dd03e97a3 (diff) | |
Merge branch 'release-0.9.3'bridgedb-0.9.3
| -rw-r--r-- | .travis.requirements.txt | 1 | ||||
| -rw-r--r-- | CHANGELOG | 5 | ||||
| -rw-r--r-- | bridgedb.conf | 6 | ||||
| -rw-r--r-- | bridgedb/bridges.py | 7 | ||||
| -rw-r--r-- | bridgedb/distributors/https/server.py | 5 | ||||
| -rw-r--r-- | bridgedb/distributors/moat/server.py | 4 | ||||
| -rw-r--r-- | bridgedb/i18n/templates/bridgedb.pot | 13 | ||||
| -rw-r--r-- | bridgedb/test/test_https.py | 27 |
8 files changed, 19 insertions, 49 deletions
diff --git a/.travis.requirements.txt b/.travis.requirements.txt index 37a2fe5..6f3dec7 100644 --- a/.travis.requirements.txt +++ b/.travis.requirements.txt @@ -13,6 +13,7 @@ # $ make coverage # #------------------------------------------------------------------------------ +attrs==19.2.0 Babel==2.8.0 BeautifulSoup==3.2.2 Mako==1.1.1 @@ -1,3 +1,8 @@ +Changes in version 0.9.3 - 2020-02-18 + + * FIXES <https://bugs.torproject.org/33299> + This patch disables the distribution of FTE, ScrambleSuit, and obfs3. + Changes in version 0.9.2 - 2020-02-04 * FIXES <https://bugs.torproject.org/31427> diff --git a/bridgedb.conf b/bridgedb.conf index a0e00a8..5a8a38e 100644 --- a/bridgedb.conf +++ b/bridgedb.conf @@ -282,10 +282,10 @@ TASKS = { # to booleans. If ``True``, the PT is distributed; if ``False``, it isn't. SUPPORTED_TRANSPORTS = { 'obfs2': False, - 'obfs3': True, + 'obfs3': False, 'obfs4': True, - 'scramblesuit': True, - 'fte': True, + 'scramblesuit': False, + 'fte': False, } # PROBING_RESISTANT_TRANSPORTS is a list of transports that are resistant to diff --git a/bridgedb/bridges.py b/bridgedb/bridges.py index cf90b3b..ca1330b 100644 --- a/bridgedb/bridges.py +++ b/bridgedb/bridges.py @@ -335,8 +335,7 @@ class PluggableTransport(BridgeAddressBase): :vartype methodname: str :ivar methodname: The canonical "name" for this pluggable transport, i.e. the one which would be specified in a torrc file. For example, - ``"obfs2"``, ``"obfs3"``, ``"scramblesuit"`` would all be pluggable - transport method names. + ``"obfs4"``. :vartype address: ``ipaddr.IPv4Address`` or ``ipaddr.IPv6Address`` :ivar address: The IP address of the transport. Currently (as of 20 March @@ -514,7 +513,7 @@ class PluggableTransport(BridgeAddressBase): :rtype: str :returns: The (lowercased) methodname of this ``PluggableTransport``, - i.e. ``"obfs3"``, ``"scramblesuit"``, etc. + e.g. ``"obfs4"``. """ return self._methodname @@ -1413,7 +1412,7 @@ class Bridge(BridgeBackwardsCompatibility): :param str countryCode: A two-character country code specifier. :param str methodname: The type of pluggable transport to check, - i.e. ``'obfs3'``. + e.g. ``'obfs4'``. :rtype: bool :returns: ``True`` if any address:port pair which this bridge is running a :class:`PluggableTransport` on is blocked in diff --git a/bridgedb/distributors/https/server.py b/bridgedb/distributors/https/server.py index 69f04a3..660d34e 100644 --- a/bridgedb/distributors/https/server.py +++ b/bridgedb/distributors/https/server.py @@ -128,10 +128,7 @@ def replaceErrorPage(request, error, template_name=None, html=True): # "BridgeDB" # "pluggable transport" # "pluggable transports" - # "obfs2" - # "obfs3" - # "scramblesuit" - # "fteproxy" + # "obfs4" # "Tor" # "Tor Browser" # diff --git a/bridgedb/distributors/moat/server.py b/bridgedb/distributors/moat/server.py index 10096e7..97dfc42 100644 --- a/bridgedb/distributors/moat/server.py +++ b/bridgedb/distributors/moat/server.py @@ -406,9 +406,7 @@ class CaptchaFetchResource(CaptchaResource): * "type": "client-transports". * "supported": ['TRANSPORT', … ] where: - * TRANSPORT is a string identifying a transport, e.g. "obfs3" or - "obfs4". Currently supported transport identifiers are: - "vanilla", "fte", "obfs3", "obfs4", "scramblesuit". + * TRANSPORT is a string identifying a transport, e.g. "obfs4". :rtype: list :returns: The list of transports the client supports. """ diff --git a/bridgedb/i18n/templates/bridgedb.pot b/bridgedb/i18n/templates/bridgedb.pot index 483abbc..be57a8b 100644 --- a/bridgedb/i18n/templates/bridgedb.pot +++ b/bridgedb/i18n/templates/bridgedb.pot @@ -5,11 +5,11 @@ # msgid "" msgstr "" -"Project-Id-Version: bridgedb 0.9.0+19.ga5fa455.dirty\n" +"Project-Id-Version: bridgedb 0.9.2+5.gfd960bd.dirty\n" "Report-Msgid-Bugs-To: " "'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywords" "=bridgedb-reported,msgid&cc=isis,sysrqb&owner=isis'\n" -"POT-Creation-Date: 2020-02-04 10:59-0800\n" +"POT-Creation-Date: 2020-02-18 13:39-0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -42,13 +42,10 @@ msgstr "" #. "BridgeDB" #. "pluggable transport" #. "pluggable transports" -#. "obfs2" -#. "obfs3" -#. "scramblesuit" -#. "fteproxy" +#. "obfs4" #. "Tor" #. "Tor Browser" -#: bridgedb/distributors/https/server.py:138 +#: bridgedb/distributors/https/server.py:135 msgid "Sorry! Something went wrong with your request." msgstr "" @@ -270,7 +267,7 @@ msgid "" "\n" msgstr "" -#: bridgedb/strings.py:101 bridgedb/test/test_https.py:383 +#: bridgedb/strings.py:101 bridgedb/test/test_https.py:356 msgid "What are bridges?" msgstr "" diff --git a/bridgedb/test/test_https.py b/bridgedb/test/test_https.py index 8432c20..ffd7281 100644 --- a/bridgedb/test/test_https.py +++ b/bridgedb/test/test_https.py @@ -188,18 +188,6 @@ class HTTPTests(unittest.TestCase): self.openBrowser() self.assertRaises(mechanize.HTTPError, self.br.open, page) - def test_get_obfs3_ipv4(self): - self.openBrowser() - self.goToOptionsPage() - - PT = 'obfs3' - soup = self.submitOptions(transport=PT, ipv6=False, - captchaResponse=CAPTCHA_RESPONSE) - bridges = self.getBridgeLinesFromSoup(soup, fieldsPerBridge=3) - for bridge in bridges: - pt = bridge[0] - self.assertEquals(PT, pt) - def test_get_vanilla_ipv4(self): self.openBrowser() self.goToOptionsPage() @@ -226,21 +214,6 @@ class HTTPTests(unittest.TestCase): addr = bridge[0].rsplit(':', 1)[0].strip('[]') self.assertIsInstance(ipaddr.IPAddress(addr), ipaddr.IPv6Address) - def test_get_scramblesuit_ipv4(self): - self.openBrowser() - self.goToOptionsPage() - - PT = 'scramblesuit' - soup = self.submitOptions(transport=PT, ipv6=False, - captchaResponse=CAPTCHA_RESPONSE) - bridges = self.getBridgeLinesFromSoup(soup, fieldsPerBridge=4) - for bridge in bridges: - pt = bridge[0] - password = bridge[-1] - self.assertEquals(PT, pt) - self.assertTrue(password.find("password=") != -1, - "Password field missing expected text") - def test_get_obfs4_ipv4(self): """Try asking for obfs4 bridges, and check that the PT arguments in the returned bridge lines were space-separated. |
