[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 6e0a44bbabcf920c8eb9fd96c3b34b2a3373bca5
Author: Translation commit bot 
Date:   Fri Sep 21 05:48:50 2018 +

Update translations for support-portal
---
 contents+zh_CN.po | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/contents+zh_CN.po b/contents+zh_CN.po
index e26648d4e..382567295 100644
--- a/contents+zh_CN.po
+++ b/contents+zh_CN.po
@@ -834,7 +834,7 @@ msgstr "我能将tor的图标用于我的产品中吗?"
 msgid ""
 "If you see lines like this in your Tor log, it means that Tor failed to "
 "complete a TLS handshake with the directory authorities."
-msgstr ""
+msgstr "如果你在Tor日志里看见这句话,这意味着Tor和目æ 
‡æœåŠ¡TLS握手失败。"
 
 #: http//localhost/tbb/tbb-19/
 #: (content/tbb/tbb-19/contents+en.lrquestion.description)
@@ -855,7 +855,7 @@ msgid ""
 "We don’t think Flash is safe to use in any browser — it's a very insecure 
"
 "piece of software that can easily compromise your privacy or serve you "
 "malware."
-msgstr ""
+msgstr "我们认为无论是什么浏览器Flash都是是极不安å…
¨çš„,他可以轻易盗取你的个人情报或者给你设置恶意软件。"
 
 #: http//localhost/onionservices/onionservices-1/
 #: (content/onionservices/onionservices-1/contents+en.lrquestion.description)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit f3a878b948f9bd4ab990f546529c604740789190
Author: Translation commit bot 
Date:   Fri Sep 21 05:18:51 2018 +

Update translations for support-portal
---
 contents+zh_CN.po | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/contents+zh_CN.po b/contents+zh_CN.po
index 52c074ebf..e26648d4e 100644
--- a/contents+zh_CN.po
+++ b/contents+zh_CN.po
@@ -53,7 +53,7 @@ msgstr 
"这可能意味着您处于被监管的网络之中。"
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
 msgid "* Français (fr)"
-msgstr ""
+msgstr "法语"
 
 #: http//localhost/tbb/tbb-7/
 #: (content/tbb/tbb-7/contents+en.lrquestion.description)
@@ -768,7 +768,7 @@ msgid ""
 "Some bridges are built in to Tor Browser, and you can use those bridges by "
 "choosing \"configure\" (then following the prompts) in the Tor Launcher "
 "window that pops up when you open Tor Browser for the first time."
-msgstr ""
+msgstr "有一些桥接是Tor浏览器内置的,你
可以通过点击设置来使用这些桥接。在windows系统下Tor浏览器会在打开时弹出询问对话框是否设置桥接。"
 
 #: http//localhost/tbb/tbb-24/
 #: (content/tbb/tbb-24/contents+en.lrquestion.description)
@@ -780,6 +780,8 @@ msgid ""
 "If you believe this is a Tor Browser issue, please report it on our https://trac.torproject.org/\;>bug tracker."
 msgstr ""
+"如果你相信这是浏览器的问题,请你报告给https://trac.torproject.org/\;>问题中心"
 
 #: http//localhost/tbb/tbb-18/
 #: (content/tbb/tbb-18/contents+en.lrquestion.title)
@@ -800,7 +802,7 @@ msgstr "无法连接 Tor,我的网络被审查了吗?"
 msgid ""
 "There is currently no supported method for setting Tor Browser as your "
 "default browser."
-msgstr ""
+msgstr "目前没有支持设置Tor浏览器为默认浏览器的方法。"
 
 #: http//localhost/tbb/tbb-39/
 #: (content/tbb/tbb-39/contents+en.lrquestion.description)
@@ -813,12 +815,12 @@ msgid ""
 "The default location on Windows is the Desktop; on macOS it is the "
 "Applications folder (on macOS, you have to move it into the Applications "
 "folder when you complete the installation process)."
-msgstr ""
+msgstr 
"在windows里默认位置是桌面,在苹果系统里是在应用程序文件夹(ä½
 éœ€è¦åœ¨å®‰è£…
完毕后把浏览器移动到应用程序文件夹来运行。)"
 
 #: http//localhost/tbb/tbb-22/
 #: (content/tbb/tbb-22/contents+en.lrquestion.seo_slug)
 msgid "make-tor-faster"
-msgstr ""
+msgstr "让Tor更迅捷"
 
 #: http//localhost/misc/misc-8/
 #: (content/misc/misc-8/contents+en.lrquestion.title)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit bcabecf0351ea11222cdefcebee9ff7c2103fa3e
Author: Translation commit bot 
Date:   Fri Sep 21 04:48:49 2018 +

Update translations for support-portal
---
 contents+zh_CN.po | 14 --
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/contents+zh_CN.po b/contents+zh_CN.po
index a6500dd37..52c074ebf 100644
--- a/contents+zh_CN.po
+++ b/contents+zh_CN.po
@@ -636,7 +636,7 @@ msgstr 
"您应该能够在粘贴的Tor日志中发现这些常见问题(请在
 #: http//localhost/tbb/tbb-3/
 #: (content/tbb/tbb-3/contents+en.lrquestion.seo_slug)
 msgid "tell-which-website-are-visited-while-using-tor-browser"
-msgstr ""
+msgstr "告知Tor浏览器的浏览记录"
 
 #: http//localhost/faq/faq-2/
 #: (content/faq/faq-2/contents+en.lrquestion.description)
@@ -709,14 +709,14 @@ msgstr ""
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "* Run \"service tor start\" (as root)"
-msgstr ""
+msgstr "*在根权限下执行\"service tor start\""
 
 #: http//localhost/operators/operators-1/
 #: (content/operators/operators-1/contents+en.lrquestion.description)
 #: http//localhost/operators/operators-2/
 #: (content/operators/operators-2/contents+en.lrquestion.description)
 msgid "* Run \"apt-get install tor\" (as root)."
-msgstr ""
+msgstr "*在根权限下执行“apt-get install tor”"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -725,12 +725,12 @@ msgstr ""
 msgid ""
 "2017-10-29 09:23:47.900 [NOTICE] Bootstrapped 10%: Finishing handshake with "
 "directory server"
-msgstr ""
+msgstr "2017-10-29 09:23:47.900 [提示] 启动卡在 10%: 完成和目æ 
‡æœåŠ¡å™¨çš„握手"
 
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
 msgid "* Vietnamese (vi)"
-msgstr ""
+msgstr "越南语"
 
 #: http//localhost/tbb/tbb-36/
 #: (content/tbb/tbb-36/contents+en.lrquestion.seo_slug)
@@ -742,7 +742,7 @@ msgstr "同时运行多个Tor浏览器"
 #: http//localhost/censorship/censorship-5/
 #: (content/censorship/censorship-5/contents+en.lrquestion.seo_slug)
 msgid "having-trouble-connecting-to-tor"
-msgstr ""
+msgstr "连接TOR网络出现了问题"
 
 #: http//localhost/misc/misc-4/
 #: (content/misc/misc-4/contents+en.lrquestion.title)
@@ -755,6 +755,8 @@ msgid ""
 "Tor is funded by a number of different sponsors including US federal "
 "agencies, private foundations, and individual donors."
 msgstr ""
+"Tor有不同的资金支持赞助,包
括美国中央政府部分机构(译者加
:应该是搞笑的,Tor被列为国家安全局重点监控对象-"
+"因为无法监控),私有募款机构和个人。"
 
 #: http//localhost/tbb/tbb-19/
 #: (content/tbb/tbb-19/contents+en.lrquestion.description)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 8f285243b7ba9fea2c098d3f8226c153836f323c
Author: Translation commit bot 
Date:   Fri Sep 21 04:18:45 2018 +

Update translations for support-portal
---
 contents+zh_CN.po | 36 +++-
 1 file changed, 23 insertions(+), 13 deletions(-)

diff --git a/contents+zh_CN.po b/contents+zh_CN.po
index d287798cd..a6500dd37 100644
--- a/contents+zh_CN.po
+++ b/contents+zh_CN.po
@@ -420,7 +420,7 @@ msgstr "波兰语"
 #: http//localhost/tbb/tbb-31/
 #: (content/tbb/tbb-31/contents+en.lrquestion.description)
 msgid "Tor Browser is currently available on Windows, Linux and OSX."
-msgstr ""
+msgstr "Tor浏览器支持windows系统,linux系统和苹果系统。"
 
 #: http//localhost/faq/faq-4/
 #: (content/faq/faq-4/contents+en.lrquestion.description)
@@ -432,13 +432,17 @@ msgid ""
 "href=\"https://guardianproject.info/apps/orbot/\;>Orbot and "
 "https://guardianproject.info/apps/orfox/\;>Orfox."
 msgstr ""
+"https://guardianproject.info/\;>守护者
计划维护https://guardianproject.info/apps/orbot/\;>Orbot和https://guardianproject.info/apps/orfox/\;>Orfox在https://www.torproject.org/docs/android.html.en\;>安卓系统下使用Tor网络。"
 
 #: http//localhost/faq/faq-5/
 #: (content/faq/faq-5/contents+en.lrquestion.seo_slug)
 #: http//localhost/misc/misc-13/
 #: (content/misc/misc-13/contents+en.lrquestion.seo_slug)
 msgid "use-vpn-with-tor"
-msgstr ""
+msgstr "在Tor里使用代理服务器。"
 
 #: http//localhost/tbb/tbb-38/
 #: (content/tbb/tbb-38/contents+en.lrquestion.description)
@@ -452,7 +456,7 @@ msgstr "但在连接到Tor网络时,你
的网络提供商或网络管理员也
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid ""
 "* Make sure tor starts on boot by running \"sysrc tor_enable=YES\" (as root)"
-msgstr ""
+msgstr "*请确认在开机时启动tor。可以根权限下使用\"sysrc 
tor_enable=YES\"来启用此功能。"
 
 #: http//localhost/connecting/connecting-3/
 #: (content/connecting/connecting-3/contents+en.lrquestion.description)
@@ -480,19 +484,19 @@ msgstr 
"目前尚未有官方版本的基于iOS平台的Tor软件。尽管如此
 msgid ""
 "You can help improve the speed of the network by running your own relay, or "
 "encouraging others to do so."
-msgstr ""
+msgstr "ä½ 
可以通过建立自己的通讯路径和鼓励他人一起建立来增加
网路速度。"
 
 #: http//localhost/tbb/tbb-27/
 #: (content/tbb/tbb-27/contents+en.lrquestion.description)
 msgid ""
 "You may see a written indication when Tor Browser opens telling you that an "
 "update is available."
-msgstr ""
+msgstr "当Tor浏览器需要更新时,你
可以在打开Tor浏览器时看见一个更新提示。"
 
 #: http//localhost/tbb/tbb-27/
 #: (content/tbb/tbb-27/contents+en.lrquestion.description)
 msgid "You can update Tor Browser as soon as a new version is released."
-msgstr ""
+msgstr "你可以尽快的更新Tor浏览器至最新版本。"
 
 #: http//localhost/onionservices/onionservices-2/
 #: (content/onionservices/onionservices-2/contents+en.lrquestion.description)
@@ -500,18 +504,20 @@ msgid ""
 ""
 msgstr ""
+""
 
 #: http//localhost/tbb/tbb-18/
 #: (content/tbb/tbb-18/contents+en.lrquestion.description)
 msgid ""
 "Sorry, but there is currently no official support for running Tor Browser on"
 " *BSD."
-msgstr ""
+msgstr "抱歉,我们没有对BSD系统Tor浏览器的官方支持。"
 
 #: http//localhost/https/https-1/
 #: (content/https/https-1/contents+en.lrquestion.description)
 msgid ""
-msgstr ""
+msgstr ""
 
 #: http//localhost/tbb/tbb-10/
 #: (content/tbb/tbb-10/contents+en.lrquestion.description)
@@ -523,12 +529,12 @@ msgstr "* 对 OS X"
 msgid ""
 "Once you have copied the log, you will be able to paste it into a text "
 "editor or email client."
-msgstr ""
+msgstr "当你复制了系统记录,你就可以粘贴到写字板或者
邮件里。"
 
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "* Run \"pkg install tor\" (as root)."
-msgstr ""
+msgstr "“在命令窗口以根权限执行”pkg install tor“"
 
 #: http//localhost/misc/misc-15/
 #: (content/misc/misc-15/contents+en.lrquestion.seo_slug)
@@ -544,11 +550,13 @@ msgid ""
 "handshake with directory server. (DONE; DONE; count 10; recommendation warn;"
 " host [host] at xxx.xxx.xxx.xx:xxx)"
 msgstr ""
+"13-11-17 19:53:49.300 [警告] 问题 启动陷阱. 进度卡在10%: 
完成和目标服务器的握手. (完成; 完成; 倒数 10; "
+"建议警告; 服务器 [主机] 在 xxx.xxx.xxx.xx:xxx)"
 
 #: http//localhost/connecting/connecting-1/
 #: (content/connecting/connecting-1/contents+en.lrquestion.seo_slug)
 msgid "tor-browser-wont-connect"
-msgstr ""
+msgstr "Tor浏览器无法连接"
 
 #: http//localhost/onionservices/
 #: (content/onionservices/contents+en.lrtopic.seo_slug)
@@ -565,7 +573,7 @@ msgstr "洋葱服务"
 msgid ""
 "If law enforcement becomes interested in 

[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit a17cb2e049ab26f388d0f97fc8585f9624467f53
Author: Translation commit bot 
Date:   Fri Sep 21 03:48:51 2018 +

Update translations for support-portal
---
 contents+zh_CN.po | 25 +++--
 1 file changed, 15 insertions(+), 10 deletions(-)

diff --git a/contents+zh_CN.po b/contents+zh_CN.po
index ebb553d26..d287798cd 100644
--- a/contents+zh_CN.po
+++ b/contents+zh_CN.po
@@ -305,14 +305,14 @@ msgstr ""
 #: http//localhost/onionservices/onionservices-1/
 #: (content/onionservices/onionservices-1/contents+en.lrquestion.seo_slug)
 msgid "accessing-websites-that-are-only-accessible-over-tor"
-msgstr ""
+msgstr "登陆只有通过tor才能登陆的网站"
 
 #: http//localhost/censorship/censorship-5/
 #: (content/censorship/censorship-5/contents+en.lrquestion.description)
 msgid ""
 "Tor requires an accurate clock to work: please check your time, timezone, "
 "and date settings."
-msgstr ""
+msgstr "Tor需要准确的时间设置,请检查你
的时间,时区和日期设置是否正确。"
 
 #: http//localhost/misc/misc-4/
 #: (content/misc/misc-4/contents+en.lrquestion.description)
@@ -327,7 +327,7 @@ msgstr ""
 #: http//localhost/tbb/tbb-8/
 #: (content/tbb/tbb-8/contents+en.lrquestion.seo_slug)
 msgid "website-blocked-by-censor-can-tor-browser-help"
-msgstr ""
+msgstr "Tor 浏览器可以帮助你登陆被统治者藏起来的网站"
 
 #: http//localhost/misc/misc-3/
 #: (content/misc/misc-3/contents+en.lrquestion.description)
@@ -338,11 +338,14 @@ msgid ""
 "href=\"https://blog.torproject.org/category/tags/form-990\;>blog "
 "posts on our financial reports."
 msgstr ""
+"请在我们的财务报告上查询https://www.torproject.org/about/sponsors.html.en\;>捐款人和一系列https://blog.torproject.org/category/tags/form-990\;>日志"
 
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "RunAsDaemon 1"
-msgstr ""
+msgstr "体验试用版1"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -351,19 +354,19 @@ msgstr ""
 msgid ""
 "If a SOCKS proxy is required for your network setup, then please make sure "
 "you’ve entered your proxy details correctly."
-msgstr ""
+msgstr 
"如果您的网络连接需要设置SOCKS代理,请确认您代理服务器的信息。"
 
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.seo_slug)
 msgid "using-correct-packages"
-msgstr ""
+msgstr "使用正确的安装包"
 
 #: http//localhost/tbb/tbb-17/
 #: (content/tbb/tbb-17/contents+en.lrquestion.description)
 msgid ""
 "If you run Tor Browser and another browser at the same time, it won't affect"
 " Tor's performance or privacy properties."
-msgstr ""
+msgstr "如果您同时使用Tor浏览器和å…
¶ä»–浏览器,这不会影响Tor的安全性和隐秘性。"
 
 #: http//localhost/faq/faq-2/
 #: (content/faq/faq-2/contents+en.lrquestion.description)
@@ -384,12 +387,12 @@ msgstr "我该怎么查询tor浏览器的通讯日志?"
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
 msgid "* Deutsch (de)"
-msgstr ""
+msgstr "德语"
 
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.seo_slug)
 msgid "how-do-i-run-a-middle-or-guard-on-freebsd"
-msgstr ""
+msgstr "我如何在freebsd上使用Middle或者guard."
 
 #: http//localhost/misc/misc-15/
 #: (content/misc/misc-15/contents+en.lrquestion.description)
@@ -406,11 +409,13 @@ msgid ""
 "If you need other bridges, you can get them at our https://bridges.torproject.org/\;>Bridges website."
 msgstr ""
+"如果您需要其他的桥接,你可以从https://bridges.torproject.org/\;>桥接网站上查询。"
 
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
 msgid "* Polish (pl)"
-msgstr ""
+msgstr "波兰语"
 
 #: http//localhost/tbb/tbb-31/
 #: (content/tbb/tbb-31/contents+en.lrquestion.description)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit b2f6b867b4afc656c4a21107f13cdeba8a38a138
Author: Translation commit bot 
Date:   Fri Sep 21 03:19:20 2018 +

Update translations for support-portal
---
 contents+zh_CN.po | 20 
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/contents+zh_CN.po b/contents+zh_CN.po
index 22d6f96bb..ebb553d26 100644
--- a/contents+zh_CN.po
+++ b/contents+zh_CN.po
@@ -211,7 +211,7 @@ msgstr "tor会留存日志吗?"
 #: http//localhost/censorship/censorship-7/
 #: (content/censorship/censorship-7/contents+en.lrquestion.seo_slug)
 msgid "what-is-a-bridge"
-msgstr ""
+msgstr "什么是桥接?"
 
 #: http//localhost/tbb/tbb-10/
 #: (content/tbb/tbb-10/contents+en.lrquestion.description)
@@ -235,6 +235,8 @@ msgid ""
 "For sharing files through Tor, https://onionshare.org/\;>OnionShare is a good option."
 msgstr ""
+"通过tor网络分享文件,https://onionshare.org/\;>洋葱分享是一个不错的选项。"
 
 #: http//localhost/operators/operators-7/
 #: (content/operators/operators-7/contents+en.lrquestion.description)
@@ -244,7 +246,7 @@ msgstr "不记录。"
 #: http//localhost/tbb/tbb-25/
 #: (content/tbb/tbb-25/contents+en.lrquestion.seo_slug)
 msgid "problem-noscript"
-msgstr ""
+msgstr "问题-没有脚本"
 
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.description)
@@ -252,11 +254,13 @@ msgid ""
 "$ gpg --keyserver keys.gnupg.net --recv "
 "A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89"
 msgstr ""
+"$ gpg --keyserver keys.gnupg.net --recv "
+"A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89"
 
 #: http//localhost/tbb/tbb-32/
 #: (content/tbb/tbb-32/contents+en.lrquestion.seo_slug)
 msgid "setting-tor-browser-as-default"
-msgstr ""
+msgstr "设置tor浏览器为默认浏览器"
 
 #: http//localhost/tbb/tbb-15/
 #: (content/tbb/tbb-15/contents+en.lrquestion.description)
@@ -267,7 +271,7 @@ msgstr "很不幸,我们目前还没有 ChromeOS 
版本的 Tor。"
 #: http//localhost/tbb/tbb-27/
 #: (content/tbb/tbb-27/contents+en.lrquestion.description)
 msgid ""
-msgstr ""
+msgstr ""
 
 #: http//localhost/misc/misc-5/
 #: (content/misc/misc-5/contents+en.lrquestion.title)
@@ -279,24 +283,24 @@ msgstr 
"我电脑上的一些文件被锁住了,有人要求我下载tor浏览
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.description)
 msgid "$ sudo apt-get install tor deb.torproject.org-keyring"
-msgstr ""
+msgstr "$ sudo apt-get install tor deb.torproject.org-keyring"
 
 #: http//localhost/misc/misc-12/
 #: (content/misc/misc-12/contents+en.lrquestion.description)
 msgid ""
 "Many exit nodes are configured to block certain types of file sharing "
 "traffic, such as BitTorrent."
-msgstr ""
+msgstr "有一些脱离节点会设置阻挡一些文件å…
±äº«æ•°æ®ï¼Œæ¯”如种子文件数据"
 
 #: http//localhost/censorship/censorship-4/
 #: (content/censorship/censorship-4/contents+en.lrquestion.seo_slug)
 msgid "cant-connect-to-tor-browser"
-msgstr ""
+msgstr "无法连接tor浏览器"
 
 #: http//localhost/https/https-1/
 #: (content/https/https-1/contents+en.lrquestion.description)
 msgid ""
-msgstr ""
+msgstr ""
 
 #: http//localhost/onionservices/onionservices-1/
 #: (content/onionservices/onionservices-1/contents+en.lrquestion.seo_slug)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 6d0f7b5c8fab7053bfca599325750cb967156e9b
Author: Translation commit bot 
Date:   Fri Sep 21 02:49:32 2018 +

Update translations for support-portal
---
 contents+zh_CN.po | 28 +---
 1 file changed, 13 insertions(+), 15 deletions(-)

diff --git a/contents+zh_CN.po b/contents+zh_CN.po
index f1c15ca08..22d6f96bb 100644
--- a/contents+zh_CN.po
+++ b/contents+zh_CN.po
@@ -176,7 +176,7 @@ msgstr "*删除tor文件夹或者应用程序"
 msgid ""
 "It's strongly discouraged to install new add-ons in Tor Browser, because "
 "they can compromise your privacy and security."
-msgstr ""
+msgstr "强烈建议不要安装额外新的插件,因
为这些插件很有可能会暴露你的隐私和人身安全。"
 
 #: http//localhost/tbb/tbb-34/
 #: (content/tbb/tbb-34/contents+en.lrquestion.description)
@@ -195,13 +195,13 @@ msgstr "常见问题"
 msgid ""
 "These services use the special-use tld .onion (instead of "
 ".com,.net,.org,etc..) and are only accessible through the Tor network."
-msgstr ""
+msgstr "这些服务使用特殊的tld.onion(而不是.com .net .org等) 
所以这些服务只有在Tor的网络里可以连接"
 
 #: http//localhost/tbb/tbb-7/ (content/tbb/tbb-7/contents+en.lrquestion.title)
 #: http//localhost/censorship/censorship-2/
 #: (content/censorship/censorship-2/contents+en.lrquestion.title)
 msgid "A website I am trying to reach is blocking access over Tor."
-msgstr ""
+msgstr "我要访问的一个网站阻止了来自tor网络的连接请求。"
 
 #: http//localhost/misc/misc-6/
 #: (content/misc/misc-6/contents+en.lrquestion.title)
@@ -3780,7 +3780,7 @@ msgstr ""
 msgid ""
 "With the release of Tor Browser 6.0.6, we switched to DuckDuckGo as the "
 "primary search engine."
-msgstr ""
+msgstr "Tor浏览器在6.0.6更新后使用DuckDuckGo作为内
置搜索引擎。"
 
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.description)
@@ -3799,7 +3799,7 @@ msgstr 
"我们不推荐同时运行多个Tor浏览器,这种做法在许多平
 msgid ""
 "That means that ISPs or governments trying to block access to the Tor "
 "network can't simply block all bridges."
-msgstr ""
+msgstr "这意味着政府或者网络管理者
尝试阻止TOR的链接不能简单通过阻止桥接来达成目地"
 
 #: http//localhost/faq/faq-3/ (content/faq/faq-3/contents+en.lrquestion.title)
 #: http//localhost/tbb/tbb-14/
@@ -3814,7 +3814,7 @@ msgstr "我应该在Tor Browser里安装
新的扩展程序吗? 例如AdBlock Plu
 msgid ""
 "Please note that VPNs do not have the same privacy properties as Tor, but "
 "they will help solve some geolocation restriction issues."
-msgstr ""
+msgstr 
"请注意,VPN和TOR在隐私管理上是有区别的,但是VPN可以解决一些地理上的限制å›
 ç´ "
 
 #: http//localhost/tbb/tbb-33/
 #: (content/tbb/tbb-33/contents+en.lrquestion.description)
@@ -3826,12 +3826,12 @@ msgstr "运行Tor浏览器不会使你
成为网络中的一个中继节点。"
 msgid ""
 "For a while now, Disconnect has had no access to Google search results which"
 " we used in Tor Browser."
-msgstr ""
+msgstr "现在Disconnect搜索引擎没有使用谷歌搜索,所以我们无
法在TOR浏览器看到谷歌搜索结果"
 
 #: http//localhost/gettor/gettor-4/
 #: (content/gettor/gettor-4/contents+en.lrquestion.title)
 msgid "To use GetTor via XMPP (Jitsi, CoyIM)."
-msgstr ""
+msgstr "通过XMPP(Jitsi,CoyM)使用GetTor"
 
 #: http//localhost/tbb/tbb-4/
 #: (content/tbb/tbb-4/contents+en.lrquestion.description)
@@ -3839,7 +3839,7 @@ msgid ""
 "While it is technically possible to use Tor with other browsers, you may "
 "open yourself up to potential attacks or information leakage, so we strongly"
 " discourage it."
-msgstr ""
+msgstr "虽然你可以同时使用tor浏览器和å…
¶ä»–的浏览器,但是同时使用其他浏览器会暴露你
的身份信息。我们强烈建议您不要使用其他浏览器。"
 
 #: http//localhost/tbb/tbb-30/
 #: (content/tbb/tbb-30/contents+en.lrquestion.description)
@@ -3856,15 +3856,13 @@ msgid ""
 " 1 minutes, or that theirs is ahead. Tor requires an accurate clock to work:"
 " please check your time, timezone, and date settings."
 msgstr ""
-"19.11.2017 00:04:48.800 [WARN] Received NETINFO cell with skewed time "
-"(OR:xxx.xx.x.xx:): It seems that our clock is behind by 1 days, 0 hours,"
-" 1 minutes, or that theirs is ahead. Tor requires an accurate clock to work:"
-" please check your time, timezone, and date settings."
+"19.11.2017 00:04:48.800 [警告] "
+"收到NETINFO单位的时间(OR:xxx.xx.x.xx:):我们的时间似乎æ…
¢äº†1天,0小时,1分钟或者
他们的时间快了。Tor需要准确的时间才能运行,请检查你
的时间,时区和日期的设置。"
 
 #: http//localhost/tbb/tbb-7/
 #: (content/tbb/tbb-7/contents+en.lrquestion.seo_slug)
 msgid "website-blocking-access-over-tor"
-msgstr ""
+msgstr "tor网站权限封禁"
 
 #: 

[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 2b9874475f88198201798bf31bfb7a460a28b4fd
Author: Translation commit bot 
Date:   Fri Sep 21 02:19:27 2018 +

Update translations for support-portal
---
 contents+zh_CN.po | 26 ++
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/contents+zh_CN.po b/contents+zh_CN.po
index e21161b78..f1c15ca08 100644
--- a/contents+zh_CN.po
+++ b/contents+zh_CN.po
@@ -9,13 +9,14 @@
 # Chi-Hsun Tsai, 2018
 # endermoon , 2018
 # Emma Peel, 2018
+# A Chinese , 2018
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2018-09-14 21:15+CET\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Emma Peel, 2018\n"
+"Last-Translator: A Chinese , 2018\n"
 "Language-Team: Chinese (China) 
(https://www.transifex.com/otf/teams/1519/zh_CN/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -79,6 +80,7 @@ msgid ""
 "choose between different search providers, it fell back to delivering Bing "
 "search results which were basically unacceptable quality-wise."
 msgstr ""
+"因为Disconnect是一个大数据搜索引擎且å…
è®¸ç”¨æˆ·é€‰æ‹©ä¸åŒçš„搜索服务,结果导致大部分使用BING搜索结果,而BING的搜索结果质量并不理想。"
 
 #: http//localhost/operators/operators-1/
 #: (content/operators/operators-1/contents+en.lrquestion.description)
@@ -87,12 +89,12 @@ msgstr ""
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "## If you control multiple relays, include then in the family"
-msgstr ""
+msgstr "如果你有不同路径选择,请你把他们也归纳在一起"
 
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "* Edit /usr/local/etc/tor/torrc to look like the following:"
-msgstr ""
+msgstr "*编辑: /usr/local/etc/tor/torrc 文件如下:"
 
 #: http//localhost/misc/misc-15/
 #: (content/misc/misc-15/contents+en.lrquestion.title)
@@ -102,7 +104,7 @@ msgstr "我该怎样向Tor Project捐款?"
 #: http//localhost/tbb/tbb-28/
 #: (content/tbb/tbb-28/contents+en.lrquestion.description)
 msgid "* Locate your Tor Browser folder or application."
-msgstr ""
+msgstr "*打开你TOR浏览器的文件夹"
 
 #: http//localhost/tbb/tbb-22/
 #: (content/tbb/tbb-22/contents+en.lrquestion.description)
@@ -110,7 +112,7 @@ msgid ""
 "The Tor network has over a million daily users, and just over 6000 relays to"
 " route all of their traffic, and the load on each server can sometimes cause"
 " latency."
-msgstr ""
+msgstr "Tor的网络有超
过一百万个用户,但是只有6000多个节点路径来导流数据,每次节点ä¼
 é€éƒ½ä¼šé€ æˆä¸€å®šçš„延迟"
 
 #: http//localhost/tbb/tbb-34/
 #: (content/tbb/tbb-34/contents+en.lrquestion.description)
@@ -124,12 +126,12 @@ msgstr "低级和默认设置都å…
è®¸JavaScript,但中级和高级则会屏
 #: http//localhost/censorship/censorship-2/
 #: (content/censorship/censorship-2/contents+en.lrquestion.description)
 msgid "Something like this might do the trick:"
-msgstr ""
+msgstr "这么做也许能解决你的问题"
 
 #: http//localhost/tbb/tbb-14/
 #: (content/tbb/tbb-14/contents+en.lrquestion.seo_slug)
 msgid "installing-add-on-extensions-tor-browser"
-msgstr ""
+msgstr "安装tor浏览器的插件"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.title)
@@ -143,7 +145,7 @@ msgstr "无法连接到 
Tor,但我不知道发生了什么什么错误。"
 #: (content/censorship/censorship-7/contents+en.lrquestion.description)
 msgid ""
 "A bridge is just a normal relay with a slightly different configuration."
-msgstr ""
+msgstr "桥接就是一个普通的数据路径但是拥有不太一æ 
·çš„设置"
 
 #: http//localhost/faq/faq-2/ (content/faq/faq-2/contents+en.lrquestion.title)
 #: http//localhost/tbb/tbb-8/ (content/tbb/tbb-8/contents+en.lrquestion.title)
@@ -160,12 +162,12 @@ msgid ""
 "Please be sure no other instance of Tor Browser is already running, and that"
 " you have extracted Tor Browser in a location that your user has the correct"
 " permissions for."
-msgstr ""
+msgstr "请确认你只有一个TOR浏览器在运行并且你
的TOR浏览器安装在一个有正确权限的文件夹里"
 
 #: http//localhost/tbb/tbb-28/
 #: (content/tbb/tbb-28/contents+en.lrquestion.description)
 msgid "* Delete the Tor Browser folder or application."
-msgstr ""
+msgstr "*删除tor文件夹或者应用程序"
 
 #: http//localhost/faq/faq-3/
 #: (content/faq/faq-3/contents+en.lrquestion.description)
@@ -3890,13 +3892,13 @@ msgstr "订阅我们的新闻"
 
 #: templates/footer.html:25
 msgid "Get monthly updates and opportunities from the Tor Project"
-msgstr ""
+msgstr "订阅我们每个月发布的消息和机遇"
 
 #: templates/footer.html:32
 msgid ""
 "Trademark, copyright notices, and rules for use by third 

[tor-commits] [translation/https_everywhere] Update translations for https_everywhere

2018-09-20 Thread translation
commit 3eb8c70f992121a7d0c7c6c214b6f31c4b9bab14
Author: Translation commit bot 
Date:   Thu Sep 20 22:15:27 2018 +

Update translations for https_everywhere
---
 fr/ssl-observatory.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fr/ssl-observatory.dtd b/fr/ssl-observatory.dtd
index 05ade7b62..554cb8c11 100644
--- a/fr/ssl-observatory.dtd
+++ b/fr/ssl-observatory.dtd
@@ -47,7 +47,7 @@ to turn it on?">-->
 
 
-
+
 
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/https_everywhere_completed] Update translations for https_everywhere_completed

2018-09-20 Thread translation
commit 25eca2ea723770b57a498000590b4f23e6cdbd86
Author: Translation commit bot 
Date:   Thu Sep 20 22:15:33 2018 +

Update translations for https_everywhere_completed
---
 fr/ssl-observatory.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fr/ssl-observatory.dtd b/fr/ssl-observatory.dtd
index 05ade7b62..554cb8c11 100644
--- a/fr/ssl-observatory.dtd
+++ b/fr/ssl-observatory.dtd
@@ -47,7 +47,7 @@ to turn it on?">-->
 
 
-
+
 
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit ec06dc849c1d25ea78ce4476a51fae1b7b54e10c
Author: Translation commit bot 
Date:   Thu Sep 20 21:49:01 2018 +

Update translations for support-portal
---
 contents+fr.po | 38 +++---
 1 file changed, 19 insertions(+), 19 deletions(-)

diff --git a/contents+fr.po b/contents+fr.po
index fd7f9e0e2..aa173d240 100644
--- a/contents+fr.po
+++ b/contents+fr.po
@@ -263,7 +263,7 @@ msgstr ""
 #: http//localhost/onionservices/onionservices-2/
 #: (content/onionservices/onionservices-2/contents+en.lrquestion.title)
 msgid "What is a .onion or what are onion services?"
-msgstr "Qu’est-ce qu’un .onion et que sont les services oignon ?"
+msgstr "Qu’est-ce qu’un .onion et que sont les services onion ?"
 
 #: http//localhost/misc/misc-12/
 #: (content/misc/misc-12/contents+en.lrquestion.description)
@@ -640,12 +640,12 @@ msgstr "navigateur-tor-ne-se-connecte-pas"
 #: http//localhost/onionservices/
 #: (content/onionservices/contents+en.lrtopic.seo_slug)
 msgid "onion-services"
-msgstr "services-oignon"
+msgstr "services-onion"
 
 #: http//localhost/onionservices/
 #: (content/onionservices/contents+en.lrtopic.title)
 msgid "Onion Services"
-msgstr "Les services oignon"
+msgstr "Les services onion"
 
 #: http//localhost/operators/operators-7/
 #: (content/operators/operators-7/contents+en.lrquestion.description)
@@ -680,8 +680,8 @@ msgid ""
 "If you are still unable to connect to the onion service, please try again "
 "later."
 msgstr ""
-"Si vous ne parvenez toujours pas à vous connecter au service oignon, "
-"veuillez ressayer ultérieurement."
+"Si vous ne parvenez toujours pas à vous connecter au service onion, veuillez"
+" ressayer ultérieurement."
 
 #: http//localhost/tormobile/tormobile-3/
 #: (content/tormobile/tormobile-3/contents+en.lrquestion.description)
@@ -1143,8 +1143,8 @@ msgid ""
 "If you are unable to connect to an onion service, please see I cannot reach X.onion!"
 msgstr ""
-"Si vous ne pouvez pas vous connecter à un service oignon, veuillez consulter"
-" « Je ne peux pas accéder à 
X.onion ! »"
+"Si vous ne pouvez pas vous connecter à un service onion, veuillez consulter "
+"« Je ne peux pas accéder à X.onion ! 
»"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -1851,8 +1851,8 @@ msgid ""
 "If you are unable to connect to an onion service, please see I cannot reach X.onion!"
 msgstr ""
-"Si vous ne pouvez pas vous connecter à un service oignon, veuillez consulter"
-" « Je ne peux pas accéder à X.onion ! 
»"
+"Si vous ne pouvez pas vous connecter à un service onion, veuillez consulter "
+"« Je ne peux pas accéder à X.onion ! 
»"
 
 #: http//localhost/tbb/tbb-33/
 #: (content/tbb/tbb-33/contents+en.lrquestion.description)
@@ -2582,7 +2582,7 @@ msgid ""
 "href=\"https://www.facebook.com/notes/protect-the-graph/making-connections-;
 "to-facebook-more-secure/1526085754298237/\">Facebook."
 msgstr ""
-"Les services oignons sont aussi utilisés pour permettre la messagerie et le "
+"Les service onion sont aussi utilisés pour permettre la messagerie et le "
 "partage de fichiers sans métadonnées, des interactions plus sûres entre 
des "
 "journalistes et leurs sources avec https://securedrop.org/\;>SecureDrop ou http://3g2upl4pq6kufc4m.onion\;>DuckDuckGo."
 
 #: http//localhost/gettor/gettor-4/
@@ -3985,8 +3985,8 @@ msgid ""
 "service."
 msgstr ""
 "Vous pouvez aussi vous assurer que vous arrivez à accéder à d’autres "
-"services oignon en vous connectant au http://3g2upl4pq6kufc4m.onion\;>service oignon de DuckDuckGo."
+"services onion en vous connectant au http://3g2upl4pq6kufc4m.onion\;>service onion de DuckDuckGo."
 
 #: http//localhost/misc/misc-14/
 #: (content/misc/misc-14/contents+en.lrquestion.seo_slug)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/torbutton-browseronboardingproperties] Update translations for torbutton-browseronboardingproperties

2018-09-20 Thread translation
commit 1d356885d2cb070702943738a21bdc187355ad5e
Author: Translation commit bot 
Date:   Thu Sep 20 21:48:19 2018 +

Update translations for torbutton-browseronboardingproperties
---
 fr/browserOnboarding.properties | 38 +++---
 1 file changed, 19 insertions(+), 19 deletions(-)

diff --git a/fr/browserOnboarding.properties b/fr/browserOnboarding.properties
index dc852d46a..ad6ca0388 100644
--- a/fr/browserOnboarding.properties
+++ b/fr/browserOnboarding.properties
@@ -19,36 +19,36 @@ onboarding.tour-tor-network.button=Se rendre sur 
l’Affichage des circuits
 
 onboarding.tour-tor-circuit-display=Affichage des circuits
 onboarding.tour-tor-circuit-display.title=Visualisez votre chemin.
-onboarding.tour-tor-circuit-display.description=Pour chaque domaine que vous 
visitez, votre trafic est relayé et chiffré dans un circuit passant par 3 
relais Tor disséminés dans le monde entier. Aucun site Web ne sait d’où 
vous vous connectez. Vous pouvez demander un nouveau circuit en cliquant sur 
« Nouveau circuit Tor pour ce site » dans votre Affichage des circuits.
+onboarding.tour-tor-circuit-display.description=Pour chaque domaine que vous 
visitez, votre trafic est relayé et chiffré dans un circuit passant par trois 
relais Tor disséminés de par le monde. Aucun site Web ne sait d’où vous 
vous connectez. Vous pouvez demander un nouveau circuit en cliquant sur « 
Nouveau circuit Tor pour ce site » dans votre Affichage des circuits.
 onboarding.tour-tor-circuit-display.button=Visualiser mon chemin
 
 onboarding.tour-tor-security=Sécurité
 onboarding.tour-tor-security.title=Choisissez votre expérience.
-onboarding.tour-tor-security.description=Nous vous offrons aussi des 
paramètres supplémentaires pour augmenter la sécurité de votre navigateur. 
Nos Paramètres de sécurité vous permettent de bloquer des éléments qui 
pourraient être utilisés pour attaquer votre ordinateur. Cliquez ci-dessous 
pour voir ce que les différentes options vous proposent.
-onboarding.tour-tor-security.button=Passer les Paramètres en revue
+onboarding.tour-tor-security.description=Nous vous offrons aussi des 
paramètres supplémentaires pour augmenter la sécurité de votre navigateur. 
Nos paramètres de sécurité vous permettent de bloquer des éléments qui 
pourraient être utilisés pour attaquer votre ordinateur. Cliquez ci-dessous 
pour voir ce que les différentes options vous proposent.
+onboarding.tour-tor-security.button=Passer les paramètres en revue
 
-onboarding.tour-tor-expect-differences=Astuces concernant l’expérience
+onboarding.tour-tor-expect-differences=Informations concernant l’expérience
 onboarding.tour-tor-expect-differences.title=Attendez-vous à des différences.
-onboarding.tour-tor-expect-differences.description=Avec toutes les fonctions 
de sécurité et de confidentialité offertes par Tor, votre expérience de 
navigation sur Internet pourrait être un peu différente. Les choses 
pourraient être un peu plus lentes et selon votre niveau de sécurité, 
certains éléments pourraient ne pas fonctionner ou ne pas se charger. On 
pourrait aussi vous demander de prouver que vous êtes un humain et pas un 
robot.
-onboarding.tour-tor-expect-differences.button=See FAQs
+onboarding.tour-tor-expect-differences.description=Avec toutes les fonctions 
de sécurité et de confidentialité offertes par Tor, votre expérience de 
navigation sur Internet pourrait être un peu différente. Les choses 
pourraient être un peu plus lentes et selon votre niveau de sécurité, 
certains éléments pourraient ne pas fonctionner ou ne pas se charger. On 
pourrait aussi vous demander de prouver que vous êtes un humain et non un 
robot.
+onboarding.tour-tor-expect-differences.button=Consulter les FAQ
 
-onboarding.tour-tor-onion-services=Les services oignon
-onboarding.tour-tor-onion-services.title=Be extra protected.
-onboarding.tour-tor-onion-services.description=Onion services are sites that 
end with a .onion that provide extra protections to publishers and visitors, 
including added safeguards against censorship. Onion services allow anyone to 
provide content and services anonymously. Click below to visit the DuckDuckGo 
onion site.
-onboarding.tour-tor-onion-services.button=Visit an Onion
+onboarding.tour-tor-onion-services=Les services onion
+onboarding.tour-tor-onion-services.title=Soyez plus que protégé.
+onboarding.tour-tor-onion-services.description=Les services onion sont des 
sites se terminant par .onion qui offrent des protections accrues aux 
diffuseurs et aux visiteurs, dont des mesures de protection contre la censure. 
Les services onion permettent à tous de proposer anonymement du contenu et des 
services. Cliquez ci-dessous pour visiter le site onion de DuckDuckGo.
+onboarding.tour-tor-onion-services.button=Visiter un Onion
 
 # Circuit Display onboarding.
 onboarding.tor-circuit-display.next=Suivant

[tor-commits] [translation/torbutton-browseronboardingproperties_completed] Update translations for torbutton-browseronboardingproperties_completed

2018-09-20 Thread translation
commit c7cf58639946c97eaf878f32809c1bbe09cc4728
Author: Translation commit bot 
Date:   Thu Sep 20 21:48:24 2018 +

Update translations for torbutton-browseronboardingproperties_completed
---
 fr/browserOnboarding.properties | 54 +
 1 file changed, 54 insertions(+)

diff --git a/fr/browserOnboarding.properties b/fr/browserOnboarding.properties
new file mode 100644
index 0..ad6ca0388
--- /dev/null
+++ b/fr/browserOnboarding.properties
@@ -0,0 +1,54 @@
+# Copyright (c) 2018, The Tor Project, Inc.
+# See LICENSE for licensing information.
+# vim: set sw=2 sts=2 ts=8 et:
+
+onboarding.tour-tor-welcome=Bienvenue
+onboarding.tour-tor-welcome.title=Vous êtes prêts.
+onboarding.tour-tor-welcome.description=Le Navigateur Tor offre le plus haut 
niveau de confidentialité et de sécurité quand vous parcourez le Web. Vous 
êtes maintenant protégé contre le suivi à la trace, la surveillance et la 
censure. Cette introduction rapide vous montrera comment faire.
+onboarding.tour-tor-welcome.button=Commencer maintenant
+
+onboarding.tour-tor-privacy=Confidentialité
+onboarding.tour-tor-privacy.title=Repoussez les traqueurs et les fouineurs.
+onboarding.tour-tor-privacy.description=Le Navigateur Tor isole les témoins 
et supprime l’historique de votre navigateur en fin de session. Ces 
modifications garantissent que confidentialité et sécurité sont protégées 
dans le navigateur. Cliquez sur « Réseau Tor » pour savoir comment nous 
vous protégeons au niveau du réseau.
+onboarding.tour-tor-privacy.button=Se rendre sur le Réseau Tor
+
+onboarding.tour-tor-network=Réseau Tor
+onboarding.tour-tor-network.title=Naviguez sur un réseau décentralisé.
+onboarding.tour-tor-network.description=Le navigateur Tor vous connecte au 
réseau Tor exploité par des milliers de bénévoles dans le monde entier. 
Contrairement à un RPV, il n’y a pas de point de défaillance unique ou 
d’entité centralisée auxquels vous devez faire confiance pour profiter 
d’Internet en toute confidentialité.
+onboarding.tour-tor-network.button=Se rendre sur l’Affichage des circuits
+
+onboarding.tour-tor-circuit-display=Affichage des circuits
+onboarding.tour-tor-circuit-display.title=Visualisez votre chemin.
+onboarding.tour-tor-circuit-display.description=Pour chaque domaine que vous 
visitez, votre trafic est relayé et chiffré dans un circuit passant par trois 
relais Tor disséminés de par le monde. Aucun site Web ne sait d’où vous 
vous connectez. Vous pouvez demander un nouveau circuit en cliquant sur « 
Nouveau circuit Tor pour ce site » dans votre Affichage des circuits.
+onboarding.tour-tor-circuit-display.button=Visualiser mon chemin
+
+onboarding.tour-tor-security=Sécurité
+onboarding.tour-tor-security.title=Choisissez votre expérience.
+onboarding.tour-tor-security.description=Nous vous offrons aussi des 
paramètres supplémentaires pour augmenter la sécurité de votre navigateur. 
Nos paramètres de sécurité vous permettent de bloquer des éléments qui 
pourraient être utilisés pour attaquer votre ordinateur. Cliquez ci-dessous 
pour voir ce que les différentes options vous proposent.
+onboarding.tour-tor-security.button=Passer les paramètres en revue
+
+onboarding.tour-tor-expect-differences=Informations concernant l’expérience
+onboarding.tour-tor-expect-differences.title=Attendez-vous à des différences.
+onboarding.tour-tor-expect-differences.description=Avec toutes les fonctions 
de sécurité et de confidentialité offertes par Tor, votre expérience de 
navigation sur Internet pourrait être un peu différente. Les choses 
pourraient être un peu plus lentes et selon votre niveau de sécurité, 
certains éléments pourraient ne pas fonctionner ou ne pas se charger. On 
pourrait aussi vous demander de prouver que vous êtes un humain et non un 
robot.
+onboarding.tour-tor-expect-differences.button=Consulter les FAQ
+
+onboarding.tour-tor-onion-services=Les services onion
+onboarding.tour-tor-onion-services.title=Soyez plus que protégé.
+onboarding.tour-tor-onion-services.description=Les services onion sont des 
sites se terminant par .onion qui offrent des protections accrues aux 
diffuseurs et aux visiteurs, dont des mesures de protection contre la censure. 
Les services onion permettent à tous de proposer anonymement du contenu et des 
services. Cliquez ci-dessous pour visiter le site onion de DuckDuckGo.
+onboarding.tour-tor-onion-services.button=Visiter un Onion
+
+# Circuit Display onboarding.
+onboarding.tor-circuit-display.next=Suivant
+onboarding.tor-circuit-display.done=Terminé
+onboarding.tor-circuit-display.one-of-three=1 de 3
+onboarding.tor-circuit-display.two-of-three=2 de 3
+onboarding.tor-circuit-display.three-of-three=3 de 3
+
+onboarding.tor-circuit-display.intro.title=Comment les circuits 
fonctionnent-ils ?
+onboarding.tor-circuit-display.intro.msg=Les circuits sont composés de relais 

[tor-commits] [translation/torbutton-torbuttonproperties_completed] Update translations for torbutton-torbuttonproperties_completed

2018-09-20 Thread translation
commit 76069605e636fed9ac7e8548cd303beaf878a945
Author: Translation commit bot 
Date:   Thu Sep 20 21:47:52 2018 +

Update translations for torbutton-torbuttonproperties_completed
---
 fr/torbutton.properties | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/fr/torbutton.properties b/fr/torbutton.properties
index 6f430a65a..3e8e860d6 100644
--- a/fr/torbutton.properties
+++ b/fr/torbutton.properties
@@ -1,6 +1,6 @@
 torbutton.circuit_display.internet = Internet
 torbutton.circuit_display.ip_unknown = IP inconnue
-torbutton.circuit_display.onion_site = Site Oignon
+torbutton.circuit_display.onion_site = Site onion
 torbutton.circuit_display.this_browser = Ce navigateur
 torbutton.circuit_display.relay = Relais
 torbutton.circuit_display.tor_bridge = Pont
@@ -51,5 +51,5 @@ profileAccessDenied=%S n’a pas le droit d’accéder au 
profil. Veuillez ajust
 profileMigrationFailed=La migration de votre profil existant %S a 
échoué.\nDe nouveaux paramètres vont être utilisés.
 
 # .Onion Page Info prompt.  Strings are kept here for ease of translation.
-pageInfo_OnionEncryptionWithBitsAndProtocol=La connexion est chiffrée 
(service oignon, %1$S, clés %2$S bits, %3$S)
-pageInfo_OnionEncryption=La connexion est chiffrée (service oignon)
+pageInfo_OnionEncryptionWithBitsAndProtocol=La connexion est chiffrée 
(service onion, %1$S, clés %2$S bits, %3$S)
+pageInfo_OnionEncryption=La connexion est chiffrée (service onion)

___
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

2018-09-20 Thread translation
commit bea4ed575c4e18e6b02fe1a463b6433f8dadde1c
Author: Translation commit bot 
Date:   Thu Sep 20 21:47:48 2018 +

Update translations for torbutton-torbuttonproperties
---
 fr/torbutton.properties | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/fr/torbutton.properties b/fr/torbutton.properties
index 6f430a65a..3e8e860d6 100644
--- a/fr/torbutton.properties
+++ b/fr/torbutton.properties
@@ -1,6 +1,6 @@
 torbutton.circuit_display.internet = Internet
 torbutton.circuit_display.ip_unknown = IP inconnue
-torbutton.circuit_display.onion_site = Site Oignon
+torbutton.circuit_display.onion_site = Site onion
 torbutton.circuit_display.this_browser = Ce navigateur
 torbutton.circuit_display.relay = Relais
 torbutton.circuit_display.tor_bridge = Pont
@@ -51,5 +51,5 @@ profileAccessDenied=%S n’a pas le droit d’accéder au 
profil. Veuillez ajust
 profileMigrationFailed=La migration de votre profil existant %S a 
échoué.\nDe nouveaux paramètres vont être utilisés.
 
 # .Onion Page Info prompt.  Strings are kept here for ease of translation.
-pageInfo_OnionEncryptionWithBitsAndProtocol=La connexion est chiffrée 
(service oignon, %1$S, clés %2$S bits, %3$S)
-pageInfo_OnionEncryption=La connexion est chiffrée (service oignon)
+pageInfo_OnionEncryptionWithBitsAndProtocol=La connexion est chiffrée 
(service onion, %1$S, clés %2$S bits, %3$S)
+pageInfo_OnionEncryption=La connexion est chiffrée (service onion)

___
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

2018-09-20 Thread translation
commit b1f90c3a27c5813cf7544e2087b2c6ea3b3dbd2a
Author: Translation commit bot 
Date:   Thu Sep 20 21:47:24 2018 +

Update translations for tor-browser-manual
---
 fr/fr.po | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/fr/fr.po b/fr/fr.po
index 76761cbdd..b0d3c90e1 100644
--- a/fr/fr.po
+++ b/fr/fr.po
@@ -976,14 +976,14 @@ msgstr "Les services qui ne sont accessibles qu’en 
utilisant Tor"
 
 #: onionsites.page:10
 msgid "Onion Services"
-msgstr "Les services oignon"
+msgstr "Les services onion"
 
 #: onionsites.page:11
 msgid ""
 "Onion services (formerly known as “hidden services”) are services (like "
 "websites) that are only accessible through the Tor network."
 msgstr ""
-"Les services oignon (anciennement « services cachés ») sont des services "
+"Les services onion (anciennement « services cachés ») sont des services "
 "(tels que des sites Web) qui ne sont accessibles que par le réseau Tor."
 
 #: onionsites.page:16
@@ -991,7 +991,7 @@ msgid ""
 "Onion services offer several advantages over ordinary services on the non-"
 "private web:"
 msgstr ""
-"Les services oignon offrent plusieurs avantages par rapport aux services "
+"Les services onion offrent plusieurs avantages par rapport aux services "
 "ordinaires du Web non privé :"
 
 #: onionsites.page:23
@@ -999,7 +999,7 @@ msgid ""
 "An onion services’s location and IP address are hidden, making it difficult 
"
 "for adversaries to censor it or identify its operators."
 msgstr ""
-"Le lieu et l’adresse IP d’un service oignon sont cachés, et il est donc "
+"Le lieu et l’adresse IP d’un service onion sont cachés, et il est donc "
 "difficile pour ses adversaires de le censurer ou d’identifier ses "
 "opérateurs."
 
@@ -1009,7 +1009,7 @@ msgid ""
 " you do not need to worry about connecting"
 " over HTTPS."
 msgstr ""
-"Tout le trafic entre les utilisateurs de Tor et les services oignon est "
+"Tout le trafic entre les utilisateurs de Tor et les services onion est "
 "chiffré de bout en bout, donc vous n’avez pas à vous soucier de vous 
connecter par HTTPS."
 
@@ -1020,14 +1020,14 @@ msgid ""
 " that it is connecting to the right location and that the connection is not "
 "being tampered with."
 msgstr ""
-"L’adresse d’un service oignon est générée automatiquement, donc les "
+"L’adresse d’un service onion est générée automatiquement, donc les "
 "opérateurs n’ont pas à acheter un nom de domaine ; l’URL .onion aide 
aussi "
 "Tor à s’assurer qu’il se connecte au bon endroit et que la connexion 
n’a pas"
 " été altérée."
 
 #: onionsites.page:46
 msgid "How to access an onion service"
-msgstr "Comment accéder à un service oignon ?"
+msgstr "Comment accéder à un service onion ?"
 
 #. This is a reference to an external file such as an image or video. When
 #. the file changes, the md5 hash will change to let you know you need to
@@ -1066,7 +1066,7 @@ msgid ""
 "later. There may be a temporary connection issue, or the site operators may "
 "have allowed it to go offline without warning."
 msgstr ""
-"Si vous n’arrivez toujours pas à vous connecter au service oignon, 
veuillez "
+"Si vous n’arrivez toujours pas à vous connecter au service onion, veuillez 
"
 "ressayer ultérieurement. Il pourrait y avoir un problème temporaire de "
 "connexion ou les exploitants du site pourraient l’avoir désactivé sans "
 "avertissement."
@@ -1078,8 +1078,8 @@ msgid ""
 "Onion Service"
 msgstr ""
 "Vous pouvez aussi vérifier si vous arrivez à vous connecter à d’autres "
-"services oignon en vous connectant au http://3g2upl4pq6kufc4m.onion/\;>service oignon de DuckDuckGo."
+"services onion en vous connectant au http://3g2upl4pq6kufc4m.onion/\;>service onion de DuckDuckGo."
 
 #: plugins.page:6
 msgid "How Tor Browser handles add-ons, plugins and JavaScript"

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/torbirdy_completed] Update translations for torbirdy_completed

2018-09-20 Thread translation
commit 791ea1cf99c7f302091dd79075f3a1f3a4da4d07
Author: Translation commit bot 
Date:   Thu Sep 20 21:47:18 2018 +

Update translations for torbirdy_completed
---
 fr/torbirdy.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fr/torbirdy.dtd b/fr/torbirdy.dtd
index 8830c4e68..a95088e1a 100644
--- a/fr/torbirdy.dtd
+++ b/fr/torbirdy.dtd
@@ -52,7 +52,7 @@
 
 
 
-
+
 
 
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/torbirdy] Update translations for torbirdy

2018-09-20 Thread translation
commit bf220e95fb0578ec29107ba85492a9f26330cbb3
Author: Translation commit bot 
Date:   Thu Sep 20 21:47:12 2018 +

Update translations for torbirdy
---
 fr/torbirdy.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fr/torbirdy.dtd b/fr/torbirdy.dtd
index 8830c4e68..a95088e1a 100644
--- a/fr/torbirdy.dtd
+++ b/fr/torbirdy.dtd
@@ -52,7 +52,7 @@
 
 
 
-
+
 
 
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/tails-onioncircuits_completed] Update translations for tails-onioncircuits_completed

2018-09-20 Thread translation
commit 938000656950c36c76a102d6e8c5b5f8afb469a8
Author: Translation commit bot 
Date:   Thu Sep 20 21:46:36 2018 +

Update translations for tails-onioncircuits_completed
---
 fr/onioncircuits.pot | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/fr/onioncircuits.pot b/fr/onioncircuits.pot
index 9ee381fd2..811179758 100644
--- a/fr/onioncircuits.pot
+++ b/fr/onioncircuits.pot
@@ -3,8 +3,9 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# French language coordinator , 2017-2018
-# French language coordinator , 2016
+# AO , 2018
+# AO , 2017-2018
+# AO , 2016
 # Gwennole Hangard , 2016
 # syl_, 2016
 # Thomas Chauchefoin , 2016
@@ -13,8 +14,8 @@ msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2017-08-03 13:00+\n"
-"PO-Revision-Date: 2018-05-07 11:16+\n"
-"Last-Translator: French language coordinator \n"
+"PO-Revision-Date: 2018-09-20 21:32+\n"
+"Last-Translator: AO \n"
 "Language-Team: French 
(http://www.transifex.com/otf/torproject/language/fr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -28,7 +29,7 @@ msgstr "Vous n’êtes pas encore connecté à Tor…"
 
 #: ../onioncircuits:95
 msgid "Onion Circuits"
-msgstr "Circuits oignon"
+msgstr "Circuits onion"
 
 #: ../onioncircuits:125
 msgid "Circuit"

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/tails-onioncircuits] Update translations for tails-onioncircuits

2018-09-20 Thread translation
commit b79e27775e3637176bd943621afa74f09d2d0b2b
Author: Translation commit bot 
Date:   Thu Sep 20 21:46:30 2018 +

Update translations for tails-onioncircuits
---
 fr/onioncircuits.pot | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/fr/onioncircuits.pot b/fr/onioncircuits.pot
index 9ee381fd2..811179758 100644
--- a/fr/onioncircuits.pot
+++ b/fr/onioncircuits.pot
@@ -3,8 +3,9 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# French language coordinator , 2017-2018
-# French language coordinator , 2016
+# AO , 2018
+# AO , 2017-2018
+# AO , 2016
 # Gwennole Hangard , 2016
 # syl_, 2016
 # Thomas Chauchefoin , 2016
@@ -13,8 +14,8 @@ msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2017-08-03 13:00+\n"
-"PO-Revision-Date: 2018-05-07 11:16+\n"
-"Last-Translator: French language coordinator \n"
+"PO-Revision-Date: 2018-09-20 21:32+\n"
+"Last-Translator: AO \n"
 "Language-Team: French 
(http://www.transifex.com/otf/torproject/language/fr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -28,7 +29,7 @@ msgstr "Vous n’êtes pas encore connecté à Tor…"
 
 #: ../onioncircuits:95
 msgid "Onion Circuits"
-msgstr "Circuits oignon"
+msgstr "Circuits onion"
 
 #: ../onioncircuits:125
 msgid "Circuit"

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/torbutton-browseronboardingproperties] Update translations for torbutton-browseronboardingproperties

2018-09-20 Thread translation
commit 9308b11f2f68c53a635afcc74743196ce1e06fad
Author: Translation commit bot 
Date:   Thu Sep 20 21:18:06 2018 +

Update translations for torbutton-browseronboardingproperties
---
 fr/browserOnboarding.properties | 36 ++--
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/fr/browserOnboarding.properties b/fr/browserOnboarding.properties
index 7b85a7266..dc852d46a 100644
--- a/fr/browserOnboarding.properties
+++ b/fr/browserOnboarding.properties
@@ -8,28 +8,28 @@ onboarding.tour-tor-welcome.description=Le Navigateur Tor 
offre le plus haut niv
 onboarding.tour-tor-welcome.button=Commencer maintenant
 
 onboarding.tour-tor-privacy=Confidentialité
-onboarding.tour-tor-privacy.title=Repousser les traqueurs et les fouineurs.
-onboarding.tour-tor-privacy.description=Tor Browser isolates cookies and 
deletes your browser history after your session. These modifications ensure 
your privacy and security are protected in the browser. Click ‘Tor Network’ 
to learn how we protect you on the network level.
-onboarding.tour-tor-privacy.button=Go to Tor Network
+onboarding.tour-tor-privacy.title=Repoussez les traqueurs et les fouineurs.
+onboarding.tour-tor-privacy.description=Le Navigateur Tor isole les témoins 
et supprime l’historique de votre navigateur en fin de session. Ces 
modifications garantissent que confidentialité et sécurité sont protégées 
dans le navigateur. Cliquez sur « Réseau Tor » pour savoir comment nous 
vous protégeons au niveau du réseau.
+onboarding.tour-tor-privacy.button=Se rendre sur le Réseau Tor
 
-onboarding.tour-tor-network=Tor Network
-onboarding.tour-tor-network.title=Travel a decentralized network.
-onboarding.tour-tor-network.description=Tor Browser connects you to the Tor 
network run by thousands of volunteers around the world. Unlike a VPN, 
there’s no one point of failure or centralized entity you need to trust in 
order to enjoy the internet privately.
-onboarding.tour-tor-network.button=Go to Circuit Display
+onboarding.tour-tor-network=Réseau Tor
+onboarding.tour-tor-network.title=Naviguez sur un réseau décentralisé.
+onboarding.tour-tor-network.description=Le navigateur Tor vous connecte au 
réseau Tor exploité par des milliers de bénévoles dans le monde entier. 
Contrairement à un RPV, il n’y a pas de point de défaillance unique ou 
d’entité centralisée auxquels vous devez faire confiance pour profiter 
d’Internet en toute confidentialité.
+onboarding.tour-tor-network.button=Se rendre sur l’Affichage des circuits
 
-onboarding.tour-tor-circuit-display=Circuit Display
-onboarding.tour-tor-circuit-display.title=See your path.
-onboarding.tour-tor-circuit-display.description=For each domain you visit, 
your traffic is relayed and encrypted in a circuit across three Tor relays 
around the world. No website knows where you are connecting from. You can 
request a new circuit by clicking ‘New Circuit for this Site’ on our 
Circuit Display.
-onboarding.tour-tor-circuit-display.button=See My Path
+onboarding.tour-tor-circuit-display=Affichage des circuits
+onboarding.tour-tor-circuit-display.title=Visualisez votre chemin.
+onboarding.tour-tor-circuit-display.description=Pour chaque domaine que vous 
visitez, votre trafic est relayé et chiffré dans un circuit passant par 3 
relais Tor disséminés dans le monde entier. Aucun site Web ne sait d’où 
vous vous connectez. Vous pouvez demander un nouveau circuit en cliquant sur 
« Nouveau circuit Tor pour ce site » dans votre Affichage des circuits.
+onboarding.tour-tor-circuit-display.button=Visualiser mon chemin
 
 onboarding.tour-tor-security=Sécurité
-onboarding.tour-tor-security.title=Choose your experience.
-onboarding.tour-tor-security.description=We also provide you with additional 
settings for bumping up your browser security. Our Security Settings allow you 
to block elements that could be used to attack your computer. Click below to 
see what the different options do.
-onboarding.tour-tor-security.button=Review Settings
+onboarding.tour-tor-security.title=Choisissez votre expérience.
+onboarding.tour-tor-security.description=Nous vous offrons aussi des 
paramètres supplémentaires pour augmenter la sécurité de votre navigateur. 
Nos Paramètres de sécurité vous permettent de bloquer des éléments qui 
pourraient être utilisés pour attaquer votre ordinateur. Cliquez ci-dessous 
pour voir ce que les différentes options vous proposent.
+onboarding.tour-tor-security.button=Passer les Paramètres en revue
 
-onboarding.tour-tor-expect-differences=Experience Tips
-onboarding.tour-tor-expect-differences.title=Expect some differences.
-onboarding.tour-tor-expect-differences.description=With all the security and 
privacy features provided by Tor, your experience while browsing the internet 
may be a little different. Things may be a bit slower, and depending on your 
security level, some elements may not work or 

[tor-commits] [translation/torbutton-browseronboardingproperties] Update translations for torbutton-browseronboardingproperties

2018-09-20 Thread translation
commit eb87d835095d78337a4666e9e1ffde858b45469a
Author: Translation commit bot 
Date:   Thu Sep 20 20:48:06 2018 +

Update translations for torbutton-browseronboardingproperties
---
 fr/browserOnboarding.properties | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/fr/browserOnboarding.properties b/fr/browserOnboarding.properties
index 4c9fff793..7b85a7266 100644
--- a/fr/browserOnboarding.properties
+++ b/fr/browserOnboarding.properties
@@ -3,12 +3,12 @@
 # vim: set sw=2 sts=2 ts=8 et:
 
 onboarding.tour-tor-welcome=Bienvenue
-onboarding.tour-tor-welcome.title=You’re ready.
-onboarding.tour-tor-welcome.description=Tor Browser offers the highest 
standard of privacy and security while browsing the web. You’re now protected 
against tracking, surveillance, and censorship. This quick onboarding will show 
you how.
-onboarding.tour-tor-welcome.button=Start Now
+onboarding.tour-tor-welcome.title=Vous êtes prêts.
+onboarding.tour-tor-welcome.description=Le Navigateur Tor offre le plus haut 
niveau de confidentialité et de sécurité quand vous parcourez le Web. Vous 
êtes maintenant protégé contre le suivi à la trace, la surveillance et la 
censure. Cette introduction rapide vous montrera comment faire.
+onboarding.tour-tor-welcome.button=Commencer maintenant
 
 onboarding.tour-tor-privacy=Confidentialité
-onboarding.tour-tor-privacy.title=Snub trackers and snoopers.
+onboarding.tour-tor-privacy.title=Repousser les traqueurs et les fouineurs.
 onboarding.tour-tor-privacy.description=Tor Browser isolates cookies and 
deletes your browser history after your session. These modifications ensure 
your privacy and security are protected in the browser. Click ‘Tor Network’ 
to learn how we protect you on the network level.
 onboarding.tour-tor-privacy.button=Go to Tor Network
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Bump to 0.3.5.2-alpha

2018-09-20 Thread nickm
commit 1a85ac8c2de77f40212d46569632ec47bc309ba7
Author: Nick Mathewson 
Date:   Thu Sep 20 16:36:07 2018 -0400

Bump to 0.3.5.2-alpha
---
 configure.ac| 2 +-
 contrib/win32build/tor-mingw.nsi.in | 2 +-
 src/win32/orconfig.h| 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/configure.ac b/configure.ac
index a77c6bb05..230004946 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4,7 +4,7 @@ dnl Copyright (c) 2007-2018, The Tor Project, Inc.
 dnl See LICENSE for licensing information
 
 AC_PREREQ([2.63])
-AC_INIT([tor],[0.3.5.1-alpha-dev])
+AC_INIT([tor],[0.3.5.2-alpha])
 AC_CONFIG_SRCDIR([src/app/main/tor_main.c])
 AC_CONFIG_MACRO_DIR([m4])
 
diff --git a/contrib/win32build/tor-mingw.nsi.in 
b/contrib/win32build/tor-mingw.nsi.in
index 9297d592a..04702c346 100644
--- a/contrib/win32build/tor-mingw.nsi.in
+++ b/contrib/win32build/tor-mingw.nsi.in
@@ -8,7 +8,7 @@
 !include "LogicLib.nsh"
 !include "FileFunc.nsh"
 !insertmacro GetParameters
-!define VERSION "0.3.5.1-alpha-dev"
+!define VERSION "0.3.5.2-alpha"
 !define INSTALLER "tor-${VERSION}-win32.exe"
 !define WEBSITE "https://www.torproject.org/;
 !define LICENSE "LICENSE"
diff --git a/src/win32/orconfig.h b/src/win32/orconfig.h
index 457cfa794..f20db1318 100644
--- a/src/win32/orconfig.h
+++ b/src/win32/orconfig.h
@@ -218,7 +218,7 @@
 #define USING_TWOS_COMPLEMENT
 
 /* Version number of package */
-#define VERSION "0.3.5.1-alpha-dev"
+#define VERSION "0.3.5.2-alpha"
 
 
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Start on an 0.3.5.2-alpha changelog

2018-09-20 Thread nickm
commit de066b76a536b7c8deacdc1beddadd2f2bd200dd
Author: Nick Mathewson 
Date:   Thu Sep 20 16:35:36 2018 -0400

Start on an 0.3.5.2-alpha changelog
---
 ChangeLog   | 63 +
 changes/bug23512|  6 -
 changes/bug27073|  4 
 changes/bug27139| 14 
 changes/bug27206|  4 
 changes/bug27764|  4 
 changes/bug27782|  4 
 changes/bug27795|  5 -
 changes/ticket27410 |  5 -
 changes/ticket27799 |  3 ---
 10 files changed, 63 insertions(+), 49 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index bde75efa2..1a3428cf0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,66 @@
+Changes in version 0.3.5.2-alpha - 2018-09-2?
+  Tor 0.3.5.2-alpha fixes several bugs in 0.3.5.1-alpha, including one
+  that made Tor think it had run out of sockets. Anybody running a relay
+  or an onion service on 0.3.5.1-alpha should upgrade.
+
+  o Major bugfixes (relay bandwidth statistics):
+- When we close relayed circuits, report the data in the circuit
+  queues as being written in our relay bandwidth stats. This
+  mitigates guard discovery and other attacks that close circuits
+  for the explicit purpose of noticing this discrepancy in
+  statistics. Fixes bug 23512; bugfix on 0.0.8pre3.
+
+  o Major bugfixes (socket accounting):
+- In our socket accounting code, count a socket as closed even when
+  it is closed indirectly by the TLS layer. Previously, we would
+  count these sockets as still in use, and incorrectly believe that
+  we had run out of sockets. Fixes bug 27795; bugfix
+  on 0.3.5.1-alpha.
+
+  o Minor bugfixes (32-bit OSX and iOS, timing):
+- Fix an integer overflow bug in our optimized 32-bit millisecond-
+  difference algorithm for 32-bit Apple platforms. Previously, it
+  would overflow when calculating the difference between two times
+  more than 47 days apart. Fixes part of bug 27139; bugfix
+  on 0.3.4.1-alpha.
+- Improve the precision of our 32-bit millisecond difference
+  algorithm for 32-bit Apple platforms. Fixes part of bug 27139;
+  bugfix on 0.3.4.1-alpha.
+- Relax the tolerance on the mainloop/update_time_jumps test when
+  running on 32-bit Apple platforms. Fixes part of bug 27139; bugfix
+  on 0.3.4.1-alpha.
+
+  o Minor bugfixes (onion service v3):
+- Close all SOCKS request (for the same .onion) if the newly fetched
+  descriptor is unusable. Before that, we would close only the first
+  one leaving the other hanging and let to time out by themselves.
+  Fixes bug 27410; bugfix on 0.3.2.1-alpha.
+
+  o Minor bugfixes (memory leak):
+- Fix an unlikely memory leak when trying to read a private key from
+  a ridiculously large file. Fixes bug 27764; bugfix on
+  0.3.5.1-alpha. This is CID 1439488.
+
+  o Minor bugfixes (NSS):
+- Correctly detect failure to open a dummy TCP socket when stealing
+  ownership of an fd from the NSS layer. Fixes bug 27782; bugfix
+  on 0.3.5.1-alpha.
+
+  o Minor bugfixes (rust):
+- protover_all_supported() would attempt to allocate up to 16GB on
+  some inputs, leading to a potential memory DoS. Fixes bug 27206;
+  bugfix on 0.3.3.5-rc.
+
+  o Minor bugfixes (testing):
+- Revise the "conditionvar_timeout" test so that it succeeds even on
+  heavily loaded systems where the test threads are not scheduled
+  within 200 msec. Fixes bug 27073; bugfix on 0.2.6.3-alpha.
+
+  o Code simplification and refactoring:
+- Divide the routerlist.c and dirserv.c modules into smaller parts.
+  Closes ticket 27799.
+
+
 Changes in version 0.3.5.1-alpha - 2018-09-18
   Tor 0.3.5.1-alpha is the first release of the 0.3.5.x series. It adds
   client authorization for modern (v3) onion services, improves
diff --git a/changes/bug23512 b/changes/bug23512
deleted file mode 100644
index 91b2786de..0
--- a/changes/bug23512
+++ /dev/null
@@ -1,6 +0,0 @@
-  o Major bugfix (Relay bandwidth statistics):
-- When we close relayed circuits, report the data in the circuit queues
-  as being written in our relay bandwidth stats. This mitigates guard
-  discovery and other attacks that close circuits for the explicit purpose
-  of noticing this discrepancy in statistics. Fixes bug 23512; bugfix
-  on 0.0.8pre3.
diff --git a/changes/bug27073 b/changes/bug27073
deleted file mode 100644
index 851e7f0df..0
--- a/changes/bug27073
+++ /dev/null
@@ -1,4 +0,0 @@
-  o Minor bugfixes (testing):
-- Revise the "conditionvar_timeout" test so that it succeeds even
-  on heavily loaded systems where the test threads are not scheduled
-  within 200 msec. Fixes bug 27073; bugfix on 0.2.6.3-alpha.
diff --git a/changes/bug27139 b/changes/bug27139
deleted file mode 100644
index 0d1e3b432..0
--- a/changes/bug27139
+++ /dev/null
@@ -1,14 +0,0 @@
-  o Minor bugfixes (32-bit OSX and iOS, timing):
- 

[tor-commits] [tor/master] changes for 27799

2018-09-20 Thread nickm
commit 313b67163a39a0cbf9d7ac720c26246d7c1cae69
Author: Nick Mathewson 
Date:   Thu Sep 20 16:30:33 2018 -0400

changes for 27799
---
 changes/ticket27799 | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/changes/ticket27799 b/changes/ticket27799
new file mode 100644
index 0..31b89d8c6
--- /dev/null
+++ b/changes/ticket27799
@@ -0,0 +1,3 @@
+  o Code simplification and refactoring:
+- Divide the routerlist.c and dirserv.c modules into smaller
+  parts. Closes ticket 27799.

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge remote-tracking branch 'dgoulet/ticket27410_035_01'

2018-09-20 Thread nickm
commit e7ac8fabcc36e8b63f4967f5efc9447b60cb2204
Merge: 2ed0d240e cb81a69f9
Author: Nick Mathewson 
Date:   Thu Sep 20 16:22:16 2018 -0400

Merge remote-tracking branch 'dgoulet/ticket27410_035_01'

 src/feature/hs/hs_client.c |   2 +-
 src/feature/hs/hs_client.h |   2 +
 src/test/test_hs_client.c  | 117 +
 3 files changed, 120 insertions(+), 1 deletion(-)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge branch 'maint-0.2.9' into maint-0.3.1

2018-09-20 Thread nickm
commit 12258bbb9056ae400a58de4eb57c3de079b21782
Merge: 2968c716d b205714ba
Author: David Goulet 
Date:   Tue Jul 3 13:31:06 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.1

 changes/bug26535.029 | 5 +
 src/test/ntor_ref.py | 9 ++---
 2 files changed, 11 insertions(+), 3 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge branch 'maint-0.3.2' of https://git.torproject.org/tor into maint-0.3.2

2018-09-20 Thread nickm
commit 9c83cd1993b6ed98301020e5a170df9d5427a1e6
Merge: 6fed66d26 5a8827a4c
Author: David Goulet 
Date:   Tue Sep 11 15:36:48 2018 -0400

Merge branch 'maint-0.3.2' of https://git.torproject.org/tor into 
maint-0.3.2

 .travis.yml |   267 +-
 Makefile.am | 3 +-
 changes/27286   | 4 +
 changes/bug20424_029_minimal| 4 +
 changes/bug25440| 5 +
 changes/bug26269| 5 +
 changes/bug26485| 4 +
 changes/bug26497| 3 +
 changes/bug26497-backport   | 3 +
 changes/bug26785| 4 +
 changes/bug26787| 3 +
 changes/bug26830| 3 +
 changes/bug26853| 3 +
 changes/bug26924| 4 +
 changes/bug26927| 4 +
 changes/bug26932| 3 +
 changes/bug27081| 4 +
 changes/bug27088| 5 +
 changes/bug27090| 3 +
 changes/bug27093| 3 +
 changes/bug27185| 3 +
 changes/bug27226| 5 +
 changes/bug27295| 3 +
 changes/bug27344| 4 +
 changes/bug27345| 5 +
 changes/bug27418| 3 +
 changes/bug27453| 3 +
 changes/bug27461| 5 +
 changes/bug27463| 3 +
 changes/bug27465| 5 +
 changes/geoip-2018-07-03| 4 +
 changes/geoip-2018-08-07| 4 +
 changes/geoip-2018-09-06| 4 +
 changes/task26771   | 4 +
 changes/ticket24629 | 3 +
 changes/ticket26560 | 3 +
 changes/ticket26647 | 4 +
 changes/ticket26952-cargo   | 3 +
 changes/ticket26952-ccache  | 3 +
 changes/ticket27087 | 3 +
 changes/ticket27252 | 6 +
 changes/ticket27252-032 | 5 +
 configure.ac|16 +-
 contrib/win32build/tor-mingw.nsi.in | 2 +-
 doc/HACKING/GettingStartedRust.md   | 7 +-
 src/common/address.c| 5 +-
 src/common/compress_zstd.c  | 4 +
 src/common/sandbox.c| 2 +-
 src/common/tortls.c |17 +-
 src/config/geoip| 59634 +++---
 src/config/geoip6   |  9942 +++---
 src/or/auth_dirs.inc| 4 +-
 src/or/config.c | 9 +-
 src/or/connection_edge.c| 1 -
 src/or/connection_or.c  |14 +-
 src/or/control.c| 5 +-
 src/or/dirserv.c|51 +-
 src/or/dirserv.h| 3 +-
 src/or/dirvote.c| 9 +-
 src/or/hs_service.c | 1 +
 src/or/main.c   | 8 +
 src/or/rendclient.c | 9 +
 src/or/router.c |15 +-
 src/rust/tor_util/include.am| 1 -
 src/test/include.am | 2 +-
 src/test/test.c |10 +-
 src/test/test_bt.sh | 2 +
 src/test/test_dir.c |53 +-
 src/test/test_entrynodes.c  | 6 +
 src/test/test_key_expiration.sh | 8 +
 src/test/test_keygen.sh | 8 +
 src/test/test_rust.sh   |17 +-
 src/test/test_tortls.c  |   122 +-
 src/win32/orconfig.h| 2 +-
 74 files changed, 26267 insertions(+), 44144 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge remote-tracking branch 'dgoulet/ticket27410_032_01'

2018-09-20 Thread nickm
commit 2ed0d240e8dea9a789bd6969112a1df4d0363947
Merge: 813019cc5 fa6d5dd26
Author: Nick Mathewson 
Date:   Thu Sep 20 16:22:02 2018 -0400

Merge remote-tracking branch 'dgoulet/ticket27410_032_01'

 changes/ticket27410| 5 +
 src/feature/hs/hs_client.c | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --cc src/feature/hs/hs_client.c
index a6384b87a,0..fa7c78c8f
mode 100644,00..100644
--- a/src/feature/hs/hs_client.c
+++ b/src/feature/hs/hs_client.c
@@@ -1,1886 -1,0 +1,1886 @@@
 +/* Copyright (c) 2016-2018, The Tor Project, Inc. */
 +/* See LICENSE for licensing information */
 +
 +/**
 + * \file hs_client.c
 + * \brief Implement next generation hidden service client functionality
 + **/
 +
 +#define HS_CLIENT_PRIVATE
 +
 +#include "core/or/or.h"
 +#include "feature/client/circpathbias.h"
 +#include "core/or/circuitbuild.h"
 +#include "core/or/circuitlist.h"
 +#include "core/or/circuituse.h"
 +#include "app/config/config.h"
 +#include "core/mainloop/connection.h"
 +#include "core/or/connection_edge.h"
 +#include "lib/crypt_ops/crypto_format.h"
 +#include "lib/crypt_ops/crypto_rand.h"
 +#include "lib/crypt_ops/crypto_util.h"
 +#include "feature/dircache/directory.h"
 +#include "feature/hs/hs_cache.h"
 +#include "feature/hs/hs_cell.h"
 +#include "feature/hs/hs_circuit.h"
 +#include "feature/hs/hs_circuitmap.h"
 +#include "feature/hs/hs_client.h"
 +#include "feature/hs/hs_control.h"
 +#include "feature/hs/hs_descriptor.h"
 +#include "feature/hs/hs_ident.h"
 +#include "core/crypto/hs_ntor.h"
 +#include "feature/nodelist/networkstatus.h"
 +#include "feature/nodelist/nodelist.h"
 +#include "core/or/reasons.h"
 +#include "feature/rend/rendclient.h"
 +#include "feature/relay/router.h"
 +#include "feature/nodelist/routerset.h"
 +
 +#include "core/or/cpath_build_state_st.h"
 +#include "feature/dircommon/dir_connection_st.h"
 +#include "core/or/entry_connection_st.h"
 +#include "core/or/extend_info_st.h"
 +#include "core/or/origin_circuit_st.h"
 +
 +/* Client-side authorizations for hidden services; map of service identity
 + * public key to hs_client_service_authorization_t *. */
 +static digest256map_t *client_auths = NULL;
 +
 +/* Return a human-readable string for the client fetch status code. */
 +static const char *
 +fetch_status_to_string(hs_client_fetch_status_t status)
 +{
 +  switch (status) {
 +  case HS_CLIENT_FETCH_ERROR:
 +return "Internal error";
 +  case HS_CLIENT_FETCH_LAUNCHED:
 +return "Descriptor fetch launched";
 +  case HS_CLIENT_FETCH_HAVE_DESC:
 +return "Already have descriptor";
 +  case HS_CLIENT_FETCH_NO_HSDIRS:
 +return "No more HSDir available to query";
 +  case HS_CLIENT_FETCH_NOT_ALLOWED:
 +return "Fetching descriptors is not allowed";
 +  case HS_CLIENT_FETCH_MISSING_INFO:
 +return "Missing directory information";
 +  case HS_CLIENT_FETCH_PENDING:
 +return "Pending descriptor fetch";
 +  default:
 +return "(Unknown client fetch status code)";
 +  }
 +}
 +
 +/* Return true iff tor should close the SOCKS request(s) for the descriptor
 + * fetch that ended up with this given status code. */
 +static int
 +fetch_status_should_close_socks(hs_client_fetch_status_t status)
 +{
 +  switch (status) {
 +  case HS_CLIENT_FETCH_NO_HSDIRS:
 +/* No more HSDir to query, we can't complete the SOCKS request(s). */
 +  case HS_CLIENT_FETCH_ERROR:
 +/* The fetch triggered an internal error. */
 +  case HS_CLIENT_FETCH_NOT_ALLOWED:
 +/* Client is not allowed to fetch (FetchHidServDescriptors 0). */
 +goto close;
 +  case HS_CLIENT_FETCH_MISSING_INFO:
 +  case HS_CLIENT_FETCH_HAVE_DESC:
 +  case HS_CLIENT_FETCH_PENDING:
 +  case HS_CLIENT_FETCH_LAUNCHED:
 +/* The rest doesn't require tor to close the SOCKS request(s). */
 +goto no_close;
 +  }
 +
 + no_close:
 +  return 0;
 + close:
 +  return 1;
 +}
 +
 +/* Cancel all descriptor fetches currently in progress. */
 +static void
 +cancel_descriptor_fetches(void)
 +{
 +  smartlist_t *conns =
 +connection_list_by_type_state(CONN_TYPE_DIR, DIR_PURPOSE_FETCH_HSDESC);
 +  SMARTLIST_FOREACH_BEGIN(conns, connection_t *, conn) {
 +const hs_ident_dir_conn_t *ident = TO_DIR_CONN(conn)->hs_ident;
 +if (BUG(ident == NULL)) {
 +  /* A directory connection fetching a service descriptor can't have an
 +   * empty hidden service identifier. */
 +  continue;
 +}
 +log_debug(LD_REND, "Marking for close a directory connection fetching "
 +   "a hidden service descriptor for service %s.",
 +  safe_str_client(ed25519_fmt(>identity_pk)));
 +connection_mark_for_close(conn);
 +  } SMARTLIST_FOREACH_END(conn);
 +
 +  /* No ownership of the objects in this list. */
 +  smartlist_free(conns);
 +  log_info(LD_REND, "Hidden service client descriptor fetches cancelled.");
 +}
 +
 +/* Get all connections that are waiting on a circuit and flag them back to
 + * waiting for a hidden service descriptor for the given service key
 

[tor-commits] [tor/master] hs-v3: Close all SOCKS request on descriptor failure

2018-09-20 Thread nickm
commit fa6d5dd2686d9fedfbbea9bdf0d7dab1a7afc7c4
Author: David Goulet 
Date:   Wed Sep 19 10:56:15 2018 -0400

hs-v3: Close all SOCKS request on descriptor failure

Client side, when a descriptor is finally fetched and stored in the cache, 
we
then go over all pending SOCKS request for that descriptor. If it turns out
that the intro points are unusable, we close the first SOCKS request but not
the others for the same .onion.

This commit makes it that we'll close all SOCKS requests so we don't let
hanging the other ones.

It also fixes another bug which is having a SOCKS connection in 
RENDDESC_WAIT
state but with a descriptor in the cache. At some point, tor will expire the
intro failure cache which will make that descriptor usable again. When
retrying all SOCKS connection (retry_all_socks_conn_waiting_for_desc()), we
won't end up in the code path where we have already the descriptor for a
pending request causing a BUG().

Bottom line is that we should never have pending requests (waiting for a
descriptor) with that descriptor in the cache (even if unusable).

Fixees #27410.

Signed-off-by: David Goulet 
---
 changes/ticket27410 | 5 +
 src/or/hs_client.c  | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/changes/ticket27410 b/changes/ticket27410
new file mode 100644
index 0..a21fdde58
--- /dev/null
+++ b/changes/ticket27410
@@ -0,0 +1,5 @@
+  o Minor bugfixes (hidden service v3):
+- Close all SOCKS request (for the same .onion) if the newly fetched
+  descriptor is unusable. Before that, we would close only the first one
+  leaving the other hanging and let to time out by themselves. Fixes bug
+  27410; bugfix on 0.3.2.1-alpha.
diff --git a/src/or/hs_client.c b/src/or/hs_client.c
index 4e2824c13..fb21e6f20 100644
--- a/src/or/hs_client.c
+++ b/src/or/hs_client.c
@@ -1423,7 +1423,7 @@ hs_client_desc_has_arrived(const hs_ident_dir_conn_t 
*ident)
   /* We are unable to use the descriptor so remove the directory request
* from the cache so the next connection can try again. */
   note_connection_attempt_succeeded(edge_conn->hs_ident);
-  goto end;
+  continue;
 }
 
 log_info(LD_REND, "Descriptor has arrived. Launching circuits.");



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge branch 'maint-0.3.2' of https://git.torproject.org/tor into maint-0.3.2

2018-09-20 Thread nickm
commit d1a6043bfb0a3869439565d563a93aeb0fa30923
Merge: 9c83cd199 0971b3ce4
Author: David Goulet 
Date:   Thu Sep 20 10:59:23 2018 -0400

Merge branch 'maint-0.3.2' of https://git.torproject.org/tor into 
maint-0.3.2

 changes/bug27335|  4 
 changes/bug27658|  6 ++
 src/ext/tinytest.c  | 12 ++--
 src/or/hs_service.c |  6 +++---
 4 files changed, 23 insertions(+), 5 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge branch 'maint-0.3.1' into maint-0.3.2

2018-09-20 Thread nickm
commit 6fed66d268fa84bff7c68eb549907546b66ca6f8
Merge: a4e8f9450 12258bbb9
Author: David Goulet 
Date:   Tue Jul 3 13:31:08 2018 -0400

Merge branch 'maint-0.3.1' into maint-0.3.2




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] test: hs-v3 desc has arrived unit test

2018-09-20 Thread nickm
commit cb81a69f90c82c2c2a5b41b80eadf50be5e8193d
Author: David Goulet 
Date:   Wed Sep 19 09:55:57 2018 -0400

test: hs-v3 desc has arrived unit test

That unit test makes sure we don't have pending SOCK request if the 
descriptor
turns out to be unusable.

Part of #27410.

Signed-off-by: David Goulet 
---
 src/feature/hs/hs_client.c |   2 +-
 src/feature/hs/hs_client.h |   2 +
 src/test/test_hs_client.c  | 117 +
 3 files changed, 120 insertions(+), 1 deletion(-)

diff --git a/src/feature/hs/hs_client.c b/src/feature/hs/hs_client.c
index fa7c78c8f..563f6c6b3 100644
--- a/src/feature/hs/hs_client.c
+++ b/src/feature/hs/hs_client.c
@@ -247,7 +247,7 @@ close_all_socks_conns_waiting_for_desc(const 
ed25519_public_key_t *identity_pk,
 
 /* Find all pending SOCKS connection waiting for a descriptor and retry them
  * all. This is called when the directory information changed. */
-static void
+STATIC void
 retry_all_socks_conn_waiting_for_desc(void)
 {
   smartlist_t *conns =
diff --git a/src/feature/hs/hs_client.h b/src/feature/hs/hs_client.h
index 1ba0338dc..fb4f9e9e9 100644
--- a/src/feature/hs/hs_client.h
+++ b/src/feature/hs/hs_client.h
@@ -104,6 +104,8 @@ STATIC int handle_rendezvous2(origin_circuit_t *circ, const 
uint8_t *payload,
 MOCK_DECL(STATIC hs_client_fetch_status_t,
   fetch_v3_desc, (const ed25519_public_key_t *onion_identity_pk));
 
+STATIC void retry_all_socks_conn_waiting_for_desc(void);
+
 #ifdef TOR_UNIT_TESTS
 
 STATIC digest256map_t *get_hs_client_auths_map(void);
diff --git a/src/test/test_hs_client.c b/src/test/test_hs_client.c
index c91e82ed4..a115997c7 100644
--- a/src/test/test_hs_client.c
+++ b/src/test/test_hs_client.c
@@ -523,6 +523,9 @@ mock_connection_mark_unattached_ap_(entry_connection_t 
*conn, int endreason,
   (void) line;
   (void) file;
   conn->edge_.end_reason = endreason;
+  /* This function ultimately will flag this so make sure we do also in the
+   * MOCK one so we can assess closed connections vs open ones. */
+  conn->edge_.base_.marked_for_close = 1;
 }
 
 static void
@@ -771,6 +774,117 @@ test_config_client_authorization(void *arg)
   UNMOCK(check_private_dir);
 }
 
+static entry_connection_t *
+helper_build_socks_connection(const ed25519_public_key_t *service_pk,
+  int conn_state)
+{
+  entry_connection_t *socks = entry_connection_new(CONN_TYPE_AP, AF_INET);
+  ENTRY_TO_EDGE_CONN(socks)->hs_ident = hs_ident_edge_conn_new(service_pk);
+  TO_CONN(ENTRY_TO_EDGE_CONN(socks))->state = conn_state;
+  smartlist_add(get_connection_array(), >edge_.base_);
+  return socks;
+}
+
+static void
+test_desc_has_arrived_cleanup(void *arg)
+{
+  /* The goal of this test is to make sure we clean up everything in between
+   * two descriptors from the same .onion. Because intro points can change
+   * from one descriptor to another, once we received a new descriptor, we
+   * need to cleanup the remaining circuits so they aren't used or selected
+   * when establishing a connection with the newly stored descriptor.
+   *
+   * This test was created because of #27410. */
+
+  int ret;
+  char *desc_str = NULL;
+  hs_descriptor_t *desc = NULL;
+  const hs_descriptor_t *cached_desc;
+  ed25519_keypair_t signing_kp;
+  entry_connection_t *socks1 = NULL, *socks2 = NULL;
+  hs_ident_dir_conn_t hs_dir_ident;
+
+  (void) arg;
+
+  hs_init();
+
+  MOCK(networkstatus_get_live_consensus,
+   mock_networkstatus_get_live_consensus);
+  MOCK(connection_mark_unattached_ap_,
+   mock_connection_mark_unattached_ap_);
+  MOCK(router_have_minimum_dir_info,
+   mock_router_have_minimum_dir_info_true);
+
+  /* Set consensus time before our time so the cache lookup can always
+   * validate that the entry is not expired. */
+  parse_rfc1123_time("Sat, 26 Oct 1985 13:00:00 UTC", _ns.valid_after);
+  parse_rfc1123_time("Sat, 26 Oct 1985 14:00:00 UTC", _ns.fresh_until);
+  parse_rfc1123_time("Sat, 26 Oct 1985 16:00:00 UTC", _ns.valid_until);
+
+  /* Build a descriptor for a specific .onion. */
+  ret = ed25519_keypair_generate(_kp, 0);
+  tt_int_op(ret, OP_EQ, 0);
+  desc = hs_helper_build_hs_desc_with_ip(_kp);
+  tt_assert(desc);
+  ret = hs_desc_encode_descriptor(desc, _kp, NULL, _str);
+  tt_int_op(ret, OP_EQ, 0);
+
+  /* Store in the client cache. */
+  ret = hs_cache_store_as_client(desc_str, _kp.pubkey);
+  tt_int_op(ret, OP_EQ, 0);
+  cached_desc = hs_cache_lookup_as_client(_kp.pubkey);
+  tt_assert(cached_desc);
+  hs_helper_desc_equal(desc, cached_desc);
+
+  /* Create two SOCKS connection for the same .onion both in the waiting for a
+   * descriptor state. */
+  socks1 = helper_build_socks_connection(_kp.pubkey,
+ AP_CONN_STATE_RENDDESC_WAIT);
+  tt_assert(socks1);
+  socks2 = helper_build_socks_connection(_kp.pubkey,
+ AP_CONN_STATE_RENDDESC_WAIT);
+  tt_assert(socks2);
+
+  /* Now, we'll make 

[tor-commits] [tor/master] hs-v3: Close all SOCKS request on descriptor failure

2018-09-20 Thread nickm
commit f4f809fe3dc45ce72b4ccfb891eb715a8b330675
Author: David Goulet 
Date:   Wed Sep 19 10:56:15 2018 -0400

hs-v3: Close all SOCKS request on descriptor failure

Client side, when a descriptor is finally fetched and stored in the cache, 
we
then go over all pending SOCKS request for that descriptor. If it turns out
that the intro points are unusable, we close the first SOCKS request but not
the others for the same .onion.

This commit makes it that we'll close all SOCKS requests so we don't let
hanging the other ones.

It also fixes another bug which is having a SOCKS connection in 
RENDDESC_WAIT
state but with a descriptor in the cache. At some point, tor will expire the
intro failure cache which will make that descriptor usable again. When
retrying all SOCKS connection (retry_all_socks_conn_waiting_for_desc()), we
won't end up in the code path where we have already the descriptor for a
pending request causing a BUG().

Bottom line is that we should never have pending requests (waiting for a
descriptor) with that descriptor in the cache (even if unusable).

Fixees #27410.

Signed-off-by: David Goulet 
---
 changes/ticket27410| 5 +
 src/feature/hs/hs_client.c | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/changes/ticket27410 b/changes/ticket27410
new file mode 100644
index 0..a21fdde58
--- /dev/null
+++ b/changes/ticket27410
@@ -0,0 +1,5 @@
+  o Minor bugfixes (hidden service v3):
+- Close all SOCKS request (for the same .onion) if the newly fetched
+  descriptor is unusable. Before that, we would close only the first one
+  leaving the other hanging and let to time out by themselves. Fixes bug
+  27410; bugfix on 0.3.2.1-alpha.
diff --git a/src/feature/hs/hs_client.c b/src/feature/hs/hs_client.c
index a6384b87a..fa7c78c8f 100644
--- a/src/feature/hs/hs_client.c
+++ b/src/feature/hs/hs_client.c
@@ -1688,7 +1688,7 @@ hs_client_desc_has_arrived(const hs_ident_dir_conn_t 
*ident)
   /* We are unable to use the descriptor so remove the directory request
* from the cache so the next connection can try again. */
   note_connection_attempt_succeeded(edge_conn->hs_ident);
-  goto end;
+  continue;
 }
 
 log_info(LD_REND, "Descriptor has arrived. Launching circuits.");



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/https_everywhere_completed] Update translations for https_everywhere_completed

2018-09-20 Thread translation
commit d53f3fa690f8cd5f4e97054ae4c4d6e31d28a0a5
Author: Translation commit bot 
Date:   Thu Sep 20 20:15:33 2018 +

Update translations for https_everywhere_completed
---
 es/https-everywhere.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/es/https-everywhere.dtd b/es/https-everywhere.dtd
index 0f94a15a4..e546128c9 100644
--- a/es/https-everywhere.dtd
+++ b/es/https-everywhere.dtd
@@ -18,7 +18,7 @@
 
 
 
-
+
 
 
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/https_everywhere] Update translations for https_everywhere

2018-09-20 Thread translation
commit b5e9c5162f277bee83825a79f9f0a6457c96e720
Author: Translation commit bot 
Date:   Thu Sep 20 20:15:26 2018 +

Update translations for https_everywhere
---
 es/https-everywhere.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/es/https-everywhere.dtd b/es/https-everywhere.dtd
index 0f94a15a4..e546128c9 100644
--- a/es/https-everywhere.dtd
+++ b/es/https-everywhere.dtd
@@ -18,7 +18,7 @@
 
 
 
-
+
 
 
 

___
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

2018-09-20 Thread translation
commit 8b45bfe8ad036cda6817a045a030d004a4a4b8ec
Author: Translation commit bot 
Date:   Thu Sep 20 19:48:08 2018 +

Update translations for torbutton-abouttbupdatedtd
---
 es/abouttbupdate.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/es/abouttbupdate.dtd b/es/abouttbupdate.dtd
index 17f354cbb..b50fe7abd 100644
--- a/es/abouttbupdate.dtd
+++ b/es/abouttbupdate.dtd
@@ -6,5 +6,5 @@
 
 
 
-
+
 

___
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

2018-09-20 Thread translation
commit a4913d47975c72c2c7337aa93c4bedcaa5fcf17a
Author: Translation commit bot 
Date:   Thu Sep 20 19:48:12 2018 +

Update translations for torbutton-abouttbupdatedtd_completed
---
 es/abouttbupdate.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/es/abouttbupdate.dtd b/es/abouttbupdate.dtd
index 17f354cbb..b50fe7abd 100644
--- a/es/abouttbupdate.dtd
+++ b/es/abouttbupdate.dtd
@@ -6,5 +6,5 @@
 
 
 
-
+
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/liveusb-creator] Update translations for liveusb-creator

2018-09-20 Thread translation
commit 25c7577601e8942f4c47c42e740242c0fe8c8c8f
Author: Translation commit bot 
Date:   Thu Sep 20 19:45:40 2018 +

Update translations for liveusb-creator
---
 es/es.po | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/es/es.po b/es/es.po
index d376a4da4..7323670f3 100644
--- a/es/es.po
+++ b/es/es.po
@@ -3,7 +3,7 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Adolfo Jayme-Barrientos, 2014
+# Adolfo Jayme Barrientos, 2014
 # Adrián Sandí , 2013
 # dark_yoshi , 2014
 # BL , 2014
@@ -18,13 +18,14 @@
 # strel, 2013-2017
 # strel, 2012-2013
 # SubMaix , 2015
+# Vicente Parra , 2018
 msgid ""
 msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2018-09-04 09:36+0200\n"
-"PO-Revision-Date: 2018-09-10 08:10+\n"
-"Last-Translator: Emma Peel\n"
+"PO-Revision-Date: 2018-09-20 19:33+\n"
+"Last-Translator: Vicente Parra \n"
 "Language-Team: Spanish 
(http://www.transifex.com/otf/torproject/language/es/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -334,7 +335,7 @@ msgstr "Actualizar"
 
 #: ../tails_installer/gui.py:469
 msgid "Manual Upgrade Instructions"
-msgstr "Manual de Instrucciones de Actualización a nueva versión"
+msgstr "Manual de Instrucciones para la Actualización a nueva versión"
 
 #: ../tails_installer/gui.py:471
 msgid "https://tails.boum.org/upgrade/;
@@ -394,7 +395,7 @@ msgstr "El dispositivo \"%(pretty_name)s\" es demasiado 
pequeño para instalar T
 msgid ""
 "To upgrade device \"%(pretty_name)s\" from this Tails, you need to use a 
downloaded Tails ISO image:\n"
 "https://tails.boum.org/install/download;
-msgstr "Para actualizar \"%(pretty_name)s\" desde este Tails, necesitas usar 
una imagen descargadaa de ISO Tails:\nhttps://tails.boum.org/install/download;
+msgstr "Para actualizar \"%(pretty_name)s\" desde este Tails, necesitas usar 
una imagen descargada del ISO de 
Tails:\nhttps://tails.boum.org/install/download;
 
 #: ../tails_installer/gui.py:625
 msgid "An error happened while installing Tails"

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/https_everywhere_completed] Update translations for https_everywhere_completed

2018-09-20 Thread translation
commit 5e757bb6d88b5bc38e9af5a367308de6a84c771c
Author: Translation commit bot 
Date:   Thu Sep 20 19:45:34 2018 +

Update translations for https_everywhere_completed
---
 es/https-everywhere.dtd | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/es/https-everywhere.dtd b/es/https-everywhere.dtd
index 6a18eaf3e..0f94a15a4 100644
--- a/es/https-everywhere.dtd
+++ b/es/https-everywhere.dtd
@@ -18,7 +18,7 @@
 
 
 
-
+
 
 
 
@@ -39,8 +39,8 @@
 
 
 
-
-
+
+
 
 
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/liveusb-creator_completed] Update translations for liveusb-creator_completed

2018-09-20 Thread translation
commit 19ecdbb9ec5a5d558b27be6780d86226107e4232
Author: Translation commit bot 
Date:   Thu Sep 20 19:45:46 2018 +

Update translations for liveusb-creator_completed
---
 es/es.po | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/es/es.po b/es/es.po
index d376a4da4..7323670f3 100644
--- a/es/es.po
+++ b/es/es.po
@@ -3,7 +3,7 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Adolfo Jayme-Barrientos, 2014
+# Adolfo Jayme Barrientos, 2014
 # Adrián Sandí , 2013
 # dark_yoshi , 2014
 # BL , 2014
@@ -18,13 +18,14 @@
 # strel, 2013-2017
 # strel, 2012-2013
 # SubMaix , 2015
+# Vicente Parra , 2018
 msgid ""
 msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2018-09-04 09:36+0200\n"
-"PO-Revision-Date: 2018-09-10 08:10+\n"
-"Last-Translator: Emma Peel\n"
+"PO-Revision-Date: 2018-09-20 19:33+\n"
+"Last-Translator: Vicente Parra \n"
 "Language-Team: Spanish 
(http://www.transifex.com/otf/torproject/language/es/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -334,7 +335,7 @@ msgstr "Actualizar"
 
 #: ../tails_installer/gui.py:469
 msgid "Manual Upgrade Instructions"
-msgstr "Manual de Instrucciones de Actualización a nueva versión"
+msgstr "Manual de Instrucciones para la Actualización a nueva versión"
 
 #: ../tails_installer/gui.py:471
 msgid "https://tails.boum.org/upgrade/;
@@ -394,7 +395,7 @@ msgstr "El dispositivo \"%(pretty_name)s\" es demasiado 
pequeño para instalar T
 msgid ""
 "To upgrade device \"%(pretty_name)s\" from this Tails, you need to use a 
downloaded Tails ISO image:\n"
 "https://tails.boum.org/install/download;
-msgstr "Para actualizar \"%(pretty_name)s\" desde este Tails, necesitas usar 
una imagen descargadaa de ISO Tails:\nhttps://tails.boum.org/install/download;
+msgstr "Para actualizar \"%(pretty_name)s\" desde este Tails, necesitas usar 
una imagen descargada del ISO de 
Tails:\nhttps://tails.boum.org/install/download;
 
 #: ../tails_installer/gui.py:625
 msgid "An error happened while installing Tails"

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/https_everywhere] Update translations for https_everywhere

2018-09-20 Thread translation
commit 27734c4ed8896234532804c43848a5186f877ed9
Author: Translation commit bot 
Date:   Thu Sep 20 19:45:27 2018 +

Update translations for https_everywhere
---
 es/https-everywhere.dtd | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/es/https-everywhere.dtd b/es/https-everywhere.dtd
index 6a18eaf3e..0f94a15a4 100644
--- a/es/https-everywhere.dtd
+++ b/es/https-everywhere.dtd
@@ -18,7 +18,7 @@
 
 
 
-
+
 
 
 
@@ -39,8 +39,8 @@
 
 
 
-
-
+
+
 
 
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Remove another needless typedef

2018-09-20 Thread nickm
commit 1da9741bca8b16e8c5f15d91f646ee1ea4985750
Author: Nick Mathewson 
Date:   Thu Sep 20 14:34:44 2018 -0400

Remove another needless typedef
---
 src/or/rephist.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/or/rephist.h b/src/or/rephist.h
index 837bb8d04..f4bcd8ea0 100644
--- a/src/or/rephist.h
+++ b/src/or/rephist.h
@@ -117,9 +117,7 @@ extern uint32_t rephist_total_num;
 #ifdef TOR_UNIT_TESTS
 extern int onion_handshakes_requested[MAX_ONION_HANDSHAKE_TYPE+1];
 extern int onion_handshakes_assigned[MAX_ONION_HANDSHAKE_TYPE+1];
-typedef struct bw_array_t bw_array_t;
 extern bw_array_t *write_array;
 #endif
 
 #endif
-



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Fix a pair of errors in bug23512

2018-09-20 Thread nickm
commit 72e30f26ec291baba202b71e121c3211af2db371
Author: Nick Mathewson 
Date:   Thu Sep 20 14:18:09 2018 -0400

Fix a pair of errors in bug23512
---
 src/or/rephist.c  | 5 ++---
 src/test/test_relay.c | 5 ++---
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/or/rephist.c b/src/or/rephist.c
index 211480284..20f9148f0 100644
--- a/src/or/rephist.c
+++ b/src/or/rephist.c
@@ -1211,7 +1211,7 @@ rep_hist_load_mtbf_data(time_t now)
 /** Structure to track bandwidth use, and remember the maxima for a given
  * time period.
  */
-typedef struct bw_array_t {
+struct bw_array_t {
   /** Observation array: Total number of bytes transferred in each of the last
* NUM_SECS_ROLLING_MEASURE seconds. This is used as a circular array. */
   uint64_t obs[NUM_SECS_ROLLING_MEASURE];
@@ -1238,7 +1238,7 @@ typedef struct bw_array_t {
   /** Circular array of the total bandwidth usage for the last NUM_TOTALS
* periods */
   uint64_t totals[NUM_TOTALS];
-} bw_array_t;
+};
 
 /** Shift the current period of b forward by one. */
 STATIC void
@@ -3297,4 +3297,3 @@ rep_hist_free_all(void)
   tor_assert_nonfatal(rephist_total_alloc == 0);
   tor_assert_nonfatal_once(rephist_total_num == 0);
 }
-
diff --git a/src/test/test_relay.c b/src/test/test_relay.c
index 1ec538395..57dcb2406 100644
--- a/src/test/test_relay.c
+++ b/src/test/test_relay.c
@@ -111,7 +111,7 @@ test_relay_close_circuit(void *arg)
   tt_int_op(new_count, OP_EQ, old_count + 1);
 
   /* Ensure our write totals are 0 */
-  tt_int_op(find_largest_max(write_array), OP_EQ, 0);
+  tt_u64_op(find_largest_max(write_array), OP_EQ, 0);
 
   /* Mark the circuit for close */
   circuit_mark_for_close(TO_CIRCUIT(orcirc), 0);
@@ -120,7 +120,7 @@ test_relay_close_circuit(void *arg)
   advance_obs(write_array);
   commit_max(write_array);
   /* Check for two cells plus overhead */
-  tt_int_op(find_largest_max(write_array), OP_EQ,
+  tt_u64_op(find_largest_max(write_array), OP_EQ,
  2*(get_cell_network_size(nchan->wide_circ_ids)
 +TLS_PER_CELL_OVERHEAD));
 
@@ -233,4 +233,3 @@ struct testcase_t relay_tests[] = {
 TT_FORK, NULL, NULL },
   END_OF_TESTCASES
 };
-



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Use the correct macro to detect an invalid socket in tortls_nss.c

2018-09-20 Thread nickm
commit d6c564e09ab491765b6773cc45320bc0f605fcfe
Author: Nick Mathewson 
Date:   Thu Sep 20 12:55:31 2018 -0400

Use the correct macro to detect an invalid socket in tortls_nss.c

Fixes bug 27782; bugfix on 0.3.5.1-alpha
---
 changes/bug27782 | 4 
 src/lib/tls/tortls_nss.c | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/changes/bug27782 b/changes/bug27782
new file mode 100644
index 0..3564c34b6
--- /dev/null
+++ b/changes/bug27782
@@ -0,0 +1,4 @@
+  o Minor bugfixes (NSS):
+- Correctly detect failure to open a dummy TCP socket when
+  stealing ownership of an fd from the NSS layer. Fixes bug 27782;
+  bugfix on 0.3.5.1-alpha.
diff --git a/src/lib/tls/tortls_nss.c b/src/lib/tls/tortls_nss.c
index 4e7227b12..e1e6cc501 100644
--- a/src/lib/tls/tortls_nss.c
+++ b/src/lib/tls/tortls_nss.c
@@ -444,7 +444,7 @@ tor_tls_release_socket(tor_tls_t *tls)
*/
   tor_socket_t sock =
 tor_open_socket_nonblocking(AF_INET, SOCK_STREAM, IPPROTO_TCP);
-  if (!sock) {
+  if (! SOCKET_OK(sock)) {
 log_warn(LD_NET, "Out of sockets when trying to shut down an NSS "
  "connection");
 return;



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Fix an NSS socket leak-on-error found by dgoulet

2018-09-20 Thread nickm
commit 4e2028152d31e27c44d0c2ef31dca829c6ae2d2e
Author: Nick Mathewson 
Date:   Thu Sep 20 13:53:04 2018 -0400

Fix an NSS socket leak-on-error found by dgoulet
---
 src/lib/tls/tortls_nss.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/tls/tortls_nss.c b/src/lib/tls/tortls_nss.c
index e1e6cc501..462cd5b0f 100644
--- a/src/lib/tls/tortls_nss.c
+++ b/src/lib/tls/tortls_nss.c
@@ -452,6 +452,7 @@ tor_tls_release_socket(tor_tls_t *tls)
 
   PRFileDesc *tcp = PR_GetIdentitiesLayer(tls->ssl, PR_NSPR_IO_LAYER);
   if (BUG(! tcp)) {
+tor_close_socket(sock);
 return;
   }
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Fix socket accounting with ORConn sockets.

2018-09-20 Thread nickm
commit f25323fe3f64fbfee0e1c2614d0e13befe283b88
Author: Nick Mathewson 
Date:   Thu Sep 20 12:52:29 2018 -0400

Fix socket accounting with ORConn sockets.

When we close a socket via tor_tls_free(), we previously had no way
for our socket accounting logic to learn about it.  This meant that
the socket accounting code would think we had run out of sockets,
and freak out.

Fixes bug 27795; bugfix on 0.3.5.1-alpha.
---
 changes/bug27795   | 5 +
 src/core/mainloop/connection.c | 1 +
 2 files changed, 6 insertions(+)

diff --git a/changes/bug27795 b/changes/bug27795
new file mode 100644
index 0..43bb1ba16
--- /dev/null
+++ b/changes/bug27795
@@ -0,0 +1,5 @@
+  o Major bugfixes (socket accounting):
+- In our socket accounting code, count a socket as closed even
+  when it is closed indirectly by the TLS layer. Previously, we
+  would count these sockets as still in use, and incorrectly believe that
+  we had run out of sockets. Fixes bug 27795; bugfix on 0.3.5.1-alpha.
diff --git a/src/core/mainloop/connection.c b/src/core/mainloop/connection.c
index 0c3abc844..b0cb5322c 100644
--- a/src/core/mainloop/connection.c
+++ b/src/core/mainloop/connection.c
@@ -646,6 +646,7 @@ connection_free_minimal(connection_t *conn)
   } else {
 /* The tor_tls_free() call below will close the socket; we must tell
  * the code below not to close it a second time. */
+tor_release_socket_ownership(conn->s);
 conn->s = TOR_INVALID_SOCKET;
   }
   tor_tls_free(or_conn->tls);



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Add a tor_release_socket_ownership() function.

2018-09-20 Thread nickm
commit 1c1e84281db6a5a8cd2a66c63481e4df316c44d5
Author: Nick Mathewson 
Date:   Thu Sep 20 12:46:47 2018 -0400

Add a tor_release_socket_ownership() function.
---
 src/lib/net/socket.c | 88 +++-
 src/lib/net/socket.h |  1 +
 2 files changed, 54 insertions(+), 35 deletions(-)

diff --git a/src/lib/net/socket.c b/src/lib/net/socket.c
index 06421b080..cd7c9685c 100644
--- a/src/lib/net/socket.c
+++ b/src/lib/net/socket.c
@@ -142,41 +142,6 @@ tor_close_socket_simple(tor_socket_t s)
   return r;
 }
 
-/** As tor_close_socket_simple(), but keeps track of the number
- * of open sockets. Returns 0 on success, -1 on failure. */
-MOCK_IMPL(int,
-tor_close_socket,(tor_socket_t s))
-{
-  int r = tor_close_socket_simple(s);
-
-  socket_accounting_lock();
-#ifdef DEBUG_SOCKET_COUNTING
-  if (s > max_socket || ! bitarray_is_set(open_sockets, s)) {
-log_warn(LD_BUG, "Closing a socket (%d) that wasn't returned by tor_open_"
- "socket(), or that was already closed or something.", s);
-  } else {
-tor_assert(open_sockets && s <= max_socket);
-bitarray_clear(open_sockets, s);
-  }
-#endif /* defined(DEBUG_SOCKET_COUNTING) */
-  if (r == 0) {
---n_sockets_open;
-  } else {
-#ifdef _WIN32
-if (r != WSAENOTSOCK)
-  --n_sockets_open;
-#else
-if (r != EBADF)
-  --n_sockets_open; // LCOV_EXCL_LINE -- EIO and EINTR too hard to force.
-#endif /* defined(_WIN32) */
-r = -1;
-  }
-
-  tor_assert_nonfatal(n_sockets_open >= 0);
-  socket_accounting_unlock();
-  return r;
-}
-
 /** @{ */
 #ifdef DEBUG_SOCKET_COUNTING
 /** Helper: if DEBUG_SOCKET_COUNTING is enabled, remember that s is
@@ -201,11 +166,50 @@ mark_socket_open(tor_socket_t s)
   }
   bitarray_set(open_sockets, s);
 }
+static inline void
+mark_socket_closed(tor_socket_t s)
+{
+  if (s > max_socket || ! bitarray_is_set(open_sockets, s)) {
+log_warn(LD_BUG, "Closing a socket (%d) that wasn't returned by tor_open_"
+ "socket(), or that was already closed or something.", s);
+  } else {
+tor_assert(open_sockets && s <= max_socket);
+bitarray_clear(open_sockets, s);
+  }
+}
 #else /* !(defined(DEBUG_SOCKET_COUNTING)) */
 #define mark_socket_open(s) ((void) (s))
+#define mark_socket_closed(s) ((void) (s))
 #endif /* defined(DEBUG_SOCKET_COUNTING) */
 /** @} */
 
+/** As tor_close_socket_simple(), but keeps track of the number
+ * of open sockets. Returns 0 on success, -1 on failure. */
+MOCK_IMPL(int,
+tor_close_socket,(tor_socket_t s))
+{
+  int r = tor_close_socket_simple(s);
+
+  socket_accounting_lock();
+  mark_socket_closed(s);
+  if (r == 0) {
+--n_sockets_open;
+  } else {
+#ifdef _WIN32
+if (r != WSAENOTSOCK)
+  --n_sockets_open;
+#else
+if (r != EBADF)
+  --n_sockets_open; // LCOV_EXCL_LINE -- EIO and EINTR too hard to force.
+#endif /* defined(_WIN32) */
+r = -1;
+  }
+
+  tor_assert_nonfatal(n_sockets_open >= 0);
+  socket_accounting_unlock();
+  return r;
+}
+
 /** As socket(), but counts the number of open sockets. */
 MOCK_IMPL(tor_socket_t,
 tor_open_socket,(int domain, int type, int protocol))
@@ -307,6 +311,20 @@ tor_take_socket_ownership(tor_socket_t s)
   socket_accounting_unlock();
 }
 
+/**
+ * For socket accounting: declare that we are no longer the owner of the
+ * socket s. This will prevent us from overallocating sockets, and
+ * prevent us from asserting later when we close the socket s.
+ */
+void
+tor_release_socket_ownership(tor_socket_t s)
+{
+  socket_accounting_lock();
+  --n_sockets_open;
+  mark_socket_closed(s);
+  socket_accounting_unlock();
+}
+
 /** As accept(), but counts the number of open sockets. */
 tor_socket_t
 tor_accept_socket(tor_socket_t sockfd, struct sockaddr *addr, socklen_t *len)
diff --git a/src/lib/net/socket.h b/src/lib/net/socket.h
index 5b7d6dbbc..2b87441fc 100644
--- a/src/lib/net/socket.h
+++ b/src/lib/net/socket.h
@@ -23,6 +23,7 @@ struct sockaddr;
 int tor_close_socket_simple(tor_socket_t s);
 MOCK_DECL(int, tor_close_socket, (tor_socket_t s));
 void tor_take_socket_ownership(tor_socket_t s);
+void tor_release_socket_ownership(tor_socket_t s);
 tor_socket_t tor_open_socket_with_extensions(
int domain, int type, int protocol,
int cloexec, int nonblock);



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Release ownership of the dummy socket that tortls_nss.c will close

2018-09-20 Thread nickm
commit 62b709bc26fe628777d2af4becdf08fd8adf1140
Author: Nick Mathewson 
Date:   Thu Sep 20 12:53:39 2018 -0400

Release ownership of the dummy socket that tortls_nss.c will close

Related to #27795 -- since NSS will close the socket, we must not
count it as owned by Tor.
---
 src/lib/tls/tortls_nss.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/lib/tls/tortls_nss.c b/src/lib/tls/tortls_nss.c
index 88d2be8ce..4e7227b12 100644
--- a/src/lib/tls/tortls_nss.c
+++ b/src/lib/tls/tortls_nss.c
@@ -456,6 +456,9 @@ tor_tls_release_socket(tor_tls_t *tls)
   }
 
   PR_ChangeFileDescNativeHandle(tcp, sock);
+  /* Tell our socket accounting layer that we don't own this socket any more:
+   * NSS is about to free it for us. */
+  tor_release_socket_ownership(sock);
 }
 
 void



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/torbutton-browseronboardingproperties] Update translations for torbutton-browseronboardingproperties

2018-09-20 Thread translation
commit 366a5cf296e4f526020c83f19c5ef989c54f712d
Author: Translation commit bot 
Date:   Thu Sep 20 17:48:08 2018 +

Update translations for torbutton-browseronboardingproperties
---
 es/browserOnboarding.properties | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/es/browserOnboarding.properties b/es/browserOnboarding.properties
index 70037a050..2e92c3520 100644
--- a/es/browserOnboarding.properties
+++ b/es/browserOnboarding.properties
@@ -24,12 +24,12 @@ onboarding.tour-tor-circuit-display.button=Ver mi recorrido
 
 onboarding.tour-tor-security=Seguridad
 onboarding.tour-tor-security.title=Elige tu experiencia.
-onboarding.tour-tor-security.description=We also provide you with additional 
settings for bumping up your browser security. Our Security Settings allow you 
to block elements that could be used to attack your computer. Click below to 
see what the different options do.
+onboarding.tour-tor-security.description=También le proporcionamos 
configuraciones adicionales para aumentar la seguridad de su navegador. Nuestra 
Configuración de Seguridad le permite bloquear elementos que podrían usarse 
para atacar su computadora. Haga clic a continuación para ver lo que hacen las 
diferentes opciones.
 onboarding.tour-tor-security.button=Revisar configuración
 
 onboarding.tour-tor-expect-differences=Consejos de experiencia
 onboarding.tour-tor-expect-differences.title=Espera algunas diferencias.
-onboarding.tour-tor-expect-differences.description=With all the security and 
privacy features provided by Tor, your experience while browsing the internet 
may be a little different. Things may be a bit slower, and depending on your 
security level, some elements may not work or load. You may also be asked to 
prove you are a human and not a robot.
+onboarding.tour-tor-expect-differences.description=Con todas las 
características de seguridad y privacidad proporcionadas por Tor, su 
experiencia mientras navega por Internet puede ser un poco diferente. Las cosas 
pueden ser un poco más lentas, y dependiendo de su nivel de seguridad, algunos 
elementos pueden no funcionar o cargar. También se le puede pedir que 
demuestre que usted es un ser humano y no un robot.
 onboarding.tour-tor-expect-differences.button=Ver Preguntas Más Frecuentes
 
 onboarding.tour-tor-onion-services=Servicios onion
@@ -44,8 +44,8 @@ onboarding.tor-circuit-display.one-of-three=1 de 3
 onboarding.tor-circuit-display.two-of-three=2 de 3
 onboarding.tor-circuit-display.three-of-three=3 de 3
 
-onboarding.tor-circuit-display.intro.title=How do circuits work?
-onboarding.tor-circuit-display.intro.msg=Circuits are made up of randomly 
assigned relays, which are computers around the world configured to forward Tor 
traffic. Circuits allow you to browse privately and to connect to onion 
services.
+onboarding.tor-circuit-display.intro.title=¿Cómo funcionan los circuitos?
+onboarding.tor-circuit-display.intro.msg=Los circuitos están formados por 
repetidores asignados aleatoriamente, que son computadoras de todo el mundo 
configuradas para reenviar el tráfico de Tor. Los circuitos le permiten 
navegar de forma privada y conectarse a los servicios Onion.
 
 onboarding.tor-circuit-display.diagram.title=Visualización del circuito
 onboarding.tor-circuit-display.diagram.msg=Estos diagramas muestran los 
repetidores que crean el circuito para esta página web. Para prevenir la 
vinculación de la actividad a través de diferentes sitios, cada página web 
tiene un circuito diferente.

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/torbutton-browseronboardingproperties] Update translations for torbutton-browseronboardingproperties

2018-09-20 Thread translation
commit 7781b58ca716fe7537daab586914345c8ac54bd5
Author: Translation commit bot 
Date:   Thu Sep 20 17:18:10 2018 +

Update translations for torbutton-browseronboardingproperties
---
 es/browserOnboarding.properties | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/es/browserOnboarding.properties b/es/browserOnboarding.properties
index 6f2fbdd09..70037a050 100644
--- a/es/browserOnboarding.properties
+++ b/es/browserOnboarding.properties
@@ -33,7 +33,7 @@ onboarding.tour-tor-expect-differences.description=With all 
the security and pri
 onboarding.tour-tor-expect-differences.button=Ver Preguntas Más Frecuentes
 
 onboarding.tour-tor-onion-services=Servicios onion
-onboarding.tour-tor-onion-services.title=Be extra protected.
+onboarding.tour-tor-onion-services.title=Extra protéjase .
 onboarding.tour-tor-onion-services.description=Onion services are sites that 
end with a .onion that provide extra protections to publishers and visitors, 
including added safeguards against censorship. Onion services allow anyone to 
provide content and services anonymously. Click below to visit the DuckDuckGo 
onion site.
 onboarding.tour-tor-onion-services.button=Visit an Onion
 

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 3f5c3040d5c10f831ecb4f5de51caea06189e14c
Author: Translation commit bot 
Date:   Thu Sep 20 15:48:51 2018 +

Update translations for support-portal
---
 contents+el.po | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/contents+el.po b/contents+el.po
index 9032ab9d4..6df4cfec1 100644
--- a/contents+el.po
+++ b/contents+el.po
@@ -533,7 +533,7 @@ msgstr ""
 #: http//localhost/misc/misc-10/
 #: (content/misc/misc-10/contents+en.lrquestion.description)
 msgid "No, the Tor Project does not offer hosting services."
-msgstr ""
+msgstr "Όχι, το Tor Project δεν προσφέρει υπηρεσίες 
hosting."
 
 #: http//localhost/tbb/tbb-31/
 #: (content/tbb/tbb-31/contents+en.lrquestion.description)
@@ -647,6 +647,8 @@ msgid ""
 "If law enforcement becomes interested in traffic from your exit relay, it's "
 "possible that officers will seize your computer."
 msgstr ""
+"Αν οι αρχές ενδιαφερθούν για την κίνηση 
από τον κόμβο εξόδου σας, είναι "
+"πιθανό αστυνομικοί να κατασχέσουν τον υ
πολογιστή σας."
 
 #: http//localhost/censorship/censorship-7/
 #: (content/censorship/censorship-7/contents+en.lrquestion.description)
@@ -668,6 +670,8 @@ msgid ""
 "If you are still unable to connect to the onion service, please try again "
 "later."
 msgstr ""
+"Αν εξακολουθείτε να μην μπορείτε να συ
νδεθείτε με την υπηρεσία onion, "
+"δοκιμάστε ξανά αργότερα."
 
 #: http//localhost/tormobile/tormobile-3/
 #: (content/tormobile/tormobile-3/contents+en.lrquestion.description)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit e19362857baa131946eb72e98efe11b575843032
Author: Translation commit bot 
Date:   Thu Sep 20 15:18:57 2018 +

Update translations for support-portal
---
 contents+el.po | 5 +
 1 file changed, 5 insertions(+)

diff --git a/contents+el.po b/contents+el.po
index 3549e23dc..9032ab9d4 100644
--- a/contents+el.po
+++ b/contents+el.po
@@ -511,6 +511,9 @@ msgid ""
 "you're connecting to the Tor network, though they won't know what you're "
 "doing when you get there."
 msgstr ""
+"Ωστόσο, ο πάροχος υπηρεσιών ή οι 
διαχειριστές του δικτύου σας ενδέχεται να "
+"μπορούν να δουν ότι συνδέεστε στο δίκτυο 
Tor, αν και δεν θα γνωρίζουν τι "
+"κάνετε όταν φτάσετε εκεί."
 
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
@@ -547,6 +550,8 @@ msgid ""
 "You can help improve the speed of the network by running your own relay, or "
 "encouraging others to do so."
 msgstr ""
+"Μπορείτε να βοηθήσετε στη βελτίωση της 
ταχύτητας του δικτύου λειτουργώντας "
+"το δικό σας κόμβο ή ενθαρρύνοντας άλλους 
να το κάνουν."
 
 #: http//localhost/tbb/tbb-27/
 #: (content/tbb/tbb-27/contents+en.lrquestion.description)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge branch 'split_routerlist_dirserv_v2'

2018-09-20 Thread nickm
commit bd6007d8986d851bb9e76fc2d9a72143a03f04ac
Merge: 1f377e910 b54a5e704
Author: Nick Mathewson 
Date:   Thu Sep 20 11:07:50 2018 -0400

Merge branch 'split_routerlist_dirserv_v2'

 src/app/config/config.c |5 +-
 src/core/include.am |   26 +
 src/core/mainloop/main.c|7 +
 src/core/or/channeltls.c|2 +-
 src/core/or/circuitbuild.c  |2 +-
 src/core/or/connection_or.c |3 +-
 src/core/or/policies.c  |4 +-
 src/core/or/reasons.c   |2 +-
 src/feature/client/bridges.c|2 +
 src/feature/client/entrynodes.c |2 +-
 src/feature/control/control.c   |3 +
 src/feature/control/fmt_serverstatus.c  |  103 ++
 src/feature/control/fmt_serverstatus.h  |   18 +
 src/feature/dirauth/bwauth.c|  453 +
 src/feature/dirauth/bwauth.h|   58 +
 src/feature/dirauth/dirvote.c   |7 +
 src/feature/dirauth/dirvote.h   |8 +-
 src/feature/dirauth/guardfraction.c |  333 
 src/feature/dirauth/guardfraction.h |   24 +
 src/feature/dirauth/process_descs.c |  835 +
 src/feature/dirauth/process_descs.h |   38 +
 src/feature/dirauth/reachability.c  |  205 +++
 src/feature/dirauth/reachability.h  |   36 +
 src/feature/dirauth/recommend_pkg.c |   90 +
 src/feature/dirauth/recommend_pkg.h |   17 +
 src/feature/dirauth/shared_random.c |3 +-
 src/feature/dirauth/voteflags.c |  644 +++
 src/feature/dirauth/voteflags.h |   31 +
 src/feature/dircache/directory.c|5 +
 src/feature/dircache/dirserv.c  | 3000 ++-
 src/feature/dircache/dirserv.h  |  130 --
 src/feature/hs/hs_service.c |2 +-
 src/feature/nodelist/authcert.c | 1205 +
 src/feature/nodelist/authcert.h |   60 +
 src/feature/nodelist/dirlist.c  |  421 +
 src/feature/nodelist/dirlist.h  |   47 +
 src/feature/nodelist/fmt_routerstatus.c |  253 +++
 src/feature/nodelist/fmt_routerstatus.h |   41 +
 src/feature/nodelist/microdesc.c|1 +
 src/feature/nodelist/networkstatus.c|6 +
 src/feature/nodelist/node_select.c  | 1108 
 src/feature/nodelist/node_select.h  |  102 ++
 src/feature/nodelist/nodelist.c |3 +
 src/feature/nodelist/routerlist.c   | 2779 +---
 src/feature/nodelist/routerlist.h   |  154 +-
 src/feature/nodelist/routerparse.c  |2 +-
 src/feature/relay/router.c  |3 +
 src/feature/rend/rendservice.c  |2 +-
 src/test/test_config.c  |1 +
 src/test/test_controller.c  |2 +-
 src/test/test_dir.c |   16 +-
 src/test/test_dir_handle_get.c  |2 +
 src/test/test_guardfraction.c   |5 +-
 src/test/test_routerlist.c  |3 +
 src/test/test_shared_random.c   |3 +-
 55 files changed, 6456 insertions(+), 5861 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.4] Use a slightly more accurate formula for OSX 32-bit msec conversion

2018-09-20 Thread nickm
commit 4eabc6db47fe64b6757f7a5f0e651a41f02efca3
Author: Nick Mathewson 
Date:   Fri Sep 14 08:30:24 2018 -0400

Use a slightly more accurate formula for OSX 32-bit msec conversion

We use an optimized but less accurate formula for converting coarse
time differences to milliseconds on 32-bit OSX platforms, so that we
can avoid 64-bit division.

The old numbers were off by 0.4%.  The new numbers are off by .006%.

This should make the unit tests a bit cleaner, and our tolerances a
bit closer.
---
 src/common/compat_time.c | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/common/compat_time.c b/src/common/compat_time.c
index 40847a844..f92dc09c4 100644
--- a/src/common/compat_time.c
+++ b/src/common/compat_time.c
@@ -299,11 +299,11 @@ monotime_init_internal(void)
   }
   {
 // For converting ticks to milliseconds in a 32-bit-friendly way, we
-// will first right-shift by 20, and then multiply by 20/19, since
-// (1<<20) * 19/20 is about 1e6.  We precompute a new numerate and
+// will first right-shift by 20, and then multiply by 2048/1953, since
+// (1<<20) * 1953/2048 is about 1e6.  We precompute a new numerator and
 // denominator here to avoid multiple multiplies.
-mach_time_info_msec_cvt.numer = mach_time_info.numer * 20;
-mach_time_info_msec_cvt.denom = mach_time_info.denom * 19;
+mach_time_info_msec_cvt.numer = mach_time_info.numer * 2048;
+mach_time_info_msec_cvt.denom = mach_time_info.denom * 1953;
   }
 }
 



___
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.4] Merge remote-tracking branch 'github/bug27139_034' into maint-0.3.4

2018-09-20 Thread nickm
commit 163230e2405af394ce3684dc7fdf2475bf1318b0
Merge: 2ddbaf9cd 9a90f4c6b
Author: Nick Mathewson 
Date:   Thu Sep 20 10:43:05 2018 -0400

Merge remote-tracking branch 'github/bug27139_034' into maint-0.3.4

 changes/bug27139   | 14 ++
 src/common/compat_time.c   | 22 --
 src/common/compat_time.h   |  1 +
 src/test/test_circuitmux.c | 13 +
 4 files changed, 40 insertions(+), 10 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge branch 'maint-0.3.4'

2018-09-20 Thread nickm
commit 1f377e910f89753f6e64a4f9ddc2ff9c35d1e341
Merge: 119159677 163230e24
Author: Nick Mathewson 
Date:   Thu Sep 20 10:43:08 2018 -0400

Merge branch 'maint-0.3.4'

 changes/bug27139   | 14 ++
 src/lib/time/compat_time.c | 22 --
 src/lib/time/compat_time.h |  1 +
 src/test/test_circuitmux.c | 13 +
 4 files changed, 40 insertions(+), 10 deletions(-)

diff --cc src/lib/time/compat_time.c
index d26cb6880,0..f1ddb4fdc
mode 100644,00..100644
--- a/src/lib/time/compat_time.c
+++ b/src/lib/time/compat_time.c
@@@ -1,859 -1,0 +1,869 @@@
 +/* Copyright (c) 2003-2004, Roger Dingledine
 + * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
 + * Copyright (c) 2007-2018, The Tor Project, Inc. */
 +/* See LICENSE for licensing information */
 +
 +/**
 + * \file compat_time.c
 + * \brief Portable wrappers for finding out the current time, running
 + *   timers, etc.
 + **/
 +
 +#define COMPAT_TIME_PRIVATE
 +#include "lib/time/compat_time.h"
 +
 +#include "lib/err/torerr.h"
 +#include "lib/log/log.h"
 +#include "lib/log/util_bug.h"
 +#include "lib/intmath/muldiv.h"
 +#include "lib/intmath/bits.h"
 +#include "lib/fs/winlib.h"
 +#include "lib/wallclock/timeval.h"
 +
 +#ifdef _WIN32
 +#include 
 +#include 
 +#endif
 +
 +#ifdef HAVE_SYS_TYPES_H
 +#include 
 +#endif
 +#ifdef HAVE_SYS_TIME_H
 +#include 
 +#endif
 +#ifdef HAVE_UNISTD_H
 +#include 
 +#endif
 +#ifdef TOR_UNIT_TESTS
 +#if !defined(HAVE_USLEEP) && defined(HAVE_SYS_SELECT_H)
 +/* as fallback implementation for tor_sleep_msec */
 +#include 
 +#endif
 +#endif /* defined(TOR_UNIT_TESTS) */
 +
 +#ifdef __APPLE__
 +#include 
 +#endif
 +
 +#include 
 +#include 
 +#include 
 +
 +#ifdef _WIN32
 +#undef HAVE_CLOCK_GETTIME
 +#endif
 +
 +#ifdef TOR_UNIT_TESTS
 +/** Delay for msec milliseconds.  Only used in tests. */
 +void
 +tor_sleep_msec(int msec)
 +{
 +#ifdef _WIN32
 +  Sleep(msec);
 +#elif defined(HAVE_USLEEP)
 +  sleep(msec / 1000);
 +  /* Some usleep()s hate sleeping more than 1 sec */
 +  usleep((msec % 1000) * 1000);
 +#elif defined(HAVE_SYS_SELECT_H)
 +  struct timeval tv = { msec / 1000, (msec % 1000) * 1000};
 +  select(0, NULL, NULL, NULL, );
 +#else
 +  sleep(CEIL_DIV(msec, 1000));
 +#endif /* defined(_WIN32) || ... */
 +}
 +#endif /* defined(TOR_UNIT_TESTS) */
 +
 +#define ONE_MILLION ((int64_t) (1000 * 1000))
 +#define ONE_BILLION ((int64_t) (1000 * 1000 * 1000))
 +
 +/** True iff monotime_init has been called. */
 +static int monotime_initialized = 0;
 +
 +static monotime_t initialized_at;
 +#ifdef MONOTIME_COARSE_FN_IS_DIFFERENT
 +static monotime_coarse_t initialized_at_coarse;
 +#endif
 +
 +#ifdef TOR_UNIT_TESTS
 +/** True if we are running unit tests and overriding the current monotonic
 + * time.  Note that mocked monotonic time might not be monotonic.
 + */
 +static int monotime_mocking_enabled = 0;
 +static monotime_t initialized_at_saved;
 +
 +static int64_t mock_time_nsec = 0;
 +#ifdef MONOTIME_COARSE_FN_IS_DIFFERENT
 +static int64_t mock_time_nsec_coarse = 0;
 +static monotime_coarse_t initialized_at_coarse_saved;
 +#endif
 +
 +void
 +monotime_enable_test_mocking(void)
 +{
 +  if (BUG(monotime_initialized == 0)) {
 +monotime_init();
 +  }
 +
 +  tor_assert_nonfatal(monotime_mocking_enabled == 0);
 +  monotime_mocking_enabled = 1;
 +  memcpy(_at_saved,
 + _at, sizeof(monotime_t));
 +  memset(_at, 0, sizeof(monotime_t));
 +#ifdef MONOTIME_COARSE_FN_IS_DIFFERENT
 +  memcpy(_at_coarse_saved,
 + _at_coarse, sizeof(monotime_coarse_t));
 +  memset(_at_coarse, 0, sizeof(monotime_coarse_t));
 +#endif
 +}
 +
 +void
 +monotime_disable_test_mocking(void)
 +{
 +  tor_assert_nonfatal(monotime_mocking_enabled == 1);
 +  monotime_mocking_enabled = 0;
 +
 +  memcpy(_at,
 + _at_saved, sizeof(monotime_t));
 +#ifdef MONOTIME_COARSE_FN_IS_DIFFERENT
 +  memcpy(_at_coarse,
 + _at_coarse_saved, sizeof(monotime_coarse_t));
 +#endif
 +}
 +
 +void
 +monotime_set_mock_time_nsec(int64_t nsec)
 +{
 +  tor_assert_nonfatal(monotime_mocking_enabled == 1);
 +  mock_time_nsec = nsec;
 +}
 +
 +#ifdef MONOTIME_COARSE_FN_IS_DIFFERENT
 +void
 +monotime_coarse_set_mock_time_nsec(int64_t nsec)
 +{
 +  tor_assert_nonfatal(monotime_mocking_enabled == 1);
 +  mock_time_nsec_coarse = nsec;
 +}
 +#endif /* defined(MONOTIME_COARSE_FN_IS_DIFFERENT) */
 +#endif /* defined(TOR_UNIT_TESTS) */
 +
 +/* "ratchet" functions for monotonic time. */
 +
 +#if defined(_WIN32) || defined(TOR_UNIT_TESTS)
 +
 +/** Protected by lock: last value returned by monotime_get(). */
 +static int64_t last_pctr = 0;
 +/** Protected by lock: offset we must add to monotonic time values. */
 +static int64_t pctr_offset = 0;
 +/* If we are using GetTickCount(), how many times has it rolled over? */
 +static uint32_t rollover_count = 0;
 +/* If we are using GetTickCount(), what's the last value it returned? */
 +static int64_t last_tick_count = 0;
 +
 +/** Helper for windows: Called with a sequence of times that are 

[tor-commits] [tor/release-0.3.4] Make circuitmux ewma timing test more tolerant on 32bit osx

2018-09-20 Thread nickm
commit 6e5e1be7375e6e8de38af1f8c2c13e35d745edea
Author: Nick Mathewson 
Date:   Fri Sep 14 08:40:10 2018 -0400

Make circuitmux ewma timing test more tolerant on 32bit osx

Since we use a 32-bit approximation for millisecond conversion here,
we can't expect so much precision.

Fixes part of bug 27139; bugfix on 0.3.4.1-alpha.
---
 src/common/compat_time.h   |  1 +
 src/test/test_circuitmux.c | 13 +
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/common/compat_time.h b/src/common/compat_time.h
index 57ab20ab1..f241aa5eb 100644
--- a/src/common/compat_time.h
+++ b/src/common/compat_time.h
@@ -196,6 +196,7 @@ monotime_coarse_diff_msec32(const monotime_coarse_t *start,
   // on a 64-bit platform, let's assume 64/64 division is cheap.
   return (int32_t) monotime_coarse_diff_msec(start, end);
 #else
+#define USING_32BIT_MSEC_HACK
   return monotime_coarse_diff_msec32_(start, end);
 #endif
 }
diff --git a/src/test/test_circuitmux.c b/src/test/test_circuitmux.c
index 14c759870..c81d53ae5 100644
--- a/src/test/test_circuitmux.c
+++ b/src/test/test_circuitmux.c
@@ -13,6 +13,8 @@
 #include "scheduler.h"
 #include "test.h"
 
+#include 
+
 /*  duplicated function from test_circuitlist.c */
 static channel_t *
 new_fake_channel(void)
@@ -103,16 +105,19 @@ test_cmux_compute_ticks(void *arg)
   monotime_coarse_set_mock_time_nsec(now);
   tick = cell_ewma_get_current_tick_and_fraction();
   tt_uint_op(tick, OP_EQ, tick_zero);
-  tt_double_op(rem, OP_GT, .14999);
-  tt_double_op(rem, OP_LT, .15001);
+#ifdef USING_32BIT_MSEC_HACK
+  const double tolerance = .0005;
+#else
+  const double tolerance = .0001;
+#endif
+  tt_double_op(fabs(rem - .15), OP_LT, tolerance);
 
   /* 25 second later and we should be in another tick. */
   now = START_NS + NS_PER_S * 25;
   monotime_coarse_set_mock_time_nsec(now);
   tick = cell_ewma_get_current_tick_and_fraction();
   tt_uint_op(tick, OP_EQ, tick_zero + 2);
-  tt_double_op(rem, OP_GT, .4);
-  tt_double_op(rem, OP_LT, .50001);
+  tt_double_op(fabs(rem - .5), OP_LT, tolerance);
 
  done:
   ;



___
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.4] Merge branch 'maint-0.3.4' into release-0.3.4

2018-09-20 Thread nickm
commit 4149b15540a763e6bee1d9aa0f7776701b925bca
Merge: 3384638c6 163230e24
Author: Nick Mathewson 
Date:   Thu Sep 20 10:43:08 2018 -0400

Merge branch 'maint-0.3.4' into release-0.3.4

 changes/bug27139   | 14 ++
 src/common/compat_time.c   | 22 --
 src/common/compat_time.h   |  1 +
 src/test/test_circuitmux.c | 13 +
 4 files changed, 40 insertions(+), 10 deletions(-)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Merge remote-tracking branch 'github/bug27139_034' into maint-0.3.4

2018-09-20 Thread nickm
commit 163230e2405af394ce3684dc7fdf2475bf1318b0
Merge: 2ddbaf9cd 9a90f4c6b
Author: Nick Mathewson 
Date:   Thu Sep 20 10:43:05 2018 -0400

Merge remote-tracking branch 'github/bug27139_034' into maint-0.3.4

 changes/bug27139   | 14 ++
 src/common/compat_time.c   | 22 --
 src/common/compat_time.h   |  1 +
 src/test/test_circuitmux.c | 13 +
 4 files changed, 40 insertions(+), 10 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.4] Changes file for the 32-bit msec conversion fixes of #27139

2018-09-20 Thread nickm
commit 9a90f4c6b42cb2c251dae74f92d4192e171442e1
Author: Nick Mathewson 
Date:   Fri Sep 14 08:49:27 2018 -0400

Changes file for the 32-bit msec conversion fixes of #27139
---
 changes/bug27139 | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/changes/bug27139 b/changes/bug27139
new file mode 100644
index 0..0d1e3b432
--- /dev/null
+++ b/changes/bug27139
@@ -0,0 +1,14 @@
+  o Minor bugfixes (32-bit OSX and iOS, timing):
+- Fix an integer overflow bug in our optimized 32-bit millisecond-
+  difference algorithm for 32-bit Apple platforms. Previously, it
+  would overflow when calculating the difference between two times
+  more than 47 days apart.  Fixes part of bug 27139; bugfix on
+  0.3.4.1-alpha.
+- Improve the precision of our 32-bit millisecond difference
+  algorithm for 32-bit Apple platforms. Fixes part of bug 27139;
+  bugfix on 0.3.4.1-alpha.
+- Relax the tolerance on the mainloop/update_time_jumps test
+  when running on 32-bit Apple platforms. Fixes part of bug 27139;
+  bugfix on 0.3.4.1-alpha.
+
+



___
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.4] Avoid integer overflow on fast 32-bit millisecond conversion.

2018-09-20 Thread nickm
commit f02e8b5944c238979c0c0cf3ce4a8911026b2210
Author: Nick Mathewson 
Date:   Fri Sep 14 08:36:33 2018 -0400

Avoid integer overflow on fast 32-bit millisecond conversion.

Multiply-then-divide is more accurate, but it runs into trouble when
our input is above INT32_MAX/numerator.  So when our value is too
large, do divide-then-multiply instead.

Fixes part of bug 27139; bugfix on 0.3.4.1-alpha.
---
 src/common/compat_time.c | 14 --
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/common/compat_time.c b/src/common/compat_time.c
index f92dc09c4..93b527def 100644
--- a/src/common/compat_time.c
+++ b/src/common/compat_time.c
@@ -280,6 +280,7 @@ monotime_reset_ratchets_for_testing(void)
  */
 static struct mach_timebase_info mach_time_info;
 static struct mach_timebase_info mach_time_info_msec_cvt;
+static int32_t mach_time_msec_cvt_threshold;
 static int monotime_shift = 0;
 
 static void
@@ -304,6 +305,10 @@ monotime_init_internal(void)
 // denominator here to avoid multiple multiplies.
 mach_time_info_msec_cvt.numer = mach_time_info.numer * 2048;
 mach_time_info_msec_cvt.denom = mach_time_info.denom * 1953;
+// For any value above this amount, we should divide before multiplying,
+// to avoid overflow.  For a value below this, we should multiply
+// before dividing, to improve accuracy.
+mach_time_msec_cvt_threshold = INT32_MAX / mach_time_info_msec_cvt.numer;
   }
 }
 
@@ -366,8 +371,13 @@ monotime_coarse_diff_msec32_(const monotime_coarse_t 
*start,
   /* We already require in di_ops.c that right-shift performs a sign-extend. */
   const int32_t diff_microticks = (int32_t)(diff_ticks >> 20);
 
-  return (diff_microticks * mach_time_info_msec_cvt.numer) /
-mach_time_info_msec_cvt.denom;
+  if (diff_microticks >= mach_time_msec_cvt_threshold) {
+return (diff_microticks / mach_time_info_msec_cvt.denom) *
+  mach_time_info_msec_cvt.numer;
+  } else {
+return (diff_microticks * mach_time_info_msec_cvt.numer) /
+  mach_time_info_msec_cvt.denom;
+  }
 }
 
 uint32_t



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Changes file for the 32-bit msec conversion fixes of #27139

2018-09-20 Thread nickm
commit 9a90f4c6b42cb2c251dae74f92d4192e171442e1
Author: Nick Mathewson 
Date:   Fri Sep 14 08:49:27 2018 -0400

Changes file for the 32-bit msec conversion fixes of #27139
---
 changes/bug27139 | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/changes/bug27139 b/changes/bug27139
new file mode 100644
index 0..0d1e3b432
--- /dev/null
+++ b/changes/bug27139
@@ -0,0 +1,14 @@
+  o Minor bugfixes (32-bit OSX and iOS, timing):
+- Fix an integer overflow bug in our optimized 32-bit millisecond-
+  difference algorithm for 32-bit Apple platforms. Previously, it
+  would overflow when calculating the difference between two times
+  more than 47 days apart.  Fixes part of bug 27139; bugfix on
+  0.3.4.1-alpha.
+- Improve the precision of our 32-bit millisecond difference
+  algorithm for 32-bit Apple platforms. Fixes part of bug 27139;
+  bugfix on 0.3.4.1-alpha.
+- Relax the tolerance on the mainloop/update_time_jumps test
+  when running on 32-bit Apple platforms. Fixes part of bug 27139;
+  bugfix on 0.3.4.1-alpha.
+
+



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Avoid integer overflow on fast 32-bit millisecond conversion.

2018-09-20 Thread nickm
commit f02e8b5944c238979c0c0cf3ce4a8911026b2210
Author: Nick Mathewson 
Date:   Fri Sep 14 08:36:33 2018 -0400

Avoid integer overflow on fast 32-bit millisecond conversion.

Multiply-then-divide is more accurate, but it runs into trouble when
our input is above INT32_MAX/numerator.  So when our value is too
large, do divide-then-multiply instead.

Fixes part of bug 27139; bugfix on 0.3.4.1-alpha.
---
 src/common/compat_time.c | 14 --
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/common/compat_time.c b/src/common/compat_time.c
index f92dc09c4..93b527def 100644
--- a/src/common/compat_time.c
+++ b/src/common/compat_time.c
@@ -280,6 +280,7 @@ monotime_reset_ratchets_for_testing(void)
  */
 static struct mach_timebase_info mach_time_info;
 static struct mach_timebase_info mach_time_info_msec_cvt;
+static int32_t mach_time_msec_cvt_threshold;
 static int monotime_shift = 0;
 
 static void
@@ -304,6 +305,10 @@ monotime_init_internal(void)
 // denominator here to avoid multiple multiplies.
 mach_time_info_msec_cvt.numer = mach_time_info.numer * 2048;
 mach_time_info_msec_cvt.denom = mach_time_info.denom * 1953;
+// For any value above this amount, we should divide before multiplying,
+// to avoid overflow.  For a value below this, we should multiply
+// before dividing, to improve accuracy.
+mach_time_msec_cvt_threshold = INT32_MAX / mach_time_info_msec_cvt.numer;
   }
 }
 
@@ -366,8 +371,13 @@ monotime_coarse_diff_msec32_(const monotime_coarse_t 
*start,
   /* We already require in di_ops.c that right-shift performs a sign-extend. */
   const int32_t diff_microticks = (int32_t)(diff_ticks >> 20);
 
-  return (diff_microticks * mach_time_info_msec_cvt.numer) /
-mach_time_info_msec_cvt.denom;
+  if (diff_microticks >= mach_time_msec_cvt_threshold) {
+return (diff_microticks / mach_time_info_msec_cvt.denom) *
+  mach_time_info_msec_cvt.numer;
+  } else {
+return (diff_microticks * mach_time_info_msec_cvt.numer) /
+  mach_time_info_msec_cvt.denom;
+  }
 }
 
 uint32_t



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.3.4] Changes file for the 32-bit msec conversion fixes of #27139

2018-09-20 Thread nickm
commit 9a90f4c6b42cb2c251dae74f92d4192e171442e1
Author: Nick Mathewson 
Date:   Fri Sep 14 08:49:27 2018 -0400

Changes file for the 32-bit msec conversion fixes of #27139
---
 changes/bug27139 | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/changes/bug27139 b/changes/bug27139
new file mode 100644
index 0..0d1e3b432
--- /dev/null
+++ b/changes/bug27139
@@ -0,0 +1,14 @@
+  o Minor bugfixes (32-bit OSX and iOS, timing):
+- Fix an integer overflow bug in our optimized 32-bit millisecond-
+  difference algorithm for 32-bit Apple platforms. Previously, it
+  would overflow when calculating the difference between two times
+  more than 47 days apart.  Fixes part of bug 27139; bugfix on
+  0.3.4.1-alpha.
+- Improve the precision of our 32-bit millisecond difference
+  algorithm for 32-bit Apple platforms. Fixes part of bug 27139;
+  bugfix on 0.3.4.1-alpha.
+- Relax the tolerance on the mainloop/update_time_jumps test
+  when running on 32-bit Apple platforms. Fixes part of bug 27139;
+  bugfix on 0.3.4.1-alpha.
+
+



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Make circuitmux ewma timing test more tolerant on 32bit osx

2018-09-20 Thread nickm
commit 6e5e1be7375e6e8de38af1f8c2c13e35d745edea
Author: Nick Mathewson 
Date:   Fri Sep 14 08:40:10 2018 -0400

Make circuitmux ewma timing test more tolerant on 32bit osx

Since we use a 32-bit approximation for millisecond conversion here,
we can't expect so much precision.

Fixes part of bug 27139; bugfix on 0.3.4.1-alpha.
---
 src/common/compat_time.h   |  1 +
 src/test/test_circuitmux.c | 13 +
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/common/compat_time.h b/src/common/compat_time.h
index 57ab20ab1..f241aa5eb 100644
--- a/src/common/compat_time.h
+++ b/src/common/compat_time.h
@@ -196,6 +196,7 @@ monotime_coarse_diff_msec32(const monotime_coarse_t *start,
   // on a 64-bit platform, let's assume 64/64 division is cheap.
   return (int32_t) monotime_coarse_diff_msec(start, end);
 #else
+#define USING_32BIT_MSEC_HACK
   return monotime_coarse_diff_msec32_(start, end);
 #endif
 }
diff --git a/src/test/test_circuitmux.c b/src/test/test_circuitmux.c
index 14c759870..c81d53ae5 100644
--- a/src/test/test_circuitmux.c
+++ b/src/test/test_circuitmux.c
@@ -13,6 +13,8 @@
 #include "scheduler.h"
 #include "test.h"
 
+#include 
+
 /*  duplicated function from test_circuitlist.c */
 static channel_t *
 new_fake_channel(void)
@@ -103,16 +105,19 @@ test_cmux_compute_ticks(void *arg)
   monotime_coarse_set_mock_time_nsec(now);
   tick = cell_ewma_get_current_tick_and_fraction();
   tt_uint_op(tick, OP_EQ, tick_zero);
-  tt_double_op(rem, OP_GT, .14999);
-  tt_double_op(rem, OP_LT, .15001);
+#ifdef USING_32BIT_MSEC_HACK
+  const double tolerance = .0005;
+#else
+  const double tolerance = .0001;
+#endif
+  tt_double_op(fabs(rem - .15), OP_LT, tolerance);
 
   /* 25 second later and we should be in another tick. */
   now = START_NS + NS_PER_S * 25;
   monotime_coarse_set_mock_time_nsec(now);
   tick = cell_ewma_get_current_tick_and_fraction();
   tt_uint_op(tick, OP_EQ, tick_zero + 2);
-  tt_double_op(rem, OP_GT, .4);
-  tt_double_op(rem, OP_LT, .50001);
+  tt_double_op(fabs(rem - .5), OP_LT, tolerance);
 
  done:
   ;



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.3.4] Avoid integer overflow on fast 32-bit millisecond conversion.

2018-09-20 Thread nickm
commit f02e8b5944c238979c0c0cf3ce4a8911026b2210
Author: Nick Mathewson 
Date:   Fri Sep 14 08:36:33 2018 -0400

Avoid integer overflow on fast 32-bit millisecond conversion.

Multiply-then-divide is more accurate, but it runs into trouble when
our input is above INT32_MAX/numerator.  So when our value is too
large, do divide-then-multiply instead.

Fixes part of bug 27139; bugfix on 0.3.4.1-alpha.
---
 src/common/compat_time.c | 14 --
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/common/compat_time.c b/src/common/compat_time.c
index f92dc09c4..93b527def 100644
--- a/src/common/compat_time.c
+++ b/src/common/compat_time.c
@@ -280,6 +280,7 @@ monotime_reset_ratchets_for_testing(void)
  */
 static struct mach_timebase_info mach_time_info;
 static struct mach_timebase_info mach_time_info_msec_cvt;
+static int32_t mach_time_msec_cvt_threshold;
 static int monotime_shift = 0;
 
 static void
@@ -304,6 +305,10 @@ monotime_init_internal(void)
 // denominator here to avoid multiple multiplies.
 mach_time_info_msec_cvt.numer = mach_time_info.numer * 2048;
 mach_time_info_msec_cvt.denom = mach_time_info.denom * 1953;
+// For any value above this amount, we should divide before multiplying,
+// to avoid overflow.  For a value below this, we should multiply
+// before dividing, to improve accuracy.
+mach_time_msec_cvt_threshold = INT32_MAX / mach_time_info_msec_cvt.numer;
   }
 }
 
@@ -366,8 +371,13 @@ monotime_coarse_diff_msec32_(const monotime_coarse_t 
*start,
   /* We already require in di_ops.c that right-shift performs a sign-extend. */
   const int32_t diff_microticks = (int32_t)(diff_ticks >> 20);
 
-  return (diff_microticks * mach_time_info_msec_cvt.numer) /
-mach_time_info_msec_cvt.denom;
+  if (diff_microticks >= mach_time_msec_cvt_threshold) {
+return (diff_microticks / mach_time_info_msec_cvt.denom) *
+  mach_time_info_msec_cvt.numer;
+  } else {
+return (diff_microticks * mach_time_info_msec_cvt.numer) /
+  mach_time_info_msec_cvt.denom;
+  }
 }
 
 uint32_t



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Use a slightly more accurate formula for OSX 32-bit msec conversion

2018-09-20 Thread nickm
commit 4eabc6db47fe64b6757f7a5f0e651a41f02efca3
Author: Nick Mathewson 
Date:   Fri Sep 14 08:30:24 2018 -0400

Use a slightly more accurate formula for OSX 32-bit msec conversion

We use an optimized but less accurate formula for converting coarse
time differences to milliseconds on 32-bit OSX platforms, so that we
can avoid 64-bit division.

The old numbers were off by 0.4%.  The new numbers are off by .006%.

This should make the unit tests a bit cleaner, and our tolerances a
bit closer.
---
 src/common/compat_time.c | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/common/compat_time.c b/src/common/compat_time.c
index 40847a844..f92dc09c4 100644
--- a/src/common/compat_time.c
+++ b/src/common/compat_time.c
@@ -299,11 +299,11 @@ monotime_init_internal(void)
   }
   {
 // For converting ticks to milliseconds in a 32-bit-friendly way, we
-// will first right-shift by 20, and then multiply by 20/19, since
-// (1<<20) * 19/20 is about 1e6.  We precompute a new numerate and
+// will first right-shift by 20, and then multiply by 2048/1953, since
+// (1<<20) * 1953/2048 is about 1e6.  We precompute a new numerator and
 // denominator here to avoid multiple multiplies.
-mach_time_info_msec_cvt.numer = mach_time_info.numer * 20;
-mach_time_info_msec_cvt.denom = mach_time_info.denom * 19;
+mach_time_info_msec_cvt.numer = mach_time_info.numer * 2048;
+mach_time_info_msec_cvt.denom = mach_time_info.denom * 1953;
   }
 }
 



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.3.4] Merge remote-tracking branch 'github/bug27139_034' into maint-0.3.4

2018-09-20 Thread nickm
commit 163230e2405af394ce3684dc7fdf2475bf1318b0
Merge: 2ddbaf9cd 9a90f4c6b
Author: Nick Mathewson 
Date:   Thu Sep 20 10:43:05 2018 -0400

Merge remote-tracking branch 'github/bug27139_034' into maint-0.3.4

 changes/bug27139   | 14 ++
 src/common/compat_time.c   | 22 --
 src/common/compat_time.h   |  1 +
 src/test/test_circuitmux.c | 13 +
 4 files changed, 40 insertions(+), 10 deletions(-)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.3.4] Make circuitmux ewma timing test more tolerant on 32bit osx

2018-09-20 Thread nickm
commit 6e5e1be7375e6e8de38af1f8c2c13e35d745edea
Author: Nick Mathewson 
Date:   Fri Sep 14 08:40:10 2018 -0400

Make circuitmux ewma timing test more tolerant on 32bit osx

Since we use a 32-bit approximation for millisecond conversion here,
we can't expect so much precision.

Fixes part of bug 27139; bugfix on 0.3.4.1-alpha.
---
 src/common/compat_time.h   |  1 +
 src/test/test_circuitmux.c | 13 +
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/common/compat_time.h b/src/common/compat_time.h
index 57ab20ab1..f241aa5eb 100644
--- a/src/common/compat_time.h
+++ b/src/common/compat_time.h
@@ -196,6 +196,7 @@ monotime_coarse_diff_msec32(const monotime_coarse_t *start,
   // on a 64-bit platform, let's assume 64/64 division is cheap.
   return (int32_t) monotime_coarse_diff_msec(start, end);
 #else
+#define USING_32BIT_MSEC_HACK
   return monotime_coarse_diff_msec32_(start, end);
 #endif
 }
diff --git a/src/test/test_circuitmux.c b/src/test/test_circuitmux.c
index 14c759870..c81d53ae5 100644
--- a/src/test/test_circuitmux.c
+++ b/src/test/test_circuitmux.c
@@ -13,6 +13,8 @@
 #include "scheduler.h"
 #include "test.h"
 
+#include 
+
 /*  duplicated function from test_circuitlist.c */
 static channel_t *
 new_fake_channel(void)
@@ -103,16 +105,19 @@ test_cmux_compute_ticks(void *arg)
   monotime_coarse_set_mock_time_nsec(now);
   tick = cell_ewma_get_current_tick_and_fraction();
   tt_uint_op(tick, OP_EQ, tick_zero);
-  tt_double_op(rem, OP_GT, .14999);
-  tt_double_op(rem, OP_LT, .15001);
+#ifdef USING_32BIT_MSEC_HACK
+  const double tolerance = .0005;
+#else
+  const double tolerance = .0001;
+#endif
+  tt_double_op(fabs(rem - .15), OP_LT, tolerance);
 
   /* 25 second later and we should be in another tick. */
   now = START_NS + NS_PER_S * 25;
   monotime_coarse_set_mock_time_nsec(now);
   tick = cell_ewma_get_current_tick_and_fraction();
   tt_uint_op(tick, OP_EQ, tick_zero + 2);
-  tt_double_op(rem, OP_GT, .4);
-  tt_double_op(rem, OP_LT, .50001);
+  tt_double_op(fabs(rem - .5), OP_LT, tolerance);
 
  done:
   ;



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.3.4] Use a slightly more accurate formula for OSX 32-bit msec conversion

2018-09-20 Thread nickm
commit 4eabc6db47fe64b6757f7a5f0e651a41f02efca3
Author: Nick Mathewson 
Date:   Fri Sep 14 08:30:24 2018 -0400

Use a slightly more accurate formula for OSX 32-bit msec conversion

We use an optimized but less accurate formula for converting coarse
time differences to milliseconds on 32-bit OSX platforms, so that we
can avoid 64-bit division.

The old numbers were off by 0.4%.  The new numbers are off by .006%.

This should make the unit tests a bit cleaner, and our tolerances a
bit closer.
---
 src/common/compat_time.c | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/common/compat_time.c b/src/common/compat_time.c
index 40847a844..f92dc09c4 100644
--- a/src/common/compat_time.c
+++ b/src/common/compat_time.c
@@ -299,11 +299,11 @@ monotime_init_internal(void)
   }
   {
 // For converting ticks to milliseconds in a 32-bit-friendly way, we
-// will first right-shift by 20, and then multiply by 20/19, since
-// (1<<20) * 19/20 is about 1e6.  We precompute a new numerate and
+// will first right-shift by 20, and then multiply by 2048/1953, since
+// (1<<20) * 1953/2048 is about 1e6.  We precompute a new numerator and
 // denominator here to avoid multiple multiplies.
-mach_time_info_msec_cvt.numer = mach_time_info.numer * 20;
-mach_time_info_msec_cvt.denom = mach_time_info.denom * 19;
+mach_time_info_msec_cvt.numer = mach_time_info.numer * 2048;
+mach_time_info_msec_cvt.denom = mach_time_info.denom * 1953;
   }
 }
 



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit e187c5f96021c6dbf6fa5908ef6d6a8ee481a689
Author: Translation commit bot 
Date:   Thu Sep 20 14:18:48 2018 +

Update translations for support-portal
---
 contents+el.po | 31 ++-
 1 file changed, 22 insertions(+), 9 deletions(-)

diff --git a/contents+el.po b/contents+el.po
index f120fe744..3549e23dc 100644
--- a/contents+el.po
+++ b/contents+el.po
@@ -822,7 +822,7 @@ msgstr "having-trouble-connecting-to-tor"
 #: http//localhost/misc/misc-4/
 #: (content/misc/misc-4/contents+en.lrquestion.title)
 msgid "Can I use Tor with BitTorrent?"
-msgstr ""
+msgstr "Μπορώ να χρησιμοποιήσω το Tor με το 
BitTorrent;"
 
 #: http//localhost/misc/misc-3/
 #: (content/misc/misc-3/contents+en.lrquestion.description)
@@ -902,7 +902,7 @@ msgstr "make-tor-faster"
 #: http//localhost/misc/misc-8/
 #: (content/misc/misc-8/contents+en.lrquestion.title)
 msgid "Can I use the Tor logo in my product?"
-msgstr ""
+msgstr "Μπορώ να χρησιμοποιήσω το λογότυπο του
 Tor στο προϊόν μου;"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -996,7 +996,7 @@ msgstr "Tor Mobile"
 #: http//localhost/misc/misc-12/
 #: (content/misc/misc-12/contents+en.lrquestion.title)
 msgid "How can I share files anonymously through Tor?"
-msgstr ""
+msgstr "Πώς μπορώ να μοιραστώ αρχεία ανώνυμα 
μέσω του Tor;"
 
 #: http//localhost/tbb/tbb-10/
 #: (content/tbb/tbb-10/contents+en.lrquestion.description)
@@ -1028,6 +1028,8 @@ msgstr ""
 #: (content/misc/misc-1/contents+en.lrquestion.description)
 msgid "There is nothing the Tor developers can do to trace Tor users."
 msgstr ""
+"Δεν υπάρχει τίποτα που οι προγραμματιστές 
του Tor να μπορούν να κάνουν για "
+"να εντοπίσουν χρήστες του Tor."
 
 #: http//localhost/misc/misc-8/
 #: (content/misc/misc-8/contents+en.lrquestion.description)
@@ -1065,6 +1067,9 @@ msgid ""
 "* Make sure your clock, date, and timezone are set correctly. Install the "
 "ntp or openntpd (or similar) package to keep it that way."
 msgstr ""
+"* Βεβαιωθείτε ότι το ρολόι, η ημερομηνία 
και η ζώνη ώρας έχουν ρυθμιστεί "
+"σωστά. Εγκαταστήστε το πακέτο ntp ή openntpd (ή 
παρόμοιο) για να τα "
+"διατηρήσετε."
 
 #: http//localhost/faq/faq-4/ (content/faq/faq-4/contents+en.lrquestion.title)
 #: http//localhost/tbb/tbb-31/
@@ -1075,7 +1080,7 @@ msgstr "Για ποιές πλατφόρμες είναι 
διαθέσιμος 
 #: http//localhost/tormobile/tormobile-1/
 #: (content/tormobile/tormobile-1/contents+en.lrquestion.description)
 msgid "Tor on Android is provided by The Guardian Project."
-msgstr ""
+msgstr "Ο Tor για Android παρέχεται από το Guardian Project."
 
 #: http//localhost/censorship/censorship-2/
 #: (content/censorship/censorship-2/contents+en.lrquestion.description)
@@ -1123,6 +1128,8 @@ msgid ""
 "Please see the https://www.eff.org/https-;
 "everywhere/faq\">HTTPS Everywhere FAQ."
 msgstr ""
+"Παρακαλώ ανατρέξτε στο https://www.eff.org/https-;
+"everywhere/faq\">HTTPS Everywhere FAQ."
 
 #: http//localhost/misc/misc-5/
 #: (content/misc/misc-5/contents+en.lrquestion.seo_slug)
@@ -1815,7 +1822,7 @@ msgstr "* TorBrowser"
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "#Address noname.example.com"
-msgstr ""
+msgstr "#Address noname.example.com"
 
 #: http//localhost/tbb/tbb-1/
 #: (content/tbb/tbb-1/contents+en.lrquestion.description)
@@ -1937,6 +1944,8 @@ msgid ""
 "13-11-17 19:53:49.300 [WARN]  1 connections died in state connect()ing with "
 "SSL state (No SSL object)"
 msgstr ""
+"13-11-17 19:53:49.300 [WARN] 1 connections died in state connect()ing with "
+"SSL state (No SSL object)"
 
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
@@ -2397,6 +2406,8 @@ msgid ""
 "13-11-17 19:53:49.300 [WARN]  9 connections died in state handshaking (TLS) "
 "with SSL state SSLv2/v3 read server hello A in HANDSHAKE"
 msgstr ""
+"13-11-17 19:53:49.300 [WARN] 9 connections died in state handshaking (TLS) "
+"with SSL state SSLv2/v3 read server hello A in HANDSHAKE"
 
 #: http//localhost/tbb/tbb-7/
 #: (content/tbb/tbb-7/contents+en.lrquestion.description)
@@ -2498,7 +2509,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "Nickname ididnteditheconfig"
-msgstr ""
+msgstr "Nickname ididnteditheconfig"
 
 #: http//localhost/misc/misc-6/
 #: (content/misc/misc-6/contents+en.lrquestion.seo_slug)
@@ -2621,7 +2632,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: 

[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 89abb7f357d645dcf868ade13def33a85c25603c
Author: Translation commit bot 
Date:   Thu Sep 20 13:48:49 2018 +

Update translations for support-portal
---
 contents+el.po | 196 ++---
 1 file changed, 118 insertions(+), 78 deletions(-)

diff --git a/contents+el.po b/contents+el.po
index 28273198a..f120fe744 100644
--- a/contents+el.po
+++ b/contents+el.po
@@ -386,6 +386,11 @@ msgid ""
 "href=\"https://blog.torproject.org/category/tags/form-990\;>blog "
 "posts on our financial reports."
 msgstr ""
+"Δείτε τη λίστα με όλους τους https://www.torproject.org/about/sponsors.html.en\;>χορηγούς "
+"μας και μια σειρά από https://blog.torproject.org/category/tags/form-990\;>δημοσιεύσεις
 "
+"blog για τις δηλώσεις των οικονομικών 
μας."
 
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
@@ -400,11 +405,14 @@ msgid ""
 "If a SOCKS proxy is required for your network setup, then please make sure "
 "you’ve entered your proxy details correctly."
 msgstr ""
+"Αν για την διαρρύθμιση του δικτύου σας 
χρειάζεται ένας διαμετακομιστής "
+"SOCKS, τότε παρακαλούμε να ελέγξετε αν έχετε 
συμπληρώσει τις πληροφορίες "
+"διαμετακομιστή σωστά."
 
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.seo_slug)
 msgid "using-correct-packages"
-msgstr ""
+msgstr "χρήση-σωστών-πακέτων"
 
 #: http//localhost/tbb/tbb-17/
 #: (content/tbb/tbb-17/contents+en.lrquestion.description)
@@ -436,17 +444,17 @@ msgstr "Πώς μπορώ να δω το αρχείο 
καταγραφής μη
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
 msgid "* Deutsch (de)"
-msgstr ""
+msgstr "* Γερμανικά (de)"
 
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.seo_slug)
 msgid "how-do-i-run-a-middle-or-guard-on-freebsd"
-msgstr ""
+msgstr "how-do-i-run-a-middle-or-guard-on-freebsd"
 
 #: http//localhost/misc/misc-15/
 #: (content/misc/misc-15/contents+en.lrquestion.description)
 msgid "Thank you for your support!"
-msgstr ""
+msgstr "Ευχαριστούμε για τη στήριξή σας!"
 
 #: http//localhost/tbb/tbb-19/
 #: (content/tbb/tbb-19/contents+en.lrquestion.description)
@@ -482,6 +490,12 @@ msgid ""
 "href=\"https://guardianproject.info/apps/orbot/\;>Orbot and "
 "https://guardianproject.info/apps/orfox/\;>Orfox."
 msgstr ""
+"Για το https://www.torproject.org/docs/android.html.en\;>Android,"
+" τοhttps://guardianproject.info/\;>The Guardian "
+"Projectυπάρχουν οι εφαρμογές του Tor 
https://guardianproject.info/apps/orbot/\;>Orbotκαι "
+"https://guardianproject.info/apps/orfox/\;>Orfox."
 
 #: http//localhost/faq/faq-5/
 #: (content/faq/faq-5/contents+en.lrquestion.seo_slug)
@@ -555,6 +569,8 @@ msgid ""
 ""
 msgstr ""
+""
 
 #: http//localhost/tbb/tbb-18/
 #: (content/tbb/tbb-18/contents+en.lrquestion.description)
@@ -568,7 +584,7 @@ msgstr ""
 #: http//localhost/https/https-1/
 #: (content/https/https-1/contents+en.lrquestion.description)
 msgid ""
-msgstr ""
+msgstr ""
 
 #: http//localhost/tbb/tbb-10/
 #: (content/tbb/tbb-10/contents+en.lrquestion.description)
@@ -590,7 +606,7 @@ msgstr ""
 #: http//localhost/misc/misc-15/
 #: (content/misc/misc-15/contents+en.lrquestion.seo_slug)
 msgid "donate-tor-project"
-msgstr ""
+msgstr "donate-tor-project"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -789,7 +805,7 @@ msgstr ""
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
 msgid "* Vietnamese (vi)"
-msgstr ""
+msgstr "* Vietnamese (vi)"
 
 #: http//localhost/tbb/tbb-36/
 #: (content/tbb/tbb-36/contents+en.lrquestion.seo_slug)
@@ -801,7 +817,7 @@ msgstr "run-multible-instances-of-tor-browser"
 #: http//localhost/censorship/censorship-5/
 #: (content/censorship/censorship-5/contents+en.lrquestion.seo_slug)
 msgid "having-trouble-connecting-to-tor"
-msgstr ""
+msgstr "having-trouble-connecting-to-tor"
 
 #: http//localhost/misc/misc-4/
 #: (content/misc/misc-4/contents+en.lrquestion.title)
@@ -881,7 +897,7 @@ msgstr ""
 #: http//localhost/tbb/tbb-22/
 #: (content/tbb/tbb-22/contents+en.lrquestion.seo_slug)
 msgid "make-tor-faster"
-msgstr ""
+msgstr "make-tor-faster"
 
 #: http//localhost/misc/misc-8/
 #: (content/misc/misc-8/contents+en.lrquestion.title)
@@ -992,7 +1008,7 @@ msgstr "* tor.real"
 #: http//localhost/censorship/censorship-5/
 #: (content/censorship/censorship-5/contents+en.lrquestion.description)
 msgid "# Common log error #4: Clock skew"
-msgstr ""
+msgstr 

[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit fbc810fcb3e298773dd7dd6d73fbf0237161752a
Author: Translation commit bot 
Date:   Thu Sep 20 13:18:57 2018 +

Update translations for support-portal
---
 contents+el.po | 18 +++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/contents+el.po b/contents+el.po
index e599be420..28273198a 100644
--- a/contents+el.po
+++ b/contents+el.po
@@ -138,6 +138,8 @@ msgid ""
 "The low/default setting allows Javascript, but the medium and high levels "
 "both block Javascript on HTTP sites."
 msgstr ""
+"Η χαμηλή/προεπιλεγμένη ρύθμιση επιτρέπει 
τα Javascript, αλλά το μεσαίο και "
+"το υψηλό επίπεδο εμποδίζουν και τα δύο τα 
Javascript στις σελίδες ΗΤΤΡ."
 
 #: http//localhost/tbb/tbb-7/
 #: (content/tbb/tbb-7/contents+en.lrquestion.description)
@@ -332,6 +334,8 @@ msgid ""
 "Many exit nodes are configured to block certain types of file sharing "
 "traffic, such as BitTorrent."
 msgstr ""
+"Πολλοί κόμβοι εξόδου είναι ρυθμισμένοι να 
εμποδίζουν κάποια είδη "
+"κοινοποίησης αρχείων, όπως το BitTorrent."
 
 #: http//localhost/censorship/censorship-4/
 #: (content/censorship/censorship-4/contents+en.lrquestion.seo_slug)
@@ -346,7 +350,7 @@ msgstr ""
 #: http//localhost/onionservices/onionservices-1/
 #: (content/onionservices/onionservices-1/contents+en.lrquestion.seo_slug)
 msgid "accessing-websites-that-are-only-accessible-over-tor"
-msgstr ""
+msgstr "πρόσβαση-ιστοσελίδων-που
-είναι-προσβάσιμες-μόνο-μέσω-tor"
 
 #: http//localhost/censorship/censorship-5/
 #: (content/censorship/censorship-5/contents+en.lrquestion.description)
@@ -364,6 +368,9 @@ msgid ""
 "href=\"https://blog.torproject.org/bittorrent-over-tor-isnt-good-idea\;>blog"
 " post on the subject."
 msgstr ""
+"Για περισσότερες λεπτομέρειες, ανατρέξτε 
στην https://blog.torproject.org/bittorrent-over-tor-isnt-good-;
+"idea\">ανάρτηση μας σχετικά με το θέμα."
 
 #: http//localhost/tbb/tbb-8/
 #: (content/tbb/tbb-8/contents+en.lrquestion.seo_slug)
@@ -594,6 +601,9 @@ msgid ""
 "handshake with directory server. (DONE; DONE; count 10; recommendation warn;"
 " host [host] at xxx.xxx.xxx.xx:xxx)"
 msgstr ""
+"13-11-17 19:53:49.300 [WARN] Problem bootstrapping. Stuck at 10%: Finishing "
+"handshake with directory server. (DONE; DONE; count 10; recommendation warn;"
+" host [host] at xxx.xxx.xxx.xx:xxx)"
 
 #: http//localhost/connecting/connecting-1/
 #: (content/connecting/connecting-1/contents+en.lrquestion.seo_slug)
@@ -666,7 +676,7 @@ msgstr "https"
 #: http//localhost/tbb/tbb-41/
 #: (content/tbb/tbb-41/contents+en.lrquestion.seo_slug)
 msgid "why-is-tor-using-duckduckgo"
-msgstr ""
+msgstr "why-is-tor-using-duckduckgo"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -773,6 +783,8 @@ msgid ""
 "2017-10-29 09:23:47.900 [NOTICE] Bootstrapped 10%: Finishing handshake with "
 "directory server"
 msgstr ""
+"2017-10-29 09:23:47.900 [NOTICE] Bootstrapped 10%: Finishing handshake with "
+"directory server"
 
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
@@ -782,7 +794,7 @@ msgstr ""
 #: http//localhost/tbb/tbb-36/
 #: (content/tbb/tbb-36/contents+en.lrquestion.seo_slug)
 msgid "run-multible-instances-of-tor-browser"
-msgstr ""
+msgstr "run-multible-instances-of-tor-browser"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.seo_slug)

___
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_completed] Update translations for tor-browser-manual_completed

2018-09-20 Thread translation
commit 71952f227f8fd3398db0a193d2dca65a54984059
Author: Translation commit bot 
Date:   Thu Sep 20 13:17:29 2018 +

Update translations for tor-browser-manual_completed
---
 el/el.po | 2029 ++
 1 file changed, 2029 insertions(+)

diff --git a/el/el.po b/el/el.po
new file mode 100644
index 0..ad1bde8f2
--- /dev/null
+++ b/el/el.po
@@ -0,0 +1,2029 @@
+# Translators:
+# Wasilis Mandratzis , 2016
+# mitzie , 2016
+# anvo , 2016
+# Ioannis Stilianakos , 2016
+# Aikaterini Katmada, 2016
+# isv31 <36b04...@anon.leemail.me>, 2016
+# kotkotkot , 2016
+# Sofia K., 2016
+# ilias_ , 2017
+# Adrian Pappas , 2017
+# A Papac , 2017
+# Evgenios Kostis , 2017
+# Elektra M. , 2017
+# Sotiris Blad , 2017
+# Alex , 2018
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2018-09-07 16:48-0500\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Alex , 2018\n"
+"Language-Team: Greek (https://www.transifex.com/otf/teams/1519/el/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: el\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. Put one translator per line, in the form NAME , YEAR1, YEAR2
+msgctxt "_"
+msgid "translator-credits"
+msgstr "translator-credits"
+
+#: about-tor-browser.page:7
+msgid "Learn what Tor Browser can do to protect your privacy and anonymity"
+msgstr ""
+"Μάθετε τι μπορεί να κάνει ο Tor Browser για να 
να προστατευθεί η "
+"ιδιωτικότητα και η ανωνυμία σας"
+
+#: about-tor-browser.page:10
+msgid "About Tor Browser"
+msgstr "Σχετικά με τον Tor Browser"
+
+#: about-tor-browser.page:12
+msgid ""
+"Tor Browser uses the Tor network to protect your privacy and anonymity. "
+"Using the Tor network has two main properties:"
+msgstr ""
+"Ο Tor Browser χρησιμοποιεί το δίκτυο Tor  για την 
προστασία της "
+"ιδιωτικότητας και της ανωνυμίας σας. Η 
χρήση του δικτύου Tor έχει δύο κύριες"
+" ιδιότητες:"
+
+#: about-tor-browser.page:18
+msgid ""
+"Your internet service provider, and anyone watching your connection locally,"
+" will not be able to track your internet activity, including the names and "
+"addresses of the websites you visit."
+msgstr ""
+"Ο πάροχος δικτύου σου, και οποιοσδήποτε 
άλλος που παρακολουθεί τοπικά την "
+"σύνδεσή σου, δεν θα μπορεί να ανιχνέυσει 
την δικτυακή σου δραστηριότητα, "
+"συμπεριλαμβανομένων των ονομάτων και διευ
θύνσεων των ιστοσελίδων που "
+"επισκέπτεσαι."
+
+#: about-tor-browser.page:25
+msgid ""
+"The operators of the websites and services that you use, and anyone watching"
+" them, will see a connection coming from the Tor network instead of your "
+"real Internet (IP) address, and will not know who you are unless you "
+"explicitly identify yourself."
+msgstr ""
+"Οι διαχειριστές των ιστοσελίδων και των υ
πηρεσιών που χρησιμοποιείς, και "
+"οποιοσδήποτε τις παρακολουθεί, θα βλέπει 
μια σύνδεση που προέρχεται από το "
+"δίκτυο Tor, αντί της πραγματικής σου διεύθυ
νσης ίντερνετ (IP), και δεν θα "
+"γνωρίζει ποιος είσαι εκτός εάν εσκεμμένα 
το αποκαλύψεις."
+
+#: about-tor-browser.page:34
+msgid ""
+"In addition, Tor Browser is designed to prevent websites from "
+"“fingerprinting” or identifying you based on your browser configuration."
+msgstr ""
+"Επιπλέον, ο Tor Browser έχει σχεδιαστεί να 
αποτρέπει ιστοσελίδες από το να "
+"σε \"ταυτοποιήσουν\" βάση των ρυθμίσεων του 
περιηγητή σου."
+
+#: about-tor-browser.page:39
+msgid ""
+"By default, Tor Browser does not keep any browsing history. Cookies are only"
+" valid for a single session (until Tor Browser is exited or a New Identity is requested)."
+msgstr ""
+"Από προεπιλογή, ο Tor Browser δεν κρατά κανένα 
ιστορικό περιήγησης. Τα "
+"cookies είναι έγκυρα μόνο για μια συνεδρία 
(μέχρι να κλείσει ο Tor Browser ή"
+" να ζητηθεί μια Νέα "
+"Ταυτότητα)."
+
+#: about-tor-browser.page:50
+msgid "How Tor works"
+msgstr "Πώς λειτουργεί το Tor"
+
+#: about-tor-browser.page:52
+msgid ""
+"Tor is a network of virtual tunnels that allows you to improve your privacy "
+"and security on the Internet. Tor works by sending 

[tor-commits] [translation/tor-browser-manual] Update translations for tor-browser-manual

2018-09-20 Thread translation
commit af6431baf101ee263e100b11722ffa7c0969b2c4
Author: Translation commit bot 
Date:   Thu Sep 20 13:17:23 2018 +

Update translations for tor-browser-manual
---
 el/el.po | 13 +
 1 file changed, 13 insertions(+)

diff --git a/el/el.po b/el/el.po
index 6a01c17e2..ad1bde8f2 100644
--- a/el/el.po
+++ b/el/el.po
@@ -1811,6 +1811,9 @@ msgid ""
 "Delete Tor Browser and install it again. If updating, do not just overwrite "
 "your previous Tor Browser files; ensure they are fully deleted beforehand."
 msgstr ""
+"Διάγραψε τον περιηγητή Tor και εγκατάστησέ 
τον ξανά. Σε περίπτωση "
+"αναβάθμισης μην προσθέσεις απλά τα 
καινούρια στα παλιά αρχεία του περιηγητή "
+"Tor. Σιγουρέψου πως έχουν διαγραφεί πλήρως 
από τα πριν."
 
 #: troubleshooting.page:64
 msgid "Is your connection censored?"
@@ -1838,6 +1841,10 @@ msgid ""
 "Issues page to see if the problem you are experiencing is already "
 "listed there."
 msgstr ""
+"Ο περιηγητής Tor είναι συνεχώς υπό κατασκευ
ή και κάποια ζητήματα μας είναι "
+"γνωστά αλλά δεν έχουν λυθεί ακόμη. Π
αρακαλούμε, δες τη σελίδαΓνωστά Ζητήματαγια να 
επιβεβαιώσεις αν το ζήτημα "
+"που αντιμετωπίζεις βρίσκεται ήδη στη 
λίστα μας."
 
 #: uninstalling.page:6
 msgid "How to remove Tor Browser from your system"
@@ -1886,6 +1893,8 @@ msgstr "Αδειάστε τον Κάδο 
Απορριμάτων σας"
 msgid ""
 "Note that your operating system’s standard “Uninstall” utility is not 
used."
 msgstr ""
+"Θυμήσου πως δεν χρησιμοποιείται η συυ
νηθισμένη λειτουργία \"Απεγκατάσταση\" "
+"του λειτουργικού σου συστήματος."
 
 #: updating.page:6
 msgid "How to update Tor Browser"
@@ -1913,6 +1922,10 @@ msgid ""
 "may see a written update indicator when Tor Browser opens. You can update "
 "either automatically or manually."
 msgstr ""
+"Ο περιηγητής Tor θα σε προτρέψει να 
αναβαθμίσεις το λογισμικό μόλις "
+"δημοσιευθεί καινούρια έκδοση: το 
εικονίδιο του Tor θα έχει ένα κίτρινο "
+"τρίγωνο και μπορεί να δεις μια γραπτή 
ένδειξη για αναβάθμιση όταν ανοίξει ο "
+"περιηγητής Tor. Μπορείς να κάνεις την 
αναβάθμιση αυτόματα ή χειροκίνητα."
 
 #: updating.page:26
 msgid "Updating Tor Browser automatically"

___
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

2018-09-20 Thread translation
commit c809f904bdddf89697306f4b781e4d9e999a2602
Author: Translation commit bot 
Date:   Thu Sep 20 13:15:10 2018 +

Update translations for abouttor-homepage_completed
---
 ko/aboutTor.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ko/aboutTor.dtd b/ko/aboutTor.dtd
index 7c4d0ea69..984b53af8 100644
--- a/ko/aboutTor.dtd
+++ b/ko/aboutTor.dtd
@@ -20,7 +20,7 @@
 
 
 
-
+
 
 https://www.torproject.org/getinvolved/volunteer.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

2018-09-20 Thread translation
commit 2c75f860bf0fcdfc6e82723c1aadf36488b0e335
Author: Translation commit bot 
Date:   Thu Sep 20 13:15:04 2018 +

Update translations for abouttor-homepage
---
 ko/aboutTor.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ko/aboutTor.dtd b/ko/aboutTor.dtd
index 7c4d0ea69..984b53af8 100644
--- a/ko/aboutTor.dtd
+++ b/ko/aboutTor.dtd
@@ -20,7 +20,7 @@
 
 
 
-
+
 
 https://www.torproject.org/getinvolved/volunteer.html.en;>
 

___
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

2018-09-20 Thread translation
commit 57c969acb2dd73ec59c001c02529309ab6c6db5f
Author: Translation commit bot 
Date:   Thu Sep 20 12:47:35 2018 +

Update translations for tor-browser-manual
---
 el/el.po | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/el/el.po b/el/el.po
index 63a39d0c3..6a01c17e2 100644
--- a/el/el.po
+++ b/el/el.po
@@ -1747,6 +1747,8 @@ msgid ""
 "Snowflake is an improvement upon Flashproxy. It sends your traffic through "
 "WebRTC, a peer-to-peer protocol with built-in NAT punching."
 msgstr ""
+"Το Snowflake είναι μία βελτίωση στο Flashproxy. 
Στέλνει την κίνησή σου μέσα "
+"από το WebRTC, έναν έλεγχο peer-to-peer με 
προσαρτημένη εκκίνηση ΝΑΤ."
 
 #: troubleshooting.page:6
 msgid "What to do if Tor Browser doesn’t work"
@@ -1758,6 +1760,9 @@ msgid ""
 " running the program, and clicking the “Connect” button if you are using 
it "
 "for the first time."
 msgstr ""
+"Θα πρέπει να είσαι σε θέση να αρχίσεις την 
περιήγηση στο διαδίκτυο "
+"χρησιμοποιώντας τον περιηγητή Tor αμέσως 
μετά το τρέξιμο του προγράμματος "
+"και επιλέγοντας το \"Σύνδεση\" αν τον 
χρησιμοποιείς για πρώτη φορά."
 
 #: troubleshooting.page:21
 msgid "Quick fixes"
@@ -1793,6 +1798,9 @@ msgid ""
 "Tor from running. You may need to consult the documentation for your "
 "antivirus software if you do not know how to do this."
 msgstr ""
+"Σιγουρέψου ότι οποιοδήποτε πρόγραμμα 
antivirus έχεις εγκαταστήσει δεν "
+"σταματά τη λειτουργία του Tor. Μπορεί να 
χρειαστεί να συμβουλευτείςτα "
+"έγγραφα για το λογισμικό antivirus σου, αν δεν 
γνωρίζεις πώς να το κάνεις."
 
 #: troubleshooting.page:49
 msgid "Temporarily disable your firewall."
@@ -1893,6 +1901,10 @@ msgid ""
 "outdated version of the software, you may be vulnerable to serious security "
 "flaws that compromise your privacy and anonymity."
 msgstr ""
+"Ο Tor Browser πρέπει να είναι διαρκώς 
ενημερωμένος. Αν συνεχίσετε να "
+"χρησιμοποιείτε μια παλιά έκδοση του 
λογισμικού, μπορεί να είστε ευάλωτοι σε "
+"σοβαρά σφάλματα ασφαλείας που να θέτουν 
σε κίνδυνο την ιδιωτικότητα και την "
+"ανωνυμία σας."
 
 #: updating.page:18
 msgid ""
@@ -1924,6 +1936,8 @@ msgid ""
 "When you are prompted to update Tor Browser, click on the Torbutton icon, "
 "then select “Check for Tor Browser Update”."
 msgstr ""
+"Όταν σας ζητηθεί να αναβαθμίσετε τον Tor 
Browser, κάντε κλικ στο εικονίδιο "
+"Torbutton και στη συνέχεια επιλέξτε \"Check for Tor 
Browser Update\"."
 
 #. This is a reference to an external file such as an image or video. When
 #. the file changes, the md5 hash will change to let you know you need to

___
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

2018-09-20 Thread translation
commit aeab2e4347b545447796c297baef434c22d7fe69
Author: Translation commit bot 
Date:   Thu Sep 20 11:47:20 2018 +

Update translations for tor-browser-manual
---
 el/el.po | 4 
 1 file changed, 4 insertions(+)

diff --git a/el/el.po b/el/el.po
index aff6f2924..63a39d0c3 100644
--- a/el/el.po
+++ b/el/el.po
@@ -1861,6 +1861,10 @@ msgid ""
 "default location, however the folder will be named \"tor-browser_en-US\" if "
 "you are running the English Tor Browser."
 msgstr ""
+"Εντοπίστε το φάκελο του Tor Browser. Η 
προεπιλεγμένη θέση στα Windows είναι "
+"η επιφάνεια εργασίας· στο Mac OS X είναι ο 
φάκελος \"Εφαρμογές\"· Στα Linux,"
+" δεν υπάρχει προεπιλεγμένη θέση, ωστόσο ο 
φάκελος θα ονομάζεται \"tor-"
+"browser_en-US\" εάν εκτελείτε τον Tor Browser στα 
αγγλικά."
 
 #: uninstalling.page:32
 msgid "Delete the Tor Browser folder."

___
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

2018-09-20 Thread translation
commit 1d23c7b2dd872c4f9b24521ecf40d71f67d1b7fd
Author: Translation commit bot 
Date:   Thu Sep 20 10:47:19 2018 +

Update translations for tor-browser-manual
---
 el/el.po | 54 ++
 1 file changed, 46 insertions(+), 8 deletions(-)

diff --git a/el/el.po b/el/el.po
index b4cb6be9c..aff6f2924 100644
--- a/el/el.po
+++ b/el/el.po
@@ -1515,7 +1515,7 @@ msgstr ""
 
 #: translate.page:30
 msgid "Enter your information into the fields and click the 'Sign Up' button:"
-msgstr ""
+msgstr "Συμπλήρωσε τις πληροφορίες σου στα 
πεδία και πάτησε \"Εγγραφή\":"
 
 #. This is a reference to an external file such as an image or video. When
 #. the file changes, the md5 hash will change to let you know you need to
@@ -1535,6 +1535,8 @@ msgid ""
 "Fill out the next page with your name and select \"Localization\" and "
 "\"Translator\" from the drop-down menus:"
 msgstr ""
+"Συμπλήρωσε την επόμενη σελίδα με το όνομά 
σου και επίλεξε \"Τοπικοποίηση\" "
+"στο μενού που θα εμφανιστεί:"
 
 #. This is a reference to an external file such as an image or video. When
 #. the file changes, the md5 hash will change to let you know you need to
@@ -1552,12 +1554,16 @@ msgstr ""
 #: translate.page:47
 msgid "On the next page, select 'Join an existing project' and continue."
 msgstr ""
+"Στην επόμενη σελίδα, επίλεξε τη \"Συ
μμετοχή σε υπάρχον πρότζεκτ\" και "
+"συνέχισε."
 
 #: translate.page:52
 msgid ""
 "On the next page, select the languages you speak from the drop-down menu and"
 " continue."
 msgstr ""
+"Στην επόμενη σελίδα, επίλεξε τις γλώσσες 
που μιλάς από το μενού που θα "
+"εμφανιστεί και συνέχισε."
 
 #: translate.page:58
 msgid ""
@@ -1565,10 +1571,13 @@ msgid ""
 "href=\"https://www.transifex.com/otf/torproject/\;>Tor Transifex "
 "page."
 msgstr ""
+"Τώρα έχεις εγγραφεί! Πήγαινε στη https://www.transifex.com/otf/torproject/\;>Σελίδα του Tor 
στο "
+"Transifex."
 
 #: translate.page:64
 msgid "Click the blue 'Join Team' button on the far right:"
-msgstr ""
+msgstr "Πάτησε το μπλε σήμα \"Μπες στην ομάδα\" 
πάνω δεξιά:"
 
 #. This is a reference to an external file such as an image or video. When
 #. the file changes, the md5 hash will change to let you know you need to
@@ -1587,6 +1596,8 @@ msgstr ""
 msgid ""
 "Select the language you would like to translate from the dropdown menu:"
 msgstr ""
+"Επίλεξε τη γλώσσα στην οποία θα ήθελες να 
μεταφράσεις από το μενού που θα "
+"εμφανιστεί:"
 
 #. This is a reference to an external file such as an image or video. When
 #. the file changes, the md5 hash will change to let you know you need to
@@ -1603,7 +1614,7 @@ msgstr ""
 
 #: translate.page:80
 msgid "A notification will now show up on the top of the page like so:"
-msgstr ""
+msgstr "Μία ειδοποίηση θα εμφανιστεί στην κορυ
φή της σελίδας όπως ακολουθεί:"
 
 #. This is a reference to an external file such as an image or video. When
 #. the file changes, the md5 hash will change to let you know you need to
@@ -1625,14 +1636,19 @@ msgid ""
 "Transifex page when you are ready to begin. Thanks for your interest "
 "in helping the project!"
 msgstr ""
+"Αφού επιβεβαιωθεί η συνδρομή σου, μπορείς 
να ξεκινήσεις τη μετάφραση. Απλώς "
+"πήγαινε πίσω στη https://www.transifex.com/otf/torproject/\;>Σελίδα του Tor 
στο "
+"Transifex όταν είσαι έτοιμος να 
ξεκινήσεις. Ευχαριστούμε για την "
+"επιθυμία σου να βοηθήσεις στο πρότζεκτ!"
 
 #: transports.page:6 transports.page:20
 msgid "Types of pluggable transport"
-msgstr ""
+msgstr "Τύποι των pluggable transport"
 
 #: transports.page:10
 msgid "Pluggable Transports"
-msgstr ""
+msgstr "Pluggable Transports"
 
 #: transports.page:12
 msgid ""
@@ -1641,12 +1657,18 @@ msgid ""
 "Provider or other authority is actively blocking connections to the Tor "
 "network."
 msgstr ""
+"Τα Pluggable transports είναι εργαλεία τα οποία 
μπορεί να χρησιμοποιήσει ο "
+"Tor για να κρύψει την κίνηση που εκπέμπει. Αυ
τό μπορεί να χρησιμεύσει στην "
+"περίπτωση του ένας πάροχος ίντερνετ ή 
κάποια άλλη αρχή εμποδίζει ενεργά τις "
+"συνδέσεις στο δίκτυο του Tor."
 
 #: transports.page:21
 msgid ""
 "Currently there are six 

[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 7df1e0b6cf5d713b7a49787eb35eeb0ed63fb2f6
Author: Translation commit bot 
Date:   Thu Sep 20 10:18:50 2018 +

Update translations for support-portal
---
 contents+el.po | 1 +
 1 file changed, 1 insertion(+)

diff --git a/contents+el.po b/contents+el.po
index a40307678..e599be420 100644
--- a/contents+el.po
+++ b/contents+el.po
@@ -2197,6 +2197,7 @@ msgstr "Αυτή είναι φυσιολογική συ
μπεριφορά του
 #: (content/tbb/tbb-28/contents+en.lrquestion.description)
 msgid "Removing Tor Browser from your system is simple:"
 msgstr ""
+"Η διαδικασία κατάργησης του Tor Browser από το 
σύστημά σας είναι απλή:"
 
 #: http//localhost/tormobile/tormobile-5/
 #: (content/tormobile/tormobile-5/contents+en.lrquestion.seo_slug)

___
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

2018-09-20 Thread translation
commit 08fff018444d2a4d42efd3035dba934790ec71b7
Author: Translation commit bot 
Date:   Thu Sep 20 10:17:19 2018 +

Update translations for tor-browser-manual
---
 el/el.po | 40 +++-
 1 file changed, 35 insertions(+), 5 deletions(-)

diff --git a/el/el.po b/el/el.po
index e7fd0f16b..b4cb6be9c 100644
--- a/el/el.po
+++ b/el/el.po
@@ -1376,7 +1376,7 @@ msgstr ""
 
 #: security-slider.page:21
 msgid "Accessing the Security Slider"
-msgstr ""
+msgstr "Πρόσβαση στον Slider Ασφαλείας"
 
 #. This is a reference to an external file such as an image or video. When
 #. the file changes, the md5 hash will change to let you know you need to
@@ -1395,6 +1395,8 @@ msgstr ""
 msgid ""
 "The Security Slider is located in Torbutton’s “Security Settings” menu."
 msgstr ""
+"Ο Slider Ασφαλείας βρίσκεται στο σήμα του Tor, 
στο μενού \"Ρυθμίσεις "
+"Ασφάλειας\"."
 
 #: security-slider.page:32
 msgid "Security Levels"
@@ -1418,6 +1420,9 @@ msgid ""
 "Increasing the level of the Security Slider will disable or partially "
 "disable certain browser features to protect against possible attacks."
 msgstr ""
+"Η αύξηση του επιπέδου του Slider Ασφαλείας θα 
απενεργοποιήσει πλήρως ή "
+"μερικώς κάποιες λειτουργίες του 
περιηγητή, για να σε προστατέψει από 
πιθανές"
+" επιθέσεις."
 
 #: security-slider.page:42
 msgid "Safest"
@@ -1490,16 +1495,23 @@ msgid ""
 " third-party that faciliates our translations. Below is an outline of how to"
 " sign up and begin."
 msgstr ""
+"Αν ενδιαφέρεστε να βοηθήσετε το project με τη 
μετάφραση του manual ή του Tor"
+" Browser στη γλώσσα σας, η βοήθειά σας θα 
εκτιμηθεί ιδιαίτερα! Για να "
+"ξεκινήσετε να συνεισφέρετε θα πρέπει να 
εγγραφείτε στο Transifex, το τρίτο "
+"μέρος που διευκολύνει με τις μεταφράσεις 
μας. Παρακάτω περιγράφεται το πως "
+"να εγγραφείτε και να ξεκινήσετε."
 
 #: translate.page:21
 msgid "Signing up on Transifex"
-msgstr ""
+msgstr "Εγγραφή στο Transifex"
 
 #: translate.page:24
 msgid ""
 "Head over to the https://transifex.com/signup/\;>Transifex "
 "signup page."
 msgstr ""
+"Πήγαινε στην https://transifex.com/signup/\;>σελίδα εγγραφής "
+"του Transifex."
 
 #: translate.page:30
 msgid "Enter your information into the fields and click the 'Sign Up' button:"
@@ -1515,6 +1527,8 @@ msgid ""
 "external ref='media/translate/tr1.png' "
 "md5='a94cfd90c9982916a987e2807ae5e4f6'"
 msgstr ""
+"external ref='media/translate/tr1.png' "
+"md5='a94cfd90c9982916a987e2807ae5e4f6'"
 
 #: translate.page:38
 msgid ""
@@ -1532,6 +1546,8 @@ msgid ""
 "external ref='media/translate/tr2.png' "
 "md5='06debc9e9dbc7ac198103a89a6961774'"
 msgstr ""
+"external ref='media/translate/tr2.png' "
+"md5='06debc9e9dbc7ac198103a89a6961774'"
 
 #: translate.page:47
 msgid "On the next page, select 'Join an existing project' and continue."
@@ -1564,6 +1580,8 @@ msgid ""
 "external ref='media/translate/tr3.png' "
 "md5='7da6c9968cabbe9c1ecc7cdf645407e8'"
 msgstr ""
+"external ref='media/translate/tr3.png' "
+"md5='7da6c9968cabbe9c1ecc7cdf645407e8'"
 
 #: translate.page:72
 msgid ""
@@ -1580,6 +1598,8 @@ msgid ""
 "external ref='media/translate/tr4.png' "
 "md5='835a266a5d4c368a2777cf171980f0b4'"
 msgstr ""
+"external ref='media/translate/tr4.png' "
+"md5='835a266a5d4c368a2777cf171980f0b4'"
 
 #: translate.page:80
 msgid "A notification will now show up on the top of the page like so:"
@@ -1595,6 +1615,8 @@ msgid ""
 "external ref='media/translate/tr5.png' "
 "md5='935417a5d3b4a89e5d00508ea671a1fc'"
 msgstr ""
+"external ref='media/translate/tr5.png' "
+"md5='935417a5d3b4a89e5d00508ea671a1fc'"
 
 #: translate.page:88
 msgid ""
@@ -1690,7 +1712,7 @@ msgstr ""
 
 #: troubleshooting.page:6
 msgid "What to do if Tor Browser doesn’t work"
-msgstr ""
+msgstr "Τι να κάνετε αν ο Tor Browser δεν λειτουργεί"
 
 #: troubleshooting.page:12
 msgid ""
@@ -1736,7 +1758,7 @@ msgstr ""
 
 #: troubleshooting.page:49
 msgid "Temporarily disable your firewall."
-msgstr ""
+msgstr "Απενεργοποιήστε προσωρινά το τείχος 
προστασίας."
 
 #: troubleshooting.page:54
 msgid ""
@@ -1746,7 +1768,7 @@ msgstr ""
 
 #: troubleshooting.page:64
 msgid "Is your connection censored?"
-msgstr ""
+msgstr "Λογοκρίνεται η σύνδεση σας;"
 
 #: troubleshooting.page:65
 msgid ""
@@ -1785,10 +1807,14 @@ msgid ""
 " computer. Uninstalling Tor Browser will not affect your system’s software "
 "or settings."
 msgstr ""
+"Ο Tor Browser δεν 

[tor-commits] [tor-browser-build/maint-8.0] Picking new Tor Launcher tag up for realz

2018-09-20 Thread gk
commit cfdec2c3c4e354885652bcaeda0c3d085524a4fb
Author: Georg Koppen 
Date:   Thu Sep 20 09:50:29 2018 +

Picking new Tor Launcher tag up for realz
---
 projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt | 2 +-
 projects/tor-launcher/config| 2 +-
 rbm.conf| 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt 
b/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
index 12ae6ff..0c7d943 100644
--- a/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
+++ b/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
@@ -1,4 +1,4 @@
-Tor Browser 8.0.1 -- September 20 2018
+Tor Browser 8.0.1 -- September 24 2018
  * All platforms
* Update Tor to 0.3.4.8
* Update Torbutton to 2.0.7
diff --git a/projects/tor-launcher/config b/projects/tor-launcher/config
index 9e00653..9211817 100644
--- a/projects/tor-launcher/config
+++ b/projects/tor-launcher/config
@@ -1,5 +1,5 @@
 # vim: filetype=yaml sw=2
-version: 0.2.16.5
+version: 0.2.16.6
 git_url: https://git.torproject.org/tor-launcher.git
 git_hash: '[% c("version") %]'
 gpg_keyring: torbutton.gpg
diff --git a/rbm.conf b/rbm.conf
index 529cd56..9f10ba5 100644
--- a/rbm.conf
+++ b/rbm.conf
@@ -16,7 +16,7 @@ buildconf:
 
 var:
   torbrowser_version: '8.0.1'
-  torbrowser_build: 'build2'
+  torbrowser_build: 'build3'
   torbrowser_incremental_from:
 - 8.0
   project_name: tor-browser

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal_completed] Update translations for support-portal_completed

2018-09-20 Thread translation
commit 3564ba6b93db6a5cd0cb731812909fac176f0e57
Author: Translation commit bot 
Date:   Thu Sep 20 09:48:59 2018 +

Update translations for support-portal_completed
---
 contents+es_AR.po | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/contents+es_AR.po b/contents+es_AR.po
index 8be1eb8b8..3b00bf9d4 100644
--- a/contents+es_AR.po
+++ b/contents+es_AR.po
@@ -21,8 +21,8 @@ msgstr ""
 msgid ""
 "Modifying the way that Tor creates its circuits is strongly discouraged."
 msgstr ""
-"Nos oponemos fuertemente a la modificación de la manera en que Tor crea sus "
-"cicuitos."
+"Nos oponemos enfáticamente a la modificación de la manera en que Tor crea "
+"sus cicuitos."
 
 #: http//localhost/tbb/tbb-17/
 #: (content/tbb/tbb-17/contents+en.lrquestion.description)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 0025b88d909453d48c9bdfbecac279e5a26671c2
Author: Translation commit bot 
Date:   Thu Sep 20 09:48:54 2018 +

Update translations for support-portal
---
 contents+el.po| 15 ---
 contents+es_AR.po |  4 ++--
 contents+ko.po|  6 +++---
 3 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/contents+el.po b/contents+el.po
index 0b8d99f59..a40307678 100644
--- a/contents+el.po
+++ b/contents+el.po
@@ -3453,6 +3453,9 @@ msgid ""
 "connecting to http://3g2upl4pq6kufc4m.onion\;>DuckDuckGo's onion "
 "service."
 msgstr ""
+"Μπορείτε επίσης να εξασφαλίσετε ότι έχετε 
πρόσβαση σε άλλες υπηρεσίες onion,"
+" με σύνδεση στο http://3g2upl4pq6kufc4m.onion\;>DuckDuckGo's Onion"
+" Service."
 
 #: http//localhost/misc/misc-14/
 #: (content/misc/misc-14/contents+en.lrquestion.seo_slug)
@@ -3484,6 +3487,8 @@ msgid ""
 "11/1/2017 21:11:44 PM.300 [WARN] Failed to find node for hop 0 of our path. "
 "Discarding this circuit."
 msgstr ""
+"11/1/2017 21:11:44 PM.300 [WARN] Failed to find node for hop 0 of our path. "
+"Discarding this circuit."
 
 #: http//localhost/tbb/tbb-16/
 #: (content/tbb/tbb-16/contents+en.lrquestion.description)
@@ -3503,6 +3508,9 @@ msgid ""
 "href=\"https://blog.torproject.org\;>blog for future "
 "announcements and details regarding this project."
 msgstr ""
+" Παρακολουθήστε το https://blog.torproject.org\;>ιστολόγιό μας 
για "
+"μελλοντικές ανακοινώσεις και 
λεπτομέρειες σχετικά με αυτό το έργο."
 
 #: http//localhost/gettor/gettor-1/
 #: (content/gettor/gettor-1/contents+en.lrquestion.title)
@@ -3518,6 +3526,7 @@ msgstr ""
 msgid ""
 "19.11.2017 00:04:47.400 [NOTICE] Opening Socks listener on 127.0.0.1:9150"
 msgstr ""
+"19.11.2017 00:04:47.400 [NOTICE] Opening Socks listener on 127.0.0.1:9150"
 
 #: http//localhost/tormobile/tormobile-4/
 #: (content/tormobile/tormobile-4/contents+en.lrquestion.seo_slug)
@@ -3527,7 +3536,7 @@ msgstr ""
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "Log notice file /var/log/tor/notices.log"
-msgstr ""
+msgstr "Log notice file /var/log/tor/notices.log"
 
 #: http//localhost/misc/misc-11/
 #: (content/misc/misc-11/contents+en.lrquestion.title)
@@ -3568,7 +3577,7 @@ msgstr "tor-messenger"
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "## Set the nickname of this relay"
-msgstr ""
+msgstr "## Set the nickname of this relay"
 
 #: http//localhost/tbb/tbb-22/
 #: (content/tbb/tbb-22/contents+en.lrquestion.title)
@@ -3598,7 +3607,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy"
-msgstr ""
+msgstr "ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy"
 
 #: http//localhost/operators/ (content/operators/contents+en.lrtopic.title)
 msgid "Operators"
diff --git a/contents+es_AR.po b/contents+es_AR.po
index 8be1eb8b8..3b00bf9d4 100644
--- a/contents+es_AR.po
+++ b/contents+es_AR.po
@@ -21,8 +21,8 @@ msgstr ""
 msgid ""
 "Modifying the way that Tor creates its circuits is strongly discouraged."
 msgstr ""
-"Nos oponemos fuertemente a la modificación de la manera en que Tor crea sus "
-"cicuitos."
+"Nos oponemos enfáticamente a la modificación de la manera en que Tor crea "
+"sus cicuitos."
 
 #: http//localhost/tbb/tbb-17/
 #: (content/tbb/tbb-17/contents+en.lrquestion.description)
diff --git a/contents+ko.po b/contents+ko.po
index 231bf3423..adae96c77 100644
--- a/contents+ko.po
+++ b/contents+ko.po
@@ -6,14 +6,14 @@
 # Revi_, 2018
 # Philipp Sauter , 2018
 # snotree , 2018
-# graphene , 2018
+# Oliver Lee , 2018
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2018-09-14 21:15+CET\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: graphene , 2018\n"
+"Last-Translator: Oliver Lee , 2018\n"
 "Language-Team: Korean (https://www.transifex.com/otf/teams/1519/ko/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -84,7 +84,7 @@ msgstr ""
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "## If you control multiple relays, include then in the family"
-msgstr ""
+msgstr "## If you control multiple relays, include then in the family"
 
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 1a37dbdd31a10bda161be034b366e596de0b0469
Author: Translation commit bot 
Date:   Thu Sep 20 09:19:08 2018 +

Update translations for support-portal
---
 contents+es_AR.po | 45 -
 1 file changed, 20 insertions(+), 25 deletions(-)

diff --git a/contents+es_AR.po b/contents+es_AR.po
index d275e5494..8be1eb8b8 100644
--- a/contents+es_AR.po
+++ b/contents+es_AR.po
@@ -1,6 +1,4 @@
 # Translators:
-# Emma Peel, 2018
-# kaze kaze , 2018
 # Zuhualime Akoochimoya, 2018
 # guille1981 , 2018
 # Joaquín Serna, 2018
@@ -3979,8 +3977,8 @@ msgid ""
 "11/1/2017 21:11:44 PM.300 [WARN] Failed to find node for hop 0 of our path. "
 "Discarding this circuit."
 msgstr ""
-"11/1/2017 21:11:44 PM.300 [ADVERTENCIA] Fallo en encontrar nodo para salto 0"
-" de nuestro camino. Descartando éste circuito."
+"11/1/2017 21:11:44 PM.300 [WARN] Failed to find node for hop 0 of our path. "
+"Discarding this circuit."
 
 #: http//localhost/tbb/tbb-16/
 #: (content/tbb/tbb-16/contents+en.lrquestion.description)
@@ -3990,8 +3988,8 @@ msgid ""
 "anonymity."
 msgstr ""
 "Obtenés la mejor seguridad que Tor puede proveer cuando dejás la selección 
"
-"de la ruta a Tor; sobreimponiendo los nodos de entrada/salida puede "
-"comprometer tu anonimato."
+"de la ruta a Tor; forzando los nodos de entrada/salida puede comprometer tu "
+"anonimato."
 
 #: http//localhost/tormobile/tormobile-5/
 #: (content/tormobile/tormobile-5/contents+en.lrquestion.description)
@@ -4000,7 +3998,7 @@ msgid ""
 "href=\"https://blog.torproject.org\;>blog for future "
 "announcements and details regarding this project."
 msgstr ""
-"Por favor vigilá nuestro https://blog.torproject.org\;>blog por futuros anuncios y "
 "detalles acerca de éste proyecto."
 
@@ -4009,7 +4007,7 @@ msgstr ""
 #: http//localhost/censorship/censorship-3/
 #: (content/censorship/censorship-3/contents+en.lrquestion.title)
 msgid "How do I download Tor if the torproject.org is blocked?"
-msgstr "¿Como descargo Tor si torproject.org esta bloqueado?"
+msgstr "¿Como descargo Tor si torproject.org está bloqueado?"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -4018,8 +4016,7 @@ msgstr "¿Como descargo Tor si torproject.org esta 
bloqueado?"
 msgid ""
 "19.11.2017 00:04:47.400 [NOTICE] Opening Socks listener on 127.0.0.1:9150"
 msgstr ""
-"19.11.2017 00:04:47.400 [NOTICIA] Abriendo proceso de escucha SOCKS en "
-"127.0.0.1:9150"
+"19.11.2017 00:04:47.400 [NOTICE] Opening Socks listener on 127.0.0.1:9150"
 
 #: http//localhost/tormobile/tormobile-4/
 #: (content/tormobile/tormobile-4/contents+en.lrquestion.seo_slug)
@@ -4072,7 +4069,7 @@ msgstr "tor-messenger"
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "## Set the nickname of this relay"
-msgstr "## Ajustá el apodo de éste relevo"
+msgstr "## Establecé el apodo de éste relevo"
 
 #: http//localhost/tbb/tbb-22/
 #: (content/tbb/tbb-22/contents+en.lrquestion.title)
@@ -4109,9 +4106,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy"
-msgstr ""
-"ServerTransportPlugin obfs4\n"
-"exec /usr/bin/obfs4proxy"
+msgstr "ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy"
 
 #: http//localhost/operators/ (content/operators/contents+en.lrtopic.title)
 msgid "Operators"
@@ -4124,7 +4119,7 @@ msgstr "* Ruso (ru)"
 
 #: http//localhost/tormobile/ (content/tormobile/contents+en.lrtopic.seo_slug)
 msgid "tor-mobile"
-msgstr "tor-mobile"
+msgstr "tor-móvil"
 
 #: http//localhost/tbb/tbb-18/
 #: (content/tbb/tbb-18/contents+en.lrquestion.seo_slug)
@@ -4175,7 +4170,7 @@ msgid ""
 " https://tb-manual.torproject.org/en-;
 "US/circumvention.html\">censorship."
 msgstr ""
-"Para más información, por favor vea la sección https://tb-;
+"Para más información, por favor mirá la sección https://tb-;
 "manual.torproject.org/en-US/\">Manual de Usuario del navegador "
 "Tor sobre la https://tb-manual.torproject.org/en-;
 "US/circumvention.html\">censura."
@@ -4243,7 +4238,7 @@ msgstr "¿Cómo corro un relevo de salida en Debian?"
 
 #: http//localhost/tbb/ (content/tbb/contents+en.lrtopic.title)
 msgid "Tor Browser"
-msgstr "Tor Browser"
+msgstr "Navegador Tor"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -4262,8 +4257,8 @@ msgid ""
 "I urge you to reconsider this decision; Tor is used by people all over the "
 "world to protect their privacy and fight censorship."
 msgstr ""
-"\"Te urjo a que reconsideres ésta decisión; Tor es utilizado por gente "
-"alrededor del mundo para proteger su privacidad y combatir censura\"."
+"Te urjo a que reconsideres ésta decisión; Tor es utilizado por gente "
+"alrededor del mundo para proteger su 

[tor-commits] [translation/support-portal_completed] Update translations for support-portal_completed

2018-09-20 Thread translation
commit 1eb35f48658539d50fe39309a2df31c4979f801e
Author: Translation commit bot 
Date:   Thu Sep 20 09:19:13 2018 +

Update translations for support-portal_completed
---
 contents+es_AR.po | 45 -
 1 file changed, 20 insertions(+), 25 deletions(-)

diff --git a/contents+es_AR.po b/contents+es_AR.po
index d275e5494..8be1eb8b8 100644
--- a/contents+es_AR.po
+++ b/contents+es_AR.po
@@ -1,6 +1,4 @@
 # Translators:
-# Emma Peel, 2018
-# kaze kaze , 2018
 # Zuhualime Akoochimoya, 2018
 # guille1981 , 2018
 # Joaquín Serna, 2018
@@ -3979,8 +3977,8 @@ msgid ""
 "11/1/2017 21:11:44 PM.300 [WARN] Failed to find node for hop 0 of our path. "
 "Discarding this circuit."
 msgstr ""
-"11/1/2017 21:11:44 PM.300 [ADVERTENCIA] Fallo en encontrar nodo para salto 0"
-" de nuestro camino. Descartando éste circuito."
+"11/1/2017 21:11:44 PM.300 [WARN] Failed to find node for hop 0 of our path. "
+"Discarding this circuit."
 
 #: http//localhost/tbb/tbb-16/
 #: (content/tbb/tbb-16/contents+en.lrquestion.description)
@@ -3990,8 +3988,8 @@ msgid ""
 "anonymity."
 msgstr ""
 "Obtenés la mejor seguridad que Tor puede proveer cuando dejás la selección 
"
-"de la ruta a Tor; sobreimponiendo los nodos de entrada/salida puede "
-"comprometer tu anonimato."
+"de la ruta a Tor; forzando los nodos de entrada/salida puede comprometer tu "
+"anonimato."
 
 #: http//localhost/tormobile/tormobile-5/
 #: (content/tormobile/tormobile-5/contents+en.lrquestion.description)
@@ -4000,7 +3998,7 @@ msgid ""
 "href=\"https://blog.torproject.org\;>blog for future "
 "announcements and details regarding this project."
 msgstr ""
-"Por favor vigilá nuestro https://blog.torproject.org\;>blog por futuros anuncios y "
 "detalles acerca de éste proyecto."
 
@@ -4009,7 +4007,7 @@ msgstr ""
 #: http//localhost/censorship/censorship-3/
 #: (content/censorship/censorship-3/contents+en.lrquestion.title)
 msgid "How do I download Tor if the torproject.org is blocked?"
-msgstr "¿Como descargo Tor si torproject.org esta bloqueado?"
+msgstr "¿Como descargo Tor si torproject.org está bloqueado?"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -4018,8 +4016,7 @@ msgstr "¿Como descargo Tor si torproject.org esta 
bloqueado?"
 msgid ""
 "19.11.2017 00:04:47.400 [NOTICE] Opening Socks listener on 127.0.0.1:9150"
 msgstr ""
-"19.11.2017 00:04:47.400 [NOTICIA] Abriendo proceso de escucha SOCKS en "
-"127.0.0.1:9150"
+"19.11.2017 00:04:47.400 [NOTICE] Opening Socks listener on 127.0.0.1:9150"
 
 #: http//localhost/tormobile/tormobile-4/
 #: (content/tormobile/tormobile-4/contents+en.lrquestion.seo_slug)
@@ -4072,7 +4069,7 @@ msgstr "tor-messenger"
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "## Set the nickname of this relay"
-msgstr "## Ajustá el apodo de éste relevo"
+msgstr "## Establecé el apodo de éste relevo"
 
 #: http//localhost/tbb/tbb-22/
 #: (content/tbb/tbb-22/contents+en.lrquestion.title)
@@ -4109,9 +4106,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy"
-msgstr ""
-"ServerTransportPlugin obfs4\n"
-"exec /usr/bin/obfs4proxy"
+msgstr "ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy"
 
 #: http//localhost/operators/ (content/operators/contents+en.lrtopic.title)
 msgid "Operators"
@@ -4124,7 +4119,7 @@ msgstr "* Ruso (ru)"
 
 #: http//localhost/tormobile/ (content/tormobile/contents+en.lrtopic.seo_slug)
 msgid "tor-mobile"
-msgstr "tor-mobile"
+msgstr "tor-móvil"
 
 #: http//localhost/tbb/tbb-18/
 #: (content/tbb/tbb-18/contents+en.lrquestion.seo_slug)
@@ -4175,7 +4170,7 @@ msgid ""
 " https://tb-manual.torproject.org/en-;
 "US/circumvention.html\">censorship."
 msgstr ""
-"Para más información, por favor vea la sección https://tb-;
+"Para más información, por favor mirá la sección https://tb-;
 "manual.torproject.org/en-US/\">Manual de Usuario del navegador "
 "Tor sobre la https://tb-manual.torproject.org/en-;
 "US/circumvention.html\">censura."
@@ -4243,7 +4238,7 @@ msgstr "¿Cómo corro un relevo de salida en Debian?"
 
 #: http//localhost/tbb/ (content/tbb/contents+en.lrtopic.title)
 msgid "Tor Browser"
-msgstr "Tor Browser"
+msgstr "Navegador Tor"
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -4262,8 +4257,8 @@ msgid ""
 "I urge you to reconsider this decision; Tor is used by people all over the "
 "world to protect their privacy and fight censorship."
 msgstr ""
-"\"Te urjo a que reconsideres ésta decisión; Tor es utilizado por gente "
-"alrededor del mundo para proteger su privacidad y combatir censura\"."
+"Te urjo a que reconsideres ésta decisión; Tor es utilizado por gente "
+"alrededor del mundo para proteger 

[tor-commits] [tor-browser-build/master] Pick up three Mozilla patches for 8.5a2

2018-09-20 Thread gk
commit 578b05727c639523148353d88bbec620b8bca64b
Author: Georg Koppen 
Date:   Thu Sep 20 09:15:13 2018 +

Pick up three Mozilla patches for 8.5a2
---
 projects/firefox/config | 2 +-
 projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt | 3 ++-
 rbm.conf| 2 +-
 3 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/projects/firefox/config b/projects/firefox/config
index aca6ce9..89e5ce6 100644
--- a/projects/firefox/config
+++ b/projects/firefox/config
@@ -1,7 +1,7 @@
 # vim: filetype=yaml sw=2
 version: '[% c("abbrev") %]'
 filename: 'firefox-[% c("version") %]-[% c("var/osname") %]-[% 
c("var/build_id") %]'
-git_hash: 'tor-browser-[% c("var/firefox_version") %]-[% 
c("var/torbrowser_branch") %]-1-build2'
+git_hash: 'tor-browser-[% c("var/firefox_version") %]-[% 
c("var/torbrowser_branch") %]-1-build3'
 tag_gpg_id: 1
 git_url: https://git.torproject.org/tor-browser.git
 gpg_keyring: torbutton.gpg
diff --git a/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt 
b/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
index 0276ef5..aec6bc4 100644
--- a/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
+++ b/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
@@ -1,4 +1,4 @@
-Tor Browser 8.5a2 -- September 20 2018
+Tor Browser 8.5a2 -- September 24 2018
  * All platforms
* Update Tor to 0.3.5.1-alpha
* Update Torbutton to 2.1
@@ -24,6 +24,7 @@ Tor Browser 8.5a2 -- September 20 2018
* Bug 27264: Bookmark items are not visible on the boomark toolbar
* Bug 27535: Enable TLS 1.3 draft version
* Bug 27623: Use MOZILLA_OFFICIAL for our builds
+   * Backport of Mozilla bug 1490585, 1475775, and 1489744
  * Windows:
* Bug 26381: about:tor page does not load on first start on Windows
  * Linux:
diff --git a/rbm.conf b/rbm.conf
index 461849c..65ffefa 100644
--- a/rbm.conf
+++ b/rbm.conf
@@ -16,7 +16,7 @@ buildconf:
 
 var:
   torbrowser_version: '8.5a2'
-  torbrowser_build: 'build1'
+  torbrowser_build: 'build2'
   torbrowser_incremental_from:
 - 8.5a1
   project_name: tor-browser

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor-browser/tor-browser-60.2.0esr-8.5-1] Bug 1490585 - Ensure we got an nsISSLStatus when deserializing in TransportSecurityInfo. r=jcj, a=RyanVM

2018-09-20 Thread gk
commit d29ffa3dedf25a5e656df2751eaa6b3c99964ce0
Author: Dana Keeler 
Date:   Thu Sep 13 16:59:21 2018 +

Bug 1490585 - Ensure we got an nsISSLStatus when deserializing in 
TransportSecurityInfo. r=jcj, a=RyanVM

Differential Revision: https://phabricator.services.mozilla.com/D5803

--HG--
extra : source : 45359b962851973a70afbde575e6b89242d408de
extra : intermediate-source : e9dd9434ad9ac15284429d904a45e4daf567c03b
---
 security/manager/ssl/TransportSecurityInfo.cpp |  7 +-
 .../ssl/tests/gtest/DeserializeCertTest.cpp| 86 ++
 2 files changed, 92 insertions(+), 1 deletion(-)

diff --git a/security/manager/ssl/TransportSecurityInfo.cpp 
b/security/manager/ssl/TransportSecurityInfo.cpp
index a57f91603ec4..c954e5517683 100644
--- a/security/manager/ssl/TransportSecurityInfo.cpp
+++ b/security/manager/ssl/TransportSecurityInfo.cpp
@@ -390,7 +390,12 @@ TransportSecurityInfo::Read(nsIObjectInputStream* stream)
   if (NS_FAILED(rv)) {
 return rv;
   }
-  mSSLStatus = BitwiseCast(supports.get());
+  nsCOMPtr castGuard(do_QueryInterface(supports));
+  if (castGuard) {
+mSSLStatus = BitwiseCast(castGuard.get());
+  } else {
+mSSLStatus = nullptr;
+  }
 
   nsCOMPtr failedCertChainSupports;
   rv = NS_ReadOptionalObject(stream, true, 
getter_AddRefs(failedCertChainSupports));
diff --git a/security/manager/ssl/tests/gtest/DeserializeCertTest.cpp 
b/security/manager/ssl/tests/gtest/DeserializeCertTest.cpp
index 868ecdba6b57..c3a4115b333d 100644
--- a/security/manager/ssl/tests/gtest/DeserializeCertTest.cpp
+++ b/security/manager/ssl/tests/gtest/DeserializeCertTest.cpp
@@ -94,3 +94,89 @@ TEST(psm_DeserializeCert, gecko46)
   ASSERT_EQ(NS_OK, rv);
   ASSERT_TRUE(cert);
 }
+
+TEST(psm_DeserializeCert, gecko64)
+{
+  // This is a serialization of nsITransportSecurityInfo from gecko 64.
+  // Deserialization should fail.
+  nsCString base64Serialization(
+  
"FnhllAKWRHGAlo+ESXykKAAAwEaphjojH6pBabDSgSnsfLHeAAgAAgEAMQFmCjIm"
+  
"kVxP+7sgiYWmMt8FvcOXmlQiTNWFiWlrbpbqgwX2MIIF8jCCBNqgAwIBAgIQDmTF+8I2reFLFyrrQceMsDANBgkqhkiG"
+  
"9w0BAQsFADBwMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMS8w"
+  
"LQYDVQQDEyZEaWdpQ2VydCBTSEEyIEhpZ2ggQXNzdXJhbmNlIFNlcnZlciBDQTAeFw0xNTExMDMwMDAwMDBaFw0xODExMjgxMjAw"
+  
"MDBaMIGlMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEUMBIGA1UEBxMLTG9zIEFuZ2VsZXMxPDA6BgNVBAoTM0lu"
+  
"dGVybmV0IENvcnBvcmF0aW9uIGZvciBBc3NpZ25lZCBOYW1lcyBhbmQgTnVtYmVyczETMBEGA1UECxMKVGVjaG5vbG9neTEYMBYG"
+  
"A1UEAxMPd3d3LmV4YW1wbGUub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs0CWL2FjPiXBl61lRfvvE0KzLJmG"
+  
"9LWAC3bcBjgsH6NiVVo2dt6uXfzi5bTm7F3K7srfUBYkLO78mraM9qizrHoIeyofrV/n+pZZJauQsPjCPxMEJnRoD8Z4KpWKX0Ly"
+  
"Du1SputoI4nlQ/htEhtiQnuoBfNZxF7WxcxGwEsZuS1KcXIkHl5VRJOreKFHTaXcB1qcZ/QRaBIv0yhxvK1yBTwWddT4cli6GfHc"
+  
"Ce3xGMaSL328Fgs3jYrvG29PueB6VJi/tbbPu6qTfwp/H1brqdjh29U52Bhb0fJkM9DWxCP/Cattcc7az8EXnCO+LK8vkhw/kAiJ"
+  
"WPKx4RBvgy73nwIDAQABo4ICUDCCAkwwHwYDVR0jBBgwFoAUUWj/kK8CB3U8zNllZGKiErhZcjswHQYDVR0OBBYEFKZPYB4fLdHn"
+  
"8SOgKpUW5Oia6m5IMIGBBgNVHREEejB4gg93d3cuZXhhbXBsZS5vcmeCC2V4YW1wbGUuY29tggtleGFtcGxlLmVkdYILZXhhbXBs"
+  
"ZS5uZXSCC2V4YW1wbGUub3Jngg93d3cuZXhhbXBsZS5jb22CD3d3dy5leGFtcGxlLmVkdYIPd3d3LmV4YW1wbGUubmV0MA4GA1Ud"
+  
"DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwdQYDVR0fBG4wbDA0oDKgMIYuaHR0cDovL2NybDMuZGln"
+  
"aWNlcnQuY29tL3NoYTItaGEtc2VydmVyLWc0LmNybDA0oDKgMIYuaHR0cDovL2NybDQuZGlnaWNlcnQuY29tL3NoYTItaGEtc2Vy"
+  
"dmVyLWc0LmNybDBMBgNVHSAERTBDMDcGCWCGSAGG/WwBATAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy5kaWdpY2VydC5jb20v"
+  
"Q1BTMAgGBmeBDAECAjCBgwYIKwYBBQUHAQEEdzB1MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wTQYIKwYB"
+  
"BQUHMAKGQWh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFNIQTJIaWdoQXNzdXJhbmNlU2VydmVyQ0EuY3J0MAwG"
+  
"A1UdEwEB/wQCMAAwDQYJKoZIhvcNAQELBQADggEBAISomhGn2L0LJn5SJHuyVZ3qMIlRCIdvqe0Q6ls+C8ctRwRO3UU3x8q8OH+2"
+  
"ahxlQmpzdC5al4XQzJLiLjiJ2Q1p+hub8MFiMmVPPZjb2tZm2ipWVuMRM+zgpRVM6nVJ9F3vFfUSHOb4/JsEIUvPY+d8/Krc+kPQ"
+  
"wLvyieqRbcuFjmqfyPmUv1U9QoI4TQikpw7TZU0zYZANP4C/gj4Ry48/znmUaRvy2kvIl7gRQ21qJTK5suoiYoYNo3J9T+pXPGU7"
+  
"Lydz/HwW+w0DpArtAaukI8aNX4ohFUKSwDSiIIWIWJiJGbEeIO0TIFwEVWTOnbNl/faPXpk5IRXicapqiILALwADAAEB"
+  
"BFAyNTYQUlNBLVBLQ1MxLVNIQTUxMgGVn7FlZRdIf6ub2JE75TGXrnTNpc0vRz+W9fC3//YsaANmCjImkVxP+7sg"
+  
"iYWmMt8FvcOXmlQiTNWFiWlrbpbqgwX2MIIF8jCCBNqgAwIBAgIQDmTF+8I2reFLFyrrQceMsDANBgkqhkiG9w0BAQsF"
+  
"ADBwMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMS8wLQYDVQQD"
+  
"EyZEaWdpQ2VydCBTSEEyIEhpZ2ggQXNzdXJhbmNlIFNlcnZlciBDQTAeFw0xNTExMDMwMDAwMDBaFw0xODExMjgxMjAwMDBaMIGl"
+  
"MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEUMBIGA1UEBxMLTG9zIEFuZ2VsZXMxPDA6BgNVBAoTM0ludGVybmV0"
+  
"IENvcnBvcmF0aW9uIGZvciBBc3NpZ25lZCBOYW1lcyBhbmQgTnVtYmVyczETMBEGA1UECxMKVGVjaG5vbG9neTEYMBYGA1UEAxMP"
+  

[tor-commits] [tor-browser/tor-browser-60.2.0esr-8.5-1] Bug 1475775 - Clean up old NSS DB file after upgrade if necessary. r=franziskus, r=mattn, a=RyanVM

2018-09-20 Thread gk
commit e47b36fb220d31308765559a6ae09045ffebbf8f
Author: David Keeler 
Date:   Tue Jul 17 13:51:00 2018 -0700

Bug 1475775 - Clean up old NSS DB file after upgrade if necessary. 
r=franziskus, r=mattn, a=RyanVM

Reviewers: franziskus, mattn

Bug #: 1475775

Differential Revision: https://phabricator.services.mozilla.com/D2202

--HG--
rename : 
security/manager/ssl/tests/unit/test_sdr_preexisting_with_password.js => 
security/manager/ssl/tests/unit/test_sdr_upgraded_with_password.js
rename : 
security/manager/ssl/tests/unit/test_sdr_preexisting_with_password/key3.db => 
security/manager/ssl/tests/unit/test_sdr_upgraded_with_password/key3.db
extra : source : 26ac31d53e50217dff8829e6d9bae18c7e36b812
extra : intermediate-source : 1e05e8939a189df7b3d8309ad7936079ec012057
---
 security/manager/ssl/nsNSSComponent.cpp|  48 +
 .../tests/unit/test_sdr_upgraded_with_password.js  | 115 +
 .../unit/test_sdr_upgraded_with_password/cert8.db  | Bin 0 -> 65536 bytes
 .../unit/test_sdr_upgraded_with_password/cert9.db  | Bin 0 -> 229376 bytes
 .../unit/test_sdr_upgraded_with_password/key3.db   | Bin 0 -> 16384 bytes
 .../unit/test_sdr_upgraded_with_password/key4.db   | Bin 0 -> 294912 bytes
 security/manager/ssl/tests/unit/xpcshell.ini   |   4 +
 7 files changed, 167 insertions(+)

diff --git a/security/manager/ssl/nsNSSComponent.cpp 
b/security/manager/ssl/nsNSSComponent.cpp
index da5dd60222ad..5d887f99dde0 100644
--- a/security/manager/ssl/nsNSSComponent.cpp
+++ b/security/manager/ssl/nsNSSComponent.cpp
@@ -1940,6 +1940,51 @@ AttemptToRenameBothPKCS11ModuleDBVersions(const 
nsACString& profilePath)
   }
   return AttemptToRenamePKCS11ModuleDB(profilePath, sqlModuleDBFilename);
 }
+
+// When we changed from the old dbm database format to the newer sqlite
+// implementation, the upgrade process left behind the existing files. Suppose 
a
+// user had not set a password for the old key3.db (which is about 99% of
+// users). After upgrading, both the old database and the new database are
+// unprotected. If the user then sets a password for the new database, the old
+// one will not be protected. In this scenario, we should probably just remove
+// the old database (it would only be relevant if the user downgraded to a
+// version of Firefox before 58, but we have to trade this off against the
+// user's old private keys being unexpectedly unprotected after setting a
+// password).
+// This was never an issue on Android because we always used the new
+// implementation.
+static void
+MaybeCleanUpOldNSSFiles(const nsACString& profilePath)
+{
+  UniquePK11SlotInfo slot(PK11_GetInternalKeySlot());
+  if (!slot) {
+return;
+  }
+  // Unfortunately we can't now tell the difference between "there already was 
a
+  // password when the upgrade happened" and "there was not a password but then
+  // the user added one after upgrading".
+  bool hasPassword = PK11_NeedLogin(slot.get()) &&
+ !PK11_NeedUserInit(slot.get());
+  if (!hasPassword) {
+return;
+  }
+  nsCOMPtr dbFile = do_CreateInstance("@mozilla.org/file/local;1");
+  if (!dbFile) {
+return;
+  }
+  nsresult rv = dbFile->InitWithNativePath(profilePath);
+  if (NS_FAILED(rv)) {
+return;
+  }
+  NS_NAMED_LITERAL_CSTRING(keyDBFilename, "key3.db");
+  rv = dbFile->AppendNative(keyDBFilename);
+  if (NS_FAILED(rv)) {
+return;
+  }
+  // Since this isn't a directory, the `recursive` argument to `Remove` is
+  // irrelevant.
+  Unused << dbFile->Remove(false);
+}
 #endif // ifndef ANDROID
 
 // Given a profile directory, attempt to initialize NSS. If nocertdb is true,
@@ -1971,6 +2016,9 @@ InitializeNSSWithFallbacks(const nsACString& profilePath, 
bool nocertdb,
   SECStatus srv = ::mozilla::psm::InitializeNSS(profilePath, false, !safeMode);
   if (srv == SECSuccess) {
 MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("initialized NSS in r/w mode"));
+#ifndef ANDROID
+MaybeCleanUpOldNSSFiles(profilePath);
+#endif // ifndef ANDROID
 return NS_OK;
   }
 #ifndef ANDROID
diff --git a/security/manager/ssl/tests/unit/test_sdr_upgraded_with_password.js 
b/security/manager/ssl/tests/unit/test_sdr_upgraded_with_password.js
new file mode 100644
index ..4949c2cf7956
--- /dev/null
+++ b/security/manager/ssl/tests/unit/test_sdr_upgraded_with_password.js
@@ -0,0 +1,115 @@
+// -*- indent-tabs-mode: nil; js-indent-level: 2 -*-
+// 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/.
+
+"use strict";
+
+// Tests that the SDR implementation is able to decrypt strings encrypted using
+// a preexisting NSS key database that a) has a password and b) has already 
been
+// upgraded from the old dbm format in a previous run of Firefox.
+// To create such a database, run the xpcshell test
+// 

[tor-commits] [tor-browser/tor-browser-60.2.0esr-8.5-1] Bug 1489744 - Fix a bounds violation crash in the prefs parser. r=glandium, a=RyanVM

2018-09-20 Thread gk
commit e4f063eb30d140dcf0c04074dfe4ab82307fd7c3
Author: Nicholas Nethercote 
Date:   Tue Sep 11 09:36:07 2018 +1000

Bug 1489744 - Fix a bounds violation crash in the prefs parser. r=glandium, 
a=RyanVM

Currently, if a get_char() call returns EOF, the index moves beyond the
buffer's bounds and get_char() cannot be called again without triggering a
panic. As a result, everywhere that encounters an EOF and then does 
subsequent
parsing ungets the EOF... except there was one place that failed to do that:
the match case for CharKind::Slash in get_token(). This meant that a single 
'/'
at the end of the input could trigger a bounds violation (but only if it is 
the
start of a new token).

This EOF-unget requirement is subtle and easy to get wrong, so this patch
eliminates it. get_char() now can be called repeatedly after an EOF, and 
will
return EOF on each subsequent call. This means that some of the existing
unget_char() calls can be removed. Some others are still necessary to get 
line
numbers correct in error messages, but the outcome of mishandled cases is 
now
much less drastic -- an incorrect line number in an error message instead 
of a
panic.

The patch also clarifies a couple of related comments.

--HG--
extra : source : 5097db630d1fb51f7f3fcd5523a924fa823e77ce
extra : intermediate-source : 2676e53112584b2c08b9a1bf02e15cd9bb0d0ee5
---
 modules/libpref/parser/src/lib.rs | 70 +++
 modules/libpref/test/gtest/Parser.cpp |  9 +++--
 2 files changed, 45 insertions(+), 34 deletions(-)

diff --git a/modules/libpref/parser/src/lib.rs 
b/modules/libpref/parser/src/lib.rs
index 8d8b9a6125e4..5ea7650252f5 100644
--- a/modules/libpref/parser/src/lib.rs
+++ b/modules/libpref/parser/src/lib.rs
@@ -54,16 +54,10 @@
 
 // This parser uses several important optimizations.
 //
-// - Because "'\0' means EOF" is part of the grammar (see above) we can match
-//   EOF as a normal char/token, which means we can avoid a typical "do we
-//   still have chars remaining?" test in get_char(), which gives a speedup
-//   because get_char() is a very hot function. (Actually, Rust would
-//   bounds-check this function anyway, so we have get_char_unchecked() which
-//   is used for the two hottest call sites.)
-//
-//   This also means EOF is representable by a u8. If EOF was represented by an
-//   out-of-band value such as -1 or 256, we'd have to return a larger type
-//   such as u16 or i16 from get_char().
+// - Because "'\0' means EOF" is part of the grammar (see above), EOF is
+//   representable by a u8. If EOF was represented by an out-of-band value such
+//   as -1 or 256, we'd have to return a larger type such as u16 or i16 from
+//   get_char().
 //
 // - When starting a new token, it uses a lookup table with the first char,
 //   which quickly identifies what kind of token it will be. Furthermore, if
@@ -192,7 +186,7 @@ enum Token {
 #[derive(Clone, Copy, PartialEq)]
 enum CharKind {
 // These are ordered by frequency. See the comment in GetToken().
-SingleChar, // Unambiguous single-char tokens: [()+,-]
+SingleChar, // Unambiguous single-char tokens: [()+,-] or EOF
 SpaceNL,// [\t\v\f \n]
 Keyword,// [A-Za-z_]
 Quote,  // ["']
@@ -535,13 +529,21 @@ impl<'t> Parser<'t> {
 
 #[inline(always)]
 fn get_char( self) -> u8 {
-let c = self.buf[self.i];
-self.i += 1;
-c
+// We do the bounds check ourselves so we can return EOF on failure.
+// (Although the buffer is guaranteed to end in an EOF char, we might
+// go one char past that, whereupon we must return EOF again.)
+if self.i < self.buf.len() {
+let c = unsafe { *self.buf.get_unchecked(self.i) };
+self.i += 1;
+c
+} else {
+debug_assert!(self.i == self.buf.len());
+EOF
+}
 }
 
-// This function skips the bounds check in non-optimized builds. Using it
-// at the hottest two call sites gives a ~15% parsing speed boost.
+// This function skips the bounds check in optimized builds. Using it at
+// the hottest two call sites gives a ~15% parsing speed boost.
 #[inline(always)]
 unsafe fn get_char_unchecked( self) -> u8 {
 debug_assert!(self.i < self.buf.len());
@@ -568,9 +570,11 @@ impl<'t> Parser<'t> {
 #[inline(always)]
 fn match_single_line_comment( self) {
 loop {
-// To reach here, the previous char must have been '/', and
-// assertions elsewhere ensure that there must be at least one
-// subsequent char (the '\0' for EOF).
+// To reach here, the previous char must have been '/' (if this is
+// the first loop iteration) or non-special (if this is the second
+// or subsequent iteration), and assertions elsewhere ensure that
+// there must 

[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 651e0607528ef594c43493843bd054cf64ccfafa
Author: Translation commit bot 
Date:   Thu Sep 20 08:48:50 2018 +

Update translations for support-portal
---
 contents+es_AR.po | 33 +
 1 file changed, 17 insertions(+), 16 deletions(-)

diff --git a/contents+es_AR.po b/contents+es_AR.po
index 61608f722..d275e5494 100644
--- a/contents+es_AR.po
+++ b/contents+es_AR.po
@@ -3273,7 +3273,7 @@ msgid ""
 "supportive of Tor."
 msgstr ""
 "En vez de eso, considerá correr tu relevo de salida en una instalación "
-"comercial que brinde soporte a Tor."
+"comercial que simpatice con la causa de Tor."
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -3299,7 +3299,7 @@ msgstr ""
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "If it hasn't, re-check firewalls, IP and ports again."
-msgstr "Si no lo ha sido, revisá cortafuegos, IP y puertos de nuevo."
+msgstr "Si no lo ha logrado, revisá de nuevo los cortafuegos, IP y puertos."
 
 #: http//localhost/tbb/tbb-12/
 #: (content/tbb/tbb-12/contents+en.lrquestion.description)
@@ -3384,7 +3384,7 @@ msgstr "* Español (es-ES)"
 #: http//localhost/tbb/tbb-19/
 #: (content/tbb/tbb-19/contents+en.lrquestion.seo_slug)
 msgid "cannot-connect-to-tor-browser-network-censored"
-msgstr "no-puedo-conectar-a-la-red-de-tor-censurada"
+msgstr "no-puedo-conectar-al-navegador-tor-red-censurada"
 
 #: http//localhost/tbb/tbb-30/
 #: (content/tbb/tbb-30/contents+en.lrquestion.description)
@@ -3491,8 +3491,8 @@ msgid ""
 "2017-10-29 09:24:08.900 [WARN] Proxy Client: unable to connect to "
 "xx..xxx..xxx.xx:x (\"general SOCKS server failure\")"
 msgstr ""
-"2017-10-29 09:24:08.900 [ADVERTENCIA] Cliente proxy incapaz de conectar a "
-"xx..xxx..xxx.xx:x (\"Fallo general de servidor SOCKS\")"
+"2017-10-29 09:24:08.900 [WARN] Proxy Client: unable to connect to "
+"xx..xxx..xxx.xx:x (\"general SOCKS server failure\")"
 
 #: http//localhost/gettor/gettor-2/
 #: (content/gettor/gettor-2/contents+en.lrquestion.description)
@@ -3570,8 +3570,8 @@ msgid ""
 "Please take a strong stance in favor of digital privacy and internet "
 "freedom, and allow Tor users access to xyz.com."
 msgstr ""
-"\"Por favor, plantate firme en favor de la privacidad digital y la libertad "
-"de Internet, y permití a los usuarios de Tor acceder a xyz.com\"."
+"Por favor, plantate firme en favor de la privacidad digital y la libertad de"
+" Internet, y permití a los usuarios de Tor acceder a xyz.com."
 
 #: http//localhost/tbb/tbb-20/
 #: (content/tbb/tbb-20/contents+en.lrquestion.title)
@@ -3581,8 +3581,8 @@ msgid ""
 "Tor Browser won't connect, but it doesn’t seem to be an issue with "
 "censorship."
 msgstr ""
-"El navegador Tor no se conecta, pero no pareciera ser una dificultad con "
-"censura."
+"El navegador Tor no se conecta, pero no pareciera ser una dificultad que "
+"involucre censura."
 
 #: http//localhost/tbb/tbb-27/
 #: (content/tbb/tbb-27/contents+en.lrquestion.description)
@@ -3609,7 +3609,7 @@ msgid ""
 "If the site you are visiting uses HTTPS, then the traffic leaving your exit "
 "relay will be encrypted, and won't be visible to eavesdroppers."
 msgstr ""
-"Si el sitio que estás visitando usa HTTPS, luego el tráfico dejando tu "
+"Si el sitio que estás visitando usa HTTPS, luego el tráfico egresando de tu 
"
 "relevo de salida estará encriptado, y no será visible a observadores "
 "hostiles."
 
@@ -3663,8 +3663,8 @@ msgid ""
 "* You should also see the message \"Registered server transport 'obfs4'\" "
 "indicating that obfs4proxy is functional."
 msgstr ""
-"* Debieras ver también el mensaje \"Registered server transport 'obfs4'\" "
-"indicando que obfs4proxy es funcional."
+"* Debieras ver también el mensaje \"Transporte 'obfs4' registrado en "
+"servidor\" indicando que obfs4proxy está funcionando."
 
 #: http//localhost/tbb/tbb-39/
 #: (content/tbb/tbb-39/contents+en.lrquestion.description)
@@ -3702,7 +3702,7 @@ msgid ""
 msgstr ""
 "Los puentes https://github.com/Yawning/obfs4/blob/master/doc/obfs4-spec.txt\;>obfsproxy"
-" toman cuidado de ésto añadiendo otra capa de ofuscación."
+" solucionan ésto añadiendo otra capa de ofuscación."
 
 #: http//localhost/tbb/tbb-11/
 #: (content/tbb/tbb-11/contents+en.lrquestion.description)
@@ -3719,7 +3719,8 @@ msgid ""
 "do."
 msgstr ""
 "Algunas entidades, como tu Proveedor de Servicios de Internet (ISP), pueden "
-"ver que estás usando Tor, pero no podrán saber a dónde vas cuando lo uses."
+"ser capaces de ver que estás usando Tor, pero no podrán saber a dónde vas "
+"cuando lo hagas."
 
 #: http//localhost/tbb/tbb-39/
 #: (content/tbb/tbb-39/contents+en.lrquestion.description)
@@ -3754,7 +3755,7 @@ msgstr ""
 #: http//localhost/operators/operators-2/
 #: (content/operators/operators-2/contents+en.lrquestion.description)
 msgid "* Run \"service 

[tor-commits] [translation/support-portal_completed] Update translations for support-portal_completed

2018-09-20 Thread translation
commit 2f2843be32cf66e7eb292f2e7b04060b5c18941e
Author: Translation commit bot 
Date:   Thu Sep 20 08:48:55 2018 +

Update translations for support-portal_completed
---
 contents+es_AR.po | 33 +
 1 file changed, 17 insertions(+), 16 deletions(-)

diff --git a/contents+es_AR.po b/contents+es_AR.po
index 61608f722..d275e5494 100644
--- a/contents+es_AR.po
+++ b/contents+es_AR.po
@@ -3273,7 +3273,7 @@ msgid ""
 "supportive of Tor."
 msgstr ""
 "En vez de eso, considerá correr tu relevo de salida en una instalación "
-"comercial que brinde soporte a Tor."
+"comercial que simpatice con la causa de Tor."
 
 #: http//localhost/connecting/connecting-2/
 #: (content/connecting/connecting-2/contents+en.lrquestion.description)
@@ -3299,7 +3299,7 @@ msgstr ""
 #: http//localhost/operators/operators-3/
 #: (content/operators/operators-3/contents+en.lrquestion.description)
 msgid "If it hasn't, re-check firewalls, IP and ports again."
-msgstr "Si no lo ha sido, revisá cortafuegos, IP y puertos de nuevo."
+msgstr "Si no lo ha logrado, revisá de nuevo los cortafuegos, IP y puertos."
 
 #: http//localhost/tbb/tbb-12/
 #: (content/tbb/tbb-12/contents+en.lrquestion.description)
@@ -3384,7 +3384,7 @@ msgstr "* Español (es-ES)"
 #: http//localhost/tbb/tbb-19/
 #: (content/tbb/tbb-19/contents+en.lrquestion.seo_slug)
 msgid "cannot-connect-to-tor-browser-network-censored"
-msgstr "no-puedo-conectar-a-la-red-de-tor-censurada"
+msgstr "no-puedo-conectar-al-navegador-tor-red-censurada"
 
 #: http//localhost/tbb/tbb-30/
 #: (content/tbb/tbb-30/contents+en.lrquestion.description)
@@ -3491,8 +3491,8 @@ msgid ""
 "2017-10-29 09:24:08.900 [WARN] Proxy Client: unable to connect to "
 "xx..xxx..xxx.xx:x (\"general SOCKS server failure\")"
 msgstr ""
-"2017-10-29 09:24:08.900 [ADVERTENCIA] Cliente proxy incapaz de conectar a "
-"xx..xxx..xxx.xx:x (\"Fallo general de servidor SOCKS\")"
+"2017-10-29 09:24:08.900 [WARN] Proxy Client: unable to connect to "
+"xx..xxx..xxx.xx:x (\"general SOCKS server failure\")"
 
 #: http//localhost/gettor/gettor-2/
 #: (content/gettor/gettor-2/contents+en.lrquestion.description)
@@ -3570,8 +3570,8 @@ msgid ""
 "Please take a strong stance in favor of digital privacy and internet "
 "freedom, and allow Tor users access to xyz.com."
 msgstr ""
-"\"Por favor, plantate firme en favor de la privacidad digital y la libertad "
-"de Internet, y permití a los usuarios de Tor acceder a xyz.com\"."
+"Por favor, plantate firme en favor de la privacidad digital y la libertad de"
+" Internet, y permití a los usuarios de Tor acceder a xyz.com."
 
 #: http//localhost/tbb/tbb-20/
 #: (content/tbb/tbb-20/contents+en.lrquestion.title)
@@ -3581,8 +3581,8 @@ msgid ""
 "Tor Browser won't connect, but it doesn’t seem to be an issue with "
 "censorship."
 msgstr ""
-"El navegador Tor no se conecta, pero no pareciera ser una dificultad con "
-"censura."
+"El navegador Tor no se conecta, pero no pareciera ser una dificultad que "
+"involucre censura."
 
 #: http//localhost/tbb/tbb-27/
 #: (content/tbb/tbb-27/contents+en.lrquestion.description)
@@ -3609,7 +3609,7 @@ msgid ""
 "If the site you are visiting uses HTTPS, then the traffic leaving your exit "
 "relay will be encrypted, and won't be visible to eavesdroppers."
 msgstr ""
-"Si el sitio que estás visitando usa HTTPS, luego el tráfico dejando tu "
+"Si el sitio que estás visitando usa HTTPS, luego el tráfico egresando de tu 
"
 "relevo de salida estará encriptado, y no será visible a observadores "
 "hostiles."
 
@@ -3663,8 +3663,8 @@ msgid ""
 "* You should also see the message \"Registered server transport 'obfs4'\" "
 "indicating that obfs4proxy is functional."
 msgstr ""
-"* Debieras ver también el mensaje \"Registered server transport 'obfs4'\" "
-"indicando que obfs4proxy es funcional."
+"* Debieras ver también el mensaje \"Transporte 'obfs4' registrado en "
+"servidor\" indicando que obfs4proxy está funcionando."
 
 #: http//localhost/tbb/tbb-39/
 #: (content/tbb/tbb-39/contents+en.lrquestion.description)
@@ -3702,7 +3702,7 @@ msgid ""
 msgstr ""
 "Los puentes https://github.com/Yawning/obfs4/blob/master/doc/obfs4-spec.txt\;>obfsproxy"
-" toman cuidado de ésto añadiendo otra capa de ofuscación."
+" solucionan ésto añadiendo otra capa de ofuscación."
 
 #: http//localhost/tbb/tbb-11/
 #: (content/tbb/tbb-11/contents+en.lrquestion.description)
@@ -3719,7 +3719,8 @@ msgid ""
 "do."
 msgstr ""
 "Algunas entidades, como tu Proveedor de Servicios de Internet (ISP), pueden "
-"ver que estás usando Tor, pero no podrán saber a dónde vas cuando lo uses."
+"ser capaces de ver que estás usando Tor, pero no podrán saber a dónde vas "
+"cuando lo hagas."
 
 #: http//localhost/tbb/tbb-39/
 #: (content/tbb/tbb-39/contents+en.lrquestion.description)
@@ -3754,7 +3755,7 @@ msgstr ""
 #: http//localhost/operators/operators-2/
 #: (content/operators/operators-2/contents+en.lrquestion.description)
 msgid "* Run 

[tor-commits] [translation/tor-browser-manual] Update translations for tor-browser-manual

2018-09-20 Thread translation
commit a318639581ab9f1718784cd07ae12538d9dd8751
Author: Translation commit bot 
Date:   Thu Sep 20 08:47:17 2018 +

Update translations for tor-browser-manual
---
 el/el.po | 11 +--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/el/el.po b/el/el.po
index 041605d2a..e7fd0f16b 100644
--- a/el/el.po
+++ b/el/el.po
@@ -1205,6 +1205,13 @@ msgid ""
 " many websites from displaying correctly, so Tor Browser’s default setting "
 "is to allow all websites to run scripts in \"Standard\" mode."
 msgstr ""
+"Χρήστες που επιθυμούν υψηλό βαθμό 
ασφάλειας κατά την περιήγησή τους στο "
+"διαδίκτυο, μπορούν να αλλάξουν τον Slider "
+"Ασφαλείαςτου περιηγητή Tor στο 
\"Ασφαλέστερα\" (το οποίο εφαρμόζεται "
+"σε όλες τις ιστοσελίδες). Παρ' όλα αυτά, η 
απενεργοποίηση των JavaScript θα "
+"αποτρέψει πολλές ιστοσελίδες από την 
κανονική τους λειτουργία, γι' αυτό η "
+"αυτόματη ρύθμιση του περιηγητή Tor είναι να 
επιτρέπει σε όλες τις "
+"ιστοσελίδες να λειτουργούν θέτοντας αυ
τόματα το \"Κανονικό\" προφίλ."
 
 #: plugins.page:59
 msgid "Browser Add-ons"
@@ -1469,11 +1476,11 @@ msgstr ""
 
 #: translate.page:6
 msgid "Becoming a translator for the Tor Project"
-msgstr ""
+msgstr "Πως να γίνετε μεταφραστής του Tor Project"
 
 #: translate.page:10
 msgid "Becoming a Tor Translator"
-msgstr ""
+msgstr "Πως να γίνετε μεταφραστής του Tor"
 
 #: translate.page:12
 msgid ""

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor-browser-build/maint-8.0] Preparing a build2 for 8.0.1

2018-09-20 Thread gk
commit eaf882ad3dd1c5fc2461d5ba898837de1eed66eb
Author: Georg Koppen 
Date:   Thu Sep 20 08:24:35 2018 +

Preparing a build2 for 8.0.1

We pick up three patches that are planned for Firefox 60.2.1esr but we
can't wait for the final release candidate as we run out of time before
Mexico.

Furthermore, back out the moat related fix in Tor Launcher. We want to
give it a bit more testing time on alpha.
---
 projects/firefox/config | 2 +-
 projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt | 4 ++--
 rbm.conf| 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/projects/firefox/config b/projects/firefox/config
index ad9d7d8..9d675eb 100644
--- a/projects/firefox/config
+++ b/projects/firefox/config
@@ -1,7 +1,7 @@
 # vim: filetype=yaml sw=2
 version: '[% c("abbrev") %]'
 filename: 'firefox-[% c("version") %]-[% c("var/osname") %]-[% 
c("var/build_id") %]'
-git_hash: 'tor-browser-[% c("var/firefox_version") %]-[% 
c("var/torbrowser_branch") %]-1-build4'
+git_hash: 'tor-browser-[% c("var/firefox_version") %]-[% 
c("var/torbrowser_branch") %]-1-build5'
 tag_gpg_id: 1
 git_url: https://git.torproject.org/tor-browser.git
 gpg_keyring: torbutton.gpg
diff --git a/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt 
b/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
index 4cc90f3..12ae6ff 100644
--- a/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
+++ b/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
@@ -11,9 +11,8 @@ Tor Browser 8.0.1 -- September 20 2018
  * Bug 27427: Fix NoScript IPC for about:blank by whitelisting messages
  * Bug 27558: Update the link to "Your Guard note may not change" text
  * Translations update
-   * Update Tor Launcher to 0.2.16.5
+   * Update Tor Launcher to 0.2.16.6
  * Bug 27469: Adapt Moat URLs
- * Bug 25405: Cannot use Moat if a meek bridge is configured
  * Translations update
  * Clean-up
* Update NoScript to 10.1.9.6
@@ -22,6 +21,7 @@ Tor Browser 8.0.1 -- September 20 2018
* Bug 27543: QR code is broken on web.whatsapp.com
* Bug 27264: Bookmark items are not visible on the boomark toolbar
* Bug 27535: Enable TLS 1.3 draft version
+   * Backport of Mozilla bug 1490585, 1475775, and 1489744
  * OS X
* Bug 27482: Fix crash during start-up on macOS 10.9.x systems
  * Linux
diff --git a/rbm.conf b/rbm.conf
index 8ad5c34..529cd56 100644
--- a/rbm.conf
+++ b/rbm.conf
@@ -16,7 +16,7 @@ buildconf:
 
 var:
   torbrowser_version: '8.0.1'
-  torbrowser_build: 'build1'
+  torbrowser_build: 'build2'
   torbrowser_incremental_from:
 - 8.0
   project_name: tor-browser

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [translation/support-portal] Update translations for support-portal

2018-09-20 Thread translation
commit 770ef1152eec093b0da24ffc3ea5a7600a84d36c
Author: Translation commit bot 
Date:   Thu Sep 20 08:18:52 2018 +

Update translations for support-portal
---
 contents+es_AR.po | 45 +++--
 1 file changed, 23 insertions(+), 22 deletions(-)

diff --git a/contents+es_AR.po b/contents+es_AR.po
index a791e3f48..61608f722 100644
--- a/contents+es_AR.po
+++ b/contents+es_AR.po
@@ -216,7 +216,7 @@ msgstr ""
 
 #: http//localhost/faq/ (content/faq/contents+en.lrtopic.seo_slug)
 msgid "faq"
-msgstr "faq"
+msgstr "pmf"
 
 #: http//localhost/onionservices/onionservices-2/
 #: (content/onionservices/onionservices-2/contents+en.lrquestion.description)
@@ -1181,7 +1181,7 @@ msgid ""
 "everywhere/faq\">HTTPS Everywhere FAQ."
 msgstr ""
 "Por favor mirá https://www.eff.org/https-;
-"everywhere/faq\">HTTPS Everywhere FAQ."
+"everywhere/faq\">PMF HTTPS Everywhere."
 
 #: http//localhost/misc/misc-5/
 #: (content/misc/misc-5/contents+en.lrquestion.seo_slug)
@@ -2658,9 +2658,9 @@ msgid ""
 "Sometimes websites will block Tor users because they can't tell the "
 "difference between the average Tor user and automated traffic."
 msgstr ""
-"A veces sitios web bloquearán usuarios de Tor porque no pueden decir la "
-"diferencia entre el usuario promedio de Tor y trafico generado "
-"automáticamente."
+"A veces, los sitios web bloquearán usuarios de Tor porque no pueden "
+"establecer la diferencia entre el usuario promedio de Tor y tráfico generado"
+" automáticamente."
 
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.description)
@@ -2723,8 +2723,8 @@ msgid ""
 "Setting up an obfsproxy bridge requires an additional software package and "
 "additional configurations."
 msgstr ""
-"Dar de alta un puente obfsproxy requiere un paquete adicional de programa y "
-"configuraciones adicionales."
+"Dar de alta un puente obfsproxy requiere un paquete adicional de programas y"
+" configuraciones adicionales."
 
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.description)
@@ -2732,8 +2732,8 @@ msgid ""
 "* As root, add the following lines to /etc/apt/sources.list. Use the version"
 " you found in the previous step for ."
 msgstr ""
-"* Como root, añadí las siguientes líneas a /etc/apt/sources.list. Usá la "
-"versión que encontraste en el paso previo para ."
+"* Como superusuario, añadí las siguientes líneas a /etc/apt/sources.list. "
+"Usá la versión que encontraste en el paso previo para ."
 
 #: http//localhost/onionservices/onionservices-2/
 #: (content/onionservices/onionservices-2/contents+en.lrquestion.description)
@@ -2771,7 +2771,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "Nickname ididnteditheconfig"
-msgstr "Nickname noeditélaconfiguración"
+msgstr "Nickname ididnteditheconfig"
 
 #: http//localhost/misc/misc-6/
 #: (content/misc/misc-6/contents+en.lrquestion.seo_slug)
@@ -2781,7 +2781,7 @@ msgstr "tor-mantiene-bitácoras"
 #: http//localhost/tbb/tbb-7/
 #: (content/tbb/tbb-7/contents+en.lrquestion.description)
 msgid "Thank you.\""
-msgstr "\"Gracias\"."
+msgstr "Gracias.\""
 
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
@@ -2835,7 +2835,7 @@ msgstr ""
 #: http//localhost/censorship/
 #: (content/censorship/contents+en.lrtopic.seo_slug)
 msgid "censorship"
-msgstr "censorship"
+msgstr "censura"
 
 #: http//localhost/misc/misc-2/
 #: (content/misc/misc-2/contents+en.lrquestion.title)
@@ -2888,7 +2888,7 @@ msgstr "Finalmente, reiniciá el navegador Tor."
 
 #: http//localhost/connecting/ (content/connecting/contents+en.lrtopic.title)
 msgid "Connecting To Tor"
-msgstr "Conectarse a Tor"
+msgstr "Conectándose a Tor"
 
 #: http//localhost/tbb/tbb-28/
 #: (content/tbb/tbb-28/contents+en.lrquestion.description)
@@ -2907,8 +2907,8 @@ msgid ""
 " etc your relay is using."
 msgstr ""
 "Cuando confirme que es alcanzable, cargará un \"descriptor de servidor\" a "
-"las autoridades de directorio para hacer saber a los clientes qué 
dirección,"
-" puertos, claves, etc. está usando tu relevo."
+"las autoridades de directorio para hacerles saber a los clientes qué "
+"dirección, puertos, claves, etc. está usando tu relevo."
 
 #: http//localhost/operators/operators-1/
 #: (content/operators/operators-1/contents+en.lrquestion.description)
@@ -2919,7 +2919,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "ContactInfo 0x Random Person "
-msgstr "ContactInfo 0x Persona Aleatoria "
+msgstr "ContactInfo 0x Random Person "
 
 #: http//localhost/misc/misc-9/
 #: (content/misc/misc-9/contents+en.lrquestion.title)
@@ -2960,8 +2960,8 @@ msgid ""
 "19.11.2017 00:04:48.000 [NOTICE] Bootstrapped 5%: Connecting to directory "
 "server"

[tor-commits] [translation/support-portal_completed] Update translations for support-portal_completed

2018-09-20 Thread translation
commit 9ba600084d7decf129574063228b19b033bbc8a7
Author: Translation commit bot 
Date:   Thu Sep 20 08:18:57 2018 +

Update translations for support-portal_completed
---
 contents+es_AR.po | 45 +++--
 1 file changed, 23 insertions(+), 22 deletions(-)

diff --git a/contents+es_AR.po b/contents+es_AR.po
index a791e3f48..61608f722 100644
--- a/contents+es_AR.po
+++ b/contents+es_AR.po
@@ -216,7 +216,7 @@ msgstr ""
 
 #: http//localhost/faq/ (content/faq/contents+en.lrtopic.seo_slug)
 msgid "faq"
-msgstr "faq"
+msgstr "pmf"
 
 #: http//localhost/onionservices/onionservices-2/
 #: (content/onionservices/onionservices-2/contents+en.lrquestion.description)
@@ -1181,7 +1181,7 @@ msgid ""
 "everywhere/faq\">HTTPS Everywhere FAQ."
 msgstr ""
 "Por favor mirá https://www.eff.org/https-;
-"everywhere/faq\">HTTPS Everywhere FAQ."
+"everywhere/faq\">PMF HTTPS Everywhere."
 
 #: http//localhost/misc/misc-5/
 #: (content/misc/misc-5/contents+en.lrquestion.seo_slug)
@@ -2658,9 +2658,9 @@ msgid ""
 "Sometimes websites will block Tor users because they can't tell the "
 "difference between the average Tor user and automated traffic."
 msgstr ""
-"A veces sitios web bloquearán usuarios de Tor porque no pueden decir la "
-"diferencia entre el usuario promedio de Tor y trafico generado "
-"automáticamente."
+"A veces, los sitios web bloquearán usuarios de Tor porque no pueden "
+"establecer la diferencia entre el usuario promedio de Tor y tráfico generado"
+" automáticamente."
 
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.description)
@@ -2723,8 +2723,8 @@ msgid ""
 "Setting up an obfsproxy bridge requires an additional software package and "
 "additional configurations."
 msgstr ""
-"Dar de alta un puente obfsproxy requiere un paquete adicional de programa y "
-"configuraciones adicionales."
+"Dar de alta un puente obfsproxy requiere un paquete adicional de programas y"
+" configuraciones adicionales."
 
 #: http//localhost/operators/operators-4/
 #: (content/operators/operators-4/contents+en.lrquestion.description)
@@ -2732,8 +2732,8 @@ msgid ""
 "* As root, add the following lines to /etc/apt/sources.list. Use the version"
 " you found in the previous step for ."
 msgstr ""
-"* Como root, añadí las siguientes líneas a /etc/apt/sources.list. Usá la "
-"versión que encontraste en el paso previo para ."
+"* Como superusuario, añadí las siguientes líneas a /etc/apt/sources.list. "
+"Usá la versión que encontraste en el paso previo para ."
 
 #: http//localhost/onionservices/onionservices-2/
 #: (content/onionservices/onionservices-2/contents+en.lrquestion.description)
@@ -2771,7 +2771,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "Nickname ididnteditheconfig"
-msgstr "Nickname noeditélaconfiguración"
+msgstr "Nickname ididnteditheconfig"
 
 #: http//localhost/misc/misc-6/
 #: (content/misc/misc-6/contents+en.lrquestion.seo_slug)
@@ -2781,7 +2781,7 @@ msgstr "tor-mantiene-bitácoras"
 #: http//localhost/tbb/tbb-7/
 #: (content/tbb/tbb-7/contents+en.lrquestion.description)
 msgid "Thank you.\""
-msgstr "\"Gracias\"."
+msgstr "Gracias.\""
 
 #: http//localhost/tbb/tbb-37/
 #: (content/tbb/tbb-37/contents+en.lrquestion.description)
@@ -2835,7 +2835,7 @@ msgstr ""
 #: http//localhost/censorship/
 #: (content/censorship/contents+en.lrtopic.seo_slug)
 msgid "censorship"
-msgstr "censorship"
+msgstr "censura"
 
 #: http//localhost/misc/misc-2/
 #: (content/misc/misc-2/contents+en.lrquestion.title)
@@ -2888,7 +2888,7 @@ msgstr "Finalmente, reiniciá el navegador Tor."
 
 #: http//localhost/connecting/ (content/connecting/contents+en.lrtopic.title)
 msgid "Connecting To Tor"
-msgstr "Conectarse a Tor"
+msgstr "Conectándose a Tor"
 
 #: http//localhost/tbb/tbb-28/
 #: (content/tbb/tbb-28/contents+en.lrquestion.description)
@@ -2907,8 +2907,8 @@ msgid ""
 " etc your relay is using."
 msgstr ""
 "Cuando confirme que es alcanzable, cargará un \"descriptor de servidor\" a "
-"las autoridades de directorio para hacer saber a los clientes qué 
dirección,"
-" puertos, claves, etc. está usando tu relevo."
+"las autoridades de directorio para hacerles saber a los clientes qué "
+"dirección, puertos, claves, etc. está usando tu relevo."
 
 #: http//localhost/operators/operators-1/
 #: (content/operators/operators-1/contents+en.lrquestion.description)
@@ -2919,7 +2919,7 @@ msgstr ""
 #: http//localhost/operators/operators-6/
 #: (content/operators/operators-6/contents+en.lrquestion.description)
 msgid "ContactInfo 0x Random Person "
-msgstr "ContactInfo 0x Persona Aleatoria "
+msgstr "ContactInfo 0x Random Person "
 
 #: http//localhost/misc/misc-9/
 #: (content/misc/misc-9/contents+en.lrquestion.title)
@@ -2960,8 +2960,8 @@ msgid ""
 "19.11.2017 00:04:48.000 [NOTICE] Bootstrapped 5%: Connecting to directory "

[tor-commits] [tor-browser/tor-browser-60.2.0esr-8.0-1] Bug 1490585 - Ensure we got an nsISSLStatus when deserializing in TransportSecurityInfo. r=jcj, a=RyanVM

2018-09-20 Thread gk
commit 9b86848baf55860cfc3a341bd9c8b40e1fa0f89e
Author: Dana Keeler 
Date:   Thu Sep 13 16:59:21 2018 +

Bug 1490585 - Ensure we got an nsISSLStatus when deserializing in 
TransportSecurityInfo. r=jcj, a=RyanVM

Differential Revision: https://phabricator.services.mozilla.com/D5803

--HG--
extra : source : 45359b962851973a70afbde575e6b89242d408de
extra : intermediate-source : e9dd9434ad9ac15284429d904a45e4daf567c03b
---
 security/manager/ssl/TransportSecurityInfo.cpp |  7 +-
 .../ssl/tests/gtest/DeserializeCertTest.cpp| 86 ++
 2 files changed, 92 insertions(+), 1 deletion(-)

diff --git a/security/manager/ssl/TransportSecurityInfo.cpp 
b/security/manager/ssl/TransportSecurityInfo.cpp
index a57f91603ec4..c954e5517683 100644
--- a/security/manager/ssl/TransportSecurityInfo.cpp
+++ b/security/manager/ssl/TransportSecurityInfo.cpp
@@ -390,7 +390,12 @@ TransportSecurityInfo::Read(nsIObjectInputStream* stream)
   if (NS_FAILED(rv)) {
 return rv;
   }
-  mSSLStatus = BitwiseCast(supports.get());
+  nsCOMPtr castGuard(do_QueryInterface(supports));
+  if (castGuard) {
+mSSLStatus = BitwiseCast(castGuard.get());
+  } else {
+mSSLStatus = nullptr;
+  }
 
   nsCOMPtr failedCertChainSupports;
   rv = NS_ReadOptionalObject(stream, true, 
getter_AddRefs(failedCertChainSupports));
diff --git a/security/manager/ssl/tests/gtest/DeserializeCertTest.cpp 
b/security/manager/ssl/tests/gtest/DeserializeCertTest.cpp
index 868ecdba6b57..c3a4115b333d 100644
--- a/security/manager/ssl/tests/gtest/DeserializeCertTest.cpp
+++ b/security/manager/ssl/tests/gtest/DeserializeCertTest.cpp
@@ -94,3 +94,89 @@ TEST(psm_DeserializeCert, gecko46)
   ASSERT_EQ(NS_OK, rv);
   ASSERT_TRUE(cert);
 }
+
+TEST(psm_DeserializeCert, gecko64)
+{
+  // This is a serialization of nsITransportSecurityInfo from gecko 64.
+  // Deserialization should fail.
+  nsCString base64Serialization(
+  
"FnhllAKWRHGAlo+ESXykKAAAwEaphjojH6pBabDSgSnsfLHeAAgAAgEAMQFmCjIm"
+  
"kVxP+7sgiYWmMt8FvcOXmlQiTNWFiWlrbpbqgwX2MIIF8jCCBNqgAwIBAgIQDmTF+8I2reFLFyrrQceMsDANBgkqhkiG"
+  
"9w0BAQsFADBwMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMS8w"
+  
"LQYDVQQDEyZEaWdpQ2VydCBTSEEyIEhpZ2ggQXNzdXJhbmNlIFNlcnZlciBDQTAeFw0xNTExMDMwMDAwMDBaFw0xODExMjgxMjAw"
+  
"MDBaMIGlMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEUMBIGA1UEBxMLTG9zIEFuZ2VsZXMxPDA6BgNVBAoTM0lu"
+  
"dGVybmV0IENvcnBvcmF0aW9uIGZvciBBc3NpZ25lZCBOYW1lcyBhbmQgTnVtYmVyczETMBEGA1UECxMKVGVjaG5vbG9neTEYMBYG"
+  
"A1UEAxMPd3d3LmV4YW1wbGUub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs0CWL2FjPiXBl61lRfvvE0KzLJmG"
+  
"9LWAC3bcBjgsH6NiVVo2dt6uXfzi5bTm7F3K7srfUBYkLO78mraM9qizrHoIeyofrV/n+pZZJauQsPjCPxMEJnRoD8Z4KpWKX0Ly"
+  
"Du1SputoI4nlQ/htEhtiQnuoBfNZxF7WxcxGwEsZuS1KcXIkHl5VRJOreKFHTaXcB1qcZ/QRaBIv0yhxvK1yBTwWddT4cli6GfHc"
+  
"Ce3xGMaSL328Fgs3jYrvG29PueB6VJi/tbbPu6qTfwp/H1brqdjh29U52Bhb0fJkM9DWxCP/Cattcc7az8EXnCO+LK8vkhw/kAiJ"
+  
"WPKx4RBvgy73nwIDAQABo4ICUDCCAkwwHwYDVR0jBBgwFoAUUWj/kK8CB3U8zNllZGKiErhZcjswHQYDVR0OBBYEFKZPYB4fLdHn"
+  
"8SOgKpUW5Oia6m5IMIGBBgNVHREEejB4gg93d3cuZXhhbXBsZS5vcmeCC2V4YW1wbGUuY29tggtleGFtcGxlLmVkdYILZXhhbXBs"
+  
"ZS5uZXSCC2V4YW1wbGUub3Jngg93d3cuZXhhbXBsZS5jb22CD3d3dy5leGFtcGxlLmVkdYIPd3d3LmV4YW1wbGUubmV0MA4GA1Ud"
+  
"DwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwdQYDVR0fBG4wbDA0oDKgMIYuaHR0cDovL2NybDMuZGln"
+  
"aWNlcnQuY29tL3NoYTItaGEtc2VydmVyLWc0LmNybDA0oDKgMIYuaHR0cDovL2NybDQuZGlnaWNlcnQuY29tL3NoYTItaGEtc2Vy"
+  
"dmVyLWc0LmNybDBMBgNVHSAERTBDMDcGCWCGSAGG/WwBATAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy5kaWdpY2VydC5jb20v"
+  
"Q1BTMAgGBmeBDAECAjCBgwYIKwYBBQUHAQEEdzB1MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wTQYIKwYB"
+  
"BQUHMAKGQWh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFNIQTJIaWdoQXNzdXJhbmNlU2VydmVyQ0EuY3J0MAwG"
+  
"A1UdEwEB/wQCMAAwDQYJKoZIhvcNAQELBQADggEBAISomhGn2L0LJn5SJHuyVZ3qMIlRCIdvqe0Q6ls+C8ctRwRO3UU3x8q8OH+2"
+  
"ahxlQmpzdC5al4XQzJLiLjiJ2Q1p+hub8MFiMmVPPZjb2tZm2ipWVuMRM+zgpRVM6nVJ9F3vFfUSHOb4/JsEIUvPY+d8/Krc+kPQ"
+  
"wLvyieqRbcuFjmqfyPmUv1U9QoI4TQikpw7TZU0zYZANP4C/gj4Ry48/znmUaRvy2kvIl7gRQ21qJTK5suoiYoYNo3J9T+pXPGU7"
+  
"Lydz/HwW+w0DpArtAaukI8aNX4ohFUKSwDSiIIWIWJiJGbEeIO0TIFwEVWTOnbNl/faPXpk5IRXicapqiILALwADAAEB"
+  
"BFAyNTYQUlNBLVBLQ1MxLVNIQTUxMgGVn7FlZRdIf6ub2JE75TGXrnTNpc0vRz+W9fC3//YsaANmCjImkVxP+7sg"
+  
"iYWmMt8FvcOXmlQiTNWFiWlrbpbqgwX2MIIF8jCCBNqgAwIBAgIQDmTF+8I2reFLFyrrQceMsDANBgkqhkiG9w0BAQsF"
+  
"ADBwMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMS8wLQYDVQQD"
+  
"EyZEaWdpQ2VydCBTSEEyIEhpZ2ggQXNzdXJhbmNlIFNlcnZlciBDQTAeFw0xNTExMDMwMDAwMDBaFw0xODExMjgxMjAwMDBaMIGl"
+  
"MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEUMBIGA1UEBxMLTG9zIEFuZ2VsZXMxPDA6BgNVBAoTM0ludGVybmV0"
+  
"IENvcnBvcmF0aW9uIGZvciBBc3NpZ25lZCBOYW1lcyBhbmQgTnVtYmVyczETMBEGA1UECxMKVGVjaG5vbG9neTEYMBYGA1UEAxMP"
+  

[tor-commits] [tor-browser/tor-browser-60.2.0esr-8.0-1] Bug 1489744 - Fix a bounds violation crash in the prefs parser. r=glandium, a=RyanVM

2018-09-20 Thread gk
commit 982ef502b7c6d264afd3c403f20c9b6ef7840034
Author: Nicholas Nethercote 
Date:   Tue Sep 11 09:36:07 2018 +1000

Bug 1489744 - Fix a bounds violation crash in the prefs parser. r=glandium, 
a=RyanVM

Currently, if a get_char() call returns EOF, the index moves beyond the
buffer's bounds and get_char() cannot be called again without triggering a
panic. As a result, everywhere that encounters an EOF and then does 
subsequent
parsing ungets the EOF... except there was one place that failed to do that:
the match case for CharKind::Slash in get_token(). This meant that a single 
'/'
at the end of the input could trigger a bounds violation (but only if it is 
the
start of a new token).

This EOF-unget requirement is subtle and easy to get wrong, so this patch
eliminates it. get_char() now can be called repeatedly after an EOF, and 
will
return EOF on each subsequent call. This means that some of the existing
unget_char() calls can be removed. Some others are still necessary to get 
line
numbers correct in error messages, but the outcome of mishandled cases is 
now
much less drastic -- an incorrect line number in an error message instead 
of a
panic.

The patch also clarifies a couple of related comments.

--HG--
extra : source : 5097db630d1fb51f7f3fcd5523a924fa823e77ce
extra : intermediate-source : 2676e53112584b2c08b9a1bf02e15cd9bb0d0ee5
---
 modules/libpref/parser/src/lib.rs | 70 +++
 modules/libpref/test/gtest/Parser.cpp |  9 +++--
 2 files changed, 45 insertions(+), 34 deletions(-)

diff --git a/modules/libpref/parser/src/lib.rs 
b/modules/libpref/parser/src/lib.rs
index 8d8b9a6125e4..5ea7650252f5 100644
--- a/modules/libpref/parser/src/lib.rs
+++ b/modules/libpref/parser/src/lib.rs
@@ -54,16 +54,10 @@
 
 // This parser uses several important optimizations.
 //
-// - Because "'\0' means EOF" is part of the grammar (see above) we can match
-//   EOF as a normal char/token, which means we can avoid a typical "do we
-//   still have chars remaining?" test in get_char(), which gives a speedup
-//   because get_char() is a very hot function. (Actually, Rust would
-//   bounds-check this function anyway, so we have get_char_unchecked() which
-//   is used for the two hottest call sites.)
-//
-//   This also means EOF is representable by a u8. If EOF was represented by an
-//   out-of-band value such as -1 or 256, we'd have to return a larger type
-//   such as u16 or i16 from get_char().
+// - Because "'\0' means EOF" is part of the grammar (see above), EOF is
+//   representable by a u8. If EOF was represented by an out-of-band value such
+//   as -1 or 256, we'd have to return a larger type such as u16 or i16 from
+//   get_char().
 //
 // - When starting a new token, it uses a lookup table with the first char,
 //   which quickly identifies what kind of token it will be. Furthermore, if
@@ -192,7 +186,7 @@ enum Token {
 #[derive(Clone, Copy, PartialEq)]
 enum CharKind {
 // These are ordered by frequency. See the comment in GetToken().
-SingleChar, // Unambiguous single-char tokens: [()+,-]
+SingleChar, // Unambiguous single-char tokens: [()+,-] or EOF
 SpaceNL,// [\t\v\f \n]
 Keyword,// [A-Za-z_]
 Quote,  // ["']
@@ -535,13 +529,21 @@ impl<'t> Parser<'t> {
 
 #[inline(always)]
 fn get_char( self) -> u8 {
-let c = self.buf[self.i];
-self.i += 1;
-c
+// We do the bounds check ourselves so we can return EOF on failure.
+// (Although the buffer is guaranteed to end in an EOF char, we might
+// go one char past that, whereupon we must return EOF again.)
+if self.i < self.buf.len() {
+let c = unsafe { *self.buf.get_unchecked(self.i) };
+self.i += 1;
+c
+} else {
+debug_assert!(self.i == self.buf.len());
+EOF
+}
 }
 
-// This function skips the bounds check in non-optimized builds. Using it
-// at the hottest two call sites gives a ~15% parsing speed boost.
+// This function skips the bounds check in optimized builds. Using it at
+// the hottest two call sites gives a ~15% parsing speed boost.
 #[inline(always)]
 unsafe fn get_char_unchecked( self) -> u8 {
 debug_assert!(self.i < self.buf.len());
@@ -568,9 +570,11 @@ impl<'t> Parser<'t> {
 #[inline(always)]
 fn match_single_line_comment( self) {
 loop {
-// To reach here, the previous char must have been '/', and
-// assertions elsewhere ensure that there must be at least one
-// subsequent char (the '\0' for EOF).
+// To reach here, the previous char must have been '/' (if this is
+// the first loop iteration) or non-special (if this is the second
+// or subsequent iteration), and assertions elsewhere ensure that
+// there must 

  1   2   >