[tor-commits] [translation/tails-perl5lib_completed] Update translations for tails-perl5lib_completed
commit 80a1f550a9c4de92458d8f7240c65f86d3c0f09e Author: Translation commit bot Date: Wed Dec 20 23:48:04 2017 + Update translations for tails-perl5lib_completed --- ko.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko.po b/ko.po index e1d8d7055..197db7eff 100644 --- a/ko.po +++ b/ko.po @@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: Tails developers \n" "POT-Creation-Date: 2017-05-20 10:59+0200\n" -"PO-Revision-Date: 2017-09-19 22:59+\n" +"PO-Revision-Date: 2017-12-20 23:36+\n" "Last-Translator: Chris Park \n" "Language-Team: Korean (http://www.transifex.com/otf/torproject/language/ko/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-perl5lib] Update translations for tails-perl5lib
commit 723337564088b4fce2e3c020935b1d10a13a05ad Author: Translation commit bot Date: Wed Dec 20 23:47:59 2017 + Update translations for tails-perl5lib --- ko.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko.po b/ko.po index e1d8d7055..197db7eff 100644 --- a/ko.po +++ b/ko.po @@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: Tails developers \n" "POT-Creation-Date: 2017-05-20 10:59+0200\n" -"PO-Revision-Date: 2017-09-19 22:59+\n" +"PO-Revision-Date: 2017-12-20 23:36+\n" "Last-Translator: Chris Park \n" "Language-Team: Korean (http://www.transifex.com/otf/torproject/language/ko/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-misc] Update translations for tails-misc
commit 11ea665c8e34d5249795298c67b07a981c2f60cf Author: Translation commit bot Date: Wed Dec 20 23:47:05 2017 + Update translations for tails-misc --- ko.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ko.po b/ko.po index 3d5453cfc..e4f87f890 100644 --- a/ko.po +++ b/ko.po @@ -14,7 +14,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-09-13 20:10+0200\n" -"PO-Revision-Date: 2017-09-19 18:35+\n" +"PO-Revision-Date: 2017-12-20 23:36+\n" "Last-Translator: carolyn \n" "Language-Team: Korean (http://www.transifex.com/otf/torproject/language/ko/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-persistence-setup_completed] Update translations for tails-persistence-setup_completed
commit 6775c866fb7d63d1bb578bbf09fc58498e7670f5 Author: Translation commit bot Date: Wed Dec 20 23:46:10 2017 + Update translations for tails-persistence-setup_completed --- ko/ko.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ko/ko.po b/ko/ko.po index edae1c44d..b32429a1f 100644 --- a/ko/ko.po +++ b/ko/ko.po @@ -7,13 +7,13 @@ # Chris Park , 2016 # snotree , 2017 # Dr.what , 2014 -# Yongmin Hong , 2015 +# Revi_, 2015 msgid "" msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: Tails developers \n" "POT-Creation-Date: 2017-05-15 13:51+0200\n" -"PO-Revision-Date: 2017-09-19 17:08+\n" +"PO-Revision-Date: 2017-12-20 23:36+\n" "Last-Translator: snotree \n" "Language-Team: Korean (http://www.transifex.com/otf/torproject/language/ko/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-persistence-setup] Update translations for tails-persistence-setup
commit f9049744c078211d8bcec135ee942236fd446223 Author: Translation commit bot Date: Wed Dec 20 23:46:04 2017 + Update translations for tails-persistence-setup --- ko/ko.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ko/ko.po b/ko/ko.po index edae1c44d..b32429a1f 100644 --- a/ko/ko.po +++ b/ko/ko.po @@ -7,13 +7,13 @@ # Chris Park , 2016 # snotree , 2017 # Dr.what , 2014 -# Yongmin Hong , 2015 +# Revi_, 2015 msgid "" msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: Tails developers \n" "POT-Creation-Date: 2017-05-15 13:51+0200\n" -"PO-Revision-Date: 2017-09-19 17:08+\n" +"PO-Revision-Date: 2017-12-20 23:36+\n" "Last-Translator: snotree \n" "Language-Team: Korean (http://www.transifex.com/otf/torproject/language/ko/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/bridgedb] Update translations for bridgedb
commit 4568cc317d928425cb63718e4883ae9b8ac48321 Author: Translation commit bot Date: Wed Dec 20 23:45:05 2017 + Update translations for bridgedb --- ko/LC_MESSAGES/bridgedb.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ko/LC_MESSAGES/bridgedb.po b/ko/LC_MESSAGES/bridgedb.po index 89e5c8b26..db8661212 100644 --- a/ko/LC_MESSAGES/bridgedb.po +++ b/ko/LC_MESSAGES/bridgedb.po @@ -17,13 +17,13 @@ # ì´í¼ìì리 , 2012 # Sam Ryoo , 2014 # sangmin lee , 2016 -# Yongmin Hong , 2014 +# Revi_, 2014 msgid "" msgstr "" "Project-Id-Version: The Tor Project\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: 2015-07-25 03:40+\n" -"PO-Revision-Date: 2017-10-02 09:43+\n" +"PO-Revision-Date: 2017-12-20 23:35+\n" "Last-Translator: Hyuntae Chun\n" "Language-Team: Korean (http://www.transifex.com/otf/torproject/language/ko/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Add CHANGELOG entries for 0.6.2.
commit 1096bf4d9ed1cbded7ce8ad2a183338f969b1166 Author: Isis Lovecruft Date: Wed Dec 20 23:22:31 2017 + Add CHANGELOG entries for 0.6.2. --- CHANGELOG | 20 1 file changed, 20 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index effc405..82cf769 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,23 @@ +Changes in version 0.6.2 - 2017-12-20 + +* FIXES #24636 https://bugs.torproject.org/24636 +The moat API specification included an extra response type which +could be sent if there was no overlap between transports the +client supported and those which the server supported. This has +been removed from the specification, which now describes the +behaviour moat has always exhibited: if there is no overlap, the +server responds with a CAPTCHA image response which includes the +list of transports it does support. + +* FIXES #24637 https://bugs.torproject.org/24637 +The moat server did not respond correctly with the specified JSON +API error type when there were no bridges available. It now +responds correctly with a 404 error whose details describe why the +request could not be fulfilled. The moat server also now logs +messages if there were not the configured +MOAT_BRIDGES_PER_RESPONSE number of bridges available. + + Changes in version 0.6.1 - 2017-12-13 * ADDS a shell script, scripts/test-moat, for testing either a ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttonproperties] Update translations for torbutton-torbuttonproperties
commit deca88701484ffb97af454b1c1b5f09cab5544d7 Author: Translation commit bot Date: Wed Dec 20 23:17:39 2017 + Update translations for torbutton-torbuttonproperties --- mk/torbutton.properties | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/mk/torbutton.properties b/mk/torbutton.properties index d436164dc..e572bf31a 100644 --- a/mk/torbutton.properties +++ b/mk/torbutton.properties @@ -5,7 +5,7 @@ torbutton.circuit_display.this_browser = ÐÐ²Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ torbutton.circuit_display.relay = Ñазол torbutton.circuit_display.tor_bridge = ÐоÑÑ / Ðазол torbutton.circuit_display.unknown_country = ÐепознаÑа дÑжава -torbutton.content_sizer.margin_tooltip = Tor Browser adds this margin to make the width and height of your window less distinctive, and thus reduces the ability of people to track you online. +torbutton.content_sizer.margin_tooltip = Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑÐ¾Ñ Ñа додава ова маÑгина за ÑиÑинаÑа и виÑинаÑа на ваÑÐ¸Ð¾Ñ Ð¿ÑозоÑÐµÑ Ð´Ð° биде поÑÑандаÑден, Ñо ÑÑо Ñе намалÑва можноÑÑа лÑÑеÑо да ве ÑÐ»ÐµÐ´Ð°Ñ Ð¾Ð½Ð»Ð°Ñн. torbutton.panel.tooltip.disabled = ÐликнеÑе за да го овозможиÑе Ð¢Ð¾Ñ torbutton.panel.tooltip.enabled = ÐликнеÑе за да го оневозможиÑе Ð¢Ð¾Ñ torbutton.panel.label.disabled = Ð¢Ð¾Ñ Ðµ оневозможен @@ -28,10 +28,10 @@ torbutton.popup.confirm_plugins = ÐÑиклÑÑоÑиÑе како Flash мож torbutton.popup.never_ask_again = Ðе ме пÑаÑÑÐ²Ð°Ñ Ð¿Ð¾Ð²ÑоÑно torbutton.popup.confirm_newnym = Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑÐ¾Ñ Ñе ги заÑвоÑи ÑиÑе пÑозоÑÑи и Ñабови. СиÑе веб ÑеÑии Ñе Ð±Ð¸Ð´Ð°Ñ Ð¸Ð·Ð³Ñбени.\n\nÐовÑоÑно ÑÑаÑÑÑваÑÑе го Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑÐ¾Ñ Ñега да го пÑомениÑе ваÑÐ¸Ð¾Ñ Ð¸Ð´ÐµÐ½ÑиÑеÑ.\n\n -torbutton.slider_notification = The green onion menu now has a security slider which lets you adjust your security level. Check it out! -torbutton.slider_notification_button = Open security settings +torbutton.slider_notification = ÐеленоÑо кÑомид мени Ñега има безбедноÑен Ð»Ð¸Ð·Ð³Ð°Ñ ÐºÐ¾Ñ Ð²Ð¸ дозволÑва да го пÑилагодиÑе ваÑеÑо ниво на безбедноÑÑ. ÐогледнеÑе го! +torbutton.slider_notification_button = ÐÑвоÑи ги безбедноÑниÑе поÑÑавки -torbutton.maximize_warning = Maximizing Tor Browser can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave Tor Browser windows in their original default size. +torbutton.maximize_warning = ÐакÑимизиÑаÑеÑо на Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑÐ¾Ñ Ð´Ð¾Ð·Ð²Ð¾Ð»Ñва на веб ÑÑÑаниÑе да Ñа ÑÑвÑÐ´Ð°Ñ Ð³Ð¾Ð»ÐµÐ¼Ð¸Ð½Ð°Ñа на ваÑÐ¸Ð¾Ñ Ð¼Ð¾Ð½Ð¸ÑоÑ, ÑÑо пак може да Ñе коÑиÑÑи за ваÑе ÑледеÑе. Ðи пÑепоÑаÑÑваме да го оÑÑавиÑе пÑозоÑеÑÐ¾Ñ Ð½Ð° Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑÐ¾Ñ ÑвоÑаÑа оÑигинална големина. # Canvas permission prompt. Strings are kept here for ease of translation. canvas.siteprompt=Ðваа веб ÑÑÑана (%S) пÑобÑва да извлеÑе HTML5 подаÑоÑи, пÑÐµÐºÑ ÐºÐ¾Ð¸ може ÑникаÑно да Ñе иденÑиÑÑкÑва ваÑÐ¸Ð¾Ñ ÐºÐ¾Ð¼Ð¿ÑÑÑеÑ.\n\nТÑеба ли Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑÐ¾Ñ Ð´Ð° дозволи оваа веб ÑÑÑана да ги извлеÑе HTML5 подаÑоÑиÑе? @@ -46,6 +46,6 @@ canvas.neverAccessKey=e # LOCALIZATION NOTE: %S is the application name. profileProblemTitle=%S ÐÑоÑил пÑоблем profileReadOnly=Ðе можеÑе да го ÑÑаÑÑÑваÑе %S од ÑиÑÑем без запиÑÑваÑки пÑивилегии. ÐопиÑаÑÑе %S на дÑÑга локаÑиÑа пÑед пÑоба за коÑиÑÑеÑе. -profileReadOnlyMac=You cannot run %S from a read-only file system. Please copy %S to your Desktop or Applications folder before trying to use it. -profileAccessDenied=%S does not have permission to access the profile. Please adjust your file system permissions and try again. -profileMigrationFailed=Migration of your existing %S profile failed.\nNew settings will be used. +profileReadOnlyMac=Ðе можеÑе да го ÑÑаÑÑÑваÑе %S од ÑиÑÑем без запиÑÑваÑки пÑивилегии. ÐопиÑаÑÑе го %S на РабоÑнаÑа повÑÑина или во ÐпликаÑивнаÑа папка / Program Files. +profileAccessDenied=%S нема дозвола да пÑиÑÑапи на пÑоÑилоÑ. ÐÑилагодеÑе ги ÑиÑÑемÑкиÑе пÑивилегии н
[tor-commits] [bridgedb/master] Implement moat error handling when no bridges are available.
commit 4c799735b5b86beea486ee3b1cd0ea8a4f5cb4b5 Author: Isis Lovecruft Date: Wed Dec 20 22:36:06 2017 + Implement moat error handling when no bridges are available. * FIXES #24637: https://bugs.torproject.org/24637 --- bridgedb/distributors/moat/server.py | 73 +- bridgedb/test/test_distributors_moat_server.py | 55 +-- 2 files changed, 112 insertions(+), 16 deletions(-) diff --git a/bridgedb/distributors/moat/server.py b/bridgedb/distributors/moat/server.py index eb356fe..a669ee5 100644 --- a/bridgedb/distributors/moat/server.py +++ b/bridgedb/distributors/moat/server.py @@ -209,6 +209,7 @@ class JsonAPIErrorResource(JsonAPIResource): resource403 = JsonAPIErrorResource(code=403, status="Forbidden") +resource404 = JsonAPIErrorResource(code=404, status="Not Found") resource406 = JsonAPIErrorResource(code=406, status="Not Acceptable") resource415 = JsonAPIErrorResource(code=415, status="Unsupported Media Type") resource419 = JsonAPIErrorResource(code=419, status="No You're A Teapot") @@ -497,21 +498,21 @@ class CaptchaCheckResource(CaptchaResource): self.nBridgesToGive = N self.useForwardedHeader = useForwardedHeader -def getBridgeLines(self, ip, data): -"""Get bridge lines for a client's HTTP request. +def createBridgeRequest(self, ip, data): +"""Create an appropriate :class:`MoatBridgeRequest` from the ``data`` +of a client's request. :param str ip: The client's IP address. :param dict data: The decoded JSON API data from the client's request. -:rtype: list or None -:returns: A list of bridge lines. +:rtype: :class:`MoatBridgeRequest` +:returns: An object which specifies the filters for retreiving +the type of bridges that the client requested. """ -bridgeLines = None -interval = self.schedule.intervalStart(time.time()) +logging.debug("Creating moat bridge request object for %s." % ip) -logging.debug("Replying to JSON API request from %s." % ip) +bridgeRequest = MoatBridgeRequest() if ip and data: -bridgeRequest = MoatBridgeRequest() bridgeRequest.client = IPAddress(ip) bridgeRequest.isValid(True) bridgeRequest.withIPversion() @@ -519,6 +520,23 @@ class CaptchaCheckResource(CaptchaResource): bridgeRequest.withoutBlockInCountry(data) bridgeRequest.generateFilters() +return bridgeRequest + +def getBridgeLines(self, bridgeRequest): +"""Get bridge lines for a client's HTTP request. + +:type bridgeRequest: :class:`MoatBridgeRequest` +:param bridgeRequest: A valid bridge request object with pre-generated +filters (as returned by :meth:`createBridgeRequest`). +:rtype: list +:returns: A list of bridge lines. +""" +bridgeLines = list() +interval = self.schedule.intervalStart(time.time()) + +logging.debug("Replying to JSON API request from %s." % bridgeRequest.client) + +if bridgeRequest.isValid(): bridges = self.distributor.getBridges(bridgeRequest, interval) bridgeLines = [replaceControlChars(bridge.getBridgeLine(bridgeRequest)) for bridge in bridges] @@ -599,17 +617,34 @@ class CaptchaCheckResource(CaptchaResource): return valid -def failureResponse(self, id, request): -"""Respond with status code "419 No You're A Teapot".""" -error_response = resource419 -error_response.type = 'moat-bridges' +def failureResponse(self, id, request, bridgeRequest=None): +"""Respond with status code "419 No You're A Teapot" if the captcha +verification failed, or status code "404 Not Found" if there +were none of the type of bridges requested. +:param int id: The JSON API "id" field of the +``JsonAPIErrorResource`` which should be returned. +:type request: :api:`twisted.web.http.Request` +:param request: The current request we're handling. +:type bridgeRequest: :class:`MoatBridgeRequest` +:param bridgeRequest: A valid bridge request object with pre-generated +filters (as returned by :meth:`createBridgeRequest`). +""" if id == 4: +error_response = resource419 error_response.id = 4 error_response.detail = "The CAPTCHA solution was incorrect." elif id == 5: +error_response = resource419 error_response.id = 5 error_response.detail = "The CAPTCHA challenge timed out." +elif id == 6: +error_response = resource404 +error_response.id = 6 +error_response.detail = ("No bridges available to fulfill " + "request: %s.") % bridgeRequest + +
[tor-commits] [bridgedb/master] Revert "Change "client-transport" moat resource type to "moat-transports"."
commit 6aaa2ed270e432efddd7cdc9ea81b83c00fe9c75 Author: Isis Lovecruft Date: Wed Dec 13 20:10:32 2017 + Revert "Change "client-transport" moat resource type to "moat-transports"." This reverts commit 50a9321fadcfd0e9a4f30bc1919c1bf46d27d8e1. --- bridgedb/distributors/moat/server.py | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/bridgedb/distributors/moat/server.py b/bridgedb/distributors/moat/server.py index 096b8c0..eb356fe 100644 --- a/bridgedb/distributors/moat/server.py +++ b/bridgedb/distributors/moat/server.py @@ -386,12 +386,12 @@ class CaptchaFetchResource(CaptchaResource): :param str request: A JSON blob containing the following fields: * "version": The moat protocol version. -* "type": "moat-transports". -* "supported": ["TRANSPORT", ⦠] +* "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. "obfs3" or + "obfs4". Currently supported transport identifiers are: + "vanilla", "fte", "obfs3", "obfs4", "scramblesuit". :rtype: list :returns: The list of transports the client supports. """ @@ -401,10 +401,10 @@ class CaptchaFetchResource(CaptchaResource): encoded_data = request.content.read() data = json.loads(encoded_data)["data"][0] -if data["type"] != "moat-transports": +if data["type"] != "client-transports": raise ValueError( "Bad JSON API object type: expected %s got %s" % -('moat-transports', data["type"])) +('client-transports', data["type"])) elif data["version"] != MOAT_API_VERSION: raise ValueError( "Client requested protocol version %s, but we're using %s" % ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Change "client-transport" moat resource type to "moat-transports".
commit 50a9321fadcfd0e9a4f30bc1919c1bf46d27d8e1 Author: Isis Lovecruft Date: Wed Dec 13 18:24:04 2017 + Change "client-transport" moat resource type to "moat-transports". --- bridgedb/distributors/moat/server.py | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/bridgedb/distributors/moat/server.py b/bridgedb/distributors/moat/server.py index eb356fe..096b8c0 100644 --- a/bridgedb/distributors/moat/server.py +++ b/bridgedb/distributors/moat/server.py @@ -386,12 +386,12 @@ class CaptchaFetchResource(CaptchaResource): :param str request: A JSON blob containing the following fields: * "version": The moat protocol version. -* "type": "client-transports". -* "supported": ['TRANSPORT', ⦠] +* "type": "moat-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. + "obfs3" or "obfs4". Currently supported transport identifiers + are: "vanilla", "fte", "obfs3", "obfs4", "scramblesuit". :rtype: list :returns: The list of transports the client supports. """ @@ -401,10 +401,10 @@ class CaptchaFetchResource(CaptchaResource): encoded_data = request.content.read() data = json.loads(encoded_data)["data"][0] -if data["type"] != "client-transports": +if data["type"] != "moat-transports": raise ValueError( "Bad JSON API object type: expected %s got %s" % -('client-transports', data["type"])) +('moat-transports', data["type"])) elif data["version"] != MOAT_API_VERSION: raise ValueError( "Client requested protocol version %s, but we're using %s" % ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Add a human-readable __str__() method to BridgeRequest classes.
commit f37c22c6284f13fb9f26f78926f0d115b468fb71 Author: Isis Lovecruft Date: Wed Dec 20 21:38:12 2017 + Add a human-readable __str__() method to BridgeRequest classes. --- bridgedb/bridgerequest.py | 9 + 1 file changed, 9 insertions(+) diff --git a/bridgedb/bridgerequest.py b/bridgedb/bridgerequest.py index e555e0a..d5af05f 100644 --- a/bridgedb/bridgerequest.py +++ b/bridgedb/bridgerequest.py @@ -117,6 +117,15 @@ class BridgeRequestBase(object): self.client = 'default' self.valid = False +def __str__(self): +"""Return a human-readable string describing this bridge request.""" +return "%s(ipVersion=%d, transports=%s, notBlockedIn=%s, valid=%s)" % \ + (self.__class__.__name__, +self.ipVersion, +self.transports, +self.notBlockedIn, +self.valid) + @property def ipVersion(self): """The IP version of bridge addresses to distribute to the client. ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'fix/24636' into develop
commit 91305fa523c8b9e6a631d8c29f583e3da722832e Merge: 9a926f2 da84c25 Author: Isis Lovecruft Date: Wed Dec 20 22:59:11 2017 + Merge branch 'fix/24636' into develop README.rst | 25 ++--- 1 file changed, 14 insertions(+), 11 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'release/0.6.2'
commit 2ae288d6f7e3051b3aa3c85e9a8341c3e21baf4b Merge: 9bb5de6 6ace9a3 Author: Isis Lovecruft Date: Wed Dec 20 23:07:12 2017 + Merge branch 'release/0.6.2' README.rst | 34 ++-- bridgedb/bridgerequest.py | 9 bridgedb/distributors/moat/server.py | 73 +- bridgedb/test/test_distributors_moat_server.py | 55 +-- 4 files changed, 140 insertions(+), 31 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'release/0.6.1'
commit 9bb5de6b07d33bef6ca7db22a70398018523b6e4 Merge: 659b4ed 6aaa2ed Author: Isis Lovecruft Date: Wed Dec 13 20:12:08 2017 + Merge branch 'release/0.6.1' CHANGELOG | 53 + README.rst | 97 - bridgedb.conf | 6 - bridgedb/Bridges.py| 18 +- bridgedb/Bucket.py | 288 - bridgedb/bridgerequest.py | 2 +- bridgedb/distributors/https/server.py | 6 +- bridgedb/distributors/moat/server.py | 2 +- bridgedb/main.py | 51 ++--- bridgedb/parse/options.py | 29 ++- bridgedb/runner.py | 14 -- bridgedb/test/test_Bucket.py | 63 -- bridgedb/test/test_bridgedb_script.py | 19 -- bridgedb/test/test_distributors_moat_server.py | 2 +- bridgedb/test/test_https_server.py | 14 ++ bridgedb/test/test_main.py | 26 +-- doc/sphinx/source/bridgedb.Bucket.rst | 8 - doc/sphinx/source/bridgedb.rst | 1 - doc/sphinx/source/conf.py | 1 - scripts/test-moat | 56 + 20 files changed, 208 insertions(+), 548 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Clarify the specified moat error if there are no bridges.
commit b0898951e8c1b9a4b3d615e9d9422d5c4ce67576 Author: Isis Lovecruft Date: Wed Dec 20 21:36:18 2017 + Clarify the specified moat error if there are no bridges. --- README.rst | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 8481382..7e4f6d1 100644 --- a/README.rst +++ b/README.rst @@ -556,13 +556,14 @@ server is unable to distribute the requested Bridges, the server responds ``200 OK`` with the following JSON:: { - "error": { -"id": "1", + "errors": [{ +"id": "6", +"type": "moat-bridges", +"version": "0.1.0", "code": "404", "status": "Not Found", -"title": "Could not fetch the type of bridges you requested", "detail": "DETAILS", - } + }] } where: ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'fix/24637' into develop
commit 6ace9a350f5f700d9f1f6ff88c6a275c1fb18414 Merge: 91305fa 4c79973 Author: Isis Lovecruft Date: Wed Dec 20 22:59:15 2017 + Merge branch 'fix/24637' into develop README.rst | 9 ++-- bridgedb/bridgerequest.py | 9 bridgedb/distributors/moat/server.py | 73 +- bridgedb/test/test_distributors_moat_server.py | 55 +-- 4 files changed, 126 insertions(+), 20 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Change moat API specification to remove "moat-transports" response.
commit da84c257cc600a1aeb6bafb70bd3fc0878ed212f Author: Isis Lovecruft Date: Wed Dec 20 22:51:38 2017 + Change moat API specification to remove "moat-transports" response. * FIXES #24636: https://bugs.torproject.org/24636 --- README.rst | 25 ++--- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/README.rst b/README.rst index 8481382..e2d17a5 100644 --- a/README.rst +++ b/README.rst @@ -452,17 +452,6 @@ Receiving a CAPTCHA challenge The moat server will respond with ``200 OK``. -If there is no overlap with the transports which BridgeDB supports, the moat -server will respond with the list of transports which is *does* support:: - -{ - "data": { -"version": "0.1.0", -"type": "moat-transports", -"supported": [ "TRANSPORT", "TRANSPORT", ... ], - } -} - If there is an overlap with what BridgeDB supports, the moat server will select the "best" transport from the list of supported transports, and respond with the following JSON containing a CAPTCHA challenge:: @@ -490,6 +479,20 @@ The challenge contains an encrypted-then-HMACed timestamp, and solutions submitted more than 30 minutes after requesting the CAPTCHA are considered invalid. +If there is no overlap with the transports which BridgeDB supports, the moat +server will respond with the list of transports which is *does* support:: + +{ + "data": { +"id": "1", +"type": "moat-challenge", +"version": "0.1.0", +"transport": [ "TRANSPORT", "TRANSPORT", ... ], +"image": "CAPTCHA", +"challenge": "CHALLENGE", + } +} + Responding to a CAPTCHA challenge " ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'master' into develop
commit 9a926f28de7af283558bf2688d5fa642d059c678 Merge: b828d57 9bb5de6 Author: Isis Lovecruft Date: Wed Dec 13 20:12:17 2017 + Merge branch 'master' into develop bridgedb/distributors/moat/server.py | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'fix/24460' into develop
commit 16e7a2d5fad1658244c204bdfb54e5e385e4632f Merge: a316083 6de Author: Isis Lovecruft Date: Tue Nov 28 19:44:42 2017 + Merge branch 'fix/24460' into develop bridgedb/distributors/https/server.py | 6 -- bridgedb/test/test_https_server.py| 14 ++ 2 files changed, 18 insertions(+), 2 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Fix quoting in moat specification.
commit 8d8db4a06d3dff5e9f82adcb4e0e921fe3577098 Author: Isis Lovecruft Date: Wed Dec 13 18:18:55 2017 + Fix quoting in moat specification. --- README.rst | 74 +++--- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/README.rst b/README.rst index c2f32c1..8481382 100644 --- a/README.rst +++ b/README.rst @@ -429,10 +429,10 @@ Requesting Bridges The client MUST send a ``POST /meek/moat/fetch`` containing the following JSON:: { - 'data': { -'version': '0.1.0', -'type': 'client-transports', -'supported': [ 'TRANSPORT', 'TRANSPORT', ... ], + "data": { +"version": "0.1.0", +"type": "client-transports", +"supported": [ "TRANSPORT", "TRANSPORT", ... ], } } @@ -456,10 +456,10 @@ If there is no overlap with the transports which BridgeDB supports, the moat server will respond with the list of transports which is *does* support:: { - 'data': { -'version': '0.1.0', -'type': 'moat-transports', -'supported': [ 'TRANSPORT', 'TRANSPORT', ... ], + "data": { +"version": "0.1.0", +"type": "moat-transports", +"supported": [ "TRANSPORT", "TRANSPORT", ... ], } } @@ -468,13 +468,13 @@ the "best" transport from the list of supported transports, and respond with the following JSON containing a CAPTCHA challenge:: { - 'data': { -'id': 1, -'type': 'moat-challenge', -'version': '0.1.0', -'transport': TRANSPORT, -'image': CAPTCHA, -'challenge': CHALLENGE, + "data": { +"id": "1", +"type": "moat-challenge", +"version": "0.1.0", +"transport": "TRANSPORT", +"image": "CAPTCHA", +"challenge": "CHALLENGE", } } @@ -498,14 +498,14 @@ To propose a solution to a CAPTCHA, the client MUST send a request for ``POST /meek/moat/check``, where the body of the request contains the following JSON:: { - 'data': { -'id': 2, -'type': 'moat-solution', -'version': '0.1.0', -'transport': TRANSPORT, -'challenge': CHALLENGE, -'solution': SOLUTION, -'qrcode': BOOLEAN, + "data": { +"id": "2", +"type": "moat-solution", +"version": "0.1.0", +"transport": "TRANSPORT", +"challenge": "CHALLENGE", +"solution": "SOLUTION", +"qrcode": "BOOLEAN", } } @@ -518,8 +518,8 @@ where: * ``SOLUTION`` is a valid unicode string, up to 20 bytes in length, containing the client's answer (i.e. what characters the CAPTCHA image displayed). The solution is *not* case-sensitive. -* ``BOOLEAN`` is ``'true'`` if the client wants a qrcode containing the bridge - lines to be generated and returned; ``'false'`` otherwise. +* ``BOOLEAN`` is ``"true"`` if the client wants a qrcode containing the bridge + lines to be generated and returned; ``"false"`` otherwise. Receiving Bridges @@ -532,12 +532,12 @@ If the ``SOLUTION`` was successful for the supplied ``CHALLENGE``, the server responds ``200 OK`` with the following JSON:: { - 'data': { -'id': 3, -'type': 'moat-bridges', -'version': '0.1.0', -'bridges': [ 'BRIDGE_LINE', ... ], -'qrcode': QRCODE, + "data": { +"id": "3", +"type": "moat-bridges", +"version": "0.1.0", +"bridges": [ "BRIDGE_LINE", ... ], +"qrcode": "QRCODE", } } @@ -556,12 +556,12 @@ server is unable to distribute the requested Bridges, the server responds ``200 OK`` with the following JSON:: { - 'error': { -'id': 1, -'code': '404', -'status': 'Not Found', -'title': 'Could not fetch the type of bridges you requested', -'detail': DETAILS, + "error": { +"id": "1", +"code": "404", +"status": "Not Found", +"title": "Could not fetch the type of bridges you requested", +"detail": "DETAILS", } } ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Add CHANGELOG entries for 0.6.1.
commit b828d5777f02dc6f544a0ea821952dc1f06e2d7d Author: Isis Lovecruft Date: Wed Dec 13 18:55:50 2017 + Add CHANGELOG entries for 0.6.1. --- CHANGELOG | 53 + 1 file changed, 53 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index 7dbe222..effc405 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,56 @@ +Changes in version 0.6.1 - 2017-12-13 + +* ADDS a shell script, scripts/test-moat, for testing either a +locally-running moat server, or a remote one through a meek +tunnel. +Thanks to David Fifield for his work on meek, assistance setting +it up, and providing the first version of this script. + +* FIXES #24433 https://bugs.torproject.org/24433 +The test-moat script wasn't sending an X-Forwarded-For header, +which triggered a bug in the moat server, since the CAPTCHA +solution includes an HMAC based on the client's IP (forwarded +through all the several layers of tunnels/proxies). + +* FIXES #24443 https://bugs.torproject.org/24443 +Due to a difference between how booleans are parsed by Python's +json library and normal Python booleans, the moat server was +generating and returning QRCodes⦠regardless of whether the remote +client application asked for one. This is now fixed. + +* FIXES #24460 https://bugs.torproject.org/24460 +There was an unhandled error when sending certain (what appears to +be possibly malicious? but in a very strange way) requests to +BridgeDB's HTTPS distributor. The robots making the requests were +attempting to request bridges, but were presenting a CAPTCHA +solution without the correct HTML form field parameters present, +which isn't possible through normal usage of the web interface. +Whoever or whatever is doing this is now going to be endlessly +redirected so that they may forever spiral in their own private +internet hell. I reserve the right come up with a worse fate for +them later, should I get bored. + +* FIXES #3015 https://bugs.torproject.org/3015 +BridgeDB has had a partially-implemented concept of "buckets" +since the age of the dinosaurs: write some of the unallocated +bridges to a file which should (somehow) be manually distributed. +In addition to be unused and untested, there were several issues +with the buckets, the most significant of which were the inability +to request pluggable transports in a bucket and the fact that +buckets were not persistent in any way (e.g. if i request a bucket +of 50 bridges for Gomez and another with 50 for Morticia, they +might end up with some of the same bridges, further, tomorrow +they'll end up with 50 possibly different bridges than those they +received today). All of this code is now removed. + +And includes the following general changes: + +* FIXES issues with JSON quote syntax and a mistaken JSON API +"type" parameter in the specification of the moat server (in the +README). +Thanks to Mark Smith and Kathy Brade for pointing out the issues. + + Changes in version 0.6.0 - 2017-11-15 * ADDS a new JSON API distributor called "moat", which is intended ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'fix/3015-remove-buckets' into develop
commit e3a2ea593dcc6614b865572d9fc1d3b333b5770d Merge: 16e7a2d f4d5591 Author: Isis Lovecruft Date: Tue Nov 28 21:22:24 2017 + Merge branch 'fix/3015-remove-buckets' into develop README.rst| 23 +-- bridgedb.conf | 6 - bridgedb/Bridges.py | 18 +-- bridgedb/Bucket.py| 288 -- bridgedb/main.py | 51 +++--- bridgedb/parse/options.py | 29 ++-- bridgedb/runner.py| 14 -- bridgedb/test/test_Bucket.py | 63 bridgedb/test/test_bridgedb_script.py | 19 --- bridgedb/test/test_main.py| 26 +-- doc/sphinx/source/bridgedb.Bucket.rst | 8 - doc/sphinx/source/bridgedb.rst| 1 - doc/sphinx/source/conf.py | 1 - 13 files changed, 41 insertions(+), 506 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Fix the moat server to only generate QRcodes when asked to do so.
commit 039884c4f19bb3f52b076e1bc5901800b5258fe1 Author: Isis Lovecruft Date: Mon Nov 27 23:22:33 2017 + Fix the moat server to only generate QRcodes when asked to do so. * FIXES #24443: https://bugs.torproject.org/24443 --- bridgedb/distributors/moat/server.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bridgedb/distributors/moat/server.py b/bridgedb/distributors/moat/server.py index daf62fa..eb356fe 100644 --- a/bridgedb/distributors/moat/server.py +++ b/bridgedb/distributors/moat/server.py @@ -560,7 +560,7 @@ class CaptchaCheckResource(CaptchaResource): "Transport '%s' is not currently supported" % data["transport"]) else: -qrcode = data["qrcode"] +qrcode = True if data["qrcode"] == "true" else False transport = type('')(data["transport"]) challenge = type('')(data["challenge"]) solution = type('')(data["solution"]) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Merge branch 'fix/24636' into develop
commit 91305fa523c8b9e6a631d8c29f583e3da722832e Merge: 9a926f2 da84c25 Author: Isis Lovecruft Date: Wed Dec 20 22:59:11 2017 + Merge branch 'fix/24636' into develop README.rst | 25 ++--- 1 file changed, 14 insertions(+), 11 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'master' into develop
commit bbd40684b566faafdc87255d5358deca8a1aeb38 Merge: b4d32c7 659b4ed Author: Isis Lovecruft Date: Tue Sep 12 21:33:22 2017 + Merge branch 'master' into develop ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Make the test-moat script easier to input challenges and solutions.
commit 8245b6a2c4f4697a33b1c169529aed66b6e1a55a Author: Isis Lovecruft Date: Mon Nov 27 19:13:54 2017 + Make the test-moat script easier to input challenges and solutions. --- scripts/test-moat | 26 ++ 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/scripts/test-moat b/scripts/test-moat index 6bfa500..490edc6 100755 --- a/scripts/test-moat +++ b/scripts/test-moat @@ -1,7 +1,10 @@ #!/usr/bin/env bash +CHALLENGE= +SOLUTION= + function usage() { -printf "Usage: %s [fetch] [check]\n" "$(basename $0)" +printf "Usage: %s [fetch] [check [challenge solution]]\n" "$(basename $0)" } if test "$#" -lt 1 ; then @@ -20,17 +23,32 @@ function do_fetch() { function do_check() { curl -H 'Content-Type: application/vnd.api+json' \ -H 'Accept: application/vnd.api+json' \ - --data '{"data": [{"challenge": "foo", "solution": "bar", "version": "0.1.0", "qrcode": "false", "type": "moat-solution", "id": 2, "transport": "obfs4"}]}' \ + --data '{"data": [{"challenge": "'$CHALLENGE'", "solution": "'$SOLUTION'", "version": "0.1.0", "qrcode": "false", "type": "moat-solution", "id": 2, "transport": "obfs4"}]}' \ http://127.0.0.1:6790/meek/moat/check echo } while test -n "$1" ; do +OPTSHIFT=1 + case "$1" in fetch) do_fetch ;; -check) do_check ;; +check) if [[ "$2" != "fetch" ]] ; then + CHALLENGE="$2" + if [[ "$3" != "fetch" ]] ; then + SOLUTION="$3" + fi + fi + for var in "$CHALLENGE" "$SOLUTION" ; do + if test -n "$var"; then + OPTSHIFT=$(( OPTSHIFT + 1 )) + fi + done + do_check ;; + *) usage ;; esac -shift +shift $OPTSHIFT +OPTSHIFT=1 done ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Merge branch 'fix/24443' into develop
commit cb3f4b4aa27b527bfb000cc254d08622b90a526e Merge: 76d3c5b 039884c Author: Isis Lovecruft Date: Mon Nov 27 23:26:17 2017 + Merge branch 'fix/24443' into develop bridgedb/distributors/moat/server.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Remove unused bucket functionality.
commit f4d559197e06bc4b2e783634d6e79232a440025f Author: Isis Lovecruft Date: Mon Nov 20 23:13:47 2017 + Remove unused bucket functionality. * CLOSES #3015: https://bugs.torproject.org/3015 --- README.rst| 23 +-- bridgedb.conf | 6 - bridgedb/Bridges.py | 18 +-- bridgedb/Bucket.py| 288 -- bridgedb/main.py | 51 +++--- bridgedb/parse/options.py | 29 ++-- bridgedb/runner.py| 14 -- bridgedb/test/test_Bucket.py | 63 bridgedb/test/test_bridgedb_script.py | 19 --- bridgedb/test/test_main.py| 26 +-- doc/sphinx/source/bridgedb.Bucket.rst | 8 - doc/sphinx/source/bridgedb.rst| 1 - doc/sphinx/source/conf.py | 1 - 13 files changed, 41 insertions(+), 506 deletions(-) diff --git a/README.rst b/README.rst index 3dbe647..c2f32c1 100644 --- a/README.rst +++ b/README.rst @@ -361,25 +361,12 @@ Or just give it a SIGHUP:: kill -s SIGHUP `cat .../run/bridgedb.pid` -To extract bucket files of all unallocated bridges: - -Edit the configuration file value ``FILE_BUCKETS`` according to your -needs. For example, the following is a possible configuration:: - - FILE_BUCKETS = { "name1": 10, "name2": 15, "foobar": 3 } - -This configuration for buckets would result in 3 files being created for -bridge distribution: name1-2010-07-17.brdgs, name2-2010-07-17.brdgs and -foobar-2010-07-17.brdgs. The first file would contain 10 bridges from -BridgeDB's 'unallocated' pool. The second file would contain 15 bridges -from the same pool and the third one similarly 3 bridges. These files -can then be handed out to trusted parties via mail or fed to other -distribution mechanisms such as Twitter. +-- +To extract all bridge assignments: +-- -To dump all buckets to their files, send BridgeDB a ``SIGUSR1`` signal -by doing:: +To dump all bridge assignments to files, send BridgeDB a ``SIGUSR1`` +signal by doing:: kill -s SIGUSR1 `cat .../run/bridgedb.pid` diff --git a/bridgedb.conf b/bridgedb.conf index d0366cf..724c802 100644 --- a/bridgedb.conf +++ b/bridgedb.conf @@ -683,9 +683,3 @@ EMAIL_SHARE = 2 # An integer specifying the proportion of bridges which should remain # unallocated, for backup usage and manual distribution. RESERVED_SHARE = 2 - -# A dictionary of {FILENAME: NUMBER} where FILENAME is a string specifying the -# filename to store a certain NUMBER (an integer) of bridges in. The number of -# bridges here is *not* a share/proportion, as above; instead it's literally -# the number of bridges. See the ``README`` for more details. -FILE_BUCKETS = {} diff --git a/bridgedb/Bridges.py b/bridgedb/Bridges.py index 50d70ae..13bffd2 100644 --- a/bridgedb/Bridges.py +++ b/bridgedb/Bridges.py @@ -20,7 +20,6 @@ import ipaddr import random import bridgedb.Storage -import bridgedb.Bucket from bridgedb.bridges import Bridge from bridgedb.crypto import getHMACFunc @@ -388,10 +387,7 @@ class UnallocatedHolder(object): continue dist = bridge.distributor desc = [ description ] -if dist.startswith(bridgedb.Bucket.PSEUDO_DISTRI_PREFIX): -dist = dist.replace(bridgedb.Bucket.PSEUDO_DISTRI_PREFIX, "") -desc.append("bucket=%s" % dist) -elif dist != "unallocated": +if dist != "unallocated": continue f.write("%s %s\n" % (bridge.hex_key, " ".join(desc).strip())) @@ -407,7 +403,6 @@ class BridgeSplitter(object): self.totalP = 0 self.pValues = [] self.rings = [] -self.pseudoRings = [] self.statsHolders = [] def __len__(self): @@ -430,11 +425,6 @@ class BridgeSplitter(object): self.rings.append(ringname) self.totalP += p -def addPseudoRing(self, ringname): -"""Add a pseudo ring to the list of pseudo rings. -""" -self.pseudoRings.append(bridgedb.Bucket.PSEUDO_DISTRI_PREFIX + ringname) - def addTracker(self, t): """Adds a statistics tracker that gets told about every bridge we see. """ @@ -454,7 +444,7 @@ class BridgeSplitter(object): if not bridge.flags.running: return -validRings = self.rings + self.pseudoRings +validRings = self.rings distribution_method = None # If the bridge already has a distributor, use that. @@ -498,10 +488,6 @@ class BridgeSplitter(object): time.time(), validRings) db.commit() -# Pseudo distributors are always held in the "unallocated" ring
[tor-commits] [bridgedb/develop] Merge branch 'master' into develop
commit 9a926f28de7af283558bf2688d5fa642d059c678 Merge: b828d57 9bb5de6 Author: Isis Lovecruft Date: Wed Dec 13 20:12:17 2017 + Merge branch 'master' into develop bridgedb/distributors/moat/server.py | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Implement moat error handling when no bridges are available.
commit 4c799735b5b86beea486ee3b1cd0ea8a4f5cb4b5 Author: Isis Lovecruft Date: Wed Dec 20 22:36:06 2017 + Implement moat error handling when no bridges are available. * FIXES #24637: https://bugs.torproject.org/24637 --- bridgedb/distributors/moat/server.py | 73 +- bridgedb/test/test_distributors_moat_server.py | 55 +-- 2 files changed, 112 insertions(+), 16 deletions(-) diff --git a/bridgedb/distributors/moat/server.py b/bridgedb/distributors/moat/server.py index eb356fe..a669ee5 100644 --- a/bridgedb/distributors/moat/server.py +++ b/bridgedb/distributors/moat/server.py @@ -209,6 +209,7 @@ class JsonAPIErrorResource(JsonAPIResource): resource403 = JsonAPIErrorResource(code=403, status="Forbidden") +resource404 = JsonAPIErrorResource(code=404, status="Not Found") resource406 = JsonAPIErrorResource(code=406, status="Not Acceptable") resource415 = JsonAPIErrorResource(code=415, status="Unsupported Media Type") resource419 = JsonAPIErrorResource(code=419, status="No You're A Teapot") @@ -497,21 +498,21 @@ class CaptchaCheckResource(CaptchaResource): self.nBridgesToGive = N self.useForwardedHeader = useForwardedHeader -def getBridgeLines(self, ip, data): -"""Get bridge lines for a client's HTTP request. +def createBridgeRequest(self, ip, data): +"""Create an appropriate :class:`MoatBridgeRequest` from the ``data`` +of a client's request. :param str ip: The client's IP address. :param dict data: The decoded JSON API data from the client's request. -:rtype: list or None -:returns: A list of bridge lines. +:rtype: :class:`MoatBridgeRequest` +:returns: An object which specifies the filters for retreiving +the type of bridges that the client requested. """ -bridgeLines = None -interval = self.schedule.intervalStart(time.time()) +logging.debug("Creating moat bridge request object for %s." % ip) -logging.debug("Replying to JSON API request from %s." % ip) +bridgeRequest = MoatBridgeRequest() if ip and data: -bridgeRequest = MoatBridgeRequest() bridgeRequest.client = IPAddress(ip) bridgeRequest.isValid(True) bridgeRequest.withIPversion() @@ -519,6 +520,23 @@ class CaptchaCheckResource(CaptchaResource): bridgeRequest.withoutBlockInCountry(data) bridgeRequest.generateFilters() +return bridgeRequest + +def getBridgeLines(self, bridgeRequest): +"""Get bridge lines for a client's HTTP request. + +:type bridgeRequest: :class:`MoatBridgeRequest` +:param bridgeRequest: A valid bridge request object with pre-generated +filters (as returned by :meth:`createBridgeRequest`). +:rtype: list +:returns: A list of bridge lines. +""" +bridgeLines = list() +interval = self.schedule.intervalStart(time.time()) + +logging.debug("Replying to JSON API request from %s." % bridgeRequest.client) + +if bridgeRequest.isValid(): bridges = self.distributor.getBridges(bridgeRequest, interval) bridgeLines = [replaceControlChars(bridge.getBridgeLine(bridgeRequest)) for bridge in bridges] @@ -599,17 +617,34 @@ class CaptchaCheckResource(CaptchaResource): return valid -def failureResponse(self, id, request): -"""Respond with status code "419 No You're A Teapot".""" -error_response = resource419 -error_response.type = 'moat-bridges' +def failureResponse(self, id, request, bridgeRequest=None): +"""Respond with status code "419 No You're A Teapot" if the captcha +verification failed, or status code "404 Not Found" if there +were none of the type of bridges requested. +:param int id: The JSON API "id" field of the +``JsonAPIErrorResource`` which should be returned. +:type request: :api:`twisted.web.http.Request` +:param request: The current request we're handling. +:type bridgeRequest: :class:`MoatBridgeRequest` +:param bridgeRequest: A valid bridge request object with pre-generated +filters (as returned by :meth:`createBridgeRequest`). +""" if id == 4: +error_response = resource419 error_response.id = 4 error_response.detail = "The CAPTCHA solution was incorrect." elif id == 5: +error_response = resource419 error_response.id = 5 error_response.detail = "The CAPTCHA challenge timed out." +elif id == 6: +error_response = resource404 +error_response.id = 6 +error_response.detail = ("No bridges available to fulfill " + "request: %s.") % bridgeRequest + +
[tor-commits] [bridgedb/master] Merge branch 'fix/24433' into develop
commit 76d3c5bca779c78236a8dffb389304412e97af5e Merge: 8245b6a a1597da Author: Isis Lovecruft Date: Mon Nov 27 19:38:27 2017 + Merge branch 'fix/24433' into develop bridgedb/bridgerequest.py | 2 +- scripts/test-moat | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Clarify the specified moat error if there are no bridges.
commit b0898951e8c1b9a4b3d615e9d9422d5c4ce67576 Author: Isis Lovecruft Date: Wed Dec 20 21:36:18 2017 + Clarify the specified moat error if there are no bridges. --- README.rst | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 8481382..7e4f6d1 100644 --- a/README.rst +++ b/README.rst @@ -556,13 +556,14 @@ server is unable to distribute the requested Bridges, the server responds ``200 OK`` with the following JSON:: { - "error": { -"id": "1", + "errors": [{ +"id": "6", +"type": "moat-bridges", +"version": "0.1.0", "code": "404", "status": "Not Found", -"title": "Could not fetch the type of bridges you requested", "detail": "DETAILS", - } + }] } where: ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Add script for using curl to test moat's JSON API.
commit 0c24fa3719aa29e967ca5804e8eaaab80af17e32 Author: Isis Lovecruft Date: Tue Sep 12 21:33:22 2017 + Add script for using curl to test moat's JSON API. --- scripts/test-moat | 36 1 file changed, 36 insertions(+) diff --git a/scripts/test-moat b/scripts/test-moat new file mode 100755 index 000..6bfa500 --- /dev/null +++ b/scripts/test-moat @@ -0,0 +1,36 @@ +#!/usr/bin/env bash + +function usage() { +printf "Usage: %s [fetch] [check]\n" "$(basename $0)" +} + +if test "$#" -lt 1 ; then +usage +exit 1 +fi + +function do_fetch() { +curl -H 'Content-Type: application/vnd.api+json' \ + -H 'Accept: application/vnd.api+json' \ + --data '{"data": [{"supported": ["obfs4"], "version": "0.1.0", "type": "client-transports"}]}' \ + http://127.0.0.1:6790/meek/moat/fetch +echo +} + +function do_check() { +curl -H 'Content-Type: application/vnd.api+json' \ + -H 'Accept: application/vnd.api+json' \ + --data '{"data": [{"challenge": "foo", "solution": "bar", "version": "0.1.0", "qrcode": "false", "type": "moat-solution", "id": 2, "transport": "obfs4"}]}' \ + http://127.0.0.1:6790/meek/moat/check +echo +} + +while test -n "$1" ; do +case "$1" in +fetch) do_fetch ;; +check) do_check ;; +*) usage ;; +esac + +shift +done ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Merge branch 'release/0.6.2'
commit 2ae288d6f7e3051b3aa3c85e9a8341c3e21baf4b Merge: 9bb5de6 6ace9a3 Author: Isis Lovecruft Date: Wed Dec 20 23:07:12 2017 + Merge branch 'release/0.6.2' README.rst | 34 ++-- bridgedb/bridgerequest.py | 9 bridgedb/distributors/moat/server.py | 73 +- bridgedb/test/test_distributors_moat_server.py | 55 +-- 4 files changed, 140 insertions(+), 31 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Merge branch 'master' into develop
commit 05ca3dbd35a392e8661c7288dc42c99a3443b110 Merge: 6ace9a3 2ae288d Author: Isis Lovecruft Date: Wed Dec 20 23:07:24 2017 + Merge branch 'master' into develop ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Fix error in usage of redirectTo() with a malicious request.
commit 6deaad380d9a48524c69533bf566a7a1406b Author: Isis Lovecruft Date: Tue Nov 28 19:43:10 2017 + Fix error in usage of redirectTo() with a malicious request. * FIXES #24460: https://bugs.torproject.org/24460 --- bridgedb/distributors/https/server.py | 6 -- bridgedb/test/test_https_server.py| 14 ++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/bridgedb/distributors/https/server.py b/bridgedb/distributors/https/server.py index 352a838..d4771a6 100644 --- a/bridgedb/distributors/https/server.py +++ b/bridgedb/distributors/https/server.py @@ -410,8 +410,10 @@ class CaptchaProtectedResource(CustomErrorHandlingResource, CSPResource): try: challenge = request.args['captcha_challenge_field'][0] response = request.args['captcha_response_field'][0] -except Exception: # pragma: no cover -return redirectTo(request.URLPath(), request) +except Exception as error: +logging.debug(("Client CAPTCHA solution to HTTPS distributor server" + "didn't include correct HTTP arguments: %s" % error)) +return redirectTo(type(b'')(request.URLPath()), request) return (challenge, response) def checkSolution(self, request): diff --git a/bridgedb/test/test_https_server.py b/bridgedb/test/test_https_server.py index dbd177f..13ec20e 100644 --- a/bridgedb/test/test_https_server.py +++ b/bridgedb/test/test_https_server.py @@ -372,6 +372,20 @@ class GimpCaptchaProtectedResourceTests(unittest.TestCase): self.assertEqual(challenge, expectedChallenge) self.assertEqual(response, expectedResponse) +def test_extractClientSolution_missing_arguments(self): +"""A solution with missing arguments (the solution field) should +return a very agressive redirect to the originally requested, +CAPTCHA-protected page. +""" +expectedChallenge = '23232323232323232323' + +self.request.method = b'POST' +self.request.addArg('captcha_challenge_field', expectedChallenge) + +response = self.captchaResource.extractClientSolution(self.request) + +self.assertIn("click here", response) + def test_checkSolution(self): """checkSolution() should return False is the solution is invalid.""" expectedChallenge = '23232323232323232323' ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Merge branch 'fix/24637' into develop
commit 6ace9a350f5f700d9f1f6ff88c6a275c1fb18414 Merge: 91305fa 4c79973 Author: Isis Lovecruft Date: Wed Dec 20 22:59:15 2017 + Merge branch 'fix/24637' into develop README.rst | 9 ++-- bridgedb/bridgerequest.py | 9 bridgedb/distributors/moat/server.py | 73 +- bridgedb/test/test_distributors_moat_server.py | 55 +-- 4 files changed, 126 insertions(+), 20 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Fix failing unittest after #24433 merge.
commit a316083e1a3a9eedcc6aa5d27c053f4974f8cf39 Author: Isis Lovecruft Date: Tue Nov 28 02:33:05 2017 + Fix failing unittest after #24433 merge. --- bridgedb/test/test_distributors_moat_server.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bridgedb/test/test_distributors_moat_server.py b/bridgedb/test/test_distributors_moat_server.py index 2145541..95796d1 100644 --- a/bridgedb/test/test_distributors_moat_server.py +++ b/bridgedb/test/test_distributors_moat_server.py @@ -882,7 +882,7 @@ class CaptchaCheckResourceTests(unittest.TestCase): 'transport': 'obfs4', 'challenge': challenge, 'solution': self.solution, -'qrcode': True, +'qrcode': 'true', }] } encoded_data = json.dumps(data) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Change moat API specification to remove "moat-transports" response.
commit da84c257cc600a1aeb6bafb70bd3fc0878ed212f Author: Isis Lovecruft Date: Wed Dec 20 22:51:38 2017 + Change moat API specification to remove "moat-transports" response. * FIXES #24636: https://bugs.torproject.org/24636 --- README.rst | 25 ++--- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/README.rst b/README.rst index 8481382..e2d17a5 100644 --- a/README.rst +++ b/README.rst @@ -452,17 +452,6 @@ Receiving a CAPTCHA challenge The moat server will respond with ``200 OK``. -If there is no overlap with the transports which BridgeDB supports, the moat -server will respond with the list of transports which is *does* support:: - -{ - "data": { -"version": "0.1.0", -"type": "moat-transports", -"supported": [ "TRANSPORT", "TRANSPORT", ... ], - } -} - If there is an overlap with what BridgeDB supports, the moat server will select the "best" transport from the list of supported transports, and respond with the following JSON containing a CAPTCHA challenge:: @@ -490,6 +479,20 @@ The challenge contains an encrypted-then-HMACed timestamp, and solutions submitted more than 30 minutes after requesting the CAPTCHA are considered invalid. +If there is no overlap with the transports which BridgeDB supports, the moat +server will respond with the list of transports which is *does* support:: + +{ + "data": { +"id": "1", +"type": "moat-challenge", +"version": "0.1.0", +"transport": [ "TRANSPORT", "TRANSPORT", ... ], +"image": "CAPTCHA", +"challenge": "CHALLENGE", + } +} + Responding to a CAPTCHA challenge " ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Remove unused bucket functionality.
commit f4d559197e06bc4b2e783634d6e79232a440025f Author: Isis Lovecruft Date: Mon Nov 20 23:13:47 2017 + Remove unused bucket functionality. * CLOSES #3015: https://bugs.torproject.org/3015 --- README.rst| 23 +-- bridgedb.conf | 6 - bridgedb/Bridges.py | 18 +-- bridgedb/Bucket.py| 288 -- bridgedb/main.py | 51 +++--- bridgedb/parse/options.py | 29 ++-- bridgedb/runner.py| 14 -- bridgedb/test/test_Bucket.py | 63 bridgedb/test/test_bridgedb_script.py | 19 --- bridgedb/test/test_main.py| 26 +-- doc/sphinx/source/bridgedb.Bucket.rst | 8 - doc/sphinx/source/bridgedb.rst| 1 - doc/sphinx/source/conf.py | 1 - 13 files changed, 41 insertions(+), 506 deletions(-) diff --git a/README.rst b/README.rst index 3dbe647..c2f32c1 100644 --- a/README.rst +++ b/README.rst @@ -361,25 +361,12 @@ Or just give it a SIGHUP:: kill -s SIGHUP `cat .../run/bridgedb.pid` -To extract bucket files of all unallocated bridges: - -Edit the configuration file value ``FILE_BUCKETS`` according to your -needs. For example, the following is a possible configuration:: - - FILE_BUCKETS = { "name1": 10, "name2": 15, "foobar": 3 } - -This configuration for buckets would result in 3 files being created for -bridge distribution: name1-2010-07-17.brdgs, name2-2010-07-17.brdgs and -foobar-2010-07-17.brdgs. The first file would contain 10 bridges from -BridgeDB's 'unallocated' pool. The second file would contain 15 bridges -from the same pool and the third one similarly 3 bridges. These files -can then be handed out to trusted parties via mail or fed to other -distribution mechanisms such as Twitter. +-- +To extract all bridge assignments: +-- -To dump all buckets to their files, send BridgeDB a ``SIGUSR1`` signal -by doing:: +To dump all bridge assignments to files, send BridgeDB a ``SIGUSR1`` +signal by doing:: kill -s SIGUSR1 `cat .../run/bridgedb.pid` diff --git a/bridgedb.conf b/bridgedb.conf index d0366cf..724c802 100644 --- a/bridgedb.conf +++ b/bridgedb.conf @@ -683,9 +683,3 @@ EMAIL_SHARE = 2 # An integer specifying the proportion of bridges which should remain # unallocated, for backup usage and manual distribution. RESERVED_SHARE = 2 - -# A dictionary of {FILENAME: NUMBER} where FILENAME is a string specifying the -# filename to store a certain NUMBER (an integer) of bridges in. The number of -# bridges here is *not* a share/proportion, as above; instead it's literally -# the number of bridges. See the ``README`` for more details. -FILE_BUCKETS = {} diff --git a/bridgedb/Bridges.py b/bridgedb/Bridges.py index 50d70ae..13bffd2 100644 --- a/bridgedb/Bridges.py +++ b/bridgedb/Bridges.py @@ -20,7 +20,6 @@ import ipaddr import random import bridgedb.Storage -import bridgedb.Bucket from bridgedb.bridges import Bridge from bridgedb.crypto import getHMACFunc @@ -388,10 +387,7 @@ class UnallocatedHolder(object): continue dist = bridge.distributor desc = [ description ] -if dist.startswith(bridgedb.Bucket.PSEUDO_DISTRI_PREFIX): -dist = dist.replace(bridgedb.Bucket.PSEUDO_DISTRI_PREFIX, "") -desc.append("bucket=%s" % dist) -elif dist != "unallocated": +if dist != "unallocated": continue f.write("%s %s\n" % (bridge.hex_key, " ".join(desc).strip())) @@ -407,7 +403,6 @@ class BridgeSplitter(object): self.totalP = 0 self.pValues = [] self.rings = [] -self.pseudoRings = [] self.statsHolders = [] def __len__(self): @@ -430,11 +425,6 @@ class BridgeSplitter(object): self.rings.append(ringname) self.totalP += p -def addPseudoRing(self, ringname): -"""Add a pseudo ring to the list of pseudo rings. -""" -self.pseudoRings.append(bridgedb.Bucket.PSEUDO_DISTRI_PREFIX + ringname) - def addTracker(self, t): """Adds a statistics tracker that gets told about every bridge we see. """ @@ -454,7 +444,7 @@ class BridgeSplitter(object): if not bridge.flags.running: return -validRings = self.rings + self.pseudoRings +validRings = self.rings distribution_method = None # If the bridge already has a distributor, use that. @@ -498,10 +488,6 @@ class BridgeSplitter(object): time.time(), validRings) db.commit() -# Pseudo distributors are always held in the "unallocated" ring
[tor-commits] [bridgedb/develop] Change "client-transport" moat resource type to "moat-transports".
commit 50a9321fadcfd0e9a4f30bc1919c1bf46d27d8e1 Author: Isis Lovecruft Date: Wed Dec 13 18:24:04 2017 + Change "client-transport" moat resource type to "moat-transports". --- bridgedb/distributors/moat/server.py | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/bridgedb/distributors/moat/server.py b/bridgedb/distributors/moat/server.py index eb356fe..096b8c0 100644 --- a/bridgedb/distributors/moat/server.py +++ b/bridgedb/distributors/moat/server.py @@ -386,12 +386,12 @@ class CaptchaFetchResource(CaptchaResource): :param str request: A JSON blob containing the following fields: * "version": The moat protocol version. -* "type": "client-transports". -* "supported": ['TRANSPORT', ⦠] +* "type": "moat-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. + "obfs3" or "obfs4". Currently supported transport identifiers + are: "vanilla", "fte", "obfs3", "obfs4", "scramblesuit". :rtype: list :returns: The list of transports the client supports. """ @@ -401,10 +401,10 @@ class CaptchaFetchResource(CaptchaResource): encoded_data = request.content.read() data = json.loads(encoded_data)["data"][0] -if data["type"] != "client-transports": +if data["type"] != "moat-transports": raise ValueError( "Bad JSON API object type: expected %s got %s" % -('client-transports', data["type"])) +('moat-transports', data["type"])) elif data["version"] != MOAT_API_VERSION: raise ValueError( "Client requested protocol version %s, but we're using %s" % ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/master] Send correct X-Forwarded-For headers in test-moat script.
commit a1597da01eb30e7222dc153a81cd7575a889f8ff Author: Isis Lovecruft Date: Mon Nov 27 19:30:03 2017 + Send correct X-Forwarded-For headers in test-moat script. --- bridgedb/bridgerequest.py | 2 +- scripts/test-moat | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/bridgedb/bridgerequest.py b/bridgedb/bridgerequest.py index 560b704..e555e0a 100644 --- a/bridgedb/bridgerequest.py +++ b/bridgedb/bridgerequest.py @@ -149,7 +149,7 @@ class BridgeRequestBase(object): mod the number of nodes in the hashring. """ if not client: -client = self.client +client = type('')(self.client) # Get an HMAC with the key of the client identifier: digest = getHMACFunc(key)(client) diff --git a/scripts/test-moat b/scripts/test-moat index 490edc6..13b835e 100755 --- a/scripts/test-moat +++ b/scripts/test-moat @@ -15,6 +15,7 @@ fi function do_fetch() { curl -H 'Content-Type: application/vnd.api+json' \ -H 'Accept: application/vnd.api+json' \ + -H 'X-Forwarded-For: 1.2.3.4' \ --data '{"data": [{"supported": ["obfs4"], "version": "0.1.0", "type": "client-transports"}]}' \ http://127.0.0.1:6790/meek/moat/fetch echo @@ -23,6 +24,7 @@ function do_fetch() { function do_check() { curl -H 'Content-Type: application/vnd.api+json' \ -H 'Accept: application/vnd.api+json' \ + -H 'X-Forwarded-For: 1.2.3.4' \ --data '{"data": [{"challenge": "'$CHALLENGE'", "solution": "'$SOLUTION'", "version": "0.1.0", "qrcode": "false", "type": "moat-solution", "id": 2, "transport": "obfs4"}]}' \ http://127.0.0.1:6790/meek/moat/check echo ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Add a human-readable __str__() method to BridgeRequest classes.
commit f37c22c6284f13fb9f26f78926f0d115b468fb71 Author: Isis Lovecruft Date: Wed Dec 20 21:38:12 2017 + Add a human-readable __str__() method to BridgeRequest classes. --- bridgedb/bridgerequest.py | 9 + 1 file changed, 9 insertions(+) diff --git a/bridgedb/bridgerequest.py b/bridgedb/bridgerequest.py index e555e0a..d5af05f 100644 --- a/bridgedb/bridgerequest.py +++ b/bridgedb/bridgerequest.py @@ -117,6 +117,15 @@ class BridgeRequestBase(object): self.client = 'default' self.valid = False +def __str__(self): +"""Return a human-readable string describing this bridge request.""" +return "%s(ipVersion=%d, transports=%s, notBlockedIn=%s, valid=%s)" % \ + (self.__class__.__name__, +self.ipVersion, +self.transports, +self.notBlockedIn, +self.valid) + @property def ipVersion(self): """The IP version of bridge addresses to distribute to the client. ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Merge branch 'release/0.6.1'
commit 9bb5de6b07d33bef6ca7db22a70398018523b6e4 Merge: 659b4ed 6aaa2ed Author: Isis Lovecruft Date: Wed Dec 13 20:12:08 2017 + Merge branch 'release/0.6.1' CHANGELOG | 53 + README.rst | 97 - bridgedb.conf | 6 - bridgedb/Bridges.py| 18 +- bridgedb/Bucket.py | 288 - bridgedb/bridgerequest.py | 2 +- bridgedb/distributors/https/server.py | 6 +- bridgedb/distributors/moat/server.py | 2 +- bridgedb/main.py | 51 ++--- bridgedb/parse/options.py | 29 ++- bridgedb/runner.py | 14 -- bridgedb/test/test_Bucket.py | 63 -- bridgedb/test/test_bridgedb_script.py | 19 -- bridgedb/test/test_distributors_moat_server.py | 2 +- bridgedb/test/test_https_server.py | 14 ++ bridgedb/test/test_main.py | 26 +-- doc/sphinx/source/bridgedb.Bucket.rst | 8 - doc/sphinx/source/bridgedb.rst | 1 - doc/sphinx/source/conf.py | 1 - scripts/test-moat | 56 + 20 files changed, 208 insertions(+), 548 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Revert "Change "client-transport" moat resource type to "moat-transports"."
commit 6aaa2ed270e432efddd7cdc9ea81b83c00fe9c75 Author: Isis Lovecruft Date: Wed Dec 13 20:10:32 2017 + Revert "Change "client-transport" moat resource type to "moat-transports"." This reverts commit 50a9321fadcfd0e9a4f30bc1919c1bf46d27d8e1. --- bridgedb/distributors/moat/server.py | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/bridgedb/distributors/moat/server.py b/bridgedb/distributors/moat/server.py index 096b8c0..eb356fe 100644 --- a/bridgedb/distributors/moat/server.py +++ b/bridgedb/distributors/moat/server.py @@ -386,12 +386,12 @@ class CaptchaFetchResource(CaptchaResource): :param str request: A JSON blob containing the following fields: * "version": The moat protocol version. -* "type": "moat-transports". -* "supported": ["TRANSPORT", ⦠] +* "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. "obfs3" or + "obfs4". Currently supported transport identifiers are: + "vanilla", "fte", "obfs3", "obfs4", "scramblesuit". :rtype: list :returns: The list of transports the client supports. """ @@ -401,10 +401,10 @@ class CaptchaFetchResource(CaptchaResource): encoded_data = request.content.read() data = json.loads(encoded_data)["data"][0] -if data["type"] != "moat-transports": +if data["type"] != "client-transports": raise ValueError( "Bad JSON API object type: expected %s got %s" % -('moat-transports', data["type"])) +('client-transports', data["type"])) elif data["version"] != MOAT_API_VERSION: raise ValueError( "Client requested protocol version %s, but we're using %s" % ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Fix quoting in moat specification.
commit 8d8db4a06d3dff5e9f82adcb4e0e921fe3577098 Author: Isis Lovecruft Date: Wed Dec 13 18:18:55 2017 + Fix quoting in moat specification. --- README.rst | 74 +++--- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/README.rst b/README.rst index c2f32c1..8481382 100644 --- a/README.rst +++ b/README.rst @@ -429,10 +429,10 @@ Requesting Bridges The client MUST send a ``POST /meek/moat/fetch`` containing the following JSON:: { - 'data': { -'version': '0.1.0', -'type': 'client-transports', -'supported': [ 'TRANSPORT', 'TRANSPORT', ... ], + "data": { +"version": "0.1.0", +"type": "client-transports", +"supported": [ "TRANSPORT", "TRANSPORT", ... ], } } @@ -456,10 +456,10 @@ If there is no overlap with the transports which BridgeDB supports, the moat server will respond with the list of transports which is *does* support:: { - 'data': { -'version': '0.1.0', -'type': 'moat-transports', -'supported': [ 'TRANSPORT', 'TRANSPORT', ... ], + "data": { +"version": "0.1.0", +"type": "moat-transports", +"supported": [ "TRANSPORT", "TRANSPORT", ... ], } } @@ -468,13 +468,13 @@ the "best" transport from the list of supported transports, and respond with the following JSON containing a CAPTCHA challenge:: { - 'data': { -'id': 1, -'type': 'moat-challenge', -'version': '0.1.0', -'transport': TRANSPORT, -'image': CAPTCHA, -'challenge': CHALLENGE, + "data": { +"id": "1", +"type": "moat-challenge", +"version": "0.1.0", +"transport": "TRANSPORT", +"image": "CAPTCHA", +"challenge": "CHALLENGE", } } @@ -498,14 +498,14 @@ To propose a solution to a CAPTCHA, the client MUST send a request for ``POST /meek/moat/check``, where the body of the request contains the following JSON:: { - 'data': { -'id': 2, -'type': 'moat-solution', -'version': '0.1.0', -'transport': TRANSPORT, -'challenge': CHALLENGE, -'solution': SOLUTION, -'qrcode': BOOLEAN, + "data": { +"id": "2", +"type": "moat-solution", +"version": "0.1.0", +"transport": "TRANSPORT", +"challenge": "CHALLENGE", +"solution": "SOLUTION", +"qrcode": "BOOLEAN", } } @@ -518,8 +518,8 @@ where: * ``SOLUTION`` is a valid unicode string, up to 20 bytes in length, containing the client's answer (i.e. what characters the CAPTCHA image displayed). The solution is *not* case-sensitive. -* ``BOOLEAN`` is ``'true'`` if the client wants a qrcode containing the bridge - lines to be generated and returned; ``'false'`` otherwise. +* ``BOOLEAN`` is ``"true"`` if the client wants a qrcode containing the bridge + lines to be generated and returned; ``"false"`` otherwise. Receiving Bridges @@ -532,12 +532,12 @@ If the ``SOLUTION`` was successful for the supplied ``CHALLENGE``, the server responds ``200 OK`` with the following JSON:: { - 'data': { -'id': 3, -'type': 'moat-bridges', -'version': '0.1.0', -'bridges': [ 'BRIDGE_LINE', ... ], -'qrcode': QRCODE, + "data": { +"id": "3", +"type": "moat-bridges", +"version": "0.1.0", +"bridges": [ "BRIDGE_LINE", ... ], +"qrcode": "QRCODE", } } @@ -556,12 +556,12 @@ server is unable to distribute the requested Bridges, the server responds ``200 OK`` with the following JSON:: { - 'error': { -'id': 1, -'code': '404', -'status': 'Not Found', -'title': 'Could not fetch the type of bridges you requested', -'detail': DETAILS, + "error": { +"id": "1", +"code": "404", +"status": "Not Found", +"title": "Could not fetch the type of bridges you requested", +"detail": "DETAILS", } } ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Merge branch 'fix/3015-remove-buckets' into develop
commit e3a2ea593dcc6614b865572d9fc1d3b333b5770d Merge: 16e7a2d f4d5591 Author: Isis Lovecruft Date: Tue Nov 28 21:22:24 2017 + Merge branch 'fix/3015-remove-buckets' into develop README.rst| 23 +-- bridgedb.conf | 6 - bridgedb/Bridges.py | 18 +-- bridgedb/Bucket.py| 288 -- bridgedb/main.py | 51 +++--- bridgedb/parse/options.py | 29 ++-- bridgedb/runner.py| 14 -- bridgedb/test/test_Bucket.py | 63 bridgedb/test/test_bridgedb_script.py | 19 --- bridgedb/test/test_main.py| 26 +-- doc/sphinx/source/bridgedb.Bucket.rst | 8 - doc/sphinx/source/bridgedb.rst| 1 - doc/sphinx/source/conf.py | 1 - 13 files changed, 41 insertions(+), 506 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [bridgedb/develop] Add CHANGELOG entries for 0.6.1.
commit b828d5777f02dc6f544a0ea821952dc1f06e2d7d Author: Isis Lovecruft Date: Wed Dec 13 18:55:50 2017 + Add CHANGELOG entries for 0.6.1. --- CHANGELOG | 53 + 1 file changed, 53 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index 7dbe222..effc405 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,56 @@ +Changes in version 0.6.1 - 2017-12-13 + +* ADDS a shell script, scripts/test-moat, for testing either a +locally-running moat server, or a remote one through a meek +tunnel. +Thanks to David Fifield for his work on meek, assistance setting +it up, and providing the first version of this script. + +* FIXES #24433 https://bugs.torproject.org/24433 +The test-moat script wasn't sending an X-Forwarded-For header, +which triggered a bug in the moat server, since the CAPTCHA +solution includes an HMAC based on the client's IP (forwarded +through all the several layers of tunnels/proxies). + +* FIXES #24443 https://bugs.torproject.org/24443 +Due to a difference between how booleans are parsed by Python's +json library and normal Python booleans, the moat server was +generating and returning QRCodes⦠regardless of whether the remote +client application asked for one. This is now fixed. + +* FIXES #24460 https://bugs.torproject.org/24460 +There was an unhandled error when sending certain (what appears to +be possibly malicious? but in a very strange way) requests to +BridgeDB's HTTPS distributor. The robots making the requests were +attempting to request bridges, but were presenting a CAPTCHA +solution without the correct HTML form field parameters present, +which isn't possible through normal usage of the web interface. +Whoever or whatever is doing this is now going to be endlessly +redirected so that they may forever spiral in their own private +internet hell. I reserve the right come up with a worse fate for +them later, should I get bored. + +* FIXES #3015 https://bugs.torproject.org/3015 +BridgeDB has had a partially-implemented concept of "buckets" +since the age of the dinosaurs: write some of the unallocated +bridges to a file which should (somehow) be manually distributed. +In addition to be unused and untested, there were several issues +with the buckets, the most significant of which were the inability +to request pluggable transports in a bucket and the fact that +buckets were not persistent in any way (e.g. if i request a bucket +of 50 bridges for Gomez and another with 50 for Morticia, they +might end up with some of the same bridges, further, tomorrow +they'll end up with 50 possibly different bridges than those they +received today). All of this code is now removed. + +And includes the following general changes: + +* FIXES issues with JSON quote syntax and a mistaken JSON API +"type" parameter in the specification of the moat server (in the +README). +Thanks to Mark Smith and Kathy Brade for pointing out the issues. + + Changes in version 0.6.0 - 2017-11-15 * ADDS a new JSON API distributor called "moat", which is intended ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttonproperties] Update translations for torbutton-torbuttonproperties
commit 96e1a86f29f18975b68870532baf72ba6f7edd10 Author: Translation commit bot Date: Wed Dec 20 22:47:39 2017 + Update translations for torbutton-torbuttonproperties --- mk/torbutton.properties | 38 +++--- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/mk/torbutton.properties b/mk/torbutton.properties index 7e42a4090..d436164dc 100644 --- a/mk/torbutton.properties +++ b/mk/torbutton.properties @@ -1,10 +1,10 @@ -torbutton.circuit_display.internet = Internet -torbutton.circuit_display.ip_unknown = IP unknown -torbutton.circuit_display.onion_site = Onion site -torbutton.circuit_display.this_browser = This browser -torbutton.circuit_display.relay = relay -torbutton.circuit_display.tor_bridge = Bridge -torbutton.circuit_display.unknown_country = Unknown country +torbutton.circuit_display.internet = ÐнÑеÑÐ½ÐµÑ +torbutton.circuit_display.ip_unknown = IP непознаÑа +torbutton.circuit_display.onion_site = Ðнион / ÐÑомид ÑÑÑана +torbutton.circuit_display.this_browser = ÐÐ²Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ +torbutton.circuit_display.relay = Ñазол +torbutton.circuit_display.tor_bridge = ÐоÑÑ / Ðазол +torbutton.circuit_display.unknown_country = ÐепознаÑа дÑжава torbutton.content_sizer.margin_tooltip = Tor Browser adds this margin to make the width and height of your window less distinctive, and thus reduces the ability of people to track you online. torbutton.panel.tooltip.disabled = ÐликнеÑе за да го овозможиÑе Ð¢Ð¾Ñ torbutton.panel.tooltip.enabled = ÐликнеÑе за да го оневозможиÑе Ð¢Ð¾Ñ @@ -21,12 +21,12 @@ torbutton.popup.dontask = ÐвÑомаÑÑки пÑÐµÐ·ÐµÐ¼Ð°Ñ Ð´Ð°ÑоÑеки torbutton.popup.prompted_language = Ðа да ви даде повеÑе пÑиваÑноÑÑ, Torbutton може да баÑа англÑика веÑзиÑа на веб ÑÑÑаниÑиÑе. Ðва може да пÑедизвика веб ÑÑÑаниÑе кои пÑеÑеÑиÑÐ°Ð°Ñ Ð´Ð° ви Ð±Ð¸Ð´Ð°Ñ Ð´Ð¾ÑÑапни на ваÑÐ¸Ð¾Ñ Ð¼Ð°ÑÑин Ñазик, намеÑÑо Ñоа да Ð±Ð¸Ð´Ð°Ñ Ð¿Ñикажани на англиÑки.\n\nÐали ÑакаÑе да побаÑаÑе англиÑка веÑзиÑа на веб ÑÑÑаниÑе за подобÑа пÑиваÑноÑÑ? torbutton.popup.no_newnym = Torbutton не може безбедно да ви даде нов иденÑиÑеÑ. Ðема пÑиÑÑап до Ð¢Ð¾Ñ ÐºÐ¾Ð½ÑÑолнаÑа вÑаÑа.\n\nÐали коÑиÑÑиÑе го коÑиÑÑиÑе Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑ-ÐºÐ¸Ð¾Ñ Ð¿Ð°ÐºÐµÑ? torbutton.title.prompt_torbrowser = Ðажна Torbutton инÑоÑмаÑиÑа -torbutton.popup.prompt_torbrowser = Torbutton works differently now: you can't turn it off any more.\n\nWe made this change because it isn't safe to use Torbutton in a browser that's also used for non-Tor browsing. There were too many bugs there that we couldn't fix any other way.\n\nIf you want to keep using Firefox normally, you should uninstall Torbutton and download Tor Browser Bundle. The privacy properties of Tor Browser are also superior to those of normal Firefox, even when Firefox is used with Torbutton.\n\nTo remove Torbutton, go to Tools->Addons->Extensions and then click the Remove button next to Torbutton. -torbutton.popup.short_torbrowser = Important Torbutton Information!\n\nTorbutton is now always enabled.\n\nClick on the Torbutton for more information. +torbutton.popup.prompt_torbrowser = Torbutton ÑабоÑи Ð¿Ð¾Ð¸Ð½Ð°ÐºÑ Ñега: не може повеÑе да биде иÑклÑÑен.\n\nÐа напÑавивме оваа пÑомена, заоÑа ÑÑо не е безбедно да Ñе коÑиÑÑи Torbutton во пÑелиÑÑÑÐ²Ð°Ñ ÐºÐ¾Ð¸ иÑÑо Ñака Ñе коÑиÑÑи за не-Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑе. ÐмаÑе пÑÐµÐ¼Ð½Ð¾Ð³Ñ Ð³ÑеÑки и пÑоблеми кои не можеа да Ð±Ð¸Ð´Ð°Ñ Ð¿Ð¾Ð¿Ñавени на поинаков наÑин.\n\nÐко ÑакаÑе да пÑодолжиÑе да го коÑиÑÑиÑе Firefox ÑÑандаÑдно, ÑÑеба да го деинÑÑалиÑаÑе Torbutton и да го пÑеземеÑе Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ Ð¿Ð°ÐºÐµÑоÑ. ÐÑиваÑниÑе поÑÑавки на Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑÐ¾Ñ Ñе помоÑни од оние на ÑÑандаÑÐ´Ð½Ð¸Ð¾Ñ Firefox дÑÑи и кога Firefox Ñе коÑиÑÑи Ñо Torbut ton.\n\nÐа да го оÑÑÑÑÑаниÑе Torbutton, одеÑе во ÐлаÑки->ÐодаÑоÑи->ÐÑоÑиÑÑваÑа и кликнеÑе на ÐÑÑÑÑани копÑеÑо до Torbutton. +torbutton.popup.short_torbrowser = Ðажна Torbutton инÑоÑмаÑиÑа!\n\nTorbutton Ñега е ÑÐµÐºÐ¾Ð³Ð°Ñ Ð²ÐºÐ»ÑÑен.\n\nÐликни на Torbutton за повеÑе инÑоÑмаÑии. -torbutton.p
[tor-commits] [tor/master] type error fix for monotime_coarse_add_msec on windows
commit bac0bcbba191b30836fe305223265b4028d584cf Author: Nick Mathewson Date: Wed Dec 20 17:45:59 2017 -0500 type error fix for monotime_coarse_add_msec on windows --- src/common/compat_time.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/common/compat_time.c b/src/common/compat_time.c index 396a7b754..8cecff278 100644 --- a/src/common/compat_time.c +++ b/src/common/compat_time.c @@ -635,7 +635,8 @@ monotime_add_msec(monotime_t *out, const monotime_t *val, uint32_t msec) } void -monotime_coarse_add_msec(monotime_t *out, const monotime_t *val, uint32_t msec) +monotime_coarse_add_msec(monotime_coarse_t *out, const monotime_coarse_t *val, + uint32_t msec) { out->tick_count_ = val->tick_count_ + msec; } ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttonproperties] Update translations for torbutton-torbuttonproperties
commit 11dfbf68ec3ebb8080c09ab3957c8a1783126eac Author: Translation commit bot Date: Wed Dec 20 22:17:37 2017 + Update translations for torbutton-torbuttonproperties --- mk/torbutton.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mk/torbutton.properties b/mk/torbutton.properties index 75a6c4497..7e42a4090 100644 --- a/mk/torbutton.properties +++ b/mk/torbutton.properties @@ -19,8 +19,8 @@ torbutton.popup.launch = ÐÑеземи даÑоÑека torbutton.popup.cancel = ÐÑкажи torbutton.popup.dontask = ÐвÑомаÑÑки пÑÐµÐ·ÐµÐ¼Ð°Ñ Ð´Ð°ÑоÑеки од Ñега па наÑÐ°Ð¼Ñ torbutton.popup.prompted_language = Ðа да ви даде повеÑе пÑиваÑноÑÑ, Torbutton може да баÑа англÑика веÑзиÑа на веб ÑÑÑаниÑиÑе. Ðва може да пÑедизвика веб ÑÑÑаниÑе кои пÑеÑеÑиÑÐ°Ð°Ñ Ð´Ð° ви Ð±Ð¸Ð´Ð°Ñ Ð´Ð¾ÑÑапни на ваÑÐ¸Ð¾Ñ Ð¼Ð°ÑÑин Ñазик, намеÑÑо Ñоа да Ð±Ð¸Ð´Ð°Ñ Ð¿Ñикажани на англиÑки.\n\nÐали ÑакаÑе да побаÑаÑе англиÑка веÑзиÑа на веб ÑÑÑаниÑе за подобÑа пÑиваÑноÑÑ? -torbutton.popup.no_newnym = Torbutton cannot safely give you a new identity. It does not have access to the Tor Control Port.\n\nAre you running Tor Browser Bundle? -torbutton.title.prompt_torbrowser = Important Torbutton Information +torbutton.popup.no_newnym = Torbutton не може безбедно да ви даде нов иденÑиÑеÑ. Ðема пÑиÑÑап до Ð¢Ð¾Ñ ÐºÐ¾Ð½ÑÑолнаÑа вÑаÑа.\n\nÐали коÑиÑÑиÑе го коÑиÑÑиÑе Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑ-ÐºÐ¸Ð¾Ñ Ð¿Ð°ÐºÐµÑ? +torbutton.title.prompt_torbrowser = Ðажна Torbutton инÑоÑмаÑиÑа torbutton.popup.prompt_torbrowser = Torbutton works differently now: you can't turn it off any more.\n\nWe made this change because it isn't safe to use Torbutton in a browser that's also used for non-Tor browsing. There were too many bugs there that we couldn't fix any other way.\n\nIf you want to keep using Firefox normally, you should uninstall Torbutton and download Tor Browser Bundle. The privacy properties of Tor Browser are also superior to those of normal Firefox, even when Firefox is used with Torbutton.\n\nTo remove Torbutton, go to Tools->Addons->Extensions and then click the Remove button next to Torbutton. torbutton.popup.short_torbrowser = Important Torbutton Information!\n\nTorbutton is now always enabled.\n\nClick on the Torbutton for more information. ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttonproperties] Update translations for torbutton-torbuttonproperties
commit 824089c96f1e1f7d945963022f85631e70c2421a Author: Translation commit bot Date: Wed Dec 20 21:47:40 2017 + Update translations for torbutton-torbuttonproperties --- mk/torbutton.properties | 16 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/mk/torbutton.properties b/mk/torbutton.properties index 44669e4f8..75a6c4497 100644 --- a/mk/torbutton.properties +++ b/mk/torbutton.properties @@ -11,14 +11,14 @@ torbutton.panel.tooltip.enabled = ÐликнеÑе за да го оневозм torbutton.panel.label.disabled = Ð¢Ð¾Ñ Ðµ оневозможен torbutton.panel.label.enabled = Ð¢Ð¾Ñ Ðµ овозможен extensions.torbut...@torproject.org.description = Torbutton пÑÑжа копÑе за конÑигÑÑиÑаÑе на Ð¢Ð¾Ñ Ð¿Ð¾ÑÑавкиÑе и бÑзо и олеÑнеÑо ÑиÑÑо пÑиваÑно пÑелиÑÑÑваÑе на подаÑоÑи. -torbutton.popup.external.title = Download an external file type? -torbutton.popup.external.app = Tor Browser cannot display this file. You will need to open it with another application.\n\n -torbutton.popup.external.note = Some types of files can cause applications to connect to the Internet without using Tor.\n\n -torbutton.popup.external.suggest = To be safe, you should only open downloaded files while offline, or use a Tor Live CD such as Tails.\n -torbutton.popup.launch = Download file -torbutton.popup.cancel = ÐÑкажи Ñе -torbutton.popup.dontask = Automatically download files from now on -torbutton.popup.prompted_language = To give you more privacy, Torbutton can request the English language version of web pages. This may cause web pages that you prefer to read in your native language to display in English instead.\n\nWould you like to request English language web pages for better privacy? +torbutton.popup.external.title = ÐÑеземаÑе на надвоÑеÑна даÑоÑека? +torbutton.popup.external.app = Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑÐ¾Ñ Ð½Ðµ може да Ñа пÑикаже оваа даÑоÑека. ТÑеба да Ñа оÑвоÑиÑе Ñо дÑÑга апликаÑиÑа.\n\n +torbutton.popup.external.note = Ðекои Ñипови на даÑоÑеки Ð¼Ð¾Ð¶Ð°Ñ Ð´Ð° напÑÐ°Ð²Ð°Ñ Ð°Ð¿Ð»Ð¸ÐºÐ°ÑииÑе / пÑогÑамиÑе да Ñе пÑиклÑÑÐ°Ñ Ð½Ð° ÐнÑеÑÐ½ÐµÑ Ð±ÐµÐ· да коÑиÑÑÐ°Ñ Ð¢Ð¾Ñ.\n\n +torbutton.popup.external.suggest = Ðа би биле безбедни, единÑÑвено ÑÑеба пÑеземениÑе даÑоÑеки да ги оÑвоÑаÑе додека ÑÑе иÑклÑÑени од ÐнÑеÑнеÑ, или коÑиÑÑеÑÑи Ð¢Ð¾Ñ Ð±ÑÑиÑаÑкоÑо ЦРкако Tails.\n +torbutton.popup.launch = ÐÑеземи даÑоÑека +torbutton.popup.cancel = ÐÑкажи +torbutton.popup.dontask = ÐвÑомаÑÑки пÑÐµÐ·ÐµÐ¼Ð°Ñ Ð´Ð°ÑоÑеки од Ñега па наÑÐ°Ð¼Ñ +torbutton.popup.prompted_language = Ðа да ви даде повеÑе пÑиваÑноÑÑ, Torbutton може да баÑа англÑика веÑзиÑа на веб ÑÑÑаниÑиÑе. Ðва може да пÑедизвика веб ÑÑÑаниÑе кои пÑеÑеÑиÑÐ°Ð°Ñ Ð´Ð° ви Ð±Ð¸Ð´Ð°Ñ Ð´Ð¾ÑÑапни на ваÑÐ¸Ð¾Ñ Ð¼Ð°ÑÑин Ñазик, намеÑÑо Ñоа да Ð±Ð¸Ð´Ð°Ñ Ð¿Ñикажани на англиÑки.\n\nÐали ÑакаÑе да побаÑаÑе англиÑка веÑзиÑа на веб ÑÑÑаниÑе за подобÑа пÑиваÑноÑÑ? torbutton.popup.no_newnym = Torbutton cannot safely give you a new identity. It does not have access to the Tor Control Port.\n\nAre you running Tor Browser Bundle? torbutton.title.prompt_torbrowser = Important Torbutton Information torbutton.popup.prompt_torbrowser = Torbutton works differently now: you can't turn it off any more.\n\nWe made this change because it isn't safe to use Torbutton in a browser that's also used for non-Tor browsing. There were too many bugs there that we couldn't fix any other way.\n\nIf you want to keep using Firefox normally, you should uninstall Torbutton and download Tor Browser Bundle. The privacy properties of Tor Browser are also superior to those of normal Firefox, even when Firefox is used with Torbutton.\n\nTo remove Torbutton, go to Tools->Addons->Extensions and then click the Remove button next to Torbutton. ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-misc] Update translations for tails-misc
commit 9b26a4701e7a773d62ed9f687218b9ad5fe8722b Author: Translation commit bot Date: Wed Dec 20 21:47:03 2017 + Update translations for tails-misc --- mk.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk.po b/mk.po index 6f56c58d0..00cd2077e 100644 --- a/mk.po +++ b/mk.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-09-13 20:10+0200\n" -"PO-Revision-Date: 2017-12-20 21:06+\n" +"PO-Revision-Date: 2017-12-20 21:27+\n" "Last-Translator: carolyn \n" "Language-Team: Macedonian (http://www.transifex.com/otf/torproject/language/mk/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttondtd] Update translations for torbutton-torbuttondtd
commit 6304997205bef8020f0554d98697b198cb6120be Author: Translation commit bot Date: Wed Dec 20 21:17:45 2017 + Update translations for torbutton-torbuttondtd --- mk/torbutton.dtd | 32 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/mk/torbutton.dtd b/mk/torbutton.dtd index 465efd268..5636ca738 100644 --- a/mk/torbutton.dtd +++ b/mk/torbutton.dtd @@ -32,19 +32,19 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttonproperties] Update translations for torbutton-torbuttonproperties
commit 31789995d33a06b53c6ede53a173490c06cf7f09 Author: Translation commit bot Date: Wed Dec 20 21:17:39 2017 + Update translations for torbutton-torbuttonproperties --- mk/torbutton.properties | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mk/torbutton.properties b/mk/torbutton.properties index f0da7544b..44669e4f8 100644 --- a/mk/torbutton.properties +++ b/mk/torbutton.properties @@ -6,11 +6,11 @@ torbutton.circuit_display.relay = relay torbutton.circuit_display.tor_bridge = Bridge torbutton.circuit_display.unknown_country = Unknown country torbutton.content_sizer.margin_tooltip = Tor Browser adds this margin to make the width and height of your window less distinctive, and thus reduces the ability of people to track you online. -torbutton.panel.tooltip.disabled = ÐликнеÑе за да го вклÑÑиÑе Ð¢Ð¾Ñ -torbutton.panel.tooltip.enabled = ÐликнеÑе за да го иÑклÑÑиÑе Ð¢Ð¾Ñ -torbutton.panel.label.disabled = Ð¢Ð¾Ñ Ðµ иÑклÑÑен -torbutton.panel.label.enabled = Ð¢Ð¾Ñ Ðµ вклÑÑен -extensions.torbut...@torproject.org.description = Torbutton provides a button to configure Tor settings and quickly and easily clear private browsing data. +torbutton.panel.tooltip.disabled = ÐликнеÑе за да го овозможиÑе Ð¢Ð¾Ñ +torbutton.panel.tooltip.enabled = ÐликнеÑе за да го оневозможиÑе Ð¢Ð¾Ñ +torbutton.panel.label.disabled = Ð¢Ð¾Ñ Ðµ оневозможен +torbutton.panel.label.enabled = Ð¢Ð¾Ñ Ðµ овозможен +extensions.torbut...@torproject.org.description = Torbutton пÑÑжа копÑе за конÑигÑÑиÑаÑе на Ð¢Ð¾Ñ Ð¿Ð¾ÑÑавкиÑе и бÑзо и олеÑнеÑо ÑиÑÑо пÑиваÑно пÑелиÑÑÑваÑе на подаÑоÑи. torbutton.popup.external.title = Download an external file type? torbutton.popup.external.app = Tor Browser cannot display this file. You will need to open it with another application.\n\n torbutton.popup.external.note = Some types of files can cause applications to connect to the Internet without using Tor.\n\n ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-misc] Update translations for tails-misc
commit 02913fca6789c94e93de0da23a8ef1b1bcdcc75f Author: Translation commit bot Date: Wed Dec 20 21:17:02 2017 + Update translations for tails-misc --- mk.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mk.po b/mk.po index f8c1b8fd7..6f56c58d0 100644 --- a/mk.po +++ b/mk.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-09-13 20:10+0200\n" -"PO-Revision-Date: 2017-12-20 19:54+\n" +"PO-Revision-Date: 2017-12-20 21:06+\n" "Last-Translator: carolyn \n" "Language-Team: Macedonian (http://www.transifex.com/otf/torproject/language/mk/)\n" "MIME-Version: 1.0\n" @@ -210,7 +210,7 @@ msgstr "" #: config/chroot_local-includes/usr/local/lib/tails-virt-notify-user:83 msgid "Learn more" -msgstr "" +msgstr "ÐаÑÑи повеÑе" #: config/chroot_local-includes/usr/local/bin/tor-browser:43 msgid "Tor is not ready" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttondtd] Update translations for torbutton-torbuttondtd
commit dad73f0ef8312d29be03e6305a051963dd5300dd Author: Translation commit bot Date: Wed Dec 20 20:47:44 2017 + Update translations for torbutton-torbuttondtd --- mk/torbutton.dtd | 50 +- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/mk/torbutton.dtd b/mk/torbutton.dtd index 89835..465efd268 100644 --- a/mk/torbutton.dtd +++ b/mk/torbutton.dtd @@ -1,37 +1,37 @@ - + - + - + - - - + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - - + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/mat-gui] Update translations for mat-gui
commit d8e5ea3e1f797ef807c488db3aed1ce4cfd45334 Author: Translation commit bot Date: Wed Dec 20 20:46:25 2017 + Update translations for mat-gui --- mk.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk.po b/mk.po index a43599f6e..0f0fd9bb9 100644 --- a/mk.po +++ b/mk.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-02-10 23:06+0100\n" -"PO-Revision-Date: 2017-09-19 17:08+\n" +"PO-Revision-Date: 2017-12-20 20:26+\n" "Last-Translator: carolyn \n" "Language-Team: Macedonian (http://www.transifex.com/otf/torproject/language/mk/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tor-browser-manual] Update translations for tor-browser-manual
commit acdde1e93d569fefe3ea96e09c7128bad0578835 Author: Translation commit bot Date: Wed Dec 20 20:20:48 2017 + Update translations for tor-browser-manual --- mk/mk.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/mk.po b/mk/mk.po index dba595e0c..f64793f4a 100644 --- a/mk/mk.po +++ b/mk/mk.po @@ -711,7 +711,7 @@ msgstr "" #: managing-identities.page:123 msgid "New Tor Circuit for this Site" -msgstr "" +msgstr "Ðов Ð¢Ð¾Ñ ÐºÑÑг за оваа ÑÑÑана" #: managing-identities.page:124 msgid "" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttondtd] Update translations for torbutton-torbuttondtd
commit d2543491ee0140da95bf8a73d2e7cfc3a25ed285 Author: Translation commit bot Date: Wed Dec 20 20:17:52 2017 + Update translations for torbutton-torbuttondtd --- mk/torbutton.dtd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/torbutton.dtd b/mk/torbutton.dtd index 1f2525dd7..89835 100644 --- a/mk/torbutton.dtd +++ b/mk/torbutton.dtd @@ -1,4 +1,4 @@ - + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-branddtd_completed] Update translations for torbutton-branddtd_completed
commit 68beced601e22af6851a99ec0b570f45a860117c Author: Translation commit bot Date: Wed Dec 20 20:17:41 2017 + Update translations for torbutton-branddtd_completed --- mk/brand.dtd | 15 +++ 1 file changed, 15 insertions(+) diff --git a/mk/brand.dtd b/mk/brand.dtd new file mode 100644 index 0..23923b628 --- /dev/null +++ b/mk/brand.dtd @@ -0,0 +1,15 @@ + + + + + + + + + + + + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-brandproperties_completed] Update translations for torbutton-brandproperties_completed
commit bcff7e69aca00744b9d03adfb72a1bcabba1f887 Author: Translation commit bot Date: Wed Dec 20 20:17:29 2017 + Update translations for torbutton-brandproperties_completed --- mk/brand.properties | 16 1 file changed, 16 insertions(+) diff --git a/mk/brand.properties b/mk/brand.properties new file mode 100644 index 0..163752f97 --- /dev/null +++ b/mk/brand.properties @@ -0,0 +1,16 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +brandShorterName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ +brandShortName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ +brandFullName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ +vendorShortName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ + +homePageSingleStartMain=Firefox СÑаÑÑ, бÑза домаÑна ÑÑÑаниÑа Ñо вгÑаден пÑебаÑÑÐ²Ð°Ñ +homePageImport=ÐнеÑеÑе ваÑа домаÑа ÑÑÑаниÑа од %S + +homePageMigrationPageTitle=ÐÐ·Ð±Ð¾Ñ Ð½Ð° ÐомаÑна ÑÑÑанÑиÑа +homePageMigrationDescription=СелекÑиÑаÑÑе домаÑна ÑÑÑаниÑа коÑа ÑакаÑе да Ñа коÑиÑÑиÑе: + +syncBrandShortName=Ð¡Ð¸Ð½Ñ ÑонизиÑÐ°Ñ ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-branddtd] Update translations for torbutton-branddtd
commit d197f34643d32c9eafc545cbcd4a6a0f147354ef Author: Translation commit bot Date: Wed Dec 20 20:17:35 2017 + Update translations for torbutton-branddtd --- mk/brand.dtd | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mk/brand.dtd b/mk/brand.dtd index b2f34a7a7..23923b628 100644 --- a/mk/brand.dtd +++ b/mk/brand.dtd @@ -6,10 +6,10 @@ - + - - - - + + + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-brandproperties] Update translations for torbutton-brandproperties
commit acc4fa5b73ca076bedd3cc38ead05cc6016ef44a Author: Translation commit bot Date: Wed Dec 20 20:17:23 2017 + Update translations for torbutton-brandproperties --- mk/brand.properties | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mk/brand.properties b/mk/brand.properties index a31aaf759..163752f97 100644 --- a/mk/brand.properties +++ b/mk/brand.properties @@ -7,10 +7,10 @@ brandShortName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ brandFullName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ vendorShortName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ -homePageSingleStartMain=Firefox Start, a fast home page with built-in search -homePageImport=Import your home page from %S +homePageSingleStartMain=Firefox СÑаÑÑ, бÑза домаÑна ÑÑÑаниÑа Ñо вгÑаден пÑебаÑÑÐ²Ð°Ñ +homePageImport=ÐнеÑеÑе ваÑа домаÑа ÑÑÑаниÑа од %S -homePageMigrationPageTitle=Home Page Selection -homePageMigrationDescription=Please select the home page you wish to use: +homePageMigrationPageTitle=ÐÐ·Ð±Ð¾Ñ Ð½Ð° ÐомаÑна ÑÑÑанÑиÑа +homePageMigrationDescription=СелекÑиÑаÑÑе домаÑна ÑÑÑаниÑа коÑа ÑакаÑе да Ñа коÑиÑÑиÑе: -syncBrandShortName=Sync +syncBrandShortName=Ð¡Ð¸Ð½Ñ ÑонизиÑÐ°Ñ ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-misc] Update translations for tails-misc
commit 6e8c72ada9e62a9a3c01cad23c272674a5c1eeec Author: Translation commit bot Date: Wed Dec 20 20:17:02 2017 + Update translations for tails-misc --- mk.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk.po b/mk.po index 536eccf5e..f8c1b8fd7 100644 --- a/mk.po +++ b/mk.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-09-13 20:10+0200\n" -"PO-Revision-Date: 2017-12-20 19:47+\n" +"PO-Revision-Date: 2017-12-20 19:54+\n" "Last-Translator: carolyn \n" "Language-Team: Macedonian (http://www.transifex.com/otf/torproject/language/mk/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-abouttorproperties_completed] Update translations for torbutton-abouttorproperties_completed
commit 52787662ef06515e8d28573f616844c6c89a127a Author: Translation commit bot Date: Wed Dec 20 19:48:50 2017 + Update translations for torbutton-abouttorproperties_completed --- mk/abouttor.properties | 20 1 file changed, 20 insertions(+) diff --git a/mk/abouttor.properties b/mk/abouttor.properties new file mode 100644 index 0..0a08d3a8a --- /dev/null +++ b/mk/abouttor.properties @@ -0,0 +1,20 @@ +# Copyright (c) 2014, The Tor Project, Inc. +# See LICENSE for licensing information. +# vim: set sw=2 sts=2 ts=8 et: + +aboutTor.searchDDG.privacy=ÐÑебаÑÑÐ²Ð°Ñ Ð±ÐµÐ·Ð±ÐµÐ´Ð½Ð¾ Ñо DuckDuckGo . +# The following string is a link which replaces %1$S above. +aboutTor.searchDDG.privacy.link=https://duckduckgo.com/privacy.html +# The following string is a link which replaces %2$S above. +aboutTor.searchDDG.search.link=https://duckduckgo.com/ + +aboutTor.donationBanner.donate=ÐониÑÐ°Ñ Ñега! + +aboutTor.donationBanner.slogan=ТоÑ: Ð¥ÑанеÑе на дигиÑÐ°Ð»Ð½Ð¸Ð¾Ñ Ð¾ÑÐ¿Ð¾Ñ +aboutTor.donationBanner.mozilla=ÐониÑÐ°Ñ Ð´ÐµÐ½ÐµÑ Ð¸ Mozilla Ñе го зголеми двоÑно ÑвоÑÐ¾Ñ Ð¿Ð¾Ð´Ð°Ñок! + +aboutTor.donationBanner.tagline1=ÐаÑÑиÑÑваÑе на новинаÑиÑе, ÑвиÑкаÑиÑе, и акÑивиÑÑиÑе од 2006-Ñа година +aboutTor.donationBanner.tagline2=ÐÑежна Ñлобода низ ÑÐµÐ»Ð¸Ð¾Ñ ÑÐ²ÐµÑ +aboutTor.donationBanner.tagline3=ÐнлаÑн Ñлобода +aboutTor.donationBanner.tagline4=ÐоÑÑикнÑваÑе на Ñлободно изÑазÑваÑе во ÑвеÑÐ¾Ñ +aboutTor.donationBanner.tagline5=Ðа ÑÑиÑи пÑиваÑноÑÑа на милиони ÑекоÑдневно ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-abouttorproperties] Update translations for torbutton-abouttorproperties
commit 9cd031988aa3af047a8ed2a9629532fb6f8f6cbe Author: Translation commit bot Date: Wed Dec 20 19:48:44 2017 + Update translations for torbutton-abouttorproperties --- mk/abouttor.properties | 18 +- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/mk/abouttor.properties b/mk/abouttor.properties index d0d3a64b8..0a08d3a8a 100644 --- a/mk/abouttor.properties +++ b/mk/abouttor.properties @@ -2,19 +2,19 @@ # See LICENSE for licensing information. # vim: set sw=2 sts=2 ts=8 et: -aboutTor.searchDDG.privacy=Search securely with DuckDuckGo. +aboutTor.searchDDG.privacy=ÐÑебаÑÑÐ²Ð°Ñ Ð±ÐµÐ·Ð±ÐµÐ´Ð½Ð¾ Ñо DuckDuckGo . # The following string is a link which replaces %1$S above. aboutTor.searchDDG.privacy.link=https://duckduckgo.com/privacy.html # The following string is a link which replaces %2$S above. aboutTor.searchDDG.search.link=https://duckduckgo.com/ -aboutTor.donationBanner.donate=Donate Now! +aboutTor.donationBanner.donate=ÐониÑÐ°Ñ Ñега! -aboutTor.donationBanner.slogan=Tor: Powering Digital Resistance -aboutTor.donationBanner.mozilla=Give today and Mozilla will match your gift! +aboutTor.donationBanner.slogan=ТоÑ: Ð¥ÑанеÑе на дигиÑÐ°Ð»Ð½Ð¸Ð¾Ñ Ð¾ÑÐ¿Ð¾Ñ +aboutTor.donationBanner.mozilla=ÐониÑÐ°Ñ Ð´ÐµÐ½ÐµÑ Ð¸ Mozilla Ñе го зголеми двоÑно ÑвоÑÐ¾Ñ Ð¿Ð¾Ð´Ð°Ñок! -aboutTor.donationBanner.tagline1=Protecting Journalists, Whistleblowers, & Activists Since 2006 -aboutTor.donationBanner.tagline2=Networking Freedom Worldwide -aboutTor.donationBanner.tagline3=Freedom Online -aboutTor.donationBanner.tagline4=Fostering Free Expression Worldwide -aboutTor.donationBanner.tagline5=Protecting the Privacy of Millions Every Day +aboutTor.donationBanner.tagline1=ÐаÑÑиÑÑваÑе на новинаÑиÑе, ÑвиÑкаÑиÑе, и акÑивиÑÑиÑе од 2006-Ñа година +aboutTor.donationBanner.tagline2=ÐÑежна Ñлобода низ ÑÐµÐ»Ð¸Ð¾Ñ ÑÐ²ÐµÑ +aboutTor.donationBanner.tagline3=ÐнлаÑн Ñлобода +aboutTor.donationBanner.tagline4=ÐоÑÑикнÑваÑе на Ñлободно изÑазÑваÑе во ÑвеÑÐ¾Ñ +aboutTor.donationBanner.tagline5=Ðа ÑÑиÑи пÑиваÑноÑÑа на милиони ÑекоÑдневно ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttondtd] Update translations for torbutton-torbuttondtd
commit 2dee25f772eb82be80b06e29ea9006fc1da1372f Author: Translation commit bot Date: Wed Dec 20 19:47:52 2017 + Update translations for torbutton-torbuttondtd --- he/torbutton.dtd | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/he/torbutton.dtd b/he/torbutton.dtd index 2f2957b56..28ad7d34f 100644 --- a/he/torbutton.dtd +++ b/he/torbutton.dtd @@ -36,15 +36,15 @@ - + - + - - - - + + + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-branddtd] Update translations for torbutton-branddtd
commit 97d32fcfc178c008d3f3829a6a9766691a9a910f Author: Translation commit bot Date: Wed Dec 20 19:47:37 2017 + Update translations for torbutton-branddtd --- mk/brand.dtd | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mk/brand.dtd b/mk/brand.dtd index 3df1a084c..b2f34a7a7 100644 --- a/mk/brand.dtd +++ b/mk/brand.dtd @@ -2,10 +2,10 @@ - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> - - - - + + + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-brandproperties] Update translations for torbutton-brandproperties
commit a0571146281bad417b0c7cba7be89e73d374e16b Author: Translation commit bot Date: Wed Dec 20 19:47:27 2017 + Update translations for torbutton-brandproperties --- mk/brand.properties | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mk/brand.properties b/mk/brand.properties index 732c15741..a31aaf759 100644 --- a/mk/brand.properties +++ b/mk/brand.properties @@ -2,10 +2,10 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. -brandShorterName=Tor Browser -brandShortName=Tor Browser -brandFullName=Tor Browser -vendorShortName=Tor Project +brandShorterName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ +brandShortName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ +brandFullName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ +vendorShortName=Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ homePageSingleStartMain=Firefox Start, a fast home page with built-in search homePageImport=Import your home page from %S ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-misc] Update translations for tails-misc
commit 30a708db5c2b6141a7444f6cf8324590a022ca28 Author: Translation commit bot Date: Wed Dec 20 19:47:07 2017 + Update translations for tails-misc --- mk.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mk.po b/mk.po index b2d7c9962..536eccf5e 100644 --- a/mk.po +++ b/mk.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-09-13 20:10+0200\n" -"PO-Revision-Date: 2017-12-19 20:54+\n" +"PO-Revision-Date: 2017-12-20 19:47+\n" "Last-Translator: carolyn \n" "Language-Team: Macedonian (http://www.transifex.com/otf/torproject/language/mk/)\n" "MIME-Version: 1.0\n" @@ -315,7 +315,7 @@ msgstr "" #: ../config/chroot_local-includes/usr/share/applications/tor-browser.desktop.in.h:1 msgid "Tor Browser" -msgstr "" +msgstr "Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑваÑ" #: ../config/chroot_local-includes/usr/share/applications/tor-browser.desktop.in.h:2 msgid "Anonymous Web Browser" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tor-browser-manual] Update translations for tor-browser-manual
commit da98a22163bfe56941cf35ae4c82423cd1c713c1 Author: Translation commit bot Date: Wed Dec 20 19:21:42 2017 + Update translations for tor-browser-manual --- mk/mk.po | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mk/mk.po b/mk/mk.po index 1098d7534..dba595e0c 100644 --- a/mk/mk.po +++ b/mk/mk.po @@ -1,11 +1,12 @@ # Translators: # Tor Project , 2016 +# Zarko Gjurov , 2017 msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2016-12-06 16:36-0600\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Tor Project , 2016\n" +"Last-Translator: Zarko Gjurov , 2017\n" "Language-Team: Macedonian (https://www.transifex.com/otf/teams/1519/mk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -491,7 +492,7 @@ msgstr "" #: index.page:6 msgid "Tor Browser User Manual" -msgstr "" +msgstr "Ð¢Ð¾Ñ Ð¿ÑелиÑÑÑÐ²Ð°Ñ Ð£Ð¿Ð°ÑÑÑво за коÑиÑÑеÑе" #: known-issues.page:6 msgid "A list of known issues." ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/exoneratorproperties_completed] Update translations for exoneratorproperties_completed
commit 36a549aec1ca7bc4e29a6520be2b0469fbf9877a Author: Translation commit bot Date: Wed Dec 20 19:21:35 2017 + Update translations for exoneratorproperties_completed --- he/exonerator.properties | 2 ++ 1 file changed, 2 insertions(+) diff --git a/he/exonerator.properties b/he/exonerator.properties index 34bbc9c93..7c2e5fe58 100644 --- a/he/exonerator.properties +++ b/he/exonerator.properties @@ -19,6 +19,8 @@ summary.invalidparams.invalidip.title=פר××ר ×ת××ת IP ×××ª× ×ª×§×£ summary.invalidparams.invalidip.body=ס××××, %s ××× ××× × ×ת××ת IP תקפ×. תס×××¨× ×ת××ת ×-IP ×צפ×××× ×× %s ×× %s. summary.invalidparams.invalidtimestamp.title=פר××ר ×××ª× ×ª×§×£ ×©× ×ª×ר×× summary.invalidparams.invalidtimestamp.body=ס××××, %s ××× ××× × ×ª×ר×× ×ª×§×£. ×תס××ר ×צפ×× ×©× ×ת×ר×× ××× %s. +summary.invalidparams.timestamptoorecent.title=פר××ר ת×ר×× ××ש ××× +summary.invalidparams.timestamptoorecent.body=××¡× ×× ×ª×× ×× ×¢×©×× ×× ××××× ×ספ×ק × ×ª×× ×× ××× ××¢× ×ת ×ר××× ×¢× ××§×©× ××. ×× ×ª×× ×× ×××ר×× ×× ×©×תק××× ×× ×©×ש××. ×× × ×××ר ×¢× ×××פ×ש ש×× ×××× ××ר. summary.serverproblem.nodata.title=ש×××ת שרת summary.serverproblem.nodata.body.text=××¡× ×× ×ª×× ×× ××× × ×××× × ×ª×× ×× ××ש×× ×¢××ר ×ת×ר×× ××××קש. ×× × × ×¡ ש×× ××××ר ××תר. ×× ××¢×× ×× × ×ש×ת, ×× × %s! summary.serverproblem.nodata.body.link=××××¢ ×××ª× × ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/exoneratorproperties] Update translations for exoneratorproperties
commit 966240937d4e38149ced73f4f6296b411badaa3c Author: Translation commit bot Date: Wed Dec 20 19:21:30 2017 + Update translations for exoneratorproperties --- he/exonerator.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/he/exonerator.properties b/he/exonerator.properties index 328051675..7c2e5fe58 100644 --- a/he/exonerator.properties +++ b/he/exonerator.properties @@ -19,8 +19,8 @@ summary.invalidparams.invalidip.title=פר××ר ×ת××ת IP ×××ª× ×ª×§×£ summary.invalidparams.invalidip.body=ס××××, %s ××× ××× × ×ת××ת IP תקפ×. תס×××¨× ×ת××ת ×-IP ×צפ×××× ×× %s ×× %s. summary.invalidparams.invalidtimestamp.title=פר××ר ×××ª× ×ª×§×£ ×©× ×ª×ר×× summary.invalidparams.invalidtimestamp.body=ס××××, %s ××× ××× × ×ª×ר×× ×ª×§×£. ×תס××ר ×צפ×× ×©× ×ת×ר×× ××× %s. -summary.invalidparams.timestamptoorecent.title=Date parameter too recent -summary.invalidparams.timestamptoorecent.body=The database may not yet contain enough data to correctly answer this request. The latest accepted data is the day before yesterday. Please repeat your search on another day. +summary.invalidparams.timestamptoorecent.title=פר××ר ת×ר×× ××ש ××× +summary.invalidparams.timestamptoorecent.body=××¡× ×× ×ª×× ×× ×¢×©×× ×× ××××× ×ספ×ק × ×ª×× ×× ××× ××¢× ×ת ×ר××× ×¢× ××§×©× ××. ×× ×ª×× ×× ×××ר×× ×× ×©×תק××× ×× ×©×ש××. ×× × ×××ר ×¢× ×××פ×ש ש×× ×××× ××ר. summary.serverproblem.nodata.title=ש×××ת שרת summary.serverproblem.nodata.body.text=××¡× ×× ×ª×× ×× ××× × ×××× × ×ª×× ×× ××ש×× ×¢××ר ×ת×ר×× ××××קש. ×× × × ×¡ ש×× ××××ר ××תר. ×× ××¢×× ×× × ×ש×ת, ×× × %s! summary.serverproblem.nodata.body.link=××××¢ ×××ª× × ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-torbuttondtd] Update translations for torbutton-torbuttondtd
commit aa639272beb420b9a5c095fe3228c5a2698c55e1 Author: Translation commit bot Date: Wed Dec 20 19:18:33 2017 + Update translations for torbutton-torbuttondtd --- he/torbutton.dtd | 16 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/he/torbutton.dtd b/he/torbutton.dtd index e2caee9ea..2f2957b56 100644 --- a/he/torbutton.dtd +++ b/he/torbutton.dtd @@ -33,16 +33,16 @@ - - - + + + - - + + - - - + + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/abouttor-homepage_completed] Update translations for abouttor-homepage_completed
commit 6fe23df628df4e53ed15bdefd95af30724b7e131 Author: Translation commit bot Date: Wed Dec 20 19:18:01 2017 + Update translations for abouttor-homepage_completed --- mk/aboutTor.dtd | 45 + 1 file changed, 45 insertions(+) diff --git a/mk/aboutTor.dtd b/mk/aboutTor.dtd new file mode 100644 index 0..4861bcca0 --- /dev/null +++ b/mk/aboutTor.dtd @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + +https://duckduckgo.com";> + + + + + + + + +https://www.torproject.org/download/download.html.en#warning";> + + + + + +https://www.torproject.org/docs/tor-doc-relay.html.en";> + +https://www.torproject.org/getinvolved/volunteer.html.en";> + +https://www.torproject.org/donate/donate.html.en";> + + + +https://www.torproject.org/about/overview.html.en";> ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/abouttor-homepage] Update translations for abouttor-homepage
commit 9bcd47f6ad3534276b717a8d2ede92b2d3638b2d Author: Translation commit bot Date: Wed Dec 20 19:17:55 2017 + Update translations for abouttor-homepage --- mk/aboutTor.dtd | 18 +- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/mk/aboutTor.dtd b/mk/aboutTor.dtd index a7ff5919b..4861bcca0 100644 --- a/mk/aboutTor.dtd +++ b/mk/aboutTor.dtd @@ -29,17 +29,17 @@ https://www.torproject.org/download/download.html.en#warning";> - - - - - + + + + + https://www.torproject.org/docs/tor-doc-relay.html.en";> - + https://www.torproject.org/getinvolved/volunteer.html.en";> - + https://www.torproject.org/donate/donate.html.en";> - - + + https://www.torproject.org/about/overview.html.en";> ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-misc] Update translations for tails-misc
commit 4b3dcbee6e88eb47b31243496d773266780f02ab Author: Translation commit bot Date: Wed Dec 20 19:17:41 2017 + Update translations for tails-misc --- he.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/he.po b/he.po index 5f5087f90..ce10bad29 100644 --- a/he.po +++ b/he.po @@ -14,7 +14,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-09-13 20:10+0200\n" -"PO-Revision-Date: 2017-10-15 10:21+\n" +"PO-Revision-Date: 2017-12-20 19:09+\n" "Last-Translator: ION\n" "Language-Team: Hebrew (http://www.transifex.com/otf/torproject/language/he/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/tails-misc_completed] Update translations for tails-misc_completed
commit f8f79ea50721dac588db9e7d524caa028da4e25b Author: Translation commit bot Date: Wed Dec 20 19:17:48 2017 + Update translations for tails-misc_completed --- he.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/he.po b/he.po index 5f5087f90..ce10bad29 100644 --- a/he.po +++ b/he.po @@ -14,7 +14,7 @@ msgstr "" "Project-Id-Version: The Tor Project\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-09-13 20:10+0200\n" -"PO-Revision-Date: 2017-10-15 10:21+\n" +"PO-Revision-Date: 2017-12-20 19:09+\n" "Last-Translator: ION\n" "Language-Team: Hebrew (http://www.transifex.com/otf/torproject/language/he/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torcheck] Update translations for torcheck
commit 6989d02662b4d2a9ff7d9d12b41ae2ad4358d737 Author: Translation commit bot Date: Wed Dec 20 19:15:26 2017 + Update translations for torcheck --- mk/torcheck.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/torcheck.po b/mk/torcheck.po index 2d47336c0..696b5f842 100644 --- a/mk/torcheck.po +++ b/mk/torcheck.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: The Tor Project\n" "POT-Creation-Date: 2012-02-16 20:28+PDT\n" -"PO-Revision-Date: 2017-09-19 09:16+\n" +"PO-Revision-Date: 2017-12-20 19:01+\n" "Last-Translator: Bojan Jankuloski \n" "Language-Team: Macedonian (http://www.transifex.com/otf/torproject/language/mk/)\n" "MIME-Version: 1.0\n" ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/abouttor-homepage] Update translations for abouttor-homepage
commit dc604113a1547b32d3f2fe34a137530a26c26f7a Author: Translation commit bot Date: Wed Dec 20 18:47:19 2017 + Update translations for abouttor-homepage --- mk/aboutTor.dtd | 22 +++--- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/mk/aboutTor.dtd b/mk/aboutTor.dtd index 8b0032d71..a7ff5919b 100644 --- a/mk/aboutTor.dtd +++ b/mk/aboutTor.dtd @@ -14,20 +14,20 @@ - - - + + + - + https://duckduckgo.com";> - - - - - - - + + + + + + + https://www.torproject.org/download/download.html.en#warning";> ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/exoneratorproperties] Update translations for exoneratorproperties
commit 704c6601680c22438ca580ff15bc738308dd2a66 Author: Translation commit bot Date: Wed Dec 20 18:20:51 2017 + Update translations for exoneratorproperties --- mk/exonerator.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mk/exonerator.properties b/mk/exonerator.properties index cc45cb83a..5cf9ac90a 100644 --- a/mk/exonerator.properties +++ b/mk/exonerator.properties @@ -1,7 +1,7 @@ form.explanation=Enter an IP address and date to find out whether that address was used as a Tor relay: form.ip.label=IP address form.timestamp.label=Date -form.search.label=Search +form.search.label=ÐÑебаÑÐ°Ñ summary.heading=Summary summary.serverproblem.dbnoconnect.title=Server problem summary.serverproblem.dbnoconnect.body.text=Unable to connect to the database. Please try again later. If this problem persists, please %s! @@ -42,7 +42,7 @@ technicaldetails.exit.unknown=Unknown technicaldetails.exit.yes=Ðа technicaldetails.exit.no=Ðе permanentlink.heading=Permanent link -footer.abouttor.heading=About Tor +footer.abouttor.heading=Ðа Ð¢Ð¾Ñ footer.abouttor.body.text=Tor is an international software project to anonymize Internet traffic by %s. Therefore, if you see traffic from a Tor relay, this traffic usually originates from someone using Tor, rather than from the relay operator. The Tor Project and Tor relay operators have no records of the traffic that passes over the network and therefore cannot provide any information about its origin. Be sure to %s, and don't hesitate to %s for more information. footer.abouttor.body.link1=encrypting packets and sending them through a series of hops before they reach their destination footer.abouttor.body.link2=learn more about Tor ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-abouttbupdatedtd_completed] Update translations for torbutton-abouttbupdatedtd_completed
commit f629723f71d04471d98fb5bef31c07c1daa719dd Author: Translation commit bot Date: Wed Dec 20 18:19:15 2017 + Update translations for torbutton-abouttbupdatedtd_completed --- mk/abouttbupdate.dtd | 6 ++ 1 file changed, 6 insertions(+) diff --git a/mk/abouttbupdate.dtd b/mk/abouttbupdate.dtd new file mode 100644 index 0..5c53eedf1 --- /dev/null +++ b/mk/abouttbupdate.dtd @@ -0,0 +1,6 @@ + + + + + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-aboutdialogdtd_completed] Update translations for torbutton-aboutdialogdtd_completed
commit 5df72f341cf97dc0bf74a24a5b18790fce4a0570 Author: Translation commit bot Date: Wed Dec 20 18:18:46 2017 + Update translations for torbutton-aboutdialogdtd_completed --- mk/aboutdialog.dtd | 19 +++ 1 file changed, 19 insertions(+) diff --git a/mk/aboutdialog.dtd b/mk/aboutdialog.dtd new file mode 100644 index 0..c863bfb27 --- /dev/null +++ b/mk/aboutdialog.dtd @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-abouttbupdatedtd] Update translations for torbutton-abouttbupdatedtd
commit 7fb3208b9bf05b45ca88e87b614d3677e06f3c45 Author: Translation commit bot Date: Wed Dec 20 18:19:09 2017 + Update translations for torbutton-abouttbupdatedtd --- mk/abouttbupdate.dtd | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mk/abouttbupdate.dtd b/mk/abouttbupdate.dtd index 37567bd7e..5c53eedf1 100644 --- a/mk/abouttbupdate.dtd +++ b/mk/abouttbupdate.dtd @@ -1,6 +1,6 @@ - - - - + + + + - + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-aboutdialogdtd] Update translations for torbutton-aboutdialogdtd
commit 78bf4dc528441dc9a74e238406c6c7bf9e45f6cf Author: Translation commit bot Date: Wed Dec 20 18:18:40 2017 + Update translations for torbutton-aboutdialogdtd --- mk/aboutdialog.dtd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/aboutdialog.dtd b/mk/aboutdialog.dtd index 54c05003e..c863bfb27 100644 --- a/mk/aboutdialog.dtd +++ b/mk/aboutdialog.dtd @@ -16,4 +16,4 @@ - + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/abouttor-homepage] Update translations for abouttor-homepage
commit 4b4f3d03d798bfb09a0290f2a2a7966038952e7d Author: Translation commit bot Date: Wed Dec 20 18:17:24 2017 + Update translations for abouttor-homepage --- mk/aboutTor.dtd | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/mk/aboutTor.dtd b/mk/aboutTor.dtd index 30f682afb..8b0032d71 100644 --- a/mk/aboutTor.dtd +++ b/mk/aboutTor.dtd @@ -4,16 +4,16 @@ - vim: set sw=2 sts=2 ts=8 et syntax=xml: --> - + - - - + + + - + - - + + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [translation/torbutton-aboutdialogdtd] Update translations for torbutton-aboutdialogdtd
commit 5690793c744f4da0ff0f96de0a597a566c41a13a Author: Translation commit bot Date: Wed Dec 20 17:48:31 2017 + Update translations for torbutton-aboutdialogdtd --- mk/aboutdialog.dtd | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/mk/aboutdialog.dtd b/mk/aboutdialog.dtd index 5099ad74b..54c05003e 100644 --- a/mk/aboutdialog.dtd +++ b/mk/aboutdialog.dtd @@ -1,19 +1,19 @@ - + - - + + - + - - + + - + - + - + - + ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.2] Merge branch 'maint-0.3.1' into maint-0.3.2
commit 7e45720cf4c88bff92a6de23ccbdd96d4cab2be5 Merge: 565ec6100 5e9264671 Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.3.1' into maint-0.3.2 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.0] Merge branch 'maint-0.2.9' into maint-0.3.0
commit 08ed0d79308b308f690b80d65b22be11a97caf09 Merge: d3b7a2bd2 c604a76a5 Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.2.9' into maint-0.3.0 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.2] Merge branch 'maint-0.2.9' into maint-0.3.0
commit 08ed0d79308b308f690b80d65b22be11a97caf09 Merge: d3b7a2bd2 c604a76a5 Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.2.9' into maint-0.3.0 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.2] Merge branch 'maint-0.2.8' into maint-0.2.9
commit c604a76a53204eb20af0fab0a9f1f49fba393fd9 Merge: eecfed0cd 877dd1d6c Author: Nick Mathewson Date: Wed Dec 20 12:15:23 2017 -0500 Merge branch 'maint-0.2.8' into maint-0.2.9 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.2] Merge branch 'maint-0.3.2' into release-0.3.2
commit c2b64ad0968f040e2b5ecb426d3520a02acb5cc7 Merge: 748f0abc2 7e45720cf Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.3.2' into release-0.3.2 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.2] Merge branch 'maint-0.3.0' into maint-0.3.1
commit 5e92646715f32cae4d4d7f4f9a0f09108b8ddd73 Merge: 31ce03a2b 08ed0d793 Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.3.0' into maint-0.3.1 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.1] Merge branch 'maint-0.3.0' into maint-0.3.1
commit 5e92646715f32cae4d4d7f4f9a0f09108b8ddd73 Merge: 31ce03a2b 08ed0d793 Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.3.0' into maint-0.3.1 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.1] Merge branch 'maint-0.3.1' into release-0.3.1
commit 40faebd45bff486911b1fe2ba6f5e221c65d9fe9 Merge: 1723138fc 5e9264671 Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.3.1' into release-0.3.1 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.1] Merge branch 'maint-0.2.8' into maint-0.2.9
commit c604a76a53204eb20af0fab0a9f1f49fba393fd9 Merge: eecfed0cd 877dd1d6c Author: Nick Mathewson Date: Wed Dec 20 12:15:23 2017 -0500 Merge branch 'maint-0.2.8' into maint-0.2.9 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.1] Merge branch 'maint-0.2.9' into maint-0.3.0
commit 08ed0d79308b308f690b80d65b22be11a97caf09 Merge: d3b7a2bd2 c604a76a5 Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.2.9' into maint-0.3.0 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits
[tor-commits] [tor/release-0.3.0] Merge branch 'maint-0.3.0' into release-0.3.0
commit 1fe6e318f1d7972a84942b916e490cc47186afbe Merge: 1ff7c6075 08ed0d793 Author: Nick Mathewson Date: Wed Dec 20 12:15:24 2017 -0500 Merge branch 'maint-0.3.0' into release-0.3.0 changes/geoip-2017-12-06 | 4 + src/config/geoip | 12380 +++-- src/config/geoip6| 3373 +--- 3 files changed, 10033 insertions(+), 5724 deletions(-) ___ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits