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

2018-10-15 Thread translation
commit 6240c6cb12dc743b1a381836f85f1049931b5d15
Author: Translation commit bot 
Date:   Tue Oct 16 06:15:11 2018 +

Update translations for bridgedb
---
 ru/LC_MESSAGES/bridgedb.po | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/ru/LC_MESSAGES/bridgedb.po b/ru/LC_MESSAGES/bridgedb.po
index 5216ef9b7..3b6bef445 100644
--- a/ru/LC_MESSAGES/bridgedb.po
+++ b/ru/LC_MESSAGES/bridgedb.po
@@ -28,7 +28,7 @@ msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: 
'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywords=bridgedb-reported,msgid&cc=isis,sysrqb&owner=isis'\n"
 "POT-Creation-Date: 2015-07-25 03:40+\n"
-"PO-Revision-Date: 2018-10-16 05:44+\n"
+"PO-Revision-Date: 2018-10-16 05:52+\n"
 "Last-Translator: Timofey Lisunov \n"
 "Language-Team: Russian 
(http://www.transifex.com/otf/torproject/language/ru/)\n"
 "MIME-Version: 1.0\n"
@@ -306,11 +306,11 @@ msgid ""
 "Try including as much info about your case as you can, including the list 
of\n"
 "bridges and Pluggable Transports you tried to use, your Tor Browser 
version,\n"
 "and any messages which Tor gave out, etc."
-msgstr "Для быстрого устранения вашей 
проблемы, нужно в сообщении указать полную 
информацию о проблеме, включая имя моста и 
соединение которое вы использовали для 
передачи данных, а так-же версию Tor browser."
+msgstr "Для быстрого устранения вашей 
проблемы в сообщении необходимо указать 
полную информацию о проблеме, включая имя 
моста и соединение, которое вы 
использовали для передачи данных, а также 
версию Tor Browser."
 
 #: bridgedb/strings.py:128
 msgid "Here are your bridge lines:"
-msgstr "Строка ввода адреса моста:"
+msgstr "Строка ввода адресов мостов:"
 
 #: bridgedb/strings.py:129
 msgid "Get Bridges!"
@@ -318,7 +318,7 @@ msgstr "Получить адрес моста!"
 
 #: bridgedb/strings.py:133
 msgid "Please select options for bridge type:"
-msgstr "Пожалуйста, выберите опции для 
определения типа моста:"
+msgstr "Пожалуйста, выберите параметры типа 
моста:"
 
 #: bridgedb/strings.py:134
 msgid "Do you need IPv6 addresses?"
@@ -331,7 +331,7 @@ msgstr "Будете использовать %s?"
 
 #: bridgedb/strings.py:139
 msgid "Your browser is not displaying images properly."
-msgstr "Браузер не корректно отображает 
изображения."
+msgstr "Браузер некорректно отображает 
изображения."
 
 #: bridgedb/strings.py:140
 msgid "Enter the characters from the image above..."
@@ -339,7 +339,7 @@ msgstr "Введите символы с 
изображения..."
 
 #: bridgedb/strings.py:144
 msgid "How to start using your bridges"
-msgstr "Как использовать Мост?"
+msgstr "Как использовать мосты?"
 
 #. TRANSLATORS: Please DO NOT translate "Tor Browser".
 #: bridgedb/strings.py:146
@@ -348,7 +348,7 @@ msgid ""
 "To enter bridges into Tor Browser, first go to the %s Tor Browser download\n"
 "page %s and then follow the instructions there for downloading and starting\n"
 "Tor Browser."
-msgstr "Что-бы добавить новый мост в %s Tor Browser 
необходимо на странице загрузок Tor Browser %s."
+msgstr "Чтобы добавить новый мост в %s Tor Browser, 
необходимо перейти на страницу загрузки Tor 
Browser %s и следовать инструкциям по 
скачиванию и запуску Tor Browser."
 
 #. TRANSLATORS: Please DO NOT translate "Tor".
 #: bridgedb/strings.py:151
@@ -382,7 +382,7 @@ msgstr "Выводит это сообщение."
 #. "plain-ol'-vanilla" bridges.
 #: bridgedb/strings.py:171
 msgid "Request vanilla bridges."
-msgstr "Запросить адреса обычных мостов."
+msgstr "Запросить обычные мосты."
 
 #: bridgedb/strings.py:172
 msgid "Request IPv6 bridges."
@@ -391,10 +391,10 @@ msgstr "Запросить мосты с 
поддержкой IPv6."
 #. TRANSLATORS: Please DO NOT translate the word the word "TYPE".
 #: bridgedb/strings.py:174
 msgid "Request a Pluggable Transport by TYPE."
-msgstr "Запросить подключенные типы передачи 
данных"
+msgstr "Запросить подключаемый транспорт TYPE."
 
 #. TRANSLATORS: Please DO NOT translate "BridgeDB".
 #. TRANSLATORS: Please DO NOT translate "GnuPG".
 #: bridgedb/strings.py:177
 msgid "Get a co

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

2018-10-15 Thread translation
commit 0986f4121a77d2c410f6a4050c44d5c84b4cba3f
Author: Translation commit bot 
Date:   Tue Oct 16 06:15:16 2018 +

Update translations for bridgedb_completed
---
 ru/LC_MESSAGES/bridgedb.po | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/ru/LC_MESSAGES/bridgedb.po b/ru/LC_MESSAGES/bridgedb.po
index 5216ef9b7..3b6bef445 100644
--- a/ru/LC_MESSAGES/bridgedb.po
+++ b/ru/LC_MESSAGES/bridgedb.po
@@ -28,7 +28,7 @@ msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: 
'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywords=bridgedb-reported,msgid&cc=isis,sysrqb&owner=isis'\n"
 "POT-Creation-Date: 2015-07-25 03:40+\n"
-"PO-Revision-Date: 2018-10-16 05:44+\n"
+"PO-Revision-Date: 2018-10-16 05:52+\n"
 "Last-Translator: Timofey Lisunov \n"
 "Language-Team: Russian 
(http://www.transifex.com/otf/torproject/language/ru/)\n"
 "MIME-Version: 1.0\n"
@@ -306,11 +306,11 @@ msgid ""
 "Try including as much info about your case as you can, including the list 
of\n"
 "bridges and Pluggable Transports you tried to use, your Tor Browser 
version,\n"
 "and any messages which Tor gave out, etc."
-msgstr "Для быстрого устранения вашей 
проблемы, нужно в сообщении указать полную 
информацию о проблеме, включая имя моста и 
соединение которое вы использовали для 
передачи данных, а так-же версию Tor browser."
+msgstr "Для быстрого устранения вашей 
проблемы в сообщении необходимо указать 
полную информацию о проблеме, включая имя 
моста и соединение, которое вы 
использовали для передачи данных, а также 
версию Tor Browser."
 
 #: bridgedb/strings.py:128
 msgid "Here are your bridge lines:"
-msgstr "Строка ввода адреса моста:"
+msgstr "Строка ввода адресов мостов:"
 
 #: bridgedb/strings.py:129
 msgid "Get Bridges!"
@@ -318,7 +318,7 @@ msgstr "Получить адрес моста!"
 
 #: bridgedb/strings.py:133
 msgid "Please select options for bridge type:"
-msgstr "Пожалуйста, выберите опции для 
определения типа моста:"
+msgstr "Пожалуйста, выберите параметры типа 
моста:"
 
 #: bridgedb/strings.py:134
 msgid "Do you need IPv6 addresses?"
@@ -331,7 +331,7 @@ msgstr "Будете использовать %s?"
 
 #: bridgedb/strings.py:139
 msgid "Your browser is not displaying images properly."
-msgstr "Браузер не корректно отображает 
изображения."
+msgstr "Браузер некорректно отображает 
изображения."
 
 #: bridgedb/strings.py:140
 msgid "Enter the characters from the image above..."
@@ -339,7 +339,7 @@ msgstr "Введите символы с 
изображения..."
 
 #: bridgedb/strings.py:144
 msgid "How to start using your bridges"
-msgstr "Как использовать Мост?"
+msgstr "Как использовать мосты?"
 
 #. TRANSLATORS: Please DO NOT translate "Tor Browser".
 #: bridgedb/strings.py:146
@@ -348,7 +348,7 @@ msgid ""
 "To enter bridges into Tor Browser, first go to the %s Tor Browser download\n"
 "page %s and then follow the instructions there for downloading and starting\n"
 "Tor Browser."
-msgstr "Что-бы добавить новый мост в %s Tor Browser 
необходимо на странице загрузок Tor Browser %s."
+msgstr "Чтобы добавить новый мост в %s Tor Browser, 
необходимо перейти на страницу загрузки Tor 
Browser %s и следовать инструкциям по 
скачиванию и запуску Tor Browser."
 
 #. TRANSLATORS: Please DO NOT translate "Tor".
 #: bridgedb/strings.py:151
@@ -382,7 +382,7 @@ msgstr "Выводит это сообщение."
 #. "plain-ol'-vanilla" bridges.
 #: bridgedb/strings.py:171
 msgid "Request vanilla bridges."
-msgstr "Запросить адреса обычных мостов."
+msgstr "Запросить обычные мосты."
 
 #: bridgedb/strings.py:172
 msgid "Request IPv6 bridges."
@@ -391,10 +391,10 @@ msgstr "Запросить мосты с 
поддержкой IPv6."
 #. TRANSLATORS: Please DO NOT translate the word the word "TYPE".
 #: bridgedb/strings.py:174
 msgid "Request a Pluggable Transport by TYPE."
-msgstr "Запросить подключенные типы передачи 
данных"
+msgstr "Запросить подключаемый транспорт TYPE."
 
 #. TRANSLATORS: Please DO NOT translate "BridgeDB".
 #. TRANSLATORS: Please DO NOT translate "GnuPG".
 #: bridgedb/strings.py:177
 msgid

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

2018-10-15 Thread translation
commit 69f3fcedce68f16a903f27ef7177d4c01ecfb713
Author: Translation commit bot 
Date:   Tue Oct 16 05:46:04 2018 +

Update translations for tails-misc
---
 tr.po | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/tr.po b/tr.po
index f7b850ad3..ca13dc858 100644
--- a/tr.po
+++ b/tr.po
@@ -29,8 +29,8 @@ msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2018-10-15 14:47+0200\n"
-"PO-Revision-Date: 2018-10-15 14:43+\n"
-"Last-Translator: carolyn \n"
+"PO-Revision-Date: 2018-10-16 05:39+\n"
+"Last-Translator: Kaya Zeren \n"
 "Language-Team: Turkish 
(http://www.transifex.com/otf/torproject/language/tr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -631,11 +631,11 @@ msgstr "{volume_name} – {drive_name}"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:222
 msgid "Wrong passphrase or parameters"
-msgstr ""
+msgstr "Parola ya da parametreler hatalı"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:224
 msgid "Error unlocking volume"
-msgstr ""
+msgstr "Birim kilidi açılırken sorun çıktı"
 
 #. Translators: Don't translate {volume_name} or {error_message},
 #. they are placeholder and will be replaced.
@@ -644,7 +644,7 @@ msgstr ""
 msgid ""
 "Couldn't unlock volume {volume_name}:\n"
 "{error_message}"
-msgstr ""
+msgstr "{volume_name} biriminin kilidi açılamadı:\n{error_message}"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_list.py:83
 msgid "No file containers added"

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


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

2018-10-15 Thread translation
commit 3f58940104dcec7751a07d4ec13158c9d278371c
Author: Translation commit bot 
Date:   Tue Oct 16 05:46:09 2018 +

Update translations for tails-misc_completed
---
 tr.po | 163 ++
 1 file changed, 103 insertions(+), 60 deletions(-)

diff --git a/tr.po b/tr.po
index 046e909cc..ca13dc858 100644
--- a/tr.po
+++ b/tr.po
@@ -28,9 +28,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-09-04 11:37+0200\n"
-"PO-Revision-Date: 2018-10-07 00:16+\n"
-"Last-Translator: Emma Peel\n"
+"POT-Creation-Date: 2018-10-15 14:47+0200\n"
+"PO-Revision-Date: 2018-10-16 05:39+\n"
+"Last-Translator: Kaya Zeren \n"
 "Language-Team: Turkish 
(http://www.transifex.com/otf/torproject/language/tr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -76,7 +76,7 @@ msgid ""
 msgstr "Şu yazılımlar Tails başlatılırken otomatik olarak kalıcı 
depolama alanınızdan kurulacak."
 
 #: 
config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui:132
-#: 
config/chroot_local-includes/usr/local/bin/tails-additional-software-config:169
+#: 
config/chroot_local-includes/usr/local/bin/tails-additional-software-config:172
 msgid ""
 "To add more, install some software using Synaptic Package Manager or Additional Software feature."
 msgstr "Tails başlatılırken otomatik olarak kurulması için bir kalıcı 
depolama oluşturarak Ek Yazılımlar özelliğini etkinleştirmeniz 
gerekir."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:314
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:318
 msgid "Create Persistent Storage"
 msgstr "Kalıcı Depolama Oluştur"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:322
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:326
 msgid "Creating your persistent storage failed."
 msgstr "Kalıcı depolamanız oluşturulamadı."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:329
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:334
 #, python-brace-format
 msgid "You could install {packages} automatically when starting Tails"
 msgstr "Tails başlatılırken otomatik olarak {packages} kurabilirsiniz"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:332
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:337
 msgid ""
 "To do so, you need to run Tails from a USB stick installed using Tails "
 "Installer."
 msgstr "Bunun için Tails uygulamasını Tails Kurucu ile 
hazırlanmış bir USB bellekten çalıştırmalısınız."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:345
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:351
 #, python-brace-format
 msgid "Remove {packages} from your additional software?"
 msgstr "{packages} ek yazılımlarınızdan kaldırılsın mı?"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:347
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:354
 #, python-brace-format
 msgid "This will stop installing {packages} automatically."
 msgstr "Bu işlem otomatik {packages} kurulumunu durduracak."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:349
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:356
 msgid "Remove"
 msgstr "Kaldır"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:350
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:357
 #: config/chroot_local-includes/usr/local/bin/tails-screen-locker:118
 #: config/chroot_local-includes/usr/local/bin/tor-browser:46
 msgid "Cancel"
 msgstr "Ä°ptal"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:524
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:531
 msgid "Installing your additional software from persistent storage..."
 msgstr "Ek yazılımınız kalıcı depolama alanınızdan kuruluyor..."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:526
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:533
 msgid "This can take several minutes."
 msgstr "Bu işlem bir kaç dakika sürebilir."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:538
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
 msgid "The installation of your additional software failed"
 msgstr "Ek yazılım kurulamadı"
 
-#: config/chroot_local-includ

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

2018-10-15 Thread translation
commit be0d08f1239eab5a3dc82015c29564f2515e34e2
Author: Translation commit bot 
Date:   Tue Oct 16 05:45:17 2018 +

Update translations for bridgedb_completed
---
 ru/LC_MESSAGES/bridgedb.po | 32 
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/ru/LC_MESSAGES/bridgedb.po b/ru/LC_MESSAGES/bridgedb.po
index d13155d41..5216ef9b7 100644
--- a/ru/LC_MESSAGES/bridgedb.po
+++ b/ru/LC_MESSAGES/bridgedb.po
@@ -28,8 +28,8 @@ msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: 
'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywords=bridgedb-reported,msgid&cc=isis,sysrqb&owner=isis'\n"
 "POT-Creation-Date: 2015-07-25 03:40+\n"
-"PO-Revision-Date: 2018-10-04 01:06+\n"
-"Last-Translator: erinm\n"
+"PO-Revision-Date: 2018-10-16 05:44+\n"
+"Last-Translator: Timofey Lisunov \n"
 "Language-Team: Russian 
(http://www.transifex.com/otf/torproject/language/ru/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -98,7 +98,7 @@ msgstr "Похоже, произошла ошибка при 
получении
 msgid ""
 "This QRCode contains your bridge lines. Scan it with a QRCode reader to copy"
 " your bridge lines onto mobile and other devices."
-msgstr "Этот QR-код содержит ваши адреса 
ретрансляторов. Отсканируйте его 
устройством, считывающим QR-код, чтобы 
скопировать свои адреса рестрансляторов 
на мобильные и другие устройства"
+msgstr "Этот QR-код содержит адреса 
ретрансляторов. Отсканируйте его 
устройством, считывающим QR-код, чтобы 
скопировать адреса рестрансляторов на 
мобильные и другие устройства."
 
 #: bridgedb/https/templates/bridges.html:131
 msgid "There currently aren't any bridges available..."
@@ -119,7 +119,7 @@ msgstr "Шаг %s№1%s"
 #: bridgedb/https/templates/index.html:13
 #, python-format
 msgid "Download %s Tor Browser %s"
-msgstr "Скачать %s Tor Browser %s"
+msgstr "Скачайте %s Tor Browser %s"
 
 #: bridgedb/https/templates/index.html:25
 #, python-format
@@ -139,7 +139,7 @@ msgstr "Шаг %s№3%s"
 #: bridgedb/https/templates/index.html:38
 #, python-format
 msgid "Now %s add the bridges to Tor Browser %s"
-msgstr "Затем %s пропишите адрес моста в Tor Browser 
%s"
+msgstr "Затем %s пропишите адреса мостов в Tor 
Browser %s"
 
 #. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
 #. beginning of words are present in your final translation. Thanks!
@@ -176,7 +176,7 @@ msgstr "%sД%sа! "
 #: bridgedb/https/templates/options.html:147
 #, python-format
 msgid "%sG%set Bridges"
-msgstr "%sП%sолучить адрес моста"
+msgstr "%sП%sолучить адреса мостов"
 
 #: bridgedb/strings.py:43
 msgid "[This is an automated message; please do not reply.]"
@@ -184,19 +184,19 @@ msgstr "[Это автоматическое 
сообщение, пожалуй
 
 #: bridgedb/strings.py:45
 msgid "Here are your bridges:"
-msgstr "Ваш адрес моста:"
+msgstr "Ваши адреса мостов:"
 
 #: bridgedb/strings.py:47
 #, python-format
 msgid ""
 "You have exceeded the rate limit. Please slow down! The minimum time 
between\n"
 "emails is %s hours. All further emails during this time period will be 
ignored."
-msgstr "Вы превысили допустимый лимит. 
Пожалуйста, повторите ваш запрос позже! 
Повторить запрос можно через\n %s часов. 
Сообщения отправленные в это время, 
доставлены не будут."
+msgstr "Вы превысили допустимый лимит. 
Пожалуйста, повторите запрос 
позже!\nПовторить запрос можно через %s 
часов. Сообщения, отправленные до этого 
времени, будут проигнорированы."
 
 #: bridgedb/strings.py:50
 msgid ""
 "COMMANDs: (combine COMMANDs to specify multiple options simultaneously)"
-msgstr "КОМАНДЫ: (Совмещайте команды, чтобы 
использовать несколько опций одновременно 
)"
+msgstr "КОМАНДЫ: (совмещайте команды, чтобы 
использовать несколько функций 
одновременно)"
 
 #. TRANSLATORS: Please DO NOT translate the word "BridgeDB".
 #: bridgedb/strings.py:53
@@ -219,7 +219,7 @@ msgstr "Здравствуй, друг!"
 
 #: bridgedb/strings.py:58 bridgedb/https/templates/base.html:90
 msgid "Public Keys"
-msgstr "Публичный, открытый ключ"
+

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

2018-10-15 Thread translation
commit c6d71ff7a4fb3e70e4d1419c0e87818ac3ec2a4d
Author: Translation commit bot 
Date:   Tue Oct 16 05:45:11 2018 +

Update translations for bridgedb
---
 ru/LC_MESSAGES/bridgedb.po | 32 
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/ru/LC_MESSAGES/bridgedb.po b/ru/LC_MESSAGES/bridgedb.po
index d13155d41..5216ef9b7 100644
--- a/ru/LC_MESSAGES/bridgedb.po
+++ b/ru/LC_MESSAGES/bridgedb.po
@@ -28,8 +28,8 @@ msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: 
'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB&keywords=bridgedb-reported,msgid&cc=isis,sysrqb&owner=isis'\n"
 "POT-Creation-Date: 2015-07-25 03:40+\n"
-"PO-Revision-Date: 2018-10-04 01:06+\n"
-"Last-Translator: erinm\n"
+"PO-Revision-Date: 2018-10-16 05:44+\n"
+"Last-Translator: Timofey Lisunov \n"
 "Language-Team: Russian 
(http://www.transifex.com/otf/torproject/language/ru/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -98,7 +98,7 @@ msgstr "Похоже, произошла ошибка при 
получении
 msgid ""
 "This QRCode contains your bridge lines. Scan it with a QRCode reader to copy"
 " your bridge lines onto mobile and other devices."
-msgstr "Этот QR-код содержит ваши адреса 
ретрансляторов. Отсканируйте его 
устройством, считывающим QR-код, чтобы 
скопировать свои адреса рестрансляторов 
на мобильные и другие устройства"
+msgstr "Этот QR-код содержит адреса 
ретрансляторов. Отсканируйте его 
устройством, считывающим QR-код, чтобы 
скопировать адреса рестрансляторов на 
мобильные и другие устройства."
 
 #: bridgedb/https/templates/bridges.html:131
 msgid "There currently aren't any bridges available..."
@@ -119,7 +119,7 @@ msgstr "Шаг %s№1%s"
 #: bridgedb/https/templates/index.html:13
 #, python-format
 msgid "Download %s Tor Browser %s"
-msgstr "Скачать %s Tor Browser %s"
+msgstr "Скачайте %s Tor Browser %s"
 
 #: bridgedb/https/templates/index.html:25
 #, python-format
@@ -139,7 +139,7 @@ msgstr "Шаг %s№3%s"
 #: bridgedb/https/templates/index.html:38
 #, python-format
 msgid "Now %s add the bridges to Tor Browser %s"
-msgstr "Затем %s пропишите адрес моста в Tor Browser 
%s"
+msgstr "Затем %s пропишите адреса мостов в Tor 
Browser %s"
 
 #. TRANSLATORS: Please make sure the '%s' surrounding single letters at the
 #. beginning of words are present in your final translation. Thanks!
@@ -176,7 +176,7 @@ msgstr "%sД%sа! "
 #: bridgedb/https/templates/options.html:147
 #, python-format
 msgid "%sG%set Bridges"
-msgstr "%sП%sолучить адрес моста"
+msgstr "%sП%sолучить адреса мостов"
 
 #: bridgedb/strings.py:43
 msgid "[This is an automated message; please do not reply.]"
@@ -184,19 +184,19 @@ msgstr "[Это автоматическое 
сообщение, пожалуй
 
 #: bridgedb/strings.py:45
 msgid "Here are your bridges:"
-msgstr "Ваш адрес моста:"
+msgstr "Ваши адреса мостов:"
 
 #: bridgedb/strings.py:47
 #, python-format
 msgid ""
 "You have exceeded the rate limit. Please slow down! The minimum time 
between\n"
 "emails is %s hours. All further emails during this time period will be 
ignored."
-msgstr "Вы превысили допустимый лимит. 
Пожалуйста, повторите ваш запрос позже! 
Повторить запрос можно через\n %s часов. 
Сообщения отправленные в это время, 
доставлены не будут."
+msgstr "Вы превысили допустимый лимит. 
Пожалуйста, повторите запрос 
позже!\nПовторить запрос можно через %s 
часов. Сообщения, отправленные до этого 
времени, будут проигнорированы."
 
 #: bridgedb/strings.py:50
 msgid ""
 "COMMANDs: (combine COMMANDs to specify multiple options simultaneously)"
-msgstr "КОМАНДЫ: (Совмещайте команды, чтобы 
использовать несколько опций одновременно 
)"
+msgstr "КОМАНДЫ: (совмещайте команды, чтобы 
использовать несколько функций 
одновременно)"
 
 #. TRANSLATORS: Please DO NOT translate the word "BridgeDB".
 #: bridgedb/strings.py:53
@@ -219,7 +219,7 @@ msgstr "Здравствуй, друг!"
 
 #: bridgedb/strings.py:58 bridgedb/https/templates/base.html:90
 msgid "Public Keys"
-msgstr "Публичный, открытый ключ"
+msgstr "О

[tor-commits] [depictor/master] Add gabelmoo back to bwauth graphs

2018-10-15 Thread tom
commit 0f31f91f91627cda8f13ff6bca5edad5a58350a7
Author: Tom Ritter 
Date:   Mon Oct 15 23:23:56 2018 -0500

Add gabelmoo back to bwauth graphs
---
 data/consensus.cfg | 1 +
 1 file changed, 1 insertion(+)

diff --git a/data/consensus.cfg b/data/consensus.cfg
index 41a4147..2ce4902 100644
--- a/data/consensus.cfg
+++ b/data/consensus.cfg
@@ -18,6 +18,7 @@ bwauths maatuska
 bwauths faravahar
 bwauths bastet
 bwauths moria1
+bwauths gabelmoo
 
 # recognized tor consensus parameters
 

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


[tor-commits] [translation/donatepages-messagespot] Update translations for donatepages-messagespot

2018-10-15 Thread translation
commit 2801521570f1a10c2cd424f3ff58da83755c288b
Author: Translation commit bot 
Date:   Tue Oct 16 02:45:26 2018 +

Update translations for donatepages-messagespot
---
 locale/es/LC_MESSAGES/messages.po | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/locale/es/LC_MESSAGES/messages.po 
b/locale/es/LC_MESSAGES/messages.po
index 21b7b2ebb..da8c86706 100644
--- a/locale/es/LC_MESSAGES/messages.po
+++ b/locale/es/LC_MESSAGES/messages.po
@@ -146,6 +146,8 @@ msgid ""
 "For our records, we retain your name, the amount of your donation, the date "
 "of the donation, and your contact information."
 msgstr ""
+"En nuestros registros guardamos tu nombre, el importe de tu donación, la "
+"fecha, y tu información de contacto."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:100
 msgid ""
@@ -153,6 +155,9 @@ msgid ""
 "who need it to do their work, for example by thanking you or mailing you a "
 "t-shirt."
 msgstr ""
+"El acceso a esa información está restringido dentro del Proyecto Tor a la "
+"gente que lo necesita para hacer su trabajo, por ejemplo para agradecerte o "
+"enviarte una camiseta."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:105
 msgid ""
@@ -163,13 +168,14 @@ msgstr ""
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:114
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:655
 msgid "Back to Donate Page"
-msgstr ""
+msgstr "Volver a la página de donación"
 
 #: 
tmp/cache_locale/ce/ce708c1cd991748e8c1c29f932e6ddbd1be5be1b4cc2c5b49b607cae1df80432.php:29
 msgid ""
 "The European shirt fits run a little small so you might want to consider "
 "sizing up."
 msgstr ""
+"La camiseta europea es un poco pequeña, recomendamos aumentar tu talla."
 
 #: 
tmp/cache_locale/ce/ce708c1cd991748e8c1c29f932e6ddbd1be5be1b4cc2c5b49b607cae1df80432.php:36
 msgid "Fit"
@@ -238,6 +244,8 @@ msgid ""
 "Donate to the Tor Project today! Take a stand against surveillance and "
 "censorship. Protect activists worldwide."
 msgstr ""
+"¡Dona hoy al Proyecto Tor! Toma partido contra la vigilancia y la censura. "
+"Ayuda a los activistas de todo el mundo."
 
 #: 
tmp/cache_locale/c7/c763c19bb6abb9330294c550c8241bb3874e3b4e17fb6e7b15db26c60df8d5fe.php:58
 msgid "summary_large_image"
@@ -252,6 +260,8 @@ msgid ""
 "This page requires Javascript to do PayPal or credit card\n"
 "  donations, but it appears you have Javascript disabled."
 msgstr ""
+"Esta página necesita Javascript para las donaciones de PayPal y tarjeta de "
+"crédito, pero parece que tu Javascript está deshabilitado."
 
 #: 
tmp/cache_locale/c7/c763c19bb6abb9330294c550c8241bb3874e3b4e17fb6e7b15db26c60df8d5fe.php:96
 msgid ""

___
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-10-15 Thread translation
commit 79f98595df43d65dd16c49e328b7d424172284b4
Author: Translation commit bot 
Date:   Tue Oct 16 02:15:13 2018 +

Update translations for abouttor-homepage_completed
---
 bn_BD/aboutTor.dtd | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/bn_BD/aboutTor.dtd b/bn_BD/aboutTor.dtd
index 0896f0750..a7458617d 100644
--- a/bn_BD/aboutTor.dtd
+++ b/bn_BD/aboutTor.dtd
@@ -26,3 +26,17 @@
 
 
 
+
+
+
+
+
+
+
+
+
+
+
+
+
+

___
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-10-15 Thread translation
commit a88297f9d5edda318dc34f472d30e3ac7df446d0
Author: Translation commit bot 
Date:   Tue Oct 16 02:15:04 2018 +

Update translations for abouttor-homepage
---
 bn_BD/aboutTor.dtd | 18 +-
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/bn_BD/aboutTor.dtd b/bn_BD/aboutTor.dtd
index d41033eff..a7458617d 100644
--- a/bn_BD/aboutTor.dtd
+++ b/bn_BD/aboutTor.dtd
@@ -29,14 +29,14 @@
 
 
 
-
-
-
-
-
-
+
+
+
+
+
+
 
-
+
 
-
-
+
+

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


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

2018-10-15 Thread translation
commit e43a5fc288ae10ac37283f41750dc7c732f65aff
Author: Translation commit bot 
Date:   Mon Oct 15 19:46:05 2018 +

Update translations for tails-misc_completed
---
 de.po | 164 ++
 1 file changed, 104 insertions(+), 60 deletions(-)

diff --git a/de.po b/de.po
index ddc8956ce..10fc4bbbe 100644
--- a/de.po
+++ b/de.po
@@ -12,6 +12,7 @@
 # D P, 2015
 # Emma Peel, 2018
 # Ettore Atalan , 2014-2018
+# Fritz Hauser , 2018
 # gerhard , 2013
 # jugendhacker , 2018
 # Konstantin BB, 2015
@@ -34,9 +35,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-09-04 11:37+0200\n"
-"PO-Revision-Date: 2018-10-07 15:32+\n"
-"Last-Translator: Curtis Baltimore \n"
+"POT-Creation-Date: 2018-10-15 14:47+0200\n"
+"PO-Revision-Date: 2018-10-15 19:38+\n"
+"Last-Translator: Fritz Hauser \n"
 "Language-Team: German 
(http://www.transifex.com/otf/torproject/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -82,7 +83,7 @@ msgid ""
 msgstr "Die folgende Software wird beim Start von Tails automatisch von deiner 
beständigen Datenpartition installiert."
 
 #: 
config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui:132
-#: 
config/chroot_local-includes/usr/local/bin/tails-additional-software-config:169
+#: 
config/chroot_local-includes/usr/local/bin/tails-additional-software-config:172
 msgid ""
 "To add more, install some software using Synaptic Package Manager or Additional Software feature."
 msgstr "Um es automatisch beim Start von Tails zu installieren, können Sie 
eine beständige Datenpartition erstellen und unter Zusätzliche 
Software aktivieren."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:314
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:318
 msgid "Create Persistent Storage"
 msgstr "Beständige Datenpartition erzeugen"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:322
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:326
 msgid "Creating your persistent storage failed."
 msgstr "Die Erzeugung der beständigen Datenpartition schlug fehl."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:329
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:334
 #, python-brace-format
 msgid "You could install {packages} automatically when starting Tails"
 msgstr "Sie können {packages} automatisch beim Start von Tail installieren."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:332
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:337
 msgid ""
 "To do so, you need to run Tails from a USB stick installed using Tails "
 "Installer."
 msgstr "Dazu müssen Sie Tails von einem USB-Stick starten, der mit dem 
Tails Installer erzeugt wurde."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:345
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:351
 #, python-brace-format
 msgid "Remove {packages} from your additional software?"
 msgstr "{packages} entfernen von Ihrer zusätzlichen Software?"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:347
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:354
 #, python-brace-format
 msgid "This will stop installing {packages} automatically."
 msgstr "Dies stoppt das automatische Installieren von {packages}."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:349
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:356
 msgid "Remove"
 msgstr "Aufheben"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:350
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:357
 #: config/chroot_local-includes/usr/local/bin/tails-screen-locker:118
 #: config/chroot_local-includes/usr/local/bin/tor-browser:46
 msgid "Cancel"
 msgstr "Abbrechen"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:524
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:531
 msgid "Installing your additional software from persistent storage..."
 msgstr "Installieren Sie Ihre zusätzliche Software von der beständigen 
Datenpartition..."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:526
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:533
 msgid "This can take several minutes."
 msgstr "Dies kann einige Minuten dauern."
 
-#: config/chroot_local-includes/usr/local/sbin/

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

2018-10-15 Thread translation
commit 0dacf4c05bda0001acb6aa8425d360b5a41821a4
Author: Translation commit bot 
Date:   Mon Oct 15 19:46:00 2018 +

Update translations for tails-misc
---
 de.po | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/de.po b/de.po
index 1dfa0451b..10fc4bbbe 100644
--- a/de.po
+++ b/de.po
@@ -12,6 +12,7 @@
 # D P, 2015
 # Emma Peel, 2018
 # Ettore Atalan , 2014-2018
+# Fritz Hauser , 2018
 # gerhard , 2013
 # jugendhacker , 2018
 # Konstantin BB, 2015
@@ -35,8 +36,8 @@ msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2018-10-15 14:47+0200\n"
-"PO-Revision-Date: 2018-10-15 14:43+\n"
-"Last-Translator: carolyn \n"
+"PO-Revision-Date: 2018-10-15 19:38+\n"
+"Last-Translator: Fritz Hauser \n"
 "Language-Team: German 
(http://www.transifex.com/otf/torproject/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -637,11 +638,11 @@ msgstr "{volume_name} – {drive_name}"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:222
 msgid "Wrong passphrase or parameters"
-msgstr ""
+msgstr "Falsche Passphrase oder Parameter"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:224
 msgid "Error unlocking volume"
-msgstr ""
+msgstr "Fehler beim Entsperren des Volumens"
 
 #. Translators: Don't translate {volume_name} or {error_message},
 #. they are placeholder and will be replaced.
@@ -650,7 +651,7 @@ msgstr ""
 msgid ""
 "Couldn't unlock volume {volume_name}:\n"
 "{error_message}"
-msgstr ""
+msgstr "Volumen {volume_name}:{error_message} konnte nicht entsperrt werden"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_list.py:83
 msgid "No file containers added"

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


[tor-commits] [metrics-web/master] Update ExoneraTor URL on home page

2018-10-15 Thread karsten
commit 2cf14cb0f2bdc1383503b1ec5d90a518333d9e54
Author: Iain R. Learmonth 
Date:   Mon Oct 15 17:52:00 2018 +0100

Update ExoneraTor URL on home page

Fixes: #28049
---
 src/main/resources/web/jsps/index.jsp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/main/resources/web/jsps/index.jsp 
b/src/main/resources/web/jsps/index.jsp
index 5968727..3fa49b8 100644
--- a/src/main/resources/web/jsps/index.jsp
+++ b/src/main/resources/web/jsps/index.jsp
@@ -73,7 +73,7 @@
   
 
   
-https://exonerator.torproject.org/";> Network Archive Look up if a 
particular IP address was used as a Tor relay on a particular date.
+ Network Archive Look up if a particular IP 
address was used as a Tor relay on a particular date.
   
 
 

___
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-10-15 Thread translation
commit cb85246da8626054fc40c7242d476c996476f0b4
Author: Translation commit bot 
Date:   Mon Oct 15 19:17:30 2018 +

Update translations for tor-browser-manual
---
 fr/fr.po | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/fr/fr.po b/fr/fr.po
index c9f9e270c..284c3b4b8 100644
--- a/fr/fr.po
+++ b/fr/fr.po
@@ -7,12 +7,13 @@
 # runasand , 2016
 # Paul-Marie Tetedoie <134...@supinfo.com>, 2016
 # Domiho Zannou , 2018
+# Thomas Prévost , 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: Domiho Zannou , 2018\n"
+"Last-Translator: Thomas Prévost , 2018\n"
 "Language-Team: French (https://www.transifex.com/otf/teams/1519/fr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -1464,6 +1465,11 @@ msgid ""
 " third-party that faciliates our translations. Below is an outline of how to"
 " sign up and begin."
 msgstr ""
+"Si vous êtes intéressés par le fait d'aider le projet en traduisant le "
+"manuel ou le navigateur Tor dans votre langue, votre aide est la bienvenue !"
+" Pour commencer à apporter votre contribution, vous devrez vous inscrire sur"
+" Transifex, le service tiers qui facilite nos traductions. Vous trouverez "
+"ci-dessous un résumé de comment s'inscrire et commencer à traduire."
 
 #: translate.page:21
 msgid "Signing up on Transifex"

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


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

2018-10-15 Thread translation
commit bf5e5ff6640c34ae46cc835b2320f38da8597345
Author: Translation commit bot 
Date:   Mon Oct 15 19:16:05 2018 +

Update translations for tails-misc
---
 fr.po | 21 +++--
 1 file changed, 11 insertions(+), 10 deletions(-)

diff --git a/fr.po b/fr.po
index 5bf66d3f6..399f0cb7c 100644
--- a/fr.po
+++ b/fr.po
@@ -21,6 +21,7 @@
 # Sabrina Cater , 2015
 # Simon-Olivier Morneau , 2018
 # Thomas Chauchefoin , 2016
+# Thomas Prévost , 2018
 # Towinet, 2013-2016
 # AO , 2015
 msgid ""
@@ -28,8 +29,8 @@ msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2018-10-15 14:47+0200\n"
-"PO-Revision-Date: 2018-10-15 14:43+\n"
-"Last-Translator: carolyn \n"
+"PO-Revision-Date: 2018-10-15 18:59+\n"
+"Last-Translator: Thomas Prévost \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"
@@ -288,26 +289,26 @@ msgstr "Cela peut prendre plusieurs minutes."
 
 #: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
 msgid "The installation of your additional software failed"
-msgstr ""
+msgstr "L'installation de votre logiciel additionnel a échoué"
 
 #: config/chroot_local-includes/usr/local/sbin/tails-additional-software:560
 msgid "Additional software installed successfully"
-msgstr ""
+msgstr "Logiciel additionnel installé avec succès"
 
 #: config/chroot_local-includes/usr/local/sbin/tails-additional-software:580
 msgid "The check for upgrades of your additional software failed"
-msgstr ""
+msgstr "La recherche de mise à jour de vos logiciels additionnels a échoué"
 
 #: config/chroot_local-includes/usr/local/sbin/tails-additional-software:582
 #: config/chroot_local-includes/usr/local/sbin/tails-additional-software:590
 msgid ""
 "Please check your network connection, restart Tails, or read the system log "
 "to understand the problem."
-msgstr ""
+msgstr "Vérifiez votre connexion internet, redémarrer Tails, ou lisez le 
journal système pour comprendre le problème."
 
 #: config/chroot_local-includes/usr/local/sbin/tails-additional-software:589
 msgid "The upgrade of your additional software failed"
-msgstr ""
+msgstr "La mise à jour de votre logiciel additionnel a échoué"
 
 #: 
config/chroot_local-includes/usr/local/lib/tails-additional-software-notify:37
 msgid "Documentation"
@@ -320,18 +321,18 @@ msgstr "Documentation"
 msgid ""
 "Remove {package} from your additional software? This will stop installing "
 "the package automatically."
-msgstr ""
+msgstr "Voulez-vous supprimer [package] de vos logiciels additionnels ? Cela 
arrêtera son installation automatiquement."
 
 #. Translators: Don't translate {pkg}, it's a placeholder and will be
 #. replaced.
 #: 
config/chroot_local-includes/usr/local/bin/tails-additional-software-config:107
 #, python-brace-format
 msgid "Failed to remove {pkg}"
-msgstr ""
+msgstr "La suppression de {pkg} a échoué"
 
 #: 
config/chroot_local-includes/usr/local/bin/tails-additional-software-config:124
 msgid "Failed to read additional software configuration"
-msgstr ""
+msgstr "La lecture du fichier de configuration du logiciel additionnel a 
échoué"
 
 #. Translators: Don't translate {package}, it's a placeholder and will be
 #. replaced.

___
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-10-15 Thread translation
commit 371da30241c9972fd01beaaa90a198aae139e147
Author: Translation commit bot 
Date:   Mon Oct 15 19:15:05 2018 +

Update translations for abouttor-homepage
---
 fr/aboutTor.dtd | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/fr/aboutTor.dtd b/fr/aboutTor.dtd
index c39c2d493..52c4d062e 100644
--- a/fr/aboutTor.dtd
+++ b/fr/aboutTor.dtd
@@ -29,14 +29,14 @@
 
 
 
-
-
-
-
-
-
+
+
+
+
+
+
 
-
+
 
-
+
 

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


[tor-commits] [translation/donatepages-messagespot] Update translations for donatepages-messagespot

2018-10-15 Thread translation
commit 09be4c77050f13d6c98af83630e41a5fbf0c99c7
Author: Translation commit bot 
Date:   Mon Oct 15 18:45:22 2018 +

Update translations for donatepages-messagespot
---
 locale/es/LC_MESSAGES/messages.po| 25 +++--
 locale/pt_BR/LC_MESSAGES/messages.po | 10 +-
 2 files changed, 28 insertions(+), 7 deletions(-)

diff --git a/locale/es/LC_MESSAGES/messages.po 
b/locale/es/LC_MESSAGES/messages.po
index 35357d344..21b7b2ebb 100644
--- a/locale/es/LC_MESSAGES/messages.po
+++ b/locale/es/LC_MESSAGES/messages.po
@@ -73,29 +73,42 @@ msgid ""
 " learn your name, the amount you donated, your email address, phone number "
 "and/or mailing address, as well as any other information you provide."
 msgstr ""
+"Cuando donas al Proyecto Tor, dependiendo de qué mecanismo uses, podríamos "
+"saber tu nombre, el monto que donaste, tu dirección electrónica, número de 
"
+"teléfono y/o domicilio postal, como así también cualquier otra 
información "
+"que proveas."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:76
 msgid ""
 "We may also learn incidental data such as the date and time of your "
 "donation."
 msgstr ""
+"Podríamos aprender también datos incidentales, tales como fecha y hora de 
tu"
+" donación."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:78
 msgid ""
 "The Tor Project will never have access to your financial data, such as your "
 "credit card information.We aim to be careful with your information."
 msgstr ""
+"El Proyecto Tor nunca tendrá acceso a tus datos financieros, tal como "
+"información acerca de tu tarjeta de crédito. Apuntamos a ser cuidadosos con 
"
+"tu información."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:83
 msgid ""
 "If you have provided your email address, we will email you once to thank you"
 " and give you a receipt."
 msgstr ""
+"Si has provisto tu dirección electrónica, te enviaremos un correo por esa "
+"vía por única vez para agradecerte y darte un recibo."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:85
 msgid ""
 "If you opt in during the donation process, we may email you again in future."
 msgstr ""
+"Si así lo manifiestas durante el proceso de donación, puede que te "
+"contactemos por correo electrónico en el futuro."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:87
 msgid ""
@@ -104,21 +117,29 @@ msgid ""
 "target=\"_blank\" href=\"https://www.irs.gov/pub/irs-";
 "pdf/f990ezb.pdf\">Schedule B of the Form 990."
 msgstr ""
+"Si donas más de USD 5.000 y sabemos tu nombre y domicilio, nos es requerido "
+"por el IRS declararlo en el https://www.irs.gov/pub/irs-pdf/f990ezb.pdf\";>apartado B del "
+"formulario 990."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:89
 msgid ""
 "But, that information is redacted from the publicly-available version of our"
 " Form 990."
 msgstr ""
+"Pero, esa información es omitida de la versión públicamente disponible de "
+"nuestro formulaio 990."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:91
 msgid ""
 "We will never publicly identify you as a donor without your permission."
-msgstr ""
+msgstr "Nunca te identificaremos como donante públicamente sin tu permiso."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:96
 msgid "We do not publish, sell, trade, or rent any information about you."
 msgstr ""
+"No publicamos, vendemos, comerciamos, o alquilamos ninguna información "
+"acerca tuyo."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:98
 msgid ""
@@ -224,7 +245,7 @@ msgstr ""
 
 #: 
tmp/cache_locale/c7/c763c19bb6abb9330294c550c8241bb3874e3b4e17fb6e7b15db26c60df8d5fe.php:62
 msgid "@torproject"
-msgstr ""
+msgstr "@torproject"
 
 #: 
tmp/cache_locale/c7/c763c19bb6abb9330294c550c8241bb3874e3b4e17fb6e7b15db26c60df8d5fe.php:92
 msgid ""
diff --git a/locale/pt_BR/LC_MESSAGES/messages.po 
b/locale/pt_BR/LC_MESSAGES/messages.po
index fdecdfcad..62362c2f5 100644
--- a/locale/pt_BR/LC_MESSAGES/messages.po
+++ b/locale/pt_BR/LC_MESSAGES/messages.po
@@ -1095,8 +1095,8 @@ msgid ""
 "While we are grateful for this funding, we don't want the Tor Project to "
 "become too dependent on any single source."
 msgstr ""
-"Ainda que sejamos gratos por esses financiamentos, não queremos que o "
-"Projeto Tor se torne dependente demais de nenhuma fonte específica. "
+"Ainda que sejamos gratos por essas doações, não queremos que o Projeto Tor 
"
+"se torne dependente demais de nenhuma fonte específica. "
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:215
 msgid ""
@@ -1104,9 +1104,9 @@ msgid ""
 " allows us to 

[tor-commits] [translation/donatepages-messagespot_completed] Update translations for donatepages-messagespot_completed

2018-10-15 Thread translation
commit 3e8ae56fbda0052a95d660b1683ba5c82cb11a79
Author: Translation commit bot 
Date:   Mon Oct 15 18:45:28 2018 +

Update translations for donatepages-messagespot_completed
---
 locale/pt_BR/LC_MESSAGES/messages.po | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/locale/pt_BR/LC_MESSAGES/messages.po 
b/locale/pt_BR/LC_MESSAGES/messages.po
index fdecdfcad..62362c2f5 100644
--- a/locale/pt_BR/LC_MESSAGES/messages.po
+++ b/locale/pt_BR/LC_MESSAGES/messages.po
@@ -1095,8 +1095,8 @@ msgid ""
 "While we are grateful for this funding, we don't want the Tor Project to "
 "become too dependent on any single source."
 msgstr ""
-"Ainda que sejamos gratos por esses financiamentos, não queremos que o "
-"Projeto Tor se torne dependente demais de nenhuma fonte específica. "
+"Ainda que sejamos gratos por essas doações, não queremos que o Projeto Tor 
"
+"se torne dependente demais de nenhuma fonte específica. "
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:215
 msgid ""
@@ -1104,9 +1104,9 @@ msgid ""
 " allows us to spend the money on the projects we think are most important "
 "and respond quickly to changing events."
 msgstr ""
-"Financiamentos coletivos nos permitem diversificar nossa base de doadores e "
-"são irrestritos - nos permitem gastar o dinheiro nos projetos que pensamos "
-"ser mais importantes e ter uma resposta rápida às mudanças de contexto. "
+"Doações coletivas nos permitem diversificar nossa base de doadores e são "
+"irrestritos - nos permitem gastar o dinheiro nos projetos que pensamos ser "
+"mais importantes e ter uma resposta rápida às mudanças de contexto. "
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:217
 msgid ""

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


[tor-commits] [webwml/master] Move iwakeh to the past contributors section

2018-10-15 Thread atagar
commit b2edacdb8b9653e2a58012f922daed90c3c50bf3
Author: Damian Johnson 
Date:   Mon Oct 15 11:20:03 2018 -0700

Move iwakeh to the past contributors section
---
 about/en/contributors.wml |   3 ++
 about/en/corepeople.wml   | 118 +-
 2 files changed, 57 insertions(+), 64 deletions(-)

diff --git a/about/en/contributors.wml b/about/en/contributors.wml
index 6c19d9d0..c2b9477e 100644
--- a/about/en/contributors.wml
+++ b/about/en/contributors.wml
@@ -134,6 +134,9 @@ Arora fork, the http://code.google.com/p/torsocks/";>torsocks
 scripts, and other useful peripheral tools.
 
+iwakeh
+Speaks Java and other languages, streamlines build processes, and 
scrutinizes mathematical concepts behind aggregating tons of Tor network 
data.
+
 Leiah Jansen, Graphic Designer
 Helped make our cool logos, designs, stickers, graphics, and so on.
 Invented the awesome "roots" Tor logo.
diff --git a/about/en/corepeople.wml b/about/en/corepeople.wml
index 3ee2323e..0e6e1b9c 100644
--- a/about/en/corepeople.wml
+++ b/about/en/corepeople.wml
@@ -383,16 +383,6 @@
 
 
 
-  
-  
-  https://db.torproject.org/fetchkey.cgi?fingerprint=B788B36768B69B4DD8E1F69E75256C22E303259C";>
-  iwakeh
-  Speaks Java and other languages, streamlines 
build processes, and scrutinizes mathematical concepts behind aggregating tons 
of Tor network data.
-
-  
-
-  
-
   
   
   https://twitter.com/redshiftzero";>
@@ -401,7 +391,9 @@
   IRC: redshiftzero
   Lead developer of the https://securedrop.org/";>SecureDrop whistleblower platform based at 
the https://freedom.press/";>Freedom of the Press Foundation.
 
+  
 
+  
 
   
   
@@ -411,9 +403,7 @@
   IRC: qbi
   Volunteer that helped translate the website, is 
part of TorServers.net, and Tor's sysadmin team.
 
-  
 
-  
 
   
   
@@ -422,7 +412,9 @@
   IRC: jselon
   Event Coordination, donor management, general 
office operations.
 
+  
 
+  
 
   
   
@@ -431,9 +423,7 @@
   IRC: juga
   Contributed to OONI, bug tracker features, 
wrote tordyguards. Currently working on bandwidth scanner.
 
-  
 
-  
 
   
   
@@ -442,7 +432,9 @@
   Julius Mittenzwei
   Germany-based lawyer and Internet 
activist.
 
+  
 
+  
 
   
   
@@ -451,9 +443,7 @@
   IRC: juris
   Board member of torservers.net.
 
-  
 
-  
 
   
   
@@ -463,7 +453,9 @@
   Pronoun: http://pronoun.is/he";>he
   Primary researcher and developer into https://metrics.torproject.org/";>anonymous metrics which started as a 
National Science Foundation grant.
 
+  
 
+  
 
   
   
@@ -473,9 +465,7 @@
   Pronoun: http://pronoun.is/she";>she
   Volunteer on the Community Team. Helps with 
t-shirts for relay operators and other odds and ends.
 
-  
 
-  
 
   
   
@@ -485,7 +475,9 @@
   IRC: ailanthus
   Writes about Tor in mainstream and technical 
publications and conducts community workshops to teach people about Tor.
 
+  
 
+  
 
   
   
@@ -496,16 +488,16 @@
   Pronoun: http://pronoun.is/he";>he
   https://securedrop.org";>SecureDrop 
developer at the https://freedom.press";>Freedom of Press 
Foundation. Member of the community team, privacy advocate focusing on new 
users.
 
-  
 
-  
 
   
   
   Leif Ryge
   Works on security analysis, designer of 
"bananaphone" transport.
 
+  
 
+  
 
   
   
@@ -514,9 +506,7 @@
   IRC: ln5
   Swedish advocate and Tor Board member. He works 
on implementing IPv6 in Tor, build automation, and runs a directory 
authority.
 
-  
 
-  
 
   
   
@@ -527,7 +517,9 @@
   Pronoun: http://pronoun.is/she";>she
   Maria manages OONI's Partnership Program and 
writes research reports on internet censorship around the world.
 
+  
 
+  
 
   
   
@@ -537,9 +529,7 @@
   Pronoun: http://pronoun.is/he";>he
   Developer on the Tor Browser team.
 
-  
 
-  
 
   
   
@@ -547,7 +537,9 @@
   Matt Blaze
   Chairs the Tor Board of Directors. Professor at 
the University of Pennsylvania where he researches security, privacy, and 
anonymity.
 
+  
 
+  
 
   
   
@@ -556,9 +548,7 @@
   IRC: pastly
   Matt http://mattssi4lhud.onion/";>implemented the http://www.robgjansen.com/publications/kist-sec2014.pdf";>KIST 
scheduler into Tor. He helps safely measure Tor and says helpful things on 
IRC.
 
-  
 
-  
 
   
   
@@ -568,7 +558,9 @@
   IRC: sysrqb
   Worked on tor, torsocks, and many other 
projects. Helped maintain and develop BridgeDB.
 
+  
 
+  
 
   
   
@@ -578,9 +570,7 @@
   IRC: meejah
   https://meejah.ca";>Author of https://github.com/meejah/txtorcon";>txtorcon, https://github.com/meejah/carml";>carml and other Tor Pyth

[tor-commits] [webwml/master] Add Bekeela to the people page

2018-10-15 Thread atagar
commit 47858b9ff5aba2fac6b4f495172db24dedf96de2
Author: Damian Johnson 
Date:   Mon Oct 15 11:13:23 2018 -0700

Add Bekeela to the people page
---
 about/en/corepeople.wml| 167 ++---
 images/people/bdavila.png  | Bin 0 -> 34842 bytes
 images/people/orig/bdavila.jpg | Bin 0 -> 1645382 bytes
 3 files changed, 89 insertions(+), 78 deletions(-)

diff --git a/about/en/corepeople.wml b/about/en/corepeople.wml
index 3134b273..3ee2323e 100644
--- a/about/en/corepeople.wml
+++ b/about/en/corepeople.wml
@@ -123,6 +123,15 @@
 
   
 
+  
+  
+  Bekeela Davila
+  IRC: bdavila
+  Pronoun: http://pronoun.is/she";>she
+  Grants Manager.
+
+
+
   
   
   https://db.torproject.org/fetchkey.cgi?fingerprint=F711FA29D61F88CE6879BAD0D91A345E56B01B25";>
@@ -130,7 +139,9 @@
   IRC: brade
   Developer on the Tor Browser team.
 
+  
 
+  
 
   
   
@@ -140,9 +151,7 @@
   IRC: komlo
   Chelsea is a software/security engineer and 
contributes to core tor.
 
-  
 
-  
 
   
   
@@ -151,7 +160,9 @@
   Pronoun: http://pronoun.is/she";>she
   Tor Board member and https://www.eff.org/about/staff/cindy-cohn";>Executive Director of the 
EFF. Lawyer by training, https://blog.torproject.org/blog/tor-heart-notes-board-member";>her 
focus is on making sure Tor stays available and that Tor users stay 
safe.
 
+  
 
+  
 
   
   
@@ -161,9 +172,7 @@
   IRC: Phoul
   Relay advocate, Outreachy mentor, and a member 
of the community team. He is also a director of the Canadian Torservers.net 
partner https://www.coldhak.ca/";>Coldhak.
 
-  
 
-  
 
   
   
@@ -173,7 +182,9 @@
   Pronoun: http://pronoun.is/he";>he
   Author of the https://stem.torproject.org/";>Stem python controller library and https://nyx.torproject.org/";>Nyx relay monitor.
 
+  
 
+  
 
   
   
@@ -182,9 +193,7 @@
   IRC: dgoulet
   Tor development team focusing on onion services 
and our torsocks maintainer.
 
-  
 
-  
 
   
   
@@ -194,7 +203,9 @@
   IRC: dawuud
   https://github.com/david415/";>Author 
of roflcoptor and honeybadger. Researches mixnets and contributes to 
txtorcon.
 
+  
 
+  
 
   
   
@@ -204,9 +215,7 @@
   IRC: DonnchaC
   Onion services developer, OnionBalance 
developer, hunter of bad relays.
 
-  
 
-  
 
   
   
@@ -216,7 +225,9 @@
   Pronoun: http://pronoun.is/she";>she
   emmapeel coordinates the localization 
(translations) of the different Tor software.
 
+  
 
+  
 
   
   
@@ -225,9 +236,7 @@
   IRC: ewyatt
   Non-technical switchboard for people-related 
things: recruiting, onboarding, benefits, contracts, TPI policy questions, and 
baked goods.
 
-  
 
-  
 
   
   
@@ -237,7 +246,9 @@
   Pronoun: http://pronoun.is/she";>she
   Coordinates Network, Metrics and 
Anti-censorship teams.
 
+  
 
+  
 
   
   
@@ -247,9 +258,7 @@
   IRC: biella
   http://gabriellacoleman.org/";>Anthropologist and Wolfe Chair in 
Scientific and Technological Literacy at McGill University.
 
-  
 
-  
 
   
   
@@ -257,7 +266,9 @@
   IRC: gman999
   Tor BSD Diversity Project member, long-time 
relay operator, trainer.
 
+  
 
+  
 
   
   
@@ -266,9 +277,7 @@
   IRC: GeKo
   Currently lead of the Tor Browser team.
 
-  
 
-  
 
   
   
@@ -277,7 +286,9 @@
   IRC: asn
   Onion services. Security analysis. Used to 
obfsproxy. Follower of the onion.
 
+  
 
+  
 
   
   
@@ -287,9 +298,7 @@
   IRC: saint
   Tamper-resistant software distribution, 
censorship detection, https://github.com/glamrock/cupcake";>Cupcake, and security training 
of activists and domestic violence survivors.
 
-  
 
-  
 
   
   
@@ -298,7 +307,9 @@
   IRC: ggus
   Works as Community Liaison in Global South. 
Trainer, relay operator and Tor advocate. CryptoRave organizer.
 
+  
 
+  
 
   
   
@@ -307,9 +318,7 @@
   IRC: nyinz
   I am very excited and honored to contribute to 
the Tor project on its mission to provide usable technologies to the global 
south.
 
-  
 
-  
 
   
   
@@ -320,7 +329,9 @@
   Pronoun: http://pronoun.is/he";>he
   https://metrics.torproject.org";>Metrics team member and maintainer of 
https://metrics.torproject.org/rs.html";>Relay Search.
 
+  
 
+  
 
   
   
@@ -329,9 +340,7 @@
   Pronoun: http://pronoun.is/he";>he
   https://cs.uwaterloo.ca/~iang/";>Professor of CS at the https://uwaterloo.ca/";>University of Waterloo, developing https://otr.cypherpunks.ca/";>Off-the-Record Messaging among other 
things.
 
-  
 
-  
 
   
   
@@ -341,7 +350,9 @@
   IRC: igt0
   Works on Tor Browser.
 
+  

[tor-commits] [tor-browser-spec/master] Bug 25030: Update release process document

2018-10-15 Thread boklm
commit a9cece5a2988a94acf29702b220f8ed4146ebdc2
Author: Georg Koppen 
Date:   Wed Oct 10 09:27:08 2018 +

Bug 25030: Update release process document
---
 processes/ReleaseProcess | 148 ++-
 1 file changed, 57 insertions(+), 91 deletions(-)

diff --git a/processes/ReleaseProcess b/processes/ReleaseProcess
index e4aa4e4..a9c7422 100644
--- a/processes/ReleaseProcess
+++ b/processes/ReleaseProcess
@@ -4,98 +4,74 @@
 #
 
 #. Tag any relevant component versions.
-   # Depends on which components have been updated
-   # If this is a firefox version update, you must rebase the patches, and
-   # then:
-   vim browser/config/version.txt config/milestone.txt
-   git commit browser/config/version.txt config/milestone.txt -m "Bug 10895: 
Fix versioning for langpacks."
-   # git tag and push..
-
-#. Update changelog, updater relevant config and versions file in
-#  tor-browser-bundle:
-   cd gitian/tor-browser-bundle
-   vim Bundle-Data/Docs/ChangeLog.txt
-   vim tools/update-responses/config.yml
-# No need to bother with old .xml and .htaccess files
-   rm tools/update-resonses/htdocs/$TORBROWSER_UPDATE_CHANNEL/*
-   cd gitian
-   vim versions*
-   git commmit ..
-   git diff --color HEAD^1
-   cd ../..
-
-#. Tag a build tag in tor-browser-bundle.git
-   TORBROWSER_VERSION=x.x.x
-   git tag -s tbb-$TORBROWSER_VERSION-build1
-
-#. Check that the build is correctly tagged
-   eval $( ./get-tb-version release ) # or alpha / beta
-   echo $TORBROWSER_VERSION
-   echo $TORBROWSER_BUILDDIR
-   echo
-   echo 'You must still set $OLD_TORBROWSER_VERSION'
-
-#. Push tag and version to tor-browser-bundle.git   
+
+#. Update changelog and relevant config files in tor-browser-build.
+   cd tor-browser-build
+   vim projects/firefox/config
+   vim ChangeLog.txt
+   vim rbm.conf
+
+#. Tag a build tag in tor-browser-build.
+   make signtag-release # or `make signtag-alpha` for an alpha build
+
+#. Push tag and version to tor-browser-build.git. In case of doing a stable
+#  release with a maintenance branch use that one instead of `master`.
torsocks git push origin master:master
torsocks git push origin --tags
 
-#. Build:
-   make
-   make sign
-   make match
-
-#. Place all build signatures in the correct location and fix permissions
-   source versions
-   for i in gk linus mikeperry boklm
-   do
- if [ -d ${TORBROWSER_BUILDDIR}/$i ]; then
-   if [ -f ${TORBROWSER_BUILDDIR}/${i}/sha256sums-unsigned-build.txt.asc 
]; then
- cp ${TORBROWSER_BUILDDIR}/$i/sha256sums-unsigned-build.txt.asc 
${TORBROWSER_BUILDDIR}/sha256sums-unsigned-build.txt-${i}.asc
-   fi
-   if [ -f 
${TORBROWSER_BUILDDIR}/${i}/sha256sums-unsigned-build.incrementals.txt.asc ]; 
then
- cp 
${TORBROWSER_BUILDDIR}/$i/sha256sums-unsigned-build.incrementals.txt.asc 
${TORBROWSER_BUILDDIR}/sha256sums-unsigned-build.incrementals.txt-${i}.asc
-   fi
-   rm -rf ${TORBROWSER_BUILDDIR}/$i
- fi
-   done
+#. Build and generate incremental MAR files.
+   make && make incrementals-release # `make alpha && make incrementals-alpha`
+
+#. Compare the SHA256 sums of the bundles and MAR files with an independent
+#  builder.
+   sha256sum 
tor-browser-build/release/unsigned/$TORBROWSER_BUILDDIR/sha256sums-unsigned-build.txt
+   sha256sum 
tor-browser-build/release/unsigned/$TORBROWSER_BUILDDIR/sha256sums-unsigned-build.incrementals.txt
+
+#. If the sums match (download and) upload the bundles to your build dir on
+#  people.torproject.org. Fix permissions.
chmod 755 $TORBROWSER_BUILDDIR
chmod 644 $TORBROWSER_BUILDDIR/*
+   chmod 644 $TORBROWSER_BUILDDIR/.htaccess
+   torsocks ssh people.torproject.org "mkdir 
~/public_html/builds/${TORBROWSER_BUILDDIR}"
+   torsocks rsync -avP $TORBROWSER_BUILDDIR/ 
people.torproject.org:public_html/builds/$TORBROWSER_BUILDDIR
 
 #. (Optional): Upload your binaries to people using partial rsync over old 
version
torsocks ssh people.torproject.org "mv 
~/public_html/builds/${TORBROWSER_VERSION}-build1 
~/public_html/builds/$TORBROWSER_BUILDDIR"
torsocks rsync -avP $TORBROWSER_BUILDDIR/ 
people.torproject.org:public_html/builds/$TORBROWSER_BUILDDIR
 
 #. Distribute build to tor...@lists.torproject.org
-   #XXX: Currently manual
-   # For stable releases put tails-...@boum.org into Cc
+   # XXX: Currently manual email with link to candidate build, important 
changes,
+   # and changelog.
+   # For stable releases put tails-...@boum.org into Cc.
 
-#. Code Sign the OS X dmg files:
+#. Codesign the macOS dmg files.
torsocks ssh mac-signer "mkdir $TORBROWSER_VERSION"
torsocks rsync -avP $TORBROWSER_BUILDDIR/*.dmg 
mac-signer:$TORBROWSER_VERSION/
torsocks ssh mac-signer
# Unlock the keychain and then...
cd $TORBROWSER_VERSION
-   # Sign the bundles
+   # Sign the bundles.
../gatekeeper-signing.sh $TORBROWSER_VERSION
-   # Check that it worked
+   # Check that it worked.
tar xf torbrowser-$TORBROWSER_VERSION-osx_z

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

2018-10-15 Thread translation
commit 2a0e8e529117320d3b7b1384479e03f2693a138e
Author: Translation commit bot 
Date:   Mon Oct 15 17:16:12 2018 +

Update translations for tails-misc_completed
---
 es.po | 163 ++
 1 file changed, 103 insertions(+), 60 deletions(-)

diff --git a/es.po b/es.po
index f0d41337b..492ac7df2 100644
--- a/es.po
+++ b/es.po
@@ -17,9 +17,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-09-04 11:37+0200\n"
-"PO-Revision-Date: 2018-10-07 20:58+\n"
-"Last-Translator: Emma Peel\n"
+"POT-Creation-Date: 2018-10-15 14:47+0200\n"
+"PO-Revision-Date: 2018-10-15 16:57+\n"
+"Last-Translator: eulalio barbero espinosa \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"
@@ -65,7 +65,7 @@ msgid ""
 msgstr "El siguientes software se instala automáticamente de tu 
almacenamiento persistente cuando arrancas Tails."
 
 #: 
config/chroot_local-includes/usr/share/tails/additional-software/configuration-window.ui:132
-#: 
config/chroot_local-includes/usr/local/bin/tails-additional-software-config:169
+#: 
config/chroot_local-includes/usr/local/bin/tails-additional-software-config:172
 msgid ""
 "To add more, install some software using Synaptic Package Manager or Additional Software feature."
 msgstr "Para instalarlo automáticamente cuando inicies Tails, has de crear un 
almacenamiento permanente y activar la función Software Adicional."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:314
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:318
 msgid "Create Persistent Storage"
 msgstr "Crear Almacenamiento Persistente"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:322
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:326
 msgid "Creating your persistent storage failed."
 msgstr "La creación de tu almacenamiento persistente ha fallado."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:329
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:334
 #, python-brace-format
 msgid "You could install {packages} automatically when starting Tails"
 msgstr "Podrías instalar {packages} automáticamente al iniciar Tails."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:332
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:337
 msgid ""
 "To do so, you need to run Tails from a USB stick installed using Tails "
 "Installer."
 msgstr "Para hacer eso, necesitas ejecutar Tails desde una memoria USB 
instalada con Tails Installer."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:345
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:351
 #, python-brace-format
 msgid "Remove {packages} from your additional software?"
 msgstr "¿Quitar {packages} de tu software adicional?"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:347
+#. Translators: Don't translate {packages}, it's a placeholder and will be
+#. replaced.
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:354
 #, python-brace-format
 msgid "This will stop installing {packages} automatically."
 msgstr "Esto parará la instalación de {packages} de forma automática."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:349
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:356
 msgid "Remove"
 msgstr "Eliminar"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:350
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:357
 #: config/chroot_local-includes/usr/local/bin/tails-screen-locker:118
 #: config/chroot_local-includes/usr/local/bin/tor-browser:46
 msgid "Cancel"
 msgstr "Cancelar"
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:524
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:531
 msgid "Installing your additional software from persistent storage..."
 msgstr "Instalando tu software adicional desde el almacenamiento 
persistente..."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:526
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:533
 msgid "This can take several minutes."
 msgstr "Esto puede tardar un poco..."
 
-#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:538
+#: config/chroot_local-includes/usr/local/sbin/tails-additional-software:545
 msgid "The installation of your additional software failed"
 msgstr "Ha fallado la instalación de so

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

2018-10-15 Thread translation
commit 0c2df2c3dd6a01e634623092401a682c4cd41722
Author: Translation commit bot 
Date:   Mon Oct 15 17:16:05 2018 +

Update translations for tails-misc
---
 es.po | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/es.po b/es.po
index ce737784f..492ac7df2 100644
--- a/es.po
+++ b/es.po
@@ -18,8 +18,8 @@ msgstr ""
 "Project-Id-Version: Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2018-10-15 14:47+0200\n"
-"PO-Revision-Date: 2018-10-15 14:43+\n"
-"Last-Translator: carolyn \n"
+"PO-Revision-Date: 2018-10-15 16:57+\n"
+"Last-Translator: eulalio barbero espinosa \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"
@@ -620,11 +620,11 @@ msgstr "{volume_name} – {drive_name}"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:222
 msgid "Wrong passphrase or parameters"
-msgstr ""
+msgstr "Contraseña o parámetros incorrectos"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume.py:224
 msgid "Error unlocking volume"
-msgstr ""
+msgstr "Error al desbloquear el volumen"
 
 #. Translators: Don't translate {volume_name} or {error_message},
 #. they are placeholder and will be replaced.
@@ -633,7 +633,7 @@ msgstr ""
 msgid ""
 "Couldn't unlock volume {volume_name}:\n"
 "{error_message}"
-msgstr ""
+msgstr "No se pudo desbloquear el volumen {volume_name}:\n{error_message}"
 
 #: 
config/chroot_local-includes/usr/local/lib/python3/dist-packages/unlock_veracrypt_volumes/volume_list.py:83
 msgid "No file containers added"

___
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-10-15 Thread nickm
commit 11161395aff57c5aa69cda916f1ac166ee928387
Merge: feed41bed 633e99575
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:54 2018 -0400

Merge branch 'maint-0.3.4'

 src/feature/hs/hs_intropoint.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --cc src/feature/hs/hs_intropoint.c
index 42092e22b,0..c716447c9
mode 100644,00..100644
--- a/src/feature/hs/hs_intropoint.c
+++ b/src/feature/hs/hs_intropoint.c
@@@ -1,614 -1,0 +1,614 @@@
 +/* Copyright (c) 2016-2018, The Tor Project, Inc. */
 +/* See LICENSE for licensing information */
 +
 +/**
 + * \file hs_intropoint.c
 + * \brief Implement next generation introductions point functionality
 + **/
 +
 +#define HS_INTROPOINT_PRIVATE
 +
 +#include "core/or/or.h"
 +#include "app/config/config.h"
 +#include "core/or/circuitlist.h"
 +#include "core/or/circuituse.h"
 +#include "core/or/relay.h"
 +#include "feature/rend/rendmid.h"
 +#include "feature/stats/rephist.h"
 +#include "lib/crypt_ops/crypto_format.h"
 +
 +/* Trunnel */
 +#include "trunnel/ed25519_cert.h"
 +#include "trunnel/hs/cell_common.h"
 +#include "trunnel/hs/cell_establish_intro.h"
 +#include "trunnel/hs/cell_introduce1.h"
 +
 +#include "feature/hs/hs_circuitmap.h"
 +#include "feature/hs/hs_descriptor.h"
 +#include "feature/hs/hs_intropoint.h"
 +#include "feature/hs/hs_common.h"
 +
 +#include "core/or/or_circuit_st.h"
 +
 +/** Extract the authentication key from an ESTABLISH_INTRO or INTRODUCE1 using
 + * the given cell_type from cell and place it in
 + * auth_key_out. */
 +STATIC void
 +get_auth_key_from_cell(ed25519_public_key_t *auth_key_out,
 +   unsigned int cell_type, const void *cell)
 +{
 +  size_t auth_key_len;
 +  const uint8_t *key_array;
 +
 +  tor_assert(auth_key_out);
 +  tor_assert(cell);
 +
 +  switch (cell_type) {
 +  case RELAY_COMMAND_ESTABLISH_INTRO:
 +  {
 +const trn_cell_establish_intro_t *c_cell = cell;
 +key_array = trn_cell_establish_intro_getconstarray_auth_key(c_cell);
 +auth_key_len = trn_cell_establish_intro_getlen_auth_key(c_cell);
 +break;
 +  }
 +  case RELAY_COMMAND_INTRODUCE1:
 +  {
 +const trn_cell_introduce1_t *c_cell = cell;
 +key_array = trn_cell_introduce1_getconstarray_auth_key(cell);
 +auth_key_len = trn_cell_introduce1_getlen_auth_key(c_cell);
 +break;
 +  }
 +  default:
 +/* Getting here is really bad as it means we got a unknown cell type from
 + * this file where every call has an hardcoded value. */
- tor_assert(0); /* LCOV_EXCL_LINE */
++tor_assert_unreached(); /* LCOV_EXCL_LINE */
 +  }
 +  tor_assert(key_array);
 +  tor_assert(auth_key_len == sizeof(auth_key_out->pubkey));
 +  memcpy(auth_key_out->pubkey, key_array, auth_key_len);
 +}
 +
 +/** We received an ESTABLISH_INTRO cell. Verify its signature and MAC,
 + *  given circuit_key_material. Return 0 on success else -1 on error. 
*/
 +STATIC int
 +verify_establish_intro_cell(const trn_cell_establish_intro_t *cell,
 +const uint8_t *circuit_key_material,
 +size_t circuit_key_material_len)
 +{
 +  /* We only reach this function if the first byte of the cell is 0x02 which
 +   * means that auth_key_type is of ed25519 type, hence this check should
 +   * always pass. See hs_intro_received_establish_intro().  */
 +  if (BUG(cell->auth_key_type != HS_INTRO_AUTH_KEY_TYPE_ED25519)) {
 +return -1;
 +  }
 +
 +  /* Make sure the auth key length is of the right size for this type. For
 +   * EXTRA safety, we check both the size of the array and the length which
 +   * must be the same. Safety first!*/
 +  if (trn_cell_establish_intro_getlen_auth_key(cell) != ED25519_PUBKEY_LEN ||
 +  trn_cell_establish_intro_get_auth_key_len(cell) != ED25519_PUBKEY_LEN) {
 +log_fn(LOG_PROTOCOL_WARN, LD_PROTOCOL,
 +   "ESTABLISH_INTRO auth key length is invalid");
 +return -1;
 +  }
 +
 +  const uint8_t *msg = cell->start_cell;
 +
 +  /* Verify the sig */
 +  {
 +ed25519_signature_t sig_struct;
 +const uint8_t *sig_array =
 +  trn_cell_establish_intro_getconstarray_sig(cell);
 +
 +/* Make sure the signature length is of the right size. For EXTRA safety,
 + * we check both the size of the array and the length which must be the
 + * same. Safety first!*/
 +if (trn_cell_establish_intro_getlen_sig(cell) != sizeof(sig_struct.sig) ||
 +trn_cell_establish_intro_get_sig_len(cell) != sizeof(sig_struct.sig)) 
{
 +  log_fn(LOG_PROTOCOL_WARN, LD_PROTOCOL,
 + "ESTABLISH_INTRO sig len is invalid");
 +  return -1;
 +}
 +/* We are now sure that sig_len is of the right size. */
 +memcpy(sig_struct.sig, sig_array, cell->sig_len);
 +
 +ed25519_public_key_t auth_key;
 +get_auth_key_from_cell(&auth_key, RELAY_COMMAND_ESTABLISH_INTRO, cell);
 +
 +const size_t sig_msg_len = cell->end_sig_fields - msg;
 +int sig_mismatch = ed25519_checksig_prefixed(&sig_struct,
 +   

[tor-commits] [tor/release-0.3.4] Merge branch 'maint-0.3.4' into release-0.3.4

2018-10-15 Thread nickm
commit c8a7b7b585d46a5504b764a71ae9d17edf8c3b20
Merge: 35fbec371 633e99575
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:54 2018 -0400

Merge branch 'maint-0.3.4' into release-0.3.4

 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 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.3] Fix another tor_assert(0) case

2018-10-15 Thread nickm
commit 6b2ef2c5597a9e481939e04b556566c8b6283e46
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:48 2018 -0400

Fix another tor_assert(0) case
---
 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/or/hs_intropoint.c b/src/or/hs_intropoint.c
index 8c6453e6f..9eaf57251 100644
--- a/src/or/hs_intropoint.c
+++ b/src/or/hs_intropoint.c
@@ -59,7 +59,7 @@ get_auth_key_from_cell(ed25519_public_key_t *auth_key_out,
   default:
 /* Getting here is really bad as it means we got a unknown cell type from
  * this file where every call has an hardcoded value. */
-tor_assert(0); /* LCOV_EXCL_LINE */
+tor_assert_unreached(); /* LCOV_EXCL_LINE */
   }
   tor_assert(key_array);
   tor_assert(auth_key_len == sizeof(auth_key_out->pubkey));
@@ -610,4 +610,3 @@ hs_intropoint_clear(hs_intropoint_t *ip)
   smartlist_free(ip->link_specifiers);
   memset(ip, 0, sizeof(hs_intropoint_t));
 }
-



___
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.3' into maint-0.3.4

2018-10-15 Thread nickm
commit 633e99575ff5576ea01cc03c085b22776972bcc3
Merge: d1ec7bb06 6b2ef2c55
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:54 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 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] Fix another tor_assert(0) case

2018-10-15 Thread nickm
commit 6b2ef2c5597a9e481939e04b556566c8b6283e46
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:48 2018 -0400

Fix another tor_assert(0) case
---
 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/or/hs_intropoint.c b/src/or/hs_intropoint.c
index 8c6453e6f..9eaf57251 100644
--- a/src/or/hs_intropoint.c
+++ b/src/or/hs_intropoint.c
@@ -59,7 +59,7 @@ get_auth_key_from_cell(ed25519_public_key_t *auth_key_out,
   default:
 /* Getting here is really bad as it means we got a unknown cell type from
  * this file where every call has an hardcoded value. */
-tor_assert(0); /* LCOV_EXCL_LINE */
+tor_assert_unreached(); /* LCOV_EXCL_LINE */
   }
   tor_assert(key_array);
   tor_assert(auth_key_len == sizeof(auth_key_out->pubkey));
@@ -610,4 +610,3 @@ hs_intropoint_clear(hs_intropoint_t *ip)
   smartlist_free(ip->link_specifiers);
   memset(ip, 0, sizeof(hs_intropoint_t));
 }
-



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

2018-10-15 Thread nickm
commit ec638e2368fb4dbd2a9a593e45a5cbcb756f4c07
Merge: e7827a2b7 6b2ef2c55
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:54 2018 -0400

Merge branch 'maint-0.3.3' into release-0.3.3

 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

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


[tor-commits] [tor/master] Fix another tor_assert(0) case

2018-10-15 Thread nickm
commit 6b2ef2c5597a9e481939e04b556566c8b6283e46
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:48 2018 -0400

Fix another tor_assert(0) case
---
 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/or/hs_intropoint.c b/src/or/hs_intropoint.c
index 8c6453e6f..9eaf57251 100644
--- a/src/or/hs_intropoint.c
+++ b/src/or/hs_intropoint.c
@@ -59,7 +59,7 @@ get_auth_key_from_cell(ed25519_public_key_t *auth_key_out,
   default:
 /* Getting here is really bad as it means we got a unknown cell type from
  * this file where every call has an hardcoded value. */
-tor_assert(0); /* LCOV_EXCL_LINE */
+tor_assert_unreached(); /* LCOV_EXCL_LINE */
   }
   tor_assert(key_array);
   tor_assert(auth_key_len == sizeof(auth_key_out->pubkey));
@@ -610,4 +610,3 @@ hs_intropoint_clear(hs_intropoint_t *ip)
   smartlist_free(ip->link_specifiers);
   memset(ip, 0, sizeof(hs_intropoint_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] Merge branch 'maint-0.3.3' into maint-0.3.4

2018-10-15 Thread nickm
commit 633e99575ff5576ea01cc03c085b22776972bcc3
Merge: d1ec7bb06 6b2ef2c55
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:54 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 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.3' into maint-0.3.4

2018-10-15 Thread nickm
commit 633e99575ff5576ea01cc03c085b22776972bcc3
Merge: d1ec7bb06 6b2ef2c55
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:54 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 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] Fix another tor_assert(0) case

2018-10-15 Thread nickm
commit 6b2ef2c5597a9e481939e04b556566c8b6283e46
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:48 2018 -0400

Fix another tor_assert(0) case
---
 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/or/hs_intropoint.c b/src/or/hs_intropoint.c
index 8c6453e6f..9eaf57251 100644
--- a/src/or/hs_intropoint.c
+++ b/src/or/hs_intropoint.c
@@ -59,7 +59,7 @@ get_auth_key_from_cell(ed25519_public_key_t *auth_key_out,
   default:
 /* Getting here is really bad as it means we got a unknown cell type from
  * this file where every call has an hardcoded value. */
-tor_assert(0); /* LCOV_EXCL_LINE */
+tor_assert_unreached(); /* LCOV_EXCL_LINE */
   }
   tor_assert(key_array);
   tor_assert(auth_key_len == sizeof(auth_key_out->pubkey));
@@ -610,4 +610,3 @@ hs_intropoint_clear(hs_intropoint_t *ip)
   smartlist_free(ip->link_specifiers);
   memset(ip, 0, sizeof(hs_intropoint_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.3] Fix another tor_assert(0) case

2018-10-15 Thread nickm
commit 6b2ef2c5597a9e481939e04b556566c8b6283e46
Author: Nick Mathewson 
Date:   Mon Oct 15 12:52:48 2018 -0400

Fix another tor_assert(0) case
---
 src/or/hs_intropoint.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/or/hs_intropoint.c b/src/or/hs_intropoint.c
index 8c6453e6f..9eaf57251 100644
--- a/src/or/hs_intropoint.c
+++ b/src/or/hs_intropoint.c
@@ -59,7 +59,7 @@ get_auth_key_from_cell(ed25519_public_key_t *auth_key_out,
   default:
 /* Getting here is really bad as it means we got a unknown cell type from
  * this file where every call has an hardcoded value. */
-tor_assert(0); /* LCOV_EXCL_LINE */
+tor_assert_unreached(); /* LCOV_EXCL_LINE */
   }
   tor_assert(key_array);
   tor_assert(auth_key_len == sizeof(auth_key_out->pubkey));
@@ -610,4 +610,3 @@ hs_intropoint_clear(hs_intropoint_t *ip)
   smartlist_free(ip->link_specifiers);
   memset(ip, 0, sizeof(hs_intropoint_t));
 }
-

___
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.3' into maint-0.3.4

2018-10-15 Thread nickm
commit d1ec7bb06e41d6f4b79c5709c6d7be62393939e7
Merge: 3462f8ed6 86e0be421
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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.2.9] Fix make check-spaces.

2018-10-15 Thread nickm
commit 5b28190c67ac6828e588c0ec54fe88eab0fb45fb
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:19 2018 -0400

Fix make check-spaces.
---
 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index f3e5b7c96..0db6bb6ab 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -44,14 +44,14 @@
  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
-  ({\
+  ( {   \
 int tor__assert_tmp_value__;\
 if (e)  \
   tor__assert_tmp_value__ = 1;  \
 else\
   tor__assert_tmp_value__ = 0;  \
 tor__assert_tmp_value__;\
-  })
+  } )
 #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
 #else
 #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)



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


[tor-commits] [tor/master] Fix make check-spaces.

2018-10-15 Thread nickm
commit 5b28190c67ac6828e588c0ec54fe88eab0fb45fb
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:19 2018 -0400

Fix make check-spaces.
---
 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index f3e5b7c96..0db6bb6ab 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -44,14 +44,14 @@
  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
-  ({\
+  ( {   \
 int tor__assert_tmp_value__;\
 if (e)  \
   tor__assert_tmp_value__ = 1;  \
 else\
   tor__assert_tmp_value__ = 0;  \
 tor__assert_tmp_value__;\
-  })
+  } )
 #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
 #else
 #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)



___
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] Fix make check-spaces.

2018-10-15 Thread nickm
commit 5b28190c67ac6828e588c0ec54fe88eab0fb45fb
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:19 2018 -0400

Fix make check-spaces.
---
 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index f3e5b7c96..0db6bb6ab 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -44,14 +44,14 @@
  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
-  ({\
+  ( {   \
 int tor__assert_tmp_value__;\
 if (e)  \
   tor__assert_tmp_value__ = 1;  \
 else\
   tor__assert_tmp_value__ = 0;  \
 tor__assert_tmp_value__;\
-  })
+  } )
 #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
 #else
 #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)



___
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.3] Fix make check-spaces.

2018-10-15 Thread nickm
commit 5b28190c67ac6828e588c0ec54fe88eab0fb45fb
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:19 2018 -0400

Fix make check-spaces.
---
 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index f3e5b7c96..0db6bb6ab 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -44,14 +44,14 @@
  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
-  ({\
+  ( {   \
 int tor__assert_tmp_value__;\
 if (e)  \
   tor__assert_tmp_value__ = 1;  \
 else\
   tor__assert_tmp_value__ = 0;  \
 tor__assert_tmp_value__;\
-  })
+  } )
 #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
 #else
 #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)



___
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 branch 'maint-0.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit 86e0be421f14f386327f95df2cea0b3c59323463
Merge: 796e36e53 5b28190c6
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit 86e0be421f14f386327f95df2cea0b3c59323463
Merge: 796e36e53 5b28190c6
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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-10-15 Thread nickm
commit feed41bed323713c8064dae210a3869e737e2936
Merge: 23ce9a60f d1ec7bb06
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.3.4'

 src/lib/log/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --cc src/lib/log/util_bug.h
index 964bc6684,0..557d932ac
mode 100644,00..100644
--- a/src/lib/log/util_bug.h
+++ b/src/lib/log/util_bug.h
@@@ -1,244 -1,0 +1,244 @@@
 +/* 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 util_bug.h
 + *
 + * \brief Macros to manage assertions, fatal and non-fatal.
 + *
 + * Guidelines: All the different kinds of assertion in this file are for
 + * bug-checking only. Don't write code that can assert based on bad inputs.
 + *
 + * We provide two kinds of assertion here: "fatal" and "nonfatal". Use
 + * nonfatal assertions for any bug you can reasonably recover from -- and
 + * please, try to recover!  Many severe bugs in Tor have been caused by using
 + * a regular assertion when a nonfatal assertion would have been better.
 + *
 + * If you need to check a condition with a nonfatal assertion, AND recover
 + * from that same condition, consider using the BUG() macro inside a
 + * conditional.  For example:
 + *
 + * 
 + *  // wrong -- use tor_assert_nonfatal() if you just want an assertion.
 + *  BUG(ptr == NULL);
 + *
 + *  // okay, but needlessly verbose
 + *  tor_assert_nonfatal(ptr != NULL);
 + *  if (ptr == NULL) { ... }
 + *
 + *  // this is how we do it:
 + *  if (BUG(ptr == NULL)) { ... }
 + * 
 + **/
 +
 +#ifndef TOR_UTIL_BUG_H
 +#define TOR_UTIL_BUG_H
 +
 +#include "orconfig.h"
 +#include "lib/cc/compat_compiler.h"
 +#include "lib/log/log.h"
 +#include "lib/testsupport/testsupport.h"
 +
 +/* Replace assert() with a variant that sends failures to the log before
 + * calling assert() normally.
 + */
 +#ifdef NDEBUG
 +/* Nobody should ever want to build with NDEBUG set.  99% of our asserts will
 + * be outside the critical path anyway, so it's silly to disable bug-checking
 + * throughout the entire program just because a few asserts are slowing you
 + * down.  Profile, optimize the critical path, and keep debugging on.
 + *
 + * And I'm not just saying that because some of our asserts check
 + * security-critical properties.
 + */
 +#error "Sorry; we don't support building with NDEBUG."
 +#endif /* defined(NDEBUG) */
 +
 +#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
 +/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
 + * header, so that in our unit test builds, we'll get compiler warnings about
 + * stuff like tor_assert(n = 5).
 + *
 + * The key here is that (e) is wrapped in exactly one layer of parentheses,
 + * and then passed right to a conditional.  If you do anything else to the
 + * expression here, or introduce any more parentheses, the compiler won't
 + * help you.
 + *
 + * We only do this for the unit-test build case because it interferes with
 + * the likely-branch labeling.  Note below that in the other case, we define
 + * these macros to just be synonyms for PREDICT_(UN)LIKELY.
 + */
 +#define ASSERT_PREDICT_UNLIKELY_(e) \
-   ({\
++  ( {   \
 +int tor__assert_tmp_value__;\
 +if (e)  \
 +  tor__assert_tmp_value__ = 1;  \
 +else\
 +  tor__assert_tmp_value__ = 0;  \
 +tor__assert_tmp_value__;\
-   })
++  } )
 +#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
 +#else
 +#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
 +#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
 +#endif
 +
 +/* Sometimes we don't want to use assertions during branch coverage tests; it
 + * leads to tons of unreached branches which in reality are only assertions we
 + * didn't hit. */
 +#if defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS)
 +#define tor_assert(a) STMT_BEGIN\
 +  (void)(a);\
 +  STMT_END
 +#else
 +/** Like assert(3), but send assertion failures to the log as well as to
 + * stderr. */
 +#define tor_assert(expr) STMT_BEGIN \
 +  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
 +  } else {  \
 +tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 +abort();\
 +  } STMT_END
 +#endif /* defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS) */
 +
 +#define tor_assert_unreached()  

[tor-commits] [tor/release-0.3.4] Merge branch 'maint-0.3.4' into release-0.3.4

2018-10-15 Thread nickm
commit 35fbec3719682197130d506e758cab2ce640ef7e
Merge: 7e9f1d699 d1ec7bb06
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.3.4' into release-0.3.4

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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.3' into maint-0.3.4

2018-10-15 Thread nickm
commit d1ec7bb06e41d6f4b79c5709c6d7be62393939e7
Merge: 3462f8ed6 86e0be421
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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.2.9] Merge branch 'maint-0.2.9' into release-0.2.9

2018-10-15 Thread nickm
commit 17d7095e117892fb32e4ba73ecbaee9f043df64f
Merge: 9a60e46ae 5b28190c6
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.2.9' into release-0.2.9

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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] Merge branch 'maint-0.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit 86e0be421f14f386327f95df2cea0b3c59323463
Merge: 796e36e53 5b28190c6
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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.3] Merge branch 'maint-0.3.3' into release-0.3.3

2018-10-15 Thread nickm
commit e7827a2b7355b53eebbd0273a21b82a4a0090ac8
Merge: d7e0dc005 86e0be421
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.3.3' into release-0.3.3

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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.3] Merge branch 'maint-0.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit 86e0be421f14f386327f95df2cea0b3c59323463
Merge: 796e36e53 5b28190c6
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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] Merge branch 'maint-0.3.3' into maint-0.3.4

2018-10-15 Thread nickm
commit d1ec7bb06e41d6f4b79c5709c6d7be62393939e7
Merge: 3462f8ed6 86e0be421
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 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.3] Fix make check-spaces.

2018-10-15 Thread nickm
commit 5b28190c67ac6828e588c0ec54fe88eab0fb45fb
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:19 2018 -0400

Fix make check-spaces.
---
 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index f3e5b7c96..0db6bb6ab 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -44,14 +44,14 @@
  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
-  ({\
+  ( {   \
 int tor__assert_tmp_value__;\
 if (e)  \
   tor__assert_tmp_value__ = 1;  \
 else\
   tor__assert_tmp_value__ = 0;  \
 tor__assert_tmp_value__;\
-  })
+  } )
 #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
 #else
 #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)



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


[tor-commits] [tor/maint-0.2.9] Fix make check-spaces.

2018-10-15 Thread nickm
commit 5b28190c67ac6828e588c0ec54fe88eab0fb45fb
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:19 2018 -0400

Fix make check-spaces.
---
 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index f3e5b7c96..0db6bb6ab 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -44,14 +44,14 @@
  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
-  ({\
+  ( {   \
 int tor__assert_tmp_value__;\
 if (e)  \
   tor__assert_tmp_value__ = 1;  \
 else\
   tor__assert_tmp_value__ = 0;  \
 tor__assert_tmp_value__;\
-  })
+  } )
 #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
 #else
 #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)

___
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] Fix make check-spaces.

2018-10-15 Thread nickm
commit 5b28190c67ac6828e588c0ec54fe88eab0fb45fb
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:19 2018 -0400

Fix make check-spaces.
---
 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index f3e5b7c96..0db6bb6ab 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -44,14 +44,14 @@
  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
-  ({\
+  ( {   \
 int tor__assert_tmp_value__;\
 if (e)  \
   tor__assert_tmp_value__ = 1;  \
 else\
   tor__assert_tmp_value__ = 0;  \
 tor__assert_tmp_value__;\
-  })
+  } )
 #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
 #else
 #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)



___
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.3] Merge branch 'maint-0.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit 86e0be421f14f386327f95df2cea0b3c59323463
Merge: 796e36e53 5b28190c6
Author: Nick Mathewson 
Date:   Mon Oct 15 12:47:46 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 src/common/util_bug.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

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


[tor-commits] [translation/donatepages-messagespot] Update translations for donatepages-messagespot

2018-10-15 Thread translation
commit 6901bab53c3389f70fc6a0a6b2549fce03a241f3
Author: Translation commit bot 
Date:   Mon Oct 15 16:45:18 2018 +

Update translations for donatepages-messagespot
---
 locale/el/LC_MESSAGES/messages.po | 15 +++
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/locale/el/LC_MESSAGES/messages.po 
b/locale/el/LC_MESSAGES/messages.po
index bc8a0dae5..5007c5c23 100644
--- a/locale/el/LC_MESSAGES/messages.po
+++ b/locale/el/LC_MESSAGES/messages.po
@@ -24,6 +24,8 @@ msgstr "Πολιτική απορρήτου δωρητών"
 msgid ""
 "The Tor Project respects donor privacy and welcomes anonymous donations."
 msgstr ""
+"Το Tor Project σέβεται την ιδιωτικότητα του 
δωρητή και καλωσορίζει τις "
+"ανώνυμες δωρεές."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:60
 msgid ""
@@ -31,6 +33,9 @@ msgid ""
 "anonymity is by donating using a method that doesn't disclose your personal "
 "information."
 msgstr ""
+"Αν το να μείνετε ανώνυμος είναι σημαντικό 
για εσάς, ο καλύτερος τρόπος για "
+"να διατηρήσετε την ανωνυμία σας είναι η 
δωρεά χρησιμοποιώντας μια μέθοδο που"
+" δεν αποκαλύπτει τα προσωπικά σας 
στοιχεία."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:65
 msgid ""
@@ -64,6 +69,8 @@ msgid ""
 "We may also learn incidental data such as the date and time of your "
 "donation."
 msgstr ""
+"Μπορεί επίσης να μάθουμε τυχαία δεδομένα, 
όπως είναι η ημερομηνία και η ώρα "
+"της δωρεάς σας."
 
 #: 
tmp/cache_locale/fa/fadd8d2107638a3de94449a9eddfca4e8f010bb26f3f6a71e2d875cb910cc5f1.php:78
 msgid ""
@@ -1663,7 +1670,7 @@ msgstr ""
 
 #: 
tmp/cache_locale/08/08a9b06344a88c9ea01db4cdf9711c9cee305183a512ae0e8b7381dae8c6d798.php:52
 msgid "Company"
-msgstr ""
+msgstr "Εταιρία"
 
 #: 
tmp/cache_locale/08/08a9b06344a88c9ea01db4cdf9711c9cee305183a512ae0e8b7381dae8c6d798.php:60
 msgid "Matching Conditions"
@@ -1671,12 +1678,12 @@ msgstr ""
 
 #: 
tmp/cache_locale/08/08a9b06344a88c9ea01db4cdf9711c9cee305183a512ae0e8b7381dae8c6d798.php:68
 msgid "Contact Information"
-msgstr ""
+msgstr "Πληροφορίες Επικοινωνίας"
 
 #: 
tmp/cache_locale/08/08a9b06344a88c9ea01db4cdf9711c9cee305183a512ae0e8b7381dae8c6d798.php:76
 msgid "Additional Notes"
-msgstr ""
+msgstr "Πρόσθετες Σημειώσεις"
 
 #: 
tmp/cache_locale/08/08a9b06344a88c9ea01db4cdf9711c9cee305183a512ae0e8b7381dae8c6d798.php:84
 msgid "Procedure"
-msgstr ""
+msgstr "Διαδικασία"

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


[tor-commits] [translation/donatepages-messagespot] Update translations for donatepages-messagespot

2018-10-15 Thread translation
commit 447300ce50be8c82b8df393b8f29738947707d9d
Author: Translation commit bot 
Date:   Mon Oct 15 16:15:21 2018 +

Update translations for donatepages-messagespot
---
 locale/el/LC_MESSAGES/messages.po | 67 +--
 1 file changed, 51 insertions(+), 16 deletions(-)

diff --git a/locale/el/LC_MESSAGES/messages.po 
b/locale/el/LC_MESSAGES/messages.po
index 3e75fc221..bc8a0dae5 100644
--- a/locale/el/LC_MESSAGES/messages.po
+++ b/locale/el/LC_MESSAGES/messages.po
@@ -1366,6 +1366,8 @@ msgid ""
 "If you want your donation refunded, please tell us by emailing giving(at)torproject.org."
 msgstr ""
+"Αν θέλετε να σας επιστραφεί η δωρεά σας, 
παρακαλούμε να μας ενημερώσετε με "
+"email στο giving(at)torproject.org."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:463
 msgid ""
@@ -1373,10 +1375,14 @@ msgid ""
 "amount you donated, your full name, the payment method you used and your "
 "country of origin."
 msgstr ""
+"Για να επεξεργαστούμε το αίτημα σας για 
επιστροφή χρημάτων, θα πρέπει να "
+"γνωρίζουμε την ημερομηνία της δωρεάς σας, 
το ποσό που δωρίσατε, το πλήρες "
+"όνομα σας, τον τρόπο πληρωμής που 
χρησιμοποιήσατε και τη χώρα προέλευσής "
+"σας."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:465
 msgid "Please also tell us why you're asking for a refund."
-msgstr ""
+msgstr "Παρακαλούμε, επίσης, να μας πείτε 
γιατί ζητάτε επιστροφή χρημάτων."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:467
 msgid ""
@@ -1384,24 +1390,28 @@ msgid ""
 " to be made in a specific way, so we may need additional information from "
 "you in order to process yours."
 msgstr ""
+"Λάβετε υπόψη ότι μερικές μέθοδοι πληρωμής 
δεν υποστηρίζουν επιστροφές "
+"χρημάτων ή απαιτούν να γίνονται με συ
γκεκριμένο τρόπο, επομένως ίσως "
+"χρειαστούμε επιπλέον πληροφορίες από 
εσάς για να επεξεργαστούμε τη δική σας."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:473
 msgid "Can I donate by mail?"
-msgstr ""
+msgstr "Μπορώ να δωρίσω μέσω ταχυδρομείου;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:477
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:583
 msgid "Yes."
-msgstr ""
+msgstr "Ναι."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:479
 msgid ""
 "Our mailing address is The Tor Project, P.O. Box 4903, Seattle WA 98194, USA"
 msgstr ""
+"Η διεύθυνσή μας είναι The Tor Project, P.O. Box 4903, 
Seattle WA 98194, USA"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:485
 msgid "Do you accept cash donations?"
-msgstr ""
+msgstr "Δέχεστε δωρεές σε μετρητά;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:489
 msgid "Yes"
@@ -1437,16 +1447,20 @@ msgid ""
 "If you want help figuring out the process, write us at giving(at)torproject.org."
 msgstr ""
+"Αν θέλετε βοήθεια με τη διαδικασία, γράψτε 
μας στη διεύθυνση giving(at)torproject.org."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:511
 msgid "Can I become a Tor Project member?"
-msgstr ""
+msgstr "Μπορώ να γίνω μέλος του Tor Project;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:515
 msgid ""
 "Right now, we don't have a membership program, but we may set one up in the "
 "future."
 msgstr ""
+"Αυτή τη στιγμή, δεν έχουμε πρόγραμμα συ
μμετοχής, αλλά μπορεί να κάνουμε στο "
+"μέλλον."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:517
 msgid ""
@@ -1455,10 +1469,14 @@ msgid ""
 "href=\"https://www.torproject.org/getinvolved/volunteer.html.en\";>this is a "
 "good place to start."
 msgstr ""
+"Αν θέλετε να ασχοληθείτε με το Tor Project, https://www.torproject.org/getinvolved/volunteer.html.en\";>αυτό 
είναι"
+" ένα καλό μέρος για να ξεκινήσετε."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.ph

[tor-commits] [translation/donatepages-messagespot] Update translations for donatepages-messagespot

2018-10-15 Thread translation
commit b45624945d3617a327cf044e4237c26d471c5a4d
Author: Translation commit bot 
Date:   Mon Oct 15 15:45:21 2018 +

Update translations for donatepages-messagespot
---
 locale/el/LC_MESSAGES/messages.po | 51 +--
 1 file changed, 44 insertions(+), 7 deletions(-)

diff --git a/locale/el/LC_MESSAGES/messages.po 
b/locale/el/LC_MESSAGES/messages.po
index 1920fcbc6..3e75fc221 100644
--- a/locale/el/LC_MESSAGES/messages.po
+++ b/locale/el/LC_MESSAGES/messages.po
@@ -1117,6 +1117,9 @@ msgid ""
 "required to process your credit card payment, including your billing "
 "address."
 msgstr ""
+"Αν δωρίσετε με πιστωτική κάρτα, θα σας 
ζητηθούν ορισμένες πληροφορίες που "
+"απαιτούνται για την επεξεργασία της 
πληρωμής με πιστωτική κάρτα, "
+"συμπεριλαμβανομένης της διεύθυνσης 
χρέωσης σας."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:329
 msgid ""
@@ -1129,26 +1132,33 @@ msgid ""
 "We don't ask for information beyond what's required by the payment "
 "processor."
 msgstr ""
+"Δεν ζητάμε πληροφορίες πέραν αυτών που 
απαιτούνται από τον επεξεργαστή "
+"πληρωμής."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:337
 msgid "Why is there a minimum donation?"
-msgstr ""
+msgstr "Γιατί υπάρχει ελάχιστη δωρεά;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:341
 msgid ""
 "People who have stolen credit card information often donate to nonprofits as"
 " a way of testing whether the card works."
 msgstr ""
+"Άνθρωποι που έχουν κλέψει πληροφορίες 
πιστωτικής κάρτας συχνά δωρίζουν σε μη"
+" κερδοσκοπικούς οργανισμούς για να 
ελέγξουν αν λειτουργεί η κάρτα."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:343
 msgid ""
 "These people typically use a very small amount for their testing, and we've "
 "found that setting a $1 minimum donation seems to deter them."
 msgstr ""
+"Αυτοί οι άνθρωποι χρησιμοποιούν συνήθως 
ένα πολύ μικρό ποσό για τις δοκιμές "
+"τους, και διαπιστώσαμε ότι ο καθορισμός 
ελάχιστης δωρεάς ύψους $1 φαίνεται "
+"να τους αποτρέπει."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:349
 msgid "Is there a maximum donation?"
-msgstr ""
+msgstr "Υπάρχει μέγιστη δωρεά;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:353
 msgid ""
@@ -1160,7 +1170,7 @@ msgstr ""
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:359
 msgid "Can I donate via bitcoin?"
-msgstr ""
+msgstr "Μπορώ να δωρίσω μέσω bitcoin;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:363
 msgid ""
@@ -1168,12 +1178,17 @@ msgid ""
 "href=\"https://www.torproject.org/donate/donate-options.html.en\";>bitcoin "
 "via BitPay."
 msgstr ""
+"Ναι! Δεχόμαστε https://www.torproject.org/donate/donate-options.html.en\";>Bitcoin "
+"μέσω του BitPay."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:369
 msgid ""
 "If I want my donation to be anonymous, what is the best way for me to "
 "donate?"
 msgstr ""
+"Αν θέλω η δωρεά μου να είναι ανώνυμη, ποιος 
είναι ο καλύτερος τρόπος για να "
+"δωρίσω;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:373
 msgid ""
@@ -1181,22 +1196,30 @@ msgid ""
 "href=\"https://www.torproject.org/donate/donate-";
 "options.html.en#cash\">sending us a postal money order."
 msgstr ""
+"Μπορείτε να κάνετε δωρεά https://www.torproject.org/donate/donate-";
+"options.html.en#cash\">στέλνοντας μας ταχυδρομική 
επιταγή."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:375
 msgid ""
 "You can donate via bitcoin if you have bitcoin set up in a way that "
 "preserves your anonymity."
 msgstr ""
+"Μπορείτε να κάνετε δωρεά μέσω bitcoin αν 
έχετε ρυθμίσει το bitcoin κατά "
+"τρόπο που να διατηρεί την ανωνυμία σας."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:377
 msgid "You can buy cash gi

[tor-commits] [translation/donatepages-messagespot] Update translations for donatepages-messagespot

2018-10-15 Thread translation
commit f46c537926efef4c7cb254a5035e5dca3f7823f3
Author: Translation commit bot 
Date:   Mon Oct 15 15:15:24 2018 +

Update translations for donatepages-messagespot
---
 locale/el/LC_MESSAGES/messages.po | 33 -
 1 file changed, 24 insertions(+), 9 deletions(-)

diff --git a/locale/el/LC_MESSAGES/messages.po 
b/locale/el/LC_MESSAGES/messages.po
index 98531c492..1920fcbc6 100644
--- a/locale/el/LC_MESSAGES/messages.po
+++ b/locale/el/LC_MESSAGES/messages.po
@@ -952,10 +952,12 @@ msgstr ""
 msgid ""
 "How much money does the Tor Project spend annually, and what is it used for?"
 msgstr ""
+"Πόσα χρήματα δαπανώνται ετησίως από το Tor 
Project και για τι "
+"χρησιμοποιούνται;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:227
 msgid "The Tor Project spends about $2.5 million annually."
-msgstr ""
+msgstr "Το Tor Project δαπανά περίπου 2,5 
εκατομμύρια δολάρια ετησίως."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:229
 #, php-format
@@ -978,7 +980,7 @@ msgstr ""
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:239
 msgid "Is my donation tax-deductible?"
-msgstr ""
+msgstr "Η δωρεά μου εκπίπτει από τη φορολογία;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:243
 msgid ""
@@ -1003,11 +1005,11 @@ msgstr ""
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:263
 msgid "If I am not in the United States, can I still donate?"
-msgstr ""
+msgstr "Αν δεν είμαι στις Ηνωμένες Πολιτείες, 
μπορώ ακόμα να δωρίσω;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:267
 msgid "Yes, definitely."
-msgstr ""
+msgstr "Ναι, φυσικά."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:269
 msgid ""
@@ -1020,11 +1022,13 @@ msgid ""
 "Can I donate to a specific project, or restrict my donation to a particular "
 "purpose?"
 msgstr ""
+"Μπορώ να δωρίσω σε ένα συγκεκριμένο project ή 
να περιορίσω τη δωρεά μου σε "
+"συγκεκριμένο σκοπό;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:279
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:559
 msgid "No, sorry."
-msgstr ""
+msgstr "Όχι, συγγνώμη."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:281
 msgid ""
@@ -1044,6 +1048,7 @@ msgid ""
 "However, we would be very happy to hear your ideas and feedback about our "
 "work."
 msgstr ""
+"Ωστόσο, θα χαρούμε να ακούσουμε τις ιδέες 
και τα σχόλιά σας για το έργο μας."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:287
 msgid ""
@@ -1053,37 +1058,47 @@ msgstr ""
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:293
 msgid "Can I donate while using Tor Browser?"
-msgstr ""
+msgstr "Μπορώ να δωρίσω ενώ χρησιμοποιώ τον Tor 
Browser;"
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:297
 msgid "Yes! In our testing, donation works via Tor Browser."
-msgstr ""
+msgstr "Ναι! Στις δοκιμές μας, η δωρεά λειτου
ργεί μέσω του Tor Browser."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:299
 msgid ""
 "If you run into problems, please contact giving(at)torproject.org."
 msgstr ""
+"Αν αντιμετωπίσετε προβλήματα, παρακαλώ 
επικοινωνήστε με το giving(at)torproject.org."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:303
 msgid ""
 "For users logging in to Paypal: some people had no problem donating via "
 "PayPal while using Tor Browser."
 msgstr ""
+"Για τους χρήστες που πραγματοποιούν 
είσοδο στο Paypal: μερικοί άνθρωποι δεν "
+"είχαν πρόβλημα να δωρίσουν μέσω του PayPal 
ενώ χρησιμοποιούσαν τον Tor "
+"Browser."
 
 #: 
tmp/cache_locale/0e/0e65c68f2900f432bc062864e7bafc989d6286e272f5e98882a99f52ea4c5c89.php:305
 msgid ""
 "In past years, some people couldn't complete the donation process, and one "
 "person had their PayPal account temporarily frozen."
 msgstr ""
+"Τα τελευταία χρόνια, μερικοί άνθρωποι δεν 
μπόρεσαν να ολοκÎ

[tor-commits] [tor/release-0.3.4] Merge branch 'maint-0.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit dff7d3d00ad5e3f9e59cd4b11f302601790d1061
Merge: f7e93cf2e b11339965
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:49 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 deletions(-)

diff --cc src/common/util_bug.h
index be549fde0,f3e5b7c96..c274355f3
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@@ -53,8 -27,37 +53,37 @@@
   * security-critical properties.
   */
  #error "Sorry; we don't support building with NDEBUG."
 -#endif
 +#endif /* defined(NDEBUG) */
  
+ #if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+ /* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+  * header, so that in our unit test builds, we'll get compiler warnings about
+  * stuff like tor_assert(n = 5).
+  *
+  * The key here is that (e) is wrapped in exactly one layer of parentheses,
+  * and then passed right to a conditional.  If you do anything else to the
+  * expression here, or introduce any more parentheses, the compiler won't
+  * help you.
+  *
+  * We only do this for the unit-test build case because it interferes with
+  * the likely-branch labeling.  Note below that in the other case, we define
+  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
+  */
+ #define ASSERT_PREDICT_UNLIKELY_(e) \
+   ({\
+ int tor__assert_tmp_value__;\
+ if (e)  \
+   tor__assert_tmp_value__ = 1;  \
+ else\
+   tor__assert_tmp_value__ = 0;  \
+ tor__assert_tmp_value__;\
+   })
+ #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+ #else
+ #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+ #define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+ #endif
+ 
  /* Sometimes we don't want to use assertions during branch coverage tests; it
   * leads to tons of unreached branches which in reality are only assertions we
   * didn't hit. */
@@@ -140,10 -143,10 +172,10 @@@ extern int bug_macro_deadcode_dummy__
} \
STMT_END
  #define BUG(cond)   \
-   (PREDICT_UNLIKELY(cond) ? \
+   (ASSERT_PREDICT_UNLIKELY_(cond) ? \
 (tor_bug_occurred_(SHORT_FILE__,__LINE__,__func__,"!("#cond")",0), 1) \
 : 0)
 -#endif
 +#endif /* defined(ALL_BUGS_ARE_FATAL) || ... */
  
  #ifdef __GNUC__
  #define IF_BUG_ONCE__(cond,var) \
@@@ -155,11 -158,11 +187,11 @@@
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
"!("#cond")", 1); \
} \
-   PREDICT_UNLIKELY(bool_result); } ))
+   bool_result; } ))
 -#else
 +#else /* !(defined(__GNUC__)) */
  #define IF_BUG_ONCE__(cond,var) \
static int var = 0;   \
-   if (PREDICT_UNLIKELY(cond) ?  \
+   if ((cond) ?  \
(var ? 1 :\
 (var=1,  \
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
@@@ -196,7 -199,6 +228,6 @@@ void tor_capture_bugs_(int n)
  void tor_end_capture_bugs_(void);
  const struct smartlist_t *tor_get_captured_bug_log_(void);
  void tor_set_failed_assertion_callback(void (*fn)(void));
 -#endif
 +#endif /* defined(TOR_UNIT_TESTS) */
  
 -#endif
 +#endif /* !defined(TOR_UTIL_BUG_H) */
- 



___
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.3' into maint-0.3.4

2018-10-15 Thread nickm
commit fd528a0884e706f5ad10422d0c4501ce35254530
Merge: ffaf180b7 dff7d3d00
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:52 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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] Merge branch 'maint-0.3.3' into maint-0.3.4

2018-10-15 Thread nickm
commit 3462f8ed6430bdb1528a7b63aaf2281489eb04d1
Merge: fd528a088 796e36e53
Author: Nick Mathewson 
Date:   Mon Oct 15 10:48:35 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 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/release-0.3.4] Explain a bit more about branch prediction in the unit-test case

2018-10-15 Thread nickm
commit 5e582c7ffafd9075373131e5e55b69507f54206e
Author: Nick Mathewson 
Date:   Mon Oct 15 10:16:34 2018 -0400

Explain a bit more about branch prediction in the unit-test case
---
 src/common/util_bug.h | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 22ec37d38..f3e5b7c96 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -38,6 +38,10 @@
  * and then passed right to a conditional.  If you do anything else to the
  * expression here, or introduce any more parentheses, the compiler won't
  * help you.
+ *
+ * We only do this for the unit-test build case because it interferes with
+ * the likely-branch labeling.  Note below that in the other case, we define
+ * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
   ({\



___
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] Revise our assertion and bug macros to work with -Wparentheses

2018-10-15 Thread nickm
commit bb465be085ff8d1640f1d1c0bbb65605d85b5528
Author: Nick Mathewson 
Date:   Fri Sep 14 11:39:37 2018 -0400

Revise our assertion and bug macros to work with -Wparentheses

On GCC and Clang, there's a feature to warn you about bad
conditionals like "if (a = b)", which should be "if (a == b)".
However, they don't warn you if there are extra parentheses around
"a = b".

Unfortunately, the tor_assert() macro and all of its kin have been
passing their inputs through stuff like PREDICT_UNLIKELY(expr) or
PREDICT_UNLIKELY(!(expr)), both of which expand to stuff with more
parentheses around "expr", thus suppressing these warnings.

To fix this, this patch introduces new macros that do not wrap
expr.  They're only used when GCC or Clang is enabled (both define
__GNUC__), since they require GCC's "({statement expression})"
syntax extension.  They're only used when we're building the
unit-test variant of the object files, since they suppress the
branch-prediction hints.

I've confirmed that tor_assert(), tor_assert_nonfatal(),
tor_assert_nonfatal_once(), BUG(), and IF_BUG_ONCE() all now give
compiler warnings when their argument is an assignment expression.

Fixes bug 27709.

Bugfix on 0.0.6, where we first introduced the "tor_assert()" macro.
---
 changes/bug27709  |  4 
 src/common/util_bug.h | 53 ++-
 2 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/changes/bug27709 b/changes/bug27709
new file mode 100644
index 0..49e87cbb0
--- /dev/null
+++ b/changes/bug27709
@@ -0,0 +1,4 @@
+  o Minor bugfixes (code safety):
+- Rewrite our assertion macros so that they no longer suppress
+  the compiler's -Wparentheses warnings on their inputs. Fixes bug 27709;
+  bugfix on 0.0.6.
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 069580691..22ec37d38 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -29,6 +29,31 @@
 #error "Sorry; we don't support building with NDEBUG."
 #endif
 
+#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+ * header, so that in our unit test builds, we'll get compiler warnings about
+ * stuff like tor_assert(n = 5).
+ *
+ * The key here is that (e) is wrapped in exactly one layer of parentheses,
+ * and then passed right to a conditional.  If you do anything else to the
+ * expression here, or introduce any more parentheses, the compiler won't
+ * help you.
+ */
+#define ASSERT_PREDICT_UNLIKELY_(e) \
+  ({\
+int tor__assert_tmp_value__;\
+if (e)  \
+  tor__assert_tmp_value__ = 1;  \
+else\
+  tor__assert_tmp_value__ = 0;  \
+tor__assert_tmp_value__;\
+  })
+#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+#else
+#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+#endif
+
 /* Sometimes we don't want to use assertions during branch coverage tests; it
  * leads to tons of unreached branches which in reality are only assertions we
  * didn't hit. */
@@ -40,7 +65,8 @@
 /** Like assert(3), but send assertion failures to the log as well as to
  * stderr. */
 #define tor_assert(expr) STMT_BEGIN \
-  if (PREDICT_UNLIKELY(!(expr))) {  \
+  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
+  } else {  \
 tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 abort();\
   } STMT_END
@@ -77,7 +103,7 @@
 #define tor_assert_nonfatal_unreached_once() tor_assert(0)
 #define tor_assert_nonfatal_once(cond) tor_assert((cond))
 #define BUG(cond)   \
-  (PREDICT_UNLIKELY(cond) ? \
+  (ASSERT_PREDICT_UNLIKELY_(cond) ? \
(tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,"!("#cond")"), \
 abort(), 1) \
: 0)
@@ -86,14 +112,15 @@
 #define tor_assert_nonfatal(cond) ((void)(cond))
 #define tor_assert_nonfatal_unreached_once() STMT_NIL
 #define tor_assert_nonfatal_once(cond) ((void)(cond))
-#define BUG(cond) (PREDICT_UNLIKELY(cond) ? 1 : 0)
+#define BUG(cond) (ASSERT_PREDICT_UNLIKELY_(cond) ? 1 : 0)
 #else /* Normal case, !ALL_BUGS_ARE_FATAL, !DISABLE_ASSERTS_IN_UNIT_TESTS */
 #define tor_assert_nonfatal_unreached() STMT_BEGIN  \
   tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, NULL, 0);   

[tor-commits] [tor/release-0.2.9] Explain a bit more about branch prediction in the unit-test case

2018-10-15 Thread nickm
commit 5e582c7ffafd9075373131e5e55b69507f54206e
Author: Nick Mathewson 
Date:   Mon Oct 15 10:16:34 2018 -0400

Explain a bit more about branch prediction in the unit-test case
---
 src/common/util_bug.h | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 22ec37d38..f3e5b7c96 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -38,6 +38,10 @@
  * and then passed right to a conditional.  If you do anything else to the
  * expression here, or introduce any more parentheses, the compiler won't
  * help you.
+ *
+ * We only do this for the unit-test build case because it interferes with
+ * the likely-branch labeling.  Note below that in the other case, we define
+ * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
   ({\



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

2018-10-15 Thread nickm
commit d7e0dc0056e5a82e298eb404f81c516f46657456
Merge: 49da1e9f6 796e36e53
Author: Nick Mathewson 
Date:   Mon Oct 15 10:48:35 2018 -0400

Merge branch 'maint-0.3.3' into release-0.3.3

 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 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/release-0.3.4] Merge branch 'bug27709_029' into maint-0.2.9

2018-10-15 Thread nickm
commit b113399658934f3a4526387a63429ec4377ca8be
Merge: 717507e3b 5e582c7ff
Author: Nick Mathewson 
Date:   Mon Oct 15 10:34:39 2018 -0400

Merge branch 'bug27709_029' into maint-0.2.9

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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.3] Merge branch 'maint-0.3.3' into release-0.3.3

2018-10-15 Thread nickm
commit 49da1e9f6ac8da2850ef2d2024539a5001bd9dc7
Merge: 8f872e945 dff7d3d00
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:52 2018 -0400

Merge branch 'maint-0.3.3' into release-0.3.3

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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.3] Adjust tor_assert_unreached()

2018-10-15 Thread nickm
commit 796e36e535d1713fd1168772669199ea9189ba61
Author: Nick Mathewson 
Date:   Mon Oct 15 10:46:24 2018 -0400

Adjust tor_assert_unreached()

This version of the macro makes it obvious to the compiler that
"tor_assert_unreached()" will always abort().
---
 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index c274355f3..be0001e84 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -102,7 +102,12 @@
   } STMT_END
 #endif /* defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS) */
 
-#define tor_assert_unreached() tor_assert(0)
+#define tor_assert_unreached()  \
+  STMT_BEGIN {  \
+tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, \
+  "line should be unreached");  \
+abort();\
+  } STMT_END
 
 /* Non-fatal bug assertions. The "unreached" variants mean "this line should
  * never be reached." The "once" variants mean "Don't log a warning more than
diff --git a/src/or/hs_common.c b/src/or/hs_common.c
index 10b56c0ba..e586516c8 100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@ -523,7 +523,7 @@ rend_data_get_address(const rend_data_t *rend_data)
 return TO_REND_DATA_V2(rend_data)->onion_address;
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -546,7 +546,7 @@ rend_data_get_desc_id(const rend_data_t *rend_data, uint8_t 
replica,
 return TO_REND_DATA_V2(rend_data)->descriptor_id[replica];
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -569,7 +569,7 @@ rend_data_get_pk_digest(const rend_data_t *rend_data, 
size_t *len_out)
   }
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -1814,4 +1814,3 @@ hs_inc_rdv_stream_counter(origin_circuit_t *circ)
 tor_assert_nonfatal_unreached();
   }
 }
-



___
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] Adjust tor_assert_unreached()

2018-10-15 Thread nickm
commit 796e36e535d1713fd1168772669199ea9189ba61
Author: Nick Mathewson 
Date:   Mon Oct 15 10:46:24 2018 -0400

Adjust tor_assert_unreached()

This version of the macro makes it obvious to the compiler that
"tor_assert_unreached()" will always abort().
---
 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index c274355f3..be0001e84 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -102,7 +102,12 @@
   } STMT_END
 #endif /* defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS) */
 
-#define tor_assert_unreached() tor_assert(0)
+#define tor_assert_unreached()  \
+  STMT_BEGIN {  \
+tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, \
+  "line should be unreached");  \
+abort();\
+  } STMT_END
 
 /* Non-fatal bug assertions. The "unreached" variants mean "this line should
  * never be reached." The "once" variants mean "Don't log a warning more than
diff --git a/src/or/hs_common.c b/src/or/hs_common.c
index 10b56c0ba..e586516c8 100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@ -523,7 +523,7 @@ rend_data_get_address(const rend_data_t *rend_data)
 return TO_REND_DATA_V2(rend_data)->onion_address;
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -546,7 +546,7 @@ rend_data_get_desc_id(const rend_data_t *rend_data, uint8_t 
replica,
 return TO_REND_DATA_V2(rend_data)->descriptor_id[replica];
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -569,7 +569,7 @@ rend_data_get_pk_digest(const rend_data_t *rend_data, 
size_t *len_out)
   }
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -1814,4 +1814,3 @@ hs_inc_rdv_stream_counter(origin_circuit_t *circ)
 tor_assert_nonfatal_unreached();
   }
 }
-



___
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.3] Merge branch 'maint-0.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit dff7d3d00ad5e3f9e59cd4b11f302601790d1061
Merge: f7e93cf2e b11339965
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:49 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 deletions(-)

diff --cc src/common/util_bug.h
index be549fde0,f3e5b7c96..c274355f3
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@@ -53,8 -27,37 +53,37 @@@
   * security-critical properties.
   */
  #error "Sorry; we don't support building with NDEBUG."
 -#endif
 +#endif /* defined(NDEBUG) */
  
+ #if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+ /* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+  * header, so that in our unit test builds, we'll get compiler warnings about
+  * stuff like tor_assert(n = 5).
+  *
+  * The key here is that (e) is wrapped in exactly one layer of parentheses,
+  * and then passed right to a conditional.  If you do anything else to the
+  * expression here, or introduce any more parentheses, the compiler won't
+  * help you.
+  *
+  * We only do this for the unit-test build case because it interferes with
+  * the likely-branch labeling.  Note below that in the other case, we define
+  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
+  */
+ #define ASSERT_PREDICT_UNLIKELY_(e) \
+   ({\
+ int tor__assert_tmp_value__;\
+ if (e)  \
+   tor__assert_tmp_value__ = 1;  \
+ else\
+   tor__assert_tmp_value__ = 0;  \
+ tor__assert_tmp_value__;\
+   })
+ #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+ #else
+ #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+ #define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+ #endif
+ 
  /* Sometimes we don't want to use assertions during branch coverage tests; it
   * leads to tons of unreached branches which in reality are only assertions we
   * didn't hit. */
@@@ -140,10 -143,10 +172,10 @@@ extern int bug_macro_deadcode_dummy__
} \
STMT_END
  #define BUG(cond)   \
-   (PREDICT_UNLIKELY(cond) ? \
+   (ASSERT_PREDICT_UNLIKELY_(cond) ? \
 (tor_bug_occurred_(SHORT_FILE__,__LINE__,__func__,"!("#cond")",0), 1) \
 : 0)
 -#endif
 +#endif /* defined(ALL_BUGS_ARE_FATAL) || ... */
  
  #ifdef __GNUC__
  #define IF_BUG_ONCE__(cond,var) \
@@@ -155,11 -158,11 +187,11 @@@
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
"!("#cond")", 1); \
} \
-   PREDICT_UNLIKELY(bool_result); } ))
+   bool_result; } ))
 -#else
 +#else /* !(defined(__GNUC__)) */
  #define IF_BUG_ONCE__(cond,var) \
static int var = 0;   \
-   if (PREDICT_UNLIKELY(cond) ?  \
+   if ((cond) ?  \
(var ? 1 :\
 (var=1,  \
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
@@@ -196,7 -199,6 +228,6 @@@ void tor_capture_bugs_(int n)
  void tor_end_capture_bugs_(void);
  const struct smartlist_t *tor_get_captured_bug_log_(void);
  void tor_set_failed_assertion_callback(void (*fn)(void));
 -#endif
 +#endif /* defined(TOR_UNIT_TESTS) */
  
 -#endif
 +#endif /* !defined(TOR_UTIL_BUG_H) */
- 



___
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-10-15 Thread nickm
commit 294f5bb7e4ee8d07c1848196917e536c2432822f
Merge: 092190476 fd528a088
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:52 2018 -0400

Merge branch 'maint-0.3.4' into release-0.3.4

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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] Merge branch 'maint-0.3.4' into release-0.3.4

2018-10-15 Thread nickm
commit 7e9f1d6992fd815c973049ed621daacf16ff0201
Merge: 294f5bb7e 3462f8ed6
Author: Nick Mathewson 
Date:   Mon Oct 15 10:48:35 2018 -0400

Merge branch 'maint-0.3.4' into release-0.3.4

 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 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/release-0.3.3] Merge branch 'bug27709_029' into maint-0.2.9

2018-10-15 Thread nickm
commit b113399658934f3a4526387a63429ec4377ca8be
Merge: 717507e3b 5e582c7ff
Author: Nick Mathewson 
Date:   Mon Oct 15 10:34:39 2018 -0400

Merge branch 'bug27709_029' into maint-0.2.9

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 deletions(-)



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


[tor-commits] [tor/master] Adjust tor_assert_unreached()

2018-10-15 Thread nickm
commit 796e36e535d1713fd1168772669199ea9189ba61
Author: Nick Mathewson 
Date:   Mon Oct 15 10:46:24 2018 -0400

Adjust tor_assert_unreached()

This version of the macro makes it obvious to the compiler that
"tor_assert_unreached()" will always abort().
---
 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index c274355f3..be0001e84 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -102,7 +102,12 @@
   } STMT_END
 #endif /* defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS) */
 
-#define tor_assert_unreached() tor_assert(0)
+#define tor_assert_unreached()  \
+  STMT_BEGIN {  \
+tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, \
+  "line should be unreached");  \
+abort();\
+  } STMT_END
 
 /* Non-fatal bug assertions. The "unreached" variants mean "this line should
  * never be reached." The "once" variants mean "Don't log a warning more than
diff --git a/src/or/hs_common.c b/src/or/hs_common.c
index 10b56c0ba..e586516c8 100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@ -523,7 +523,7 @@ rend_data_get_address(const rend_data_t *rend_data)
 return TO_REND_DATA_V2(rend_data)->onion_address;
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -546,7 +546,7 @@ rend_data_get_desc_id(const rend_data_t *rend_data, uint8_t 
replica,
 return TO_REND_DATA_V2(rend_data)->descriptor_id[replica];
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -569,7 +569,7 @@ rend_data_get_pk_digest(const rend_data_t *rend_data, 
size_t *len_out)
   }
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -1814,4 +1814,3 @@ hs_inc_rdv_stream_counter(origin_circuit_t *circ)
 tor_assert_nonfatal_unreached();
   }
 }
-



___
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-10-15 Thread nickm
commit 23ce9a60fbd93481f855c30e3e550acefc6052a4
Merge: 4983322cc 3462f8ed6
Author: Nick Mathewson 
Date:   Mon Oct 15 10:48:35 2018 -0400

Merge branch 'maint-0.3.4'

 src/feature/hs/hs_common.c | 6 +++---
 src/lib/log/util_bug.h | 7 ++-
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --cc src/feature/hs/hs_common.c
index 4bad4ae6e,0..8dbd9485e
mode 100644,00..100644
--- a/src/feature/hs/hs_common.c
+++ b/src/feature/hs/hs_common.c
@@@ -1,1829 -1,0 +1,1829 @@@
 +/* Copyright (c) 2016-2018, The Tor Project, Inc. */
 +/* See LICENSE for licensing information */
 +
 +/**
 + * \file hs_common.c
 + * \brief Contains code shared between different HS protocol version as well
 + *as useful data structures and accessors used by other subsystems.
 + *The rendcommon.c should only contains code relating to the v2
 + *protocol.
 + **/
 +
 +#define HS_COMMON_PRIVATE
 +
 +#include "core/or/or.h"
 +
 +#include "app/config/config.h"
 +#include "core/or/circuitbuild.h"
 +#include "core/or/policies.h"
 +#include "feature/dirauth/shared_random_state.h"
 +#include "feature/hs/hs_cache.h"
 +#include "feature/hs/hs_circuitmap.h"
 +#include "feature/hs/hs_client.h"
 +#include "feature/hs/hs_common.h"
 +#include "feature/hs/hs_ident.h"
 +#include "feature/hs/hs_service.h"
 +#include "feature/hs_common/shared_random_client.h"
 +#include "feature/nodelist/describe.h"
 +#include "feature/nodelist/networkstatus.h"
 +#include "feature/nodelist/nodelist.h"
 +#include "feature/nodelist/routerset.h"
 +#include "feature/rend/rendcommon.h"
 +#include "feature/rend/rendservice.h"
 +#include "lib/crypt_ops/crypto_rand.h"
 +#include "lib/crypt_ops/crypto_util.h"
 +
 +#include "core/or/edge_connection_st.h"
 +#include "feature/nodelist/networkstatus_st.h"
 +#include "feature/nodelist/node_st.h"
 +#include "core/or/origin_circuit_st.h"
 +#include "feature/nodelist/routerstatus_st.h"
 +
 +/* Trunnel */
 +#include "trunnel/ed25519_cert.h"
 +
 +/* Ed25519 Basepoint value. Taken from section 5 of
 + * https://tools.ietf.org/html/draft-josefsson-eddsa-ed25519-03 */
 +static const char *str_ed25519_basepoint =
 +  "(15112221349535400772501151409588531511"
 +  "454012693041857206046113283949847762202, "
 +  "463168356949264781694283940034751631413"
 +  "07993866256225615783033603165251855960)";
 +
 +#ifdef HAVE_SYS_UN_H
 +
 +/** Given ports, a smarlist containing rend_service_port_config_t,
 + * add the given p, a AF_UNIX port to the list. Return 0 on success
 + * else return -ENOSYS if AF_UNIX is not supported (see function in the
 + * #else statement below). */
 +static int
 +add_unix_port(smartlist_t *ports, rend_service_port_config_t *p)
 +{
 +  tor_assert(ports);
 +  tor_assert(p);
 +  tor_assert(p->is_unix_addr);
 +
 +  smartlist_add(ports, p);
 +  return 0;
 +}
 +
 +/** Given conn set it to use the given port p values. Return 0
 + * on success else return -ENOSYS if AF_UNIX is not supported (see function
 + * in the #else statement below). */
 +static int
 +set_unix_port(edge_connection_t *conn, rend_service_port_config_t *p)
 +{
 +  tor_assert(conn);
 +  tor_assert(p);
 +  tor_assert(p->is_unix_addr);
 +
 +  conn->base_.socket_family = AF_UNIX;
 +  tor_addr_make_unspec(&conn->base_.addr);
 +  conn->base_.port = 1;
 +  conn->base_.address = tor_strdup(p->unix_addr);
 +  return 0;
 +}
 +
 +#else /* !(defined(HAVE_SYS_UN_H)) */
 +
 +static int
 +set_unix_port(edge_connection_t *conn, rend_service_port_config_t *p)
 +{
 +  (void) conn;
 +  (void) p;
 +  return -ENOSYS;
 +}
 +
 +static int
 +add_unix_port(smartlist_t *ports, rend_service_port_config_t *p)
 +{
 +  (void) ports;
 +  (void) p;
 +  return -ENOSYS;
 +}
 +
 +#endif /* defined(HAVE_SYS_UN_H) */
 +
 +/* Helper function: The key is a digest that we compare to a node_t object
 + * current hsdir_index. */
 +static int
 +compare_digest_to_fetch_hsdir_index(const void *_key, const void **_member)
 +{
 +  const char *key = _key;
 +  const node_t *node = *_member;
 +  return tor_memcmp(key, node->hsdir_index.fetch, DIGEST256_LEN);
 +}
 +
 +/* Helper function: The key is a digest that we compare to a node_t object
 + * next hsdir_index. */
 +static int
 +compare_digest_to_store_first_hsdir_index(const void *_key,
 +  const void **_member)
 +{
 +  const char *key = _key;
 +  const node_t *node = *_member;
 +  return tor_memcmp(key, node->hsdir_index.store_first, DIGEST256_LEN);
 +}
 +
 +/* Helper function: The key is a digest that we compare to a node_t object
 + * next hsdir_index. */
 +static int
 +compare_digest_to_store_second_hsdir_index(const void *_key,
 +  const void **_member)
 +{
 +  const char *key = _key;
 +  const node_t *node = *_member;
 +  return tor_memcmp(key, node->hsdir_index.store_second, DIGEST256_LEN);
 +}
 +
 +/* Helper function: Compare two node_t objects current hsdir_index. */
 +static int
 +compare_node_fetch_hsdir_index(const void **a, c

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

2018-10-15 Thread nickm
commit 9a60e46ae98cd8e33091bc339b2c50a407806bc3
Merge: dcb6924cd b11339965
Author: Nick Mathewson 
Date:   Mon Oct 15 10:34:41 2018 -0400

Merge branch 'maint-0.2.9' into release-0.2.9

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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.3] Explain a bit more about branch prediction in the unit-test case

2018-10-15 Thread nickm
commit 5e582c7ffafd9075373131e5e55b69507f54206e
Author: Nick Mathewson 
Date:   Mon Oct 15 10:16:34 2018 -0400

Explain a bit more about branch prediction in the unit-test case
---
 src/common/util_bug.h | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 22ec37d38..f3e5b7c96 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -38,6 +38,10 @@
  * and then passed right to a conditional.  If you do anything else to the
  * expression here, or introduce any more parentheses, the compiler won't
  * help you.
+ *
+ * We only do this for the unit-test build case because it interferes with
+ * the likely-branch labeling.  Note below that in the other case, we define
+ * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
   ({\



___
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.3] Revise our assertion and bug macros to work with -Wparentheses

2018-10-15 Thread nickm
commit bb465be085ff8d1640f1d1c0bbb65605d85b5528
Author: Nick Mathewson 
Date:   Fri Sep 14 11:39:37 2018 -0400

Revise our assertion and bug macros to work with -Wparentheses

On GCC and Clang, there's a feature to warn you about bad
conditionals like "if (a = b)", which should be "if (a == b)".
However, they don't warn you if there are extra parentheses around
"a = b".

Unfortunately, the tor_assert() macro and all of its kin have been
passing their inputs through stuff like PREDICT_UNLIKELY(expr) or
PREDICT_UNLIKELY(!(expr)), both of which expand to stuff with more
parentheses around "expr", thus suppressing these warnings.

To fix this, this patch introduces new macros that do not wrap
expr.  They're only used when GCC or Clang is enabled (both define
__GNUC__), since they require GCC's "({statement expression})"
syntax extension.  They're only used when we're building the
unit-test variant of the object files, since they suppress the
branch-prediction hints.

I've confirmed that tor_assert(), tor_assert_nonfatal(),
tor_assert_nonfatal_once(), BUG(), and IF_BUG_ONCE() all now give
compiler warnings when their argument is an assignment expression.

Fixes bug 27709.

Bugfix on 0.0.6, where we first introduced the "tor_assert()" macro.
---
 changes/bug27709  |  4 
 src/common/util_bug.h | 53 ++-
 2 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/changes/bug27709 b/changes/bug27709
new file mode 100644
index 0..49e87cbb0
--- /dev/null
+++ b/changes/bug27709
@@ -0,0 +1,4 @@
+  o Minor bugfixes (code safety):
+- Rewrite our assertion macros so that they no longer suppress
+  the compiler's -Wparentheses warnings on their inputs. Fixes bug 27709;
+  bugfix on 0.0.6.
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 069580691..22ec37d38 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -29,6 +29,31 @@
 #error "Sorry; we don't support building with NDEBUG."
 #endif
 
+#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+ * header, so that in our unit test builds, we'll get compiler warnings about
+ * stuff like tor_assert(n = 5).
+ *
+ * The key here is that (e) is wrapped in exactly one layer of parentheses,
+ * and then passed right to a conditional.  If you do anything else to the
+ * expression here, or introduce any more parentheses, the compiler won't
+ * help you.
+ */
+#define ASSERT_PREDICT_UNLIKELY_(e) \
+  ({\
+int tor__assert_tmp_value__;\
+if (e)  \
+  tor__assert_tmp_value__ = 1;  \
+else\
+  tor__assert_tmp_value__ = 0;  \
+tor__assert_tmp_value__;\
+  })
+#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+#else
+#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+#endif
+
 /* Sometimes we don't want to use assertions during branch coverage tests; it
  * leads to tons of unreached branches which in reality are only assertions we
  * didn't hit. */
@@ -40,7 +65,8 @@
 /** Like assert(3), but send assertion failures to the log as well as to
  * stderr. */
 #define tor_assert(expr) STMT_BEGIN \
-  if (PREDICT_UNLIKELY(!(expr))) {  \
+  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
+  } else {  \
 tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 abort();\
   } STMT_END
@@ -77,7 +103,7 @@
 #define tor_assert_nonfatal_unreached_once() tor_assert(0)
 #define tor_assert_nonfatal_once(cond) tor_assert((cond))
 #define BUG(cond)   \
-  (PREDICT_UNLIKELY(cond) ? \
+  (ASSERT_PREDICT_UNLIKELY_(cond) ? \
(tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,"!("#cond")"), \
 abort(), 1) \
: 0)
@@ -86,14 +112,15 @@
 #define tor_assert_nonfatal(cond) ((void)(cond))
 #define tor_assert_nonfatal_unreached_once() STMT_NIL
 #define tor_assert_nonfatal_once(cond) ((void)(cond))
-#define BUG(cond) (PREDICT_UNLIKELY(cond) ? 1 : 0)
+#define BUG(cond) (ASSERT_PREDICT_UNLIKELY_(cond) ? 1 : 0)
 #else /* Normal case, !ALL_BUGS_ARE_FATAL, !DISABLE_ASSERTS_IN_UNIT_TESTS */
 #define tor_assert_nonfatal_unreached() STMT_BEGIN  \
   tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, NULL, 0);   

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

2018-10-15 Thread nickm
commit 3462f8ed6430bdb1528a7b63aaf2281489eb04d1
Merge: fd528a088 796e36e53
Author: Nick Mathewson 
Date:   Mon Oct 15 10:48:35 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 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/release-0.2.9] Merge branch 'bug27709_029' into maint-0.2.9

2018-10-15 Thread nickm
commit b113399658934f3a4526387a63429ec4377ca8be
Merge: 717507e3b 5e582c7ff
Author: Nick Mathewson 
Date:   Mon Oct 15 10:34:39 2018 -0400

Merge branch 'bug27709_029' into maint-0.2.9

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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.2.9] Revise our assertion and bug macros to work with -Wparentheses

2018-10-15 Thread nickm
commit bb465be085ff8d1640f1d1c0bbb65605d85b5528
Author: Nick Mathewson 
Date:   Fri Sep 14 11:39:37 2018 -0400

Revise our assertion and bug macros to work with -Wparentheses

On GCC and Clang, there's a feature to warn you about bad
conditionals like "if (a = b)", which should be "if (a == b)".
However, they don't warn you if there are extra parentheses around
"a = b".

Unfortunately, the tor_assert() macro and all of its kin have been
passing their inputs through stuff like PREDICT_UNLIKELY(expr) or
PREDICT_UNLIKELY(!(expr)), both of which expand to stuff with more
parentheses around "expr", thus suppressing these warnings.

To fix this, this patch introduces new macros that do not wrap
expr.  They're only used when GCC or Clang is enabled (both define
__GNUC__), since they require GCC's "({statement expression})"
syntax extension.  They're only used when we're building the
unit-test variant of the object files, since they suppress the
branch-prediction hints.

I've confirmed that tor_assert(), tor_assert_nonfatal(),
tor_assert_nonfatal_once(), BUG(), and IF_BUG_ONCE() all now give
compiler warnings when their argument is an assignment expression.

Fixes bug 27709.

Bugfix on 0.0.6, where we first introduced the "tor_assert()" macro.
---
 changes/bug27709  |  4 
 src/common/util_bug.h | 53 ++-
 2 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/changes/bug27709 b/changes/bug27709
new file mode 100644
index 0..49e87cbb0
--- /dev/null
+++ b/changes/bug27709
@@ -0,0 +1,4 @@
+  o Minor bugfixes (code safety):
+- Rewrite our assertion macros so that they no longer suppress
+  the compiler's -Wparentheses warnings on their inputs. Fixes bug 27709;
+  bugfix on 0.0.6.
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 069580691..22ec37d38 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -29,6 +29,31 @@
 #error "Sorry; we don't support building with NDEBUG."
 #endif
 
+#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+ * header, so that in our unit test builds, we'll get compiler warnings about
+ * stuff like tor_assert(n = 5).
+ *
+ * The key here is that (e) is wrapped in exactly one layer of parentheses,
+ * and then passed right to a conditional.  If you do anything else to the
+ * expression here, or introduce any more parentheses, the compiler won't
+ * help you.
+ */
+#define ASSERT_PREDICT_UNLIKELY_(e) \
+  ({\
+int tor__assert_tmp_value__;\
+if (e)  \
+  tor__assert_tmp_value__ = 1;  \
+else\
+  tor__assert_tmp_value__ = 0;  \
+tor__assert_tmp_value__;\
+  })
+#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+#else
+#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+#endif
+
 /* Sometimes we don't want to use assertions during branch coverage tests; it
  * leads to tons of unreached branches which in reality are only assertions we
  * didn't hit. */
@@ -40,7 +65,8 @@
 /** Like assert(3), but send assertion failures to the log as well as to
  * stderr. */
 #define tor_assert(expr) STMT_BEGIN \
-  if (PREDICT_UNLIKELY(!(expr))) {  \
+  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
+  } else {  \
 tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 abort();\
   } STMT_END
@@ -77,7 +103,7 @@
 #define tor_assert_nonfatal_unreached_once() tor_assert(0)
 #define tor_assert_nonfatal_once(cond) tor_assert((cond))
 #define BUG(cond)   \
-  (PREDICT_UNLIKELY(cond) ? \
+  (ASSERT_PREDICT_UNLIKELY_(cond) ? \
(tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,"!("#cond")"), \
 abort(), 1) \
: 0)
@@ -86,14 +112,15 @@
 #define tor_assert_nonfatal(cond) ((void)(cond))
 #define tor_assert_nonfatal_unreached_once() STMT_NIL
 #define tor_assert_nonfatal_once(cond) ((void)(cond))
-#define BUG(cond) (PREDICT_UNLIKELY(cond) ? 1 : 0)
+#define BUG(cond) (ASSERT_PREDICT_UNLIKELY_(cond) ? 1 : 0)
 #else /* Normal case, !ALL_BUGS_ARE_FATAL, !DISABLE_ASSERTS_IN_UNIT_TESTS */
 #define tor_assert_nonfatal_unreached() STMT_BEGIN  \
   tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, NULL, 0);   

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

2018-10-15 Thread nickm
commit b113399658934f3a4526387a63429ec4377ca8be
Merge: 717507e3b 5e582c7ff
Author: Nick Mathewson 
Date:   Mon Oct 15 10:34:39 2018 -0400

Merge branch 'bug27709_029' into maint-0.2.9

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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-10-15 Thread nickm
commit 4983322cc71d56d3b9225704b85a7c4a933a40a1
Merge: df2b46d18 fd528a088
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:53 2018 -0400

Merge branch 'maint-0.3.4'

 changes/bug27709   |  4 
 src/lib/log/util_bug.h | 56 +++---
 2 files changed, 48 insertions(+), 12 deletions(-)

diff --cc src/lib/log/util_bug.h
index 44a4f8381,0..0786b05d7
mode 100644,00..100644
--- a/src/lib/log/util_bug.h
+++ b/src/lib/log/util_bug.h
@@@ -1,207 -1,0 +1,239 @@@
 +/* 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 util_bug.h
 + *
 + * \brief Macros to manage assertions, fatal and non-fatal.
 + *
 + * Guidelines: All the different kinds of assertion in this file are for
 + * bug-checking only. Don't write code that can assert based on bad inputs.
 + *
 + * We provide two kinds of assertion here: "fatal" and "nonfatal". Use
 + * nonfatal assertions for any bug you can reasonably recover from -- and
 + * please, try to recover!  Many severe bugs in Tor have been caused by using
 + * a regular assertion when a nonfatal assertion would have been better.
 + *
 + * If you need to check a condition with a nonfatal assertion, AND recover
 + * from that same condition, consider using the BUG() macro inside a
 + * conditional.  For example:
 + *
 + * 
 + *  // wrong -- use tor_assert_nonfatal() if you just want an assertion.
 + *  BUG(ptr == NULL);
 + *
 + *  // okay, but needlessly verbose
 + *  tor_assert_nonfatal(ptr != NULL);
 + *  if (ptr == NULL) { ... }
 + *
 + *  // this is how we do it:
 + *  if (BUG(ptr == NULL)) { ... }
 + * 
 + **/
 +
 +#ifndef TOR_UTIL_BUG_H
 +#define TOR_UTIL_BUG_H
 +
 +#include "orconfig.h"
 +#include "lib/cc/compat_compiler.h"
 +#include "lib/log/log.h"
 +#include "lib/testsupport/testsupport.h"
 +
 +/* Replace assert() with a variant that sends failures to the log before
 + * calling assert() normally.
 + */
 +#ifdef NDEBUG
 +/* Nobody should ever want to build with NDEBUG set.  99% of our asserts will
 + * be outside the critical path anyway, so it's silly to disable bug-checking
 + * throughout the entire program just because a few asserts are slowing you
 + * down.  Profile, optimize the critical path, and keep debugging on.
 + *
 + * And I'm not just saying that because some of our asserts check
 + * security-critical properties.
 + */
 +#error "Sorry; we don't support building with NDEBUG."
 +#endif /* defined(NDEBUG) */
 +
++#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
++/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
++ * header, so that in our unit test builds, we'll get compiler warnings about
++ * stuff like tor_assert(n = 5).
++ *
++ * The key here is that (e) is wrapped in exactly one layer of parentheses,
++ * and then passed right to a conditional.  If you do anything else to the
++ * expression here, or introduce any more parentheses, the compiler won't
++ * help you.
++ *
++ * We only do this for the unit-test build case because it interferes with
++ * the likely-branch labeling.  Note below that in the other case, we define
++ * these macros to just be synonyms for PREDICT_(UN)LIKELY.
++ */
++#define ASSERT_PREDICT_UNLIKELY_(e) \
++  ({\
++int tor__assert_tmp_value__;\
++if (e)  \
++  tor__assert_tmp_value__ = 1;  \
++else\
++  tor__assert_tmp_value__ = 0;  \
++tor__assert_tmp_value__;\
++  })
++#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
++#else
++#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
++#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
++#endif
++
 +/* Sometimes we don't want to use assertions during branch coverage tests; it
 + * leads to tons of unreached branches which in reality are only assertions we
 + * didn't hit. */
 +#if defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS)
 +#define tor_assert(a) STMT_BEGIN\
 +  (void)(a);\
 +  STMT_END
 +#else
 +/** Like assert(3), but send assertion failures to the log as well as to
 + * stderr. */
 +#define tor_assert(expr) STMT_BEGIN \
-   if (PREDICT_UNLIKELY(!(expr))) {  \
++  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
++  } else {  \
 +tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 +abort();\
 +  } STMT_END
 +#endif /* defined(TOR_UNIT_TESTS) && def

[tor-commits] [tor/maint-0.3.4] Merge branch 'maint-0.3.3' into maint-0.3.4

2018-10-15 Thread nickm
commit 3462f8ed6430bdb1528a7b63aaf2281489eb04d1
Merge: fd528a088 796e36e53
Author: Nick Mathewson 
Date:   Mon Oct 15 10:48:35 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 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/maint-0.3.4] Explain a bit more about branch prediction in the unit-test case

2018-10-15 Thread nickm
commit 5e582c7ffafd9075373131e5e55b69507f54206e
Author: Nick Mathewson 
Date:   Mon Oct 15 10:16:34 2018 -0400

Explain a bit more about branch prediction in the unit-test case
---
 src/common/util_bug.h | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 22ec37d38..f3e5b7c96 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -38,6 +38,10 @@
  * and then passed right to a conditional.  If you do anything else to the
  * expression here, or introduce any more parentheses, the compiler won't
  * help you.
+ *
+ * We only do this for the unit-test build case because it interferes with
+ * the likely-branch labeling.  Note below that in the other case, we define
+ * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
   ({\



___
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 branch 'bug27709_029' into maint-0.2.9

2018-10-15 Thread nickm
commit b113399658934f3a4526387a63429ec4377ca8be
Merge: 717507e3b 5e582c7ff
Author: Nick Mathewson 
Date:   Mon Oct 15 10:34:39 2018 -0400

Merge branch 'bug27709_029' into maint-0.2.9

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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] Adjust tor_assert_unreached()

2018-10-15 Thread nickm
commit 796e36e535d1713fd1168772669199ea9189ba61
Author: Nick Mathewson 
Date:   Mon Oct 15 10:46:24 2018 -0400

Adjust tor_assert_unreached()

This version of the macro makes it obvious to the compiler that
"tor_assert_unreached()" will always abort().
---
 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index c274355f3..be0001e84 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -102,7 +102,12 @@
   } STMT_END
 #endif /* defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS) */
 
-#define tor_assert_unreached() tor_assert(0)
+#define tor_assert_unreached()  \
+  STMT_BEGIN {  \
+tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, \
+  "line should be unreached");  \
+abort();\
+  } STMT_END
 
 /* Non-fatal bug assertions. The "unreached" variants mean "this line should
  * never be reached." The "once" variants mean "Don't log a warning more than
diff --git a/src/or/hs_common.c b/src/or/hs_common.c
index 10b56c0ba..e586516c8 100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@ -523,7 +523,7 @@ rend_data_get_address(const rend_data_t *rend_data)
 return TO_REND_DATA_V2(rend_data)->onion_address;
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -546,7 +546,7 @@ rend_data_get_desc_id(const rend_data_t *rend_data, uint8_t 
replica,
 return TO_REND_DATA_V2(rend_data)->descriptor_id[replica];
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -569,7 +569,7 @@ rend_data_get_pk_digest(const rend_data_t *rend_data, 
size_t *len_out)
   }
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -1814,4 +1814,3 @@ hs_inc_rdv_stream_counter(origin_circuit_t *circ)
 tor_assert_nonfatal_unreached();
   }
 }
-



___
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 branch 'maint-0.3.3' into maint-0.3.4

2018-10-15 Thread nickm
commit fd528a0884e706f5ad10422d0c4501ce35254530
Merge: ffaf180b7 dff7d3d00
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:52 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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] Merge branch 'maint-0.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit dff7d3d00ad5e3f9e59cd4b11f302601790d1061
Merge: f7e93cf2e b11339965
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:49 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 deletions(-)

diff --cc src/common/util_bug.h
index be549fde0,f3e5b7c96..c274355f3
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@@ -53,8 -27,37 +53,37 @@@
   * security-critical properties.
   */
  #error "Sorry; we don't support building with NDEBUG."
 -#endif
 +#endif /* defined(NDEBUG) */
  
+ #if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+ /* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+  * header, so that in our unit test builds, we'll get compiler warnings about
+  * stuff like tor_assert(n = 5).
+  *
+  * The key here is that (e) is wrapped in exactly one layer of parentheses,
+  * and then passed right to a conditional.  If you do anything else to the
+  * expression here, or introduce any more parentheses, the compiler won't
+  * help you.
+  *
+  * We only do this for the unit-test build case because it interferes with
+  * the likely-branch labeling.  Note below that in the other case, we define
+  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
+  */
+ #define ASSERT_PREDICT_UNLIKELY_(e) \
+   ({\
+ int tor__assert_tmp_value__;\
+ if (e)  \
+   tor__assert_tmp_value__ = 1;  \
+ else\
+   tor__assert_tmp_value__ = 0;  \
+ tor__assert_tmp_value__;\
+   })
+ #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+ #else
+ #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+ #define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+ #endif
+ 
  /* Sometimes we don't want to use assertions during branch coverage tests; it
   * leads to tons of unreached branches which in reality are only assertions we
   * didn't hit. */
@@@ -140,10 -143,10 +172,10 @@@ extern int bug_macro_deadcode_dummy__
} \
STMT_END
  #define BUG(cond)   \
-   (PREDICT_UNLIKELY(cond) ? \
+   (ASSERT_PREDICT_UNLIKELY_(cond) ? \
 (tor_bug_occurred_(SHORT_FILE__,__LINE__,__func__,"!("#cond")",0), 1) \
 : 0)
 -#endif
 +#endif /* defined(ALL_BUGS_ARE_FATAL) || ... */
  
  #ifdef __GNUC__
  #define IF_BUG_ONCE__(cond,var) \
@@@ -155,11 -158,11 +187,11 @@@
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
"!("#cond")", 1); \
} \
-   PREDICT_UNLIKELY(bool_result); } ))
+   bool_result; } ))
 -#else
 +#else /* !(defined(__GNUC__)) */
  #define IF_BUG_ONCE__(cond,var) \
static int var = 0;   \
-   if (PREDICT_UNLIKELY(cond) ?  \
+   if ((cond) ?  \
(var ? 1 :\
 (var=1,  \
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
@@@ -196,7 -199,6 +228,6 @@@ void tor_capture_bugs_(int n)
  void tor_end_capture_bugs_(void);
  const struct smartlist_t *tor_get_captured_bug_log_(void);
  void tor_set_failed_assertion_callback(void (*fn)(void));
 -#endif
 +#endif /* defined(TOR_UNIT_TESTS) */
  
 -#endif
 +#endif /* !defined(TOR_UTIL_BUG_H) */
- 



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


[tor-commits] [tor/master] Revise our assertion and bug macros to work with -Wparentheses

2018-10-15 Thread nickm
commit bb465be085ff8d1640f1d1c0bbb65605d85b5528
Author: Nick Mathewson 
Date:   Fri Sep 14 11:39:37 2018 -0400

Revise our assertion and bug macros to work with -Wparentheses

On GCC and Clang, there's a feature to warn you about bad
conditionals like "if (a = b)", which should be "if (a == b)".
However, they don't warn you if there are extra parentheses around
"a = b".

Unfortunately, the tor_assert() macro and all of its kin have been
passing their inputs through stuff like PREDICT_UNLIKELY(expr) or
PREDICT_UNLIKELY(!(expr)), both of which expand to stuff with more
parentheses around "expr", thus suppressing these warnings.

To fix this, this patch introduces new macros that do not wrap
expr.  They're only used when GCC or Clang is enabled (both define
__GNUC__), since they require GCC's "({statement expression})"
syntax extension.  They're only used when we're building the
unit-test variant of the object files, since they suppress the
branch-prediction hints.

I've confirmed that tor_assert(), tor_assert_nonfatal(),
tor_assert_nonfatal_once(), BUG(), and IF_BUG_ONCE() all now give
compiler warnings when their argument is an assignment expression.

Fixes bug 27709.

Bugfix on 0.0.6, where we first introduced the "tor_assert()" macro.
---
 changes/bug27709  |  4 
 src/common/util_bug.h | 53 ++-
 2 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/changes/bug27709 b/changes/bug27709
new file mode 100644
index 0..49e87cbb0
--- /dev/null
+++ b/changes/bug27709
@@ -0,0 +1,4 @@
+  o Minor bugfixes (code safety):
+- Rewrite our assertion macros so that they no longer suppress
+  the compiler's -Wparentheses warnings on their inputs. Fixes bug 27709;
+  bugfix on 0.0.6.
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 069580691..22ec37d38 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -29,6 +29,31 @@
 #error "Sorry; we don't support building with NDEBUG."
 #endif
 
+#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+ * header, so that in our unit test builds, we'll get compiler warnings about
+ * stuff like tor_assert(n = 5).
+ *
+ * The key here is that (e) is wrapped in exactly one layer of parentheses,
+ * and then passed right to a conditional.  If you do anything else to the
+ * expression here, or introduce any more parentheses, the compiler won't
+ * help you.
+ */
+#define ASSERT_PREDICT_UNLIKELY_(e) \
+  ({\
+int tor__assert_tmp_value__;\
+if (e)  \
+  tor__assert_tmp_value__ = 1;  \
+else\
+  tor__assert_tmp_value__ = 0;  \
+tor__assert_tmp_value__;\
+  })
+#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+#else
+#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+#endif
+
 /* Sometimes we don't want to use assertions during branch coverage tests; it
  * leads to tons of unreached branches which in reality are only assertions we
  * didn't hit. */
@@ -40,7 +65,8 @@
 /** Like assert(3), but send assertion failures to the log as well as to
  * stderr. */
 #define tor_assert(expr) STMT_BEGIN \
-  if (PREDICT_UNLIKELY(!(expr))) {  \
+  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
+  } else {  \
 tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 abort();\
   } STMT_END
@@ -77,7 +103,7 @@
 #define tor_assert_nonfatal_unreached_once() tor_assert(0)
 #define tor_assert_nonfatal_once(cond) tor_assert((cond))
 #define BUG(cond)   \
-  (PREDICT_UNLIKELY(cond) ? \
+  (ASSERT_PREDICT_UNLIKELY_(cond) ? \
(tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,"!("#cond")"), \
 abort(), 1) \
: 0)
@@ -86,14 +112,15 @@
 #define tor_assert_nonfatal(cond) ((void)(cond))
 #define tor_assert_nonfatal_unreached_once() STMT_NIL
 #define tor_assert_nonfatal_once(cond) ((void)(cond))
-#define BUG(cond) (PREDICT_UNLIKELY(cond) ? 1 : 0)
+#define BUG(cond) (ASSERT_PREDICT_UNLIKELY_(cond) ? 1 : 0)
 #else /* Normal case, !ALL_BUGS_ARE_FATAL, !DISABLE_ASSERTS_IN_UNIT_TESTS */
 #define tor_assert_nonfatal_unreached() STMT_BEGIN  \
   tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, NULL, 0);   

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

2018-10-15 Thread nickm
commit dff7d3d00ad5e3f9e59cd4b11f302601790d1061
Merge: f7e93cf2e b11339965
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:49 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 deletions(-)

diff --cc src/common/util_bug.h
index be549fde0,f3e5b7c96..c274355f3
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@@ -53,8 -27,37 +53,37 @@@
   * security-critical properties.
   */
  #error "Sorry; we don't support building with NDEBUG."
 -#endif
 +#endif /* defined(NDEBUG) */
  
+ #if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+ /* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+  * header, so that in our unit test builds, we'll get compiler warnings about
+  * stuff like tor_assert(n = 5).
+  *
+  * The key here is that (e) is wrapped in exactly one layer of parentheses,
+  * and then passed right to a conditional.  If you do anything else to the
+  * expression here, or introduce any more parentheses, the compiler won't
+  * help you.
+  *
+  * We only do this for the unit-test build case because it interferes with
+  * the likely-branch labeling.  Note below that in the other case, we define
+  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
+  */
+ #define ASSERT_PREDICT_UNLIKELY_(e) \
+   ({\
+ int tor__assert_tmp_value__;\
+ if (e)  \
+   tor__assert_tmp_value__ = 1;  \
+ else\
+   tor__assert_tmp_value__ = 0;  \
+ tor__assert_tmp_value__;\
+   })
+ #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+ #else
+ #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+ #define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+ #endif
+ 
  /* Sometimes we don't want to use assertions during branch coverage tests; it
   * leads to tons of unreached branches which in reality are only assertions we
   * didn't hit. */
@@@ -140,10 -143,10 +172,10 @@@ extern int bug_macro_deadcode_dummy__
} \
STMT_END
  #define BUG(cond)   \
-   (PREDICT_UNLIKELY(cond) ? \
+   (ASSERT_PREDICT_UNLIKELY_(cond) ? \
 (tor_bug_occurred_(SHORT_FILE__,__LINE__,__func__,"!("#cond")",0), 1) \
 : 0)
 -#endif
 +#endif /* defined(ALL_BUGS_ARE_FATAL) || ... */
  
  #ifdef __GNUC__
  #define IF_BUG_ONCE__(cond,var) \
@@@ -155,11 -158,11 +187,11 @@@
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
"!("#cond")", 1); \
} \
-   PREDICT_UNLIKELY(bool_result); } ))
+   bool_result; } ))
 -#else
 +#else /* !(defined(__GNUC__)) */
  #define IF_BUG_ONCE__(cond,var) \
static int var = 0;   \
-   if (PREDICT_UNLIKELY(cond) ?  \
+   if ((cond) ?  \
(var ? 1 :\
 (var=1,  \
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
@@@ -196,7 -199,6 +228,6 @@@ void tor_capture_bugs_(int n)
  void tor_end_capture_bugs_(void);
  const struct smartlist_t *tor_get_captured_bug_log_(void);
  void tor_set_failed_assertion_callback(void (*fn)(void));
 -#endif
 +#endif /* defined(TOR_UNIT_TESTS) */
  
 -#endif
 +#endif /* !defined(TOR_UTIL_BUG_H) */
- 



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


[tor-commits] [tor/master] Explain a bit more about branch prediction in the unit-test case

2018-10-15 Thread nickm
commit 5e582c7ffafd9075373131e5e55b69507f54206e
Author: Nick Mathewson 
Date:   Mon Oct 15 10:16:34 2018 -0400

Explain a bit more about branch prediction in the unit-test case
---
 src/common/util_bug.h | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 22ec37d38..f3e5b7c96 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -38,6 +38,10 @@
  * and then passed right to a conditional.  If you do anything else to the
  * expression here, or introduce any more parentheses, the compiler won't
  * help you.
+ *
+ * We only do this for the unit-test build case because it interferes with
+ * the likely-branch labeling.  Note below that in the other case, we define
+ * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
   ({\



___
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.3' into maint-0.3.4

2018-10-15 Thread nickm
commit fd528a0884e706f5ad10422d0c4501ce35254530
Merge: ffaf180b7 dff7d3d00
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:52 2018 -0400

Merge branch 'maint-0.3.3' into maint-0.3.4

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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.3] Merge branch 'maint-0.2.9' into maint-0.3.3

2018-10-15 Thread nickm
commit dff7d3d00ad5e3f9e59cd4b11f302601790d1061
Merge: f7e93cf2e b11339965
Author: Nick Mathewson 
Date:   Mon Oct 15 10:37:49 2018 -0400

Merge branch 'maint-0.2.9' into maint-0.3.3

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 deletions(-)

diff --cc src/common/util_bug.h
index be549fde0,f3e5b7c96..c274355f3
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@@ -53,8 -27,37 +53,37 @@@
   * security-critical properties.
   */
  #error "Sorry; we don't support building with NDEBUG."
 -#endif
 +#endif /* defined(NDEBUG) */
  
+ #if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+ /* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+  * header, so that in our unit test builds, we'll get compiler warnings about
+  * stuff like tor_assert(n = 5).
+  *
+  * The key here is that (e) is wrapped in exactly one layer of parentheses,
+  * and then passed right to a conditional.  If you do anything else to the
+  * expression here, or introduce any more parentheses, the compiler won't
+  * help you.
+  *
+  * We only do this for the unit-test build case because it interferes with
+  * the likely-branch labeling.  Note below that in the other case, we define
+  * these macros to just be synonyms for PREDICT_(UN)LIKELY.
+  */
+ #define ASSERT_PREDICT_UNLIKELY_(e) \
+   ({\
+ int tor__assert_tmp_value__;\
+ if (e)  \
+   tor__assert_tmp_value__ = 1;  \
+ else\
+   tor__assert_tmp_value__ = 0;  \
+ tor__assert_tmp_value__;\
+   })
+ #define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+ #else
+ #define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+ #define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+ #endif
+ 
  /* Sometimes we don't want to use assertions during branch coverage tests; it
   * leads to tons of unreached branches which in reality are only assertions we
   * didn't hit. */
@@@ -140,10 -143,10 +172,10 @@@ extern int bug_macro_deadcode_dummy__
} \
STMT_END
  #define BUG(cond)   \
-   (PREDICT_UNLIKELY(cond) ? \
+   (ASSERT_PREDICT_UNLIKELY_(cond) ? \
 (tor_bug_occurred_(SHORT_FILE__,__LINE__,__func__,"!("#cond")",0), 1) \
 : 0)
 -#endif
 +#endif /* defined(ALL_BUGS_ARE_FATAL) || ... */
  
  #ifdef __GNUC__
  #define IF_BUG_ONCE__(cond,var) \
@@@ -155,11 -158,11 +187,11 @@@
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
"!("#cond")", 1); \
} \
-   PREDICT_UNLIKELY(bool_result); } ))
+   bool_result; } ))
 -#else
 +#else /* !(defined(__GNUC__)) */
  #define IF_BUG_ONCE__(cond,var) \
static int var = 0;   \
-   if (PREDICT_UNLIKELY(cond) ?  \
+   if ((cond) ?  \
(var ? 1 :\
 (var=1,  \
  tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
@@@ -196,7 -199,6 +228,6 @@@ void tor_capture_bugs_(int n)
  void tor_end_capture_bugs_(void);
  const struct smartlist_t *tor_get_captured_bug_log_(void);
  void tor_set_failed_assertion_callback(void (*fn)(void));
 -#endif
 +#endif /* defined(TOR_UNIT_TESTS) */
  
 -#endif
 +#endif /* !defined(TOR_UTIL_BUG_H) */
- 



___
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.3] Adjust tor_assert_unreached()

2018-10-15 Thread nickm
commit 796e36e535d1713fd1168772669199ea9189ba61
Author: Nick Mathewson 
Date:   Mon Oct 15 10:46:24 2018 -0400

Adjust tor_assert_unreached()

This version of the macro makes it obvious to the compiler that
"tor_assert_unreached()" will always abort().
---
 src/common/util_bug.h | 7 ++-
 src/or/hs_common.c| 7 +++
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index c274355f3..be0001e84 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -102,7 +102,12 @@
   } STMT_END
 #endif /* defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS) */
 
-#define tor_assert_unreached() tor_assert(0)
+#define tor_assert_unreached()  \
+  STMT_BEGIN {  \
+tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, \
+  "line should be unreached");  \
+abort();\
+  } STMT_END
 
 /* Non-fatal bug assertions. The "unreached" variants mean "this line should
  * never be reached." The "once" variants mean "Don't log a warning more than
diff --git a/src/or/hs_common.c b/src/or/hs_common.c
index 10b56c0ba..e586516c8 100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@ -523,7 +523,7 @@ rend_data_get_address(const rend_data_t *rend_data)
 return TO_REND_DATA_V2(rend_data)->onion_address;
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -546,7 +546,7 @@ rend_data_get_desc_id(const rend_data_t *rend_data, uint8_t 
replica,
 return TO_REND_DATA_V2(rend_data)->descriptor_id[replica];
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -569,7 +569,7 @@ rend_data_get_pk_digest(const rend_data_t *rend_data, 
size_t *len_out)
   }
   default:
 /* We should always have a supported version. */
-tor_assert(0);
+tor_assert_unreached();
   }
 }
 
@@ -1814,4 +1814,3 @@ hs_inc_rdv_stream_counter(origin_circuit_t *circ)
 tor_assert_nonfatal_unreached();
   }
 }
-

___
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] Revise our assertion and bug macros to work with -Wparentheses

2018-10-15 Thread nickm
commit bb465be085ff8d1640f1d1c0bbb65605d85b5528
Author: Nick Mathewson 
Date:   Fri Sep 14 11:39:37 2018 -0400

Revise our assertion and bug macros to work with -Wparentheses

On GCC and Clang, there's a feature to warn you about bad
conditionals like "if (a = b)", which should be "if (a == b)".
However, they don't warn you if there are extra parentheses around
"a = b".

Unfortunately, the tor_assert() macro and all of its kin have been
passing their inputs through stuff like PREDICT_UNLIKELY(expr) or
PREDICT_UNLIKELY(!(expr)), both of which expand to stuff with more
parentheses around "expr", thus suppressing these warnings.

To fix this, this patch introduces new macros that do not wrap
expr.  They're only used when GCC or Clang is enabled (both define
__GNUC__), since they require GCC's "({statement expression})"
syntax extension.  They're only used when we're building the
unit-test variant of the object files, since they suppress the
branch-prediction hints.

I've confirmed that tor_assert(), tor_assert_nonfatal(),
tor_assert_nonfatal_once(), BUG(), and IF_BUG_ONCE() all now give
compiler warnings when their argument is an assignment expression.

Fixes bug 27709.

Bugfix on 0.0.6, where we first introduced the "tor_assert()" macro.
---
 changes/bug27709  |  4 
 src/common/util_bug.h | 53 ++-
 2 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/changes/bug27709 b/changes/bug27709
new file mode 100644
index 0..49e87cbb0
--- /dev/null
+++ b/changes/bug27709
@@ -0,0 +1,4 @@
+  o Minor bugfixes (code safety):
+- Rewrite our assertion macros so that they no longer suppress
+  the compiler's -Wparentheses warnings on their inputs. Fixes bug 27709;
+  bugfix on 0.0.6.
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 069580691..22ec37d38 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -29,6 +29,31 @@
 #error "Sorry; we don't support building with NDEBUG."
 #endif
 
+#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+ * header, so that in our unit test builds, we'll get compiler warnings about
+ * stuff like tor_assert(n = 5).
+ *
+ * The key here is that (e) is wrapped in exactly one layer of parentheses,
+ * and then passed right to a conditional.  If you do anything else to the
+ * expression here, or introduce any more parentheses, the compiler won't
+ * help you.
+ */
+#define ASSERT_PREDICT_UNLIKELY_(e) \
+  ({\
+int tor__assert_tmp_value__;\
+if (e)  \
+  tor__assert_tmp_value__ = 1;  \
+else\
+  tor__assert_tmp_value__ = 0;  \
+tor__assert_tmp_value__;\
+  })
+#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+#else
+#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+#endif
+
 /* Sometimes we don't want to use assertions during branch coverage tests; it
  * leads to tons of unreached branches which in reality are only assertions we
  * didn't hit. */
@@ -40,7 +65,8 @@
 /** Like assert(3), but send assertion failures to the log as well as to
  * stderr. */
 #define tor_assert(expr) STMT_BEGIN \
-  if (PREDICT_UNLIKELY(!(expr))) {  \
+  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
+  } else {  \
 tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 abort();\
   } STMT_END
@@ -77,7 +103,7 @@
 #define tor_assert_nonfatal_unreached_once() tor_assert(0)
 #define tor_assert_nonfatal_once(cond) tor_assert((cond))
 #define BUG(cond)   \
-  (PREDICT_UNLIKELY(cond) ? \
+  (ASSERT_PREDICT_UNLIKELY_(cond) ? \
(tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,"!("#cond")"), \
 abort(), 1) \
: 0)
@@ -86,14 +112,15 @@
 #define tor_assert_nonfatal(cond) ((void)(cond))
 #define tor_assert_nonfatal_unreached_once() STMT_NIL
 #define tor_assert_nonfatal_once(cond) ((void)(cond))
-#define BUG(cond) (PREDICT_UNLIKELY(cond) ? 1 : 0)
+#define BUG(cond) (ASSERT_PREDICT_UNLIKELY_(cond) ? 1 : 0)
 #else /* Normal case, !ALL_BUGS_ARE_FATAL, !DISABLE_ASSERTS_IN_UNIT_TESTS */
 #define tor_assert_nonfatal_unreached() STMT_BEGIN  \
   tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, NULL, 0);   

[tor-commits] [tor/maint-0.3.3] Revise our assertion and bug macros to work with -Wparentheses

2018-10-15 Thread nickm
commit bb465be085ff8d1640f1d1c0bbb65605d85b5528
Author: Nick Mathewson 
Date:   Fri Sep 14 11:39:37 2018 -0400

Revise our assertion and bug macros to work with -Wparentheses

On GCC and Clang, there's a feature to warn you about bad
conditionals like "if (a = b)", which should be "if (a == b)".
However, they don't warn you if there are extra parentheses around
"a = b".

Unfortunately, the tor_assert() macro and all of its kin have been
passing their inputs through stuff like PREDICT_UNLIKELY(expr) or
PREDICT_UNLIKELY(!(expr)), both of which expand to stuff with more
parentheses around "expr", thus suppressing these warnings.

To fix this, this patch introduces new macros that do not wrap
expr.  They're only used when GCC or Clang is enabled (both define
__GNUC__), since they require GCC's "({statement expression})"
syntax extension.  They're only used when we're building the
unit-test variant of the object files, since they suppress the
branch-prediction hints.

I've confirmed that tor_assert(), tor_assert_nonfatal(),
tor_assert_nonfatal_once(), BUG(), and IF_BUG_ONCE() all now give
compiler warnings when their argument is an assignment expression.

Fixes bug 27709.

Bugfix on 0.0.6, where we first introduced the "tor_assert()" macro.
---
 changes/bug27709  |  4 
 src/common/util_bug.h | 53 ++-
 2 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/changes/bug27709 b/changes/bug27709
new file mode 100644
index 0..49e87cbb0
--- /dev/null
+++ b/changes/bug27709
@@ -0,0 +1,4 @@
+  o Minor bugfixes (code safety):
+- Rewrite our assertion macros so that they no longer suppress
+  the compiler's -Wparentheses warnings on their inputs. Fixes bug 27709;
+  bugfix on 0.0.6.
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 069580691..22ec37d38 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -29,6 +29,31 @@
 #error "Sorry; we don't support building with NDEBUG."
 #endif
 
+#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+ * header, so that in our unit test builds, we'll get compiler warnings about
+ * stuff like tor_assert(n = 5).
+ *
+ * The key here is that (e) is wrapped in exactly one layer of parentheses,
+ * and then passed right to a conditional.  If you do anything else to the
+ * expression here, or introduce any more parentheses, the compiler won't
+ * help you.
+ */
+#define ASSERT_PREDICT_UNLIKELY_(e) \
+  ({\
+int tor__assert_tmp_value__;\
+if (e)  \
+  tor__assert_tmp_value__ = 1;  \
+else\
+  tor__assert_tmp_value__ = 0;  \
+tor__assert_tmp_value__;\
+  })
+#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+#else
+#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+#endif
+
 /* Sometimes we don't want to use assertions during branch coverage tests; it
  * leads to tons of unreached branches which in reality are only assertions we
  * didn't hit. */
@@ -40,7 +65,8 @@
 /** Like assert(3), but send assertion failures to the log as well as to
  * stderr. */
 #define tor_assert(expr) STMT_BEGIN \
-  if (PREDICT_UNLIKELY(!(expr))) {  \
+  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
+  } else {  \
 tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 abort();\
   } STMT_END
@@ -77,7 +103,7 @@
 #define tor_assert_nonfatal_unreached_once() tor_assert(0)
 #define tor_assert_nonfatal_once(cond) tor_assert((cond))
 #define BUG(cond)   \
-  (PREDICT_UNLIKELY(cond) ? \
+  (ASSERT_PREDICT_UNLIKELY_(cond) ? \
(tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,"!("#cond")"), \
 abort(), 1) \
: 0)
@@ -86,14 +112,15 @@
 #define tor_assert_nonfatal(cond) ((void)(cond))
 #define tor_assert_nonfatal_unreached_once() STMT_NIL
 #define tor_assert_nonfatal_once(cond) ((void)(cond))
-#define BUG(cond) (PREDICT_UNLIKELY(cond) ? 1 : 0)
+#define BUG(cond) (ASSERT_PREDICT_UNLIKELY_(cond) ? 1 : 0)
 #else /* Normal case, !ALL_BUGS_ARE_FATAL, !DISABLE_ASSERTS_IN_UNIT_TESTS */
 #define tor_assert_nonfatal_unreached() STMT_BEGIN  \
   tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, NULL, 0);   

[tor-commits] [tor/maint-0.3.3] Merge branch 'bug27709_029' into maint-0.2.9

2018-10-15 Thread nickm
commit b113399658934f3a4526387a63429ec4377ca8be
Merge: 717507e3b 5e582c7ff
Author: Nick Mathewson 
Date:   Mon Oct 15 10:34:39 2018 -0400

Merge branch 'bug27709_029' into maint-0.2.9

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 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.2.9] Revise our assertion and bug macros to work with -Wparentheses

2018-10-15 Thread nickm
commit bb465be085ff8d1640f1d1c0bbb65605d85b5528
Author: Nick Mathewson 
Date:   Fri Sep 14 11:39:37 2018 -0400

Revise our assertion and bug macros to work with -Wparentheses

On GCC and Clang, there's a feature to warn you about bad
conditionals like "if (a = b)", which should be "if (a == b)".
However, they don't warn you if there are extra parentheses around
"a = b".

Unfortunately, the tor_assert() macro and all of its kin have been
passing their inputs through stuff like PREDICT_UNLIKELY(expr) or
PREDICT_UNLIKELY(!(expr)), both of which expand to stuff with more
parentheses around "expr", thus suppressing these warnings.

To fix this, this patch introduces new macros that do not wrap
expr.  They're only used when GCC or Clang is enabled (both define
__GNUC__), since they require GCC's "({statement expression})"
syntax extension.  They're only used when we're building the
unit-test variant of the object files, since they suppress the
branch-prediction hints.

I've confirmed that tor_assert(), tor_assert_nonfatal(),
tor_assert_nonfatal_once(), BUG(), and IF_BUG_ONCE() all now give
compiler warnings when their argument is an assignment expression.

Fixes bug 27709.

Bugfix on 0.0.6, where we first introduced the "tor_assert()" macro.
---
 changes/bug27709  |  4 
 src/common/util_bug.h | 53 ++-
 2 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/changes/bug27709 b/changes/bug27709
new file mode 100644
index 0..49e87cbb0
--- /dev/null
+++ b/changes/bug27709
@@ -0,0 +1,4 @@
+  o Minor bugfixes (code safety):
+- Rewrite our assertion macros so that they no longer suppress
+  the compiler's -Wparentheses warnings on their inputs. Fixes bug 27709;
+  bugfix on 0.0.6.
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 069580691..22ec37d38 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -29,6 +29,31 @@
 #error "Sorry; we don't support building with NDEBUG."
 #endif
 
+#if defined(TOR_UNIT_TESTS) && defined(__GNUC__)
+/* We define this GCC macro as a replacement for PREDICT_UNLIKELY() in this
+ * header, so that in our unit test builds, we'll get compiler warnings about
+ * stuff like tor_assert(n = 5).
+ *
+ * The key here is that (e) is wrapped in exactly one layer of parentheses,
+ * and then passed right to a conditional.  If you do anything else to the
+ * expression here, or introduce any more parentheses, the compiler won't
+ * help you.
+ */
+#define ASSERT_PREDICT_UNLIKELY_(e) \
+  ({\
+int tor__assert_tmp_value__;\
+if (e)  \
+  tor__assert_tmp_value__ = 1;  \
+else\
+  tor__assert_tmp_value__ = 0;  \
+tor__assert_tmp_value__;\
+  })
+#define ASSERT_PREDICT_LIKELY_(e) ASSERT_PREDICT_UNLIKELY_(e)
+#else
+#define ASSERT_PREDICT_UNLIKELY_(e) PREDICT_UNLIKELY(e)
+#define ASSERT_PREDICT_LIKELY_(e) PREDICT_LIKELY(e)
+#endif
+
 /* Sometimes we don't want to use assertions during branch coverage tests; it
  * leads to tons of unreached branches which in reality are only assertions we
  * didn't hit. */
@@ -40,7 +65,8 @@
 /** Like assert(3), but send assertion failures to the log as well as to
  * stderr. */
 #define tor_assert(expr) STMT_BEGIN \
-  if (PREDICT_UNLIKELY(!(expr))) {  \
+  if (ASSERT_PREDICT_LIKELY_(expr)) {   \
+  } else {  \
 tor_assertion_failed_(SHORT_FILE__, __LINE__, __func__, #expr); \
 abort();\
   } STMT_END
@@ -77,7 +103,7 @@
 #define tor_assert_nonfatal_unreached_once() tor_assert(0)
 #define tor_assert_nonfatal_once(cond) tor_assert((cond))
 #define BUG(cond)   \
-  (PREDICT_UNLIKELY(cond) ? \
+  (ASSERT_PREDICT_UNLIKELY_(cond) ? \
(tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,"!("#cond")"), \
 abort(), 1) \
: 0)
@@ -86,14 +112,15 @@
 #define tor_assert_nonfatal(cond) ((void)(cond))
 #define tor_assert_nonfatal_unreached_once() STMT_NIL
 #define tor_assert_nonfatal_once(cond) ((void)(cond))
-#define BUG(cond) (PREDICT_UNLIKELY(cond) ? 1 : 0)
+#define BUG(cond) (ASSERT_PREDICT_UNLIKELY_(cond) ? 1 : 0)
 #else /* Normal case, !ALL_BUGS_ARE_FATAL, !DISABLE_ASSERTS_IN_UNIT_TESTS */
 #define tor_assert_nonfatal_unreached() STMT_BEGIN  \
   tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, NULL, 0);   

[tor-commits] [tor/maint-0.3.3] Explain a bit more about branch prediction in the unit-test case

2018-10-15 Thread nickm
commit 5e582c7ffafd9075373131e5e55b69507f54206e
Author: Nick Mathewson 
Date:   Mon Oct 15 10:16:34 2018 -0400

Explain a bit more about branch prediction in the unit-test case
---
 src/common/util_bug.h | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 22ec37d38..f3e5b7c96 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -38,6 +38,10 @@
  * and then passed right to a conditional.  If you do anything else to the
  * expression here, or introduce any more parentheses, the compiler won't
  * help you.
+ *
+ * We only do this for the unit-test build case because it interferes with
+ * the likely-branch labeling.  Note below that in the other case, we define
+ * these macros to just be synonyms for PREDICT_(UN)LIKELY.
  */
 #define ASSERT_PREDICT_UNLIKELY_(e) \
   ({\



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


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

2018-10-15 Thread nickm
commit b113399658934f3a4526387a63429ec4377ca8be
Merge: 717507e3b 5e582c7ff
Author: Nick Mathewson 
Date:   Mon Oct 15 10:34:39 2018 -0400

Merge branch 'bug27709_029' into maint-0.2.9

 changes/bug27709  |  4 
 src/common/util_bug.h | 57 +++
 2 files changed, 48 insertions(+), 13 deletions(-)

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


  1   2   >