[tor-commits] [translation/bridgedb] Update translations for bridgedb
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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'
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
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
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
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
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
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
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
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
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
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
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
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.
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.
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.
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.
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
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
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'
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
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
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
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
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
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
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
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.
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.
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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()
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()
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
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
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
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
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()
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'
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
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
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
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
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
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
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
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'
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
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
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
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()
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
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
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
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
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
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
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
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()
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
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
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
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
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
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
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