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

2018-01-19 Thread translation
commit 2a40893cb44a13835bc95a9c63213fe2fc201a37
Author: Translation commit bot 
Date:   Sat Jan 20 06:20:31 2018 +

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

diff --git a/mk/mk.po b/mk/mk.po
index efe615fd8..56248a47d 100644
--- a/mk/mk.po
+++ b/mk/mk.po
@@ -54,6 +54,10 @@ msgid ""
 "real Internet (IP) address, and will not know who you are unless you "
 "explicitly identify yourself."
 msgstr ""
+"Операторите на веб страните и сервисите 
кои ги користите, и секој кои ги "
+"надгледува нив, ќе види конекција која 
доаѓа преку Tor мрежата наместо преку"
+" вашата реална Интернет (IP) адреса, и нема 
да знае кој сте вие, освен "
+"доколку вие експлицитно не се 
идентификувате себеси."
 
 #: about-tor-browser.page:34
 msgid ""

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


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

2018-01-19 Thread translation
commit 2bb5f451fc6f72cdb64beec67d6106888e4bdfcf
Author: Translation commit bot 
Date:   Sat Jan 20 05:50:38 2018 +

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

diff --git a/mk/mk.po b/mk/mk.po
index 965d1943c..efe615fd8 100644
--- a/mk/mk.po
+++ b/mk/mk.po
@@ -17,21 +17,25 @@ msgstr ""
 #. Put one translator per line, in the form NAME , YEAR1, YEAR2
 msgctxt "_"
 msgid "translator-credits"
-msgstr ""
+msgstr "Преведувач:"
 
 #: about-tor-browser.page:7
 msgid "Learn what Tor Browser can do to protect your privacy and anonymity"
 msgstr ""
+"Научете повеќе како Tor Browser може да ја 
штити вашата приватност и "
+"анонимност"
 
 #: about-tor-browser.page:10
 msgid "About Tor Browser"
-msgstr ""
+msgstr "За Tor Browser"
 
 #: about-tor-browser.page:12
 msgid ""
 "Tor Browser uses the Tor network to protect your privacy and anonymity. "
 "Using the Tor network has two main properties:"
 msgstr ""
+"Tor Browser ја користи Tor мрежата за да ја 
заштити вашата приватност и "
+"анонимност. Користењето на Tor мрежата има 
два главни параметри:"
 
 #: about-tor-browser.page:18
 msgid ""
@@ -39,6 +43,9 @@ msgid ""
 " will not be able to track your internet activity, including the names and "
 "addresses of the websites you visit."
 msgstr ""
+"Вашиот Интернет сервис провајдер, и секој 
кој ја надгледува вашата конекција"
+" локално, нема да биде во можност да ги 
следи вашите активности на Интернет,"
+" вклучувајќи ги и имињата и адресите на 
веб страните кои ги посетувате."
 
 #: about-tor-browser.page:25
 msgid ""

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


[tor-commits] [translation/tor-launcher-progress_completed] Update translations for tor-launcher-progress_completed

2018-01-19 Thread translation
commit 78189888fc21a351b1248277ad4c5f4cf978ebc9
Author: Translation commit bot 
Date:   Sat Jan 20 05:46:55 2018 +

Update translations for tor-launcher-progress_completed
---
 mk/progress.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk/progress.dtd b/mk/progress.dtd
index 28adfce6d..dfcda55e4 100644
--- a/mk/progress.dtd
+++ b/mk/progress.dtd
@@ -1,4 +1,4 @@
 
 
-
+
 

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


[tor-commits] [translation/tor-launcher-properties_completed] Update translations for tor-launcher-properties_completed

2018-01-19 Thread translation
commit 47d9a50ab9c54ae2d010a8b82646288565fdb7e3
Author: Translation commit bot 
Date:   Sat Jan 20 05:46:44 2018 +

Update translations for tor-launcher-properties_completed
---
 mk/torlauncher.properties | 38 +++---
 1 file changed, 19 insertions(+), 19 deletions(-)

diff --git a/mk/torlauncher.properties b/mk/torlauncher.properties
index 14b030964..e38b57064 100644
--- a/mk/torlauncher.properties
+++ b/mk/torlauncher.properties
@@ -3,62 +3,62 @@
 
 torlauncher.error_title=Tor стартувач
 
-torlauncher.tor_exited_during_startup=Tor се исклучи за време 
на вклучувањето. Ова може да е поради 
грашка во вашата torrc датотека, грешка во Tor 
или друга програма во вашиот систем, или 
проблем со хардеверот. Додека не го 
поправите проблемот кој го предизвикува 
ова, и повторно не го вклучите Tor, Tor 
прелистувачот нема да се стартува.
-torlauncher.tor_exited=Tor неочекувано се исклучи. Ова 
може да е до грешка во самиот Tor, друга 
програма во системот, или проблем со х
арверот. Додека повторно го стартувате Tor, 
Tor прелистувачот нема да може да ја отвори 
било која веб страна. Ако проблемот остане, 
ве молиме испратете копија од вашиот Tor лог 
на тимот за поддршка.
+torlauncher.tor_exited_during_startup=Tor се исклучи за време 
на вклучувањето. Ова може да е поради 
грашка во вашата torrc датотека, грешка во Tor 
или друга програма во вашиот систем, или 
проблем со хардеверот. Додека не го 
поправите проблемот кој го предизвикува 
ова, и повторно не го вклучите Tor, Tor Browser 
нема да се стартува.
+torlauncher.tor_exited=Tor неочекувано се исклучи. Ова 
може да е до грешка во самиот Tor, друга 
програма во системот, или проблем со х
ардверот. Додека повторно го стартувате Tor, 
Tor Browser нема да може да ја отвори било која 
веб страна. Ако проблемот остане, ве молиме 
испратете копија од вашиот Tor лог на тимот 
за поддршка.
 torlauncher.tor_exited2=Повротното старување на Tor 
нема да ви ги затвори табовите во вашиот 
прелистувач.
-torlauncher.tor_controlconn_failed=Не може да се поврзе на 
Tor контролната порта.
+torlauncher.tor_controlconn_failed=Не може да се конектира 
на Tor контролната порта.
 torlauncher.tor_failed_to_start=Tor не успеа да се стартува.
 torlauncher.tor_control_failed=Не успеа да преземе 
контрола врз Tor.
-torlauncher.tor_bootstrap_failed=Tor не успеа да воспостави 
врска со Tor мрежата.
+torlauncher.tor_bootstrap_failed=Tor не успеа да воспостави 
конекција со Tor мрежата.
 torlauncher.tor_bootstrap_failed_details=%1$S не успеаа (%2$S).
 
-torlauncher.unable_to_start_tor=Невозможно да се 
стартува Tor.\n\n%S
+torlauncher.unable_to_start_tor=Не може да се стартува 
Tor.\n\n%S
 torlauncher.tor_missing=Извршната датотека на Tor 
недостасува.
 torlauncher.torrc_missing=torrc датотеката недостасува и 
не може да биде создадена.
 torlauncher.datadir_missing=Tor податочниот директориум 
не постои и не може да биде создаден.
-torlauncher.password_hash_missing=Не успеа да добие х
аш-лозинка.
+torlauncher.password_hash_missing=Неуспешно добивање на х
аш-лозинка.
 
 torlauncher.failed_to_get_settings=Невозможно е да се 
добијат Tor поставки.\n\n%S
 torlauncher.failed_to_save_settings=Невозможно е да се 
зачуваат Tor поставките.\n\n%S
-torlauncher.ensure_tor_is_running=Проверете дека Tor не е 
вклучен.
+torlauncher.ensure_tor_is_running=Проверете дали Tor е 
вклучен.
 
 torlauncher.error_proxy_addr_missing=Мора да ги посочите и IP 

[tor-commits] [translation/tor-launcher-properties] Update translations for tor-launcher-properties

2018-01-19 Thread translation
commit 24227bfb7018643086c979d644b9028906617d48
Author: Translation commit bot 
Date:   Sat Jan 20 05:46:39 2018 +

Update translations for tor-launcher-properties
---
 mk/torlauncher.properties | 38 +++---
 1 file changed, 19 insertions(+), 19 deletions(-)

diff --git a/mk/torlauncher.properties b/mk/torlauncher.properties
index 14b030964..e38b57064 100644
--- a/mk/torlauncher.properties
+++ b/mk/torlauncher.properties
@@ -3,62 +3,62 @@
 
 torlauncher.error_title=Tor стартувач
 
-torlauncher.tor_exited_during_startup=Tor се исклучи за време 
на вклучувањето. Ова може да е поради 
грашка во вашата torrc датотека, грешка во Tor 
или друга програма во вашиот систем, или 
проблем со хардеверот. Додека не го 
поправите проблемот кој го предизвикува 
ова, и повторно не го вклучите Tor, Tor 
прелистувачот нема да се стартува.
-torlauncher.tor_exited=Tor неочекувано се исклучи. Ова 
може да е до грешка во самиот Tor, друга 
програма во системот, или проблем со х
арверот. Додека повторно го стартувате Tor, 
Tor прелистувачот нема да може да ја отвори 
било која веб страна. Ако проблемот остане, 
ве молиме испратете копија од вашиот Tor лог 
на тимот за поддршка.
+torlauncher.tor_exited_during_startup=Tor се исклучи за време 
на вклучувањето. Ова може да е поради 
грашка во вашата torrc датотека, грешка во Tor 
или друга програма во вашиот систем, или 
проблем со хардеверот. Додека не го 
поправите проблемот кој го предизвикува 
ова, и повторно не го вклучите Tor, Tor Browser 
нема да се стартува.
+torlauncher.tor_exited=Tor неочекувано се исклучи. Ова 
може да е до грешка во самиот Tor, друга 
програма во системот, или проблем со х
ардверот. Додека повторно го стартувате Tor, 
Tor Browser нема да може да ја отвори било која 
веб страна. Ако проблемот остане, ве молиме 
испратете копија од вашиот Tor лог на тимот 
за поддршка.
 torlauncher.tor_exited2=Повротното старување на Tor 
нема да ви ги затвори табовите во вашиот 
прелистувач.
-torlauncher.tor_controlconn_failed=Не може да се поврзе на 
Tor контролната порта.
+torlauncher.tor_controlconn_failed=Не може да се конектира 
на Tor контролната порта.
 torlauncher.tor_failed_to_start=Tor не успеа да се стартува.
 torlauncher.tor_control_failed=Не успеа да преземе 
контрола врз Tor.
-torlauncher.tor_bootstrap_failed=Tor не успеа да воспостави 
врска со Tor мрежата.
+torlauncher.tor_bootstrap_failed=Tor не успеа да воспостави 
конекција со Tor мрежата.
 torlauncher.tor_bootstrap_failed_details=%1$S не успеаа (%2$S).
 
-torlauncher.unable_to_start_tor=Невозможно да се 
стартува Tor.\n\n%S
+torlauncher.unable_to_start_tor=Не може да се стартува 
Tor.\n\n%S
 torlauncher.tor_missing=Извршната датотека на Tor 
недостасува.
 torlauncher.torrc_missing=torrc датотеката недостасува и 
не може да биде создадена.
 torlauncher.datadir_missing=Tor податочниот директориум 
не постои и не може да биде создаден.
-torlauncher.password_hash_missing=Не успеа да добие х
аш-лозинка.
+torlauncher.password_hash_missing=Неуспешно добивање на х
аш-лозинка.
 
 torlauncher.failed_to_get_settings=Невозможно е да се 
добијат Tor поставки.\n\n%S
 torlauncher.failed_to_save_settings=Невозможно е да се 
зачуваат Tor поставките.\n\n%S
-torlauncher.ensure_tor_is_running=Проверете дека Tor не е 
вклучен.
+torlauncher.ensure_tor_is_running=Проверете дали Tor е 
вклучен.
 
 torlauncher.error_proxy_addr_missing=Мора да ги посочите и IP 
адресите или 

[tor-commits] [translation/tor-launcher-progress] Update translations for tor-launcher-progress

2018-01-19 Thread translation
commit f2dfd8d63bdfd2c47b1de20e66778ad39e3976cc
Author: Translation commit bot 
Date:   Sat Jan 20 05:46:50 2018 +

Update translations for tor-launcher-progress
---
 mk/progress.dtd | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mk/progress.dtd b/mk/progress.dtd
index 6bb12f2ba..dfcda55e4 100644
--- a/mk/progress.dtd
+++ b/mk/progress.dtd
@@ -1,4 +1,4 @@
-
+
 
-
+
 

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


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

2018-01-19 Thread translation
commit b6ca3378d11c87492bd2e86b6bf513945032faf1
Author: Translation commit bot 
Date:   Sat Jan 20 05:45:27 2018 +

Update translations for whisperback
---
 mk/mk.po | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mk/mk.po b/mk/mk.po
index ebf8110c1..d791b97c5 100644
--- a/mk/mk.po
+++ b/mk/mk.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2017-03-20 12:09+\n"
-"PO-Revision-Date: 2017-09-19 17:08+\n"
+"PO-Revision-Date: 2018-01-20 05:41+\n"
 "Last-Translator: carolyn \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -138,7 +138,7 @@ msgstr ""
 
 #: ../whisperBack/gui.py:389
 msgid "translator-credits"
-msgstr ""
+msgstr "Преведувачи:"
 
 #: ../whisperBack/gui.py:417
 msgid "This doesn't seem to be a valid URL or OpenPGP key."

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


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

2018-01-19 Thread translation
commit 0d852b8b388e932c6697772c88789c8a991425f9
Author: Translation commit bot 
Date:   Sat Jan 20 05:20:23 2018 +

Update translations for exoneratorproperties
---
 mk/exonerator.properties | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk/exonerator.properties b/mk/exonerator.properties
index 5d9a5c53b..add42afa9 100644
--- a/mk/exonerator.properties
+++ b/mk/exonerator.properties
@@ -50,5 +50,5 @@ footer.abouttor.body.link3=contact The Tor Project, Inc.
 footer.aboutexonerator.heading=About ExoneraTor
 footer.aboutexonerator.body=The ExoneraTor service maintains a database of IP 
addresses that have been part of the Tor network. It answers the question 
whether there was a Tor relay running on a given IP address on a given 
date. ExoneraTor may store more than one IP address per relay if relays 
use a different IP address for exiting to the Internet than for registering in 
the Tor network, and it stores whether a relay permitted transit of Tor traffic 
to the open Internet at that time.
 footer.language.name=English
-footer.language.text=This page is also available in the following languages:
+footer.language.text=Оваа страница е исто така 
достапна на следните јазици:
 

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


[tor-commits] [translation/tor-launcher-network-settings_completed] Update translations for tor-launcher-network-settings_completed

2018-01-19 Thread translation
commit a39358d79ade030e884157984adee3f83da9
Author: Translation commit bot 
Date:   Sat Jan 20 05:17:00 2018 +

Update translations for tor-launcher-network-settings_completed
---
 mk/network-settings.dtd | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/mk/network-settings.dtd b/mk/network-settings.dtd
index 469c62aa6..be1db8cf9 100644
--- a/mk/network-settings.dtd
+++ b/mk/network-settings.dtd
@@ -1,18 +1,18 @@
 
 
 
-
+
 
 
-
+
 
 
 
 
-
+
 
 
-
+
 
 
 
@@ -21,7 +21,7 @@
 
 
 
-
+
 
 
 
@@ -36,22 +36,22 @@
 
 
 
-
+
 
 
 
-
+
 
 
 
 
-
+
 
 
-
+
 
 
-
+
 
 
 

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


[tor-commits] [translation/tor-launcher-progress_completed] Update translations for tor-launcher-progress_completed

2018-01-19 Thread translation
commit b94145ef34c19e5ece1abfe34f85fe3107bc4dc2
Author: Translation commit bot 
Date:   Sat Jan 20 05:16:48 2018 +

Update translations for tor-launcher-progress_completed
---
 mk/progress.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk/progress.dtd b/mk/progress.dtd
index 6bb12f2ba..28adfce6d 100644
--- a/mk/progress.dtd
+++ b/mk/progress.dtd
@@ -1,4 +1,4 @@
-
+
 
 
 

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


[tor-commits] [translation/tor-launcher-network-settings] Update translations for tor-launcher-network-settings

2018-01-19 Thread translation
commit 5f5bf784da04713a0d144f936be7c86b0ff74512
Author: Translation commit bot 
Date:   Sat Jan 20 05:16:54 2018 +

Update translations for tor-launcher-network-settings
---
 mk/network-settings.dtd | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/mk/network-settings.dtd b/mk/network-settings.dtd
index 469c62aa6..be1db8cf9 100644
--- a/mk/network-settings.dtd
+++ b/mk/network-settings.dtd
@@ -1,18 +1,18 @@
 
 
 
-
+
 
 
-
+
 
 
 
 
-
+
 
 
-
+
 
 
 
@@ -21,7 +21,7 @@
 
 
 
-
+
 
 
 
@@ -36,22 +36,22 @@
 
 
 
-
+
 
 
 
-
+
 
 
 
 
-
+
 
 
-
+
 
 
-
+
 
 
 

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


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

2018-01-19 Thread translation
commit d0c9e82f277f29aef5c2a62fd951061485ab9b2c
Author: Translation commit bot 
Date:   Sat Jan 20 05:15:15 2018 +

Update translations for torcheck
---
 mk/torcheck.po | 36 ++--
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/mk/torcheck.po b/mk/torcheck.po
index a1b8669bf..ceae0f8fc 100644
--- a/mk/torcheck.po
+++ b/mk/torcheck.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "POT-Creation-Date: 2012-02-16 20:28+PDT\n"
-"PO-Revision-Date: 2018-01-20 04:44+\n"
+"PO-Revision-Date: 2018-01-20 05:01+\n"
 "Last-Translator: Zarko Gjurov \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -27,10 +27,10 @@ msgid ""
 "Please refer to the https://www.torproject.org/\;>Tor website "
 "for further information about using Tor safely.  You are now free to browse "
 "the Internet anonymously."
-msgstr "Посетете го https://www.torproject.org/\;>мрежното месот на Tor 
за повеќе информации за негова безбедна 
употреба. Сега слободно можете да 
прелистувате на Интернет анонимно."
+msgstr "Посетете го https://www.torproject.org/\;>мрежното месо на Tor 
за повеќе информации за негова безбедна 
употреба. Сега слободно можете да 
прелистувате на Интернет анонимно."
 
 msgid "There is a security update available for Tor Browser."
-msgstr "Достапна е надоградба за Tor 
прелистувачот."
+msgstr "Достапна е нова верзија за Tor Browser."
 
 msgid ""
 "https://www.torproject.org/download/download-easy.html\;>Click "
@@ -45,59 +45,59 @@ msgid ""
 "href=\"https://www.torproject.org/\;>Tor website and specifically the instructions for "
 "configuring your Tor client."
-msgstr "Ако се обидувате да го употребите Tor 
клиентот, Ве молиме посетете ја  https://www.torproject.org/\;>веб-локацијата на Tor 
а особено https://www.torproject.org/docs/faq#DoesntWork\;>упатствата 
за конфигурација на Вашиот Tor клиент."
+msgstr "Ако се обидувате да го употребите Tor 
клиентот, Ве молиме посетете ја https://www.torproject.org/\;> веб-локацијата на Tor 
а особено https://www.torproject.org/docs/faq#DoesntWork\;>упатствата 
за конфигурација на Вашиот Tor клиент."
 
 msgid "Sorry, your query failed or an unexpected response was received."
-msgstr "Жал ни е, но или Вашето барање не успеа 
или примивме неочекуван одговор."
+msgstr "Жал ни е, но или вашето барање не успеа 
или примивме неочекуван одговор."
 
 msgid ""
 "A temporary service outage prevents us from determining if your source IP "
 "address is a https://www.torproject.org/\;>Tor node."
-msgstr "Поради привремена недостапност на 
услугата не сме во модност да одредиме дали 
Вашата IP адреса е https://www.torproject.org/\;>Tor 
јазол."
+msgstr "Поради привремена недостапност на 
услугата не сме во можност да одредиме дали 
Вашата IP адреса е https://www.torproject.org/\;>Tor 
јазол."
 
 msgid "Your IP address appears to be: "
-msgstr "Вашата IP-адреса е: "
+msgstr "Вашата IP адреса е: "
 
 msgid "Are you using Tor?"
-msgstr "Дали употребувате Tor?"
+msgstr "Дали користите Tor?"
 
 msgid "This page is also available in the following languages:"
-msgstr "Оваа страница е достапна на следните 
јазици:"
+msgstr "Оваа страница е исто така достапна на 
следните јазици:"
 
 msgid "For more information about this exit relay, see:"
-msgstr "За повеќе информации врзани со овој 
излезен релеј, видете:"
+msgstr "За повеќе информации во врска со овој 
излезен јазол, видете:"
 
 msgid ""
 "The Tor Project is a US 501(c)(3) non-profit dedicated to the research, "
 "development, and education of online anonymity and privacy."
-msgstr "Проектот Tor  претставува непрофитен 
зафат од со назнака US 501(c)(3) и е посветен на 
истражувањето, 

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

2018-01-19 Thread translation
commit 1c46daa662e7892bf878217c0a64b909764fedd6
Author: Translation commit bot 
Date:   Sat Jan 20 05:15:21 2018 +

Update translations for torcheck_completed
---
 mk/torcheck.po | 34 +-
 1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/mk/torcheck.po b/mk/torcheck.po
index e22dc3357..ceae0f8fc 100644
--- a/mk/torcheck.po
+++ b/mk/torcheck.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "POT-Creation-Date: 2012-02-16 20:28+PDT\n"
-"PO-Revision-Date: 2018-01-20 04:45+\n"
+"PO-Revision-Date: 2018-01-20 05:01+\n"
 "Last-Translator: Zarko Gjurov \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -30,7 +30,7 @@ msgid ""
 msgstr "Посетете го https://www.torproject.org/\;>мрежното месо на Tor 
за повеќе информации за негова безбедна 
употреба. Сега слободно можете да 
прелистувате на Интернет анонимно."
 
 msgid "There is a security update available for Tor Browser."
-msgstr "Достапна е надоградба за Tor 
прелистувачот."
+msgstr "Достапна е нова верзија за Tor Browser."
 
 msgid ""
 "https://www.torproject.org/download/download-easy.html\;>Click "
@@ -45,59 +45,59 @@ msgid ""
 "href=\"https://www.torproject.org/\;>Tor website and specifically the instructions for "
 "configuring your Tor client."
-msgstr "Ако се обидувате да го употребите Tor 
клиентот, Ве молиме посетете ја  https://www.torproject.org/\;>веб-локацијата на Tor 
а особено https://www.torproject.org/docs/faq#DoesntWork\;>упатствата 
за конфигурација на Вашиот Tor клиент."
+msgstr "Ако се обидувате да го употребите Tor 
клиентот, Ве молиме посетете ја https://www.torproject.org/\;> веб-локацијата на Tor 
а особено https://www.torproject.org/docs/faq#DoesntWork\;>упатствата 
за конфигурација на Вашиот Tor клиент."
 
 msgid "Sorry, your query failed or an unexpected response was received."
-msgstr "Жал ни е, но или Вашето барање не успеа 
или примивме неочекуван одговор."
+msgstr "Жал ни е, но или вашето барање не успеа 
или примивме неочекуван одговор."
 
 msgid ""
 "A temporary service outage prevents us from determining if your source IP "
 "address is a https://www.torproject.org/\;>Tor node."
-msgstr "Поради привремена недостапност на 
услугата не сме во модност да одредиме дали 
Вашата IP адреса е https://www.torproject.org/\;>Tor 
јазол."
+msgstr "Поради привремена недостапност на 
услугата не сме во можност да одредиме дали 
Вашата IP адреса е https://www.torproject.org/\;>Tor 
јазол."
 
 msgid "Your IP address appears to be: "
-msgstr "Вашата IP-адреса е: "
+msgstr "Вашата IP адреса е: "
 
 msgid "Are you using Tor?"
-msgstr "Дали употребувате Tor?"
+msgstr "Дали користите Tor?"
 
 msgid "This page is also available in the following languages:"
-msgstr "Оваа страница е достапна на следните 
јазици:"
+msgstr "Оваа страница е исто така достапна на 
следните јазици:"
 
 msgid "For more information about this exit relay, see:"
-msgstr "За повеќе информации врзани со овој 
излезен релеј, видете:"
+msgstr "За повеќе информации во врска со овој 
излезен јазол, видете:"
 
 msgid ""
 "The Tor Project is a US 501(c)(3) non-profit dedicated to the research, "
 "development, and education of online anonymity and privacy."
-msgstr "Проектот Tor  претставува непрофитен 
зафат од со назнака US 501(c)(3) и е посветен на 
истражувањето, развојот и едукацијата во 
врска со онлајн анонимноста и приватноста 
на податоците."
+msgstr "Проектот Tor претставува е непрофитен 
регистриран под назнака US 501(c)(3) и е 
посветен на истражувањето, развојот и 
едукацијата поврзани со онлајн 
анонимноста и приватноста на 

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

2018-01-19 Thread translation
commit b3688bf23d29e0cc9ddfef0ed13c8851cc23f10b
Author: Translation commit bot 
Date:   Sat Jan 20 04:47:39 2018 +

Update translations for torbutton-torbuttonproperties
---
 mk/torbutton.properties | 32 
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/mk/torbutton.properties b/mk/torbutton.properties
index e572bf31a..594a8315e 100644
--- a/mk/torbutton.properties
+++ b/mk/torbutton.properties
@@ -3,38 +3,38 @@ torbutton.circuit_display.ip_unknown = IP непозната
 torbutton.circuit_display.onion_site = Онион / Кромид страна
 torbutton.circuit_display.this_browser = Овој прелистувач
 torbutton.circuit_display.relay = јазол
-torbutton.circuit_display.tor_bridge = Мост / Јазол
+torbutton.circuit_display.tor_bridge = Мост
 torbutton.circuit_display.unknown_country = Непозната држава
-torbutton.content_sizer.margin_tooltip = Тор прелистувачот 
ја додава ова маргина за ширината и 
висината на вашиот прозорец да биде 
постандарден, со што се намалува можноста 
луѓето да ве следат онлајн.
-torbutton.panel.tooltip.disabled = Кликнете за да го 
овозможите Тор
-torbutton.panel.tooltip.enabled = Кликнете за да го 
оневозможите Тор
-torbutton.panel.label.disabled = Тор е оневозможен
-torbutton.panel.label.enabled = Тор е овозможен
-extensions.torbut...@torproject.org.description = Torbutton пружа 
копче за конфигурирање на Тор поставките и 
брзо и олеснето чисто приватно 
прелистување на податоци.
+torbutton.content_sizer.margin_tooltip = Tor Browser ја додава ова 
маргина за ширината и висината на вашиот 
прозорец да биде постандарден, со што се 
намалува можноста луѓето да ве следат 
онлајн.
+torbutton.panel.tooltip.disabled = Кликнете за да го 
овозможите Tor
+torbutton.panel.tooltip.enabled = Кликнете за да го 
оневозможите Tor
+torbutton.panel.label.disabled = Tor е оневозможен
+torbutton.panel.label.enabled = Tor е овозможен
+extensions.torbut...@torproject.org.description = Torbutton пружа 
копче за конфигурирање на Tor поставките и 
брзо и олеснето чисто приватно 
прелистување на податоци.
 torbutton.popup.external.title = Преземање на надворешна 
датотека?
-torbutton.popup.external.app = Тор прелистувачот не може 
да ја прикаже оваа датотека. Треба да ја 
отворите со друга апликација.\n\n
+torbutton.popup.external.app = Tor прелистувачот не може 
да ја прикаже оваа датотека. Треба да ја 
отворите со друга апликација.\n\n
 torbutton.popup.external.note = Некои типови на датотеки 
можат да направат апликациите / програмите 
да се приклучат на Интернет без да користат 
Тор.\n\n
-torbutton.popup.external.suggest = Да би биле безбедни, 
единствено треба преземените датотеки да 
ги отворате додека сте исклучени од 
Интернет, или користејќи Тор бутирачкото 
ЦД како Tails.\n
+torbutton.popup.external.suggest = Да би биле безбедни, 
единствено треба преземените датотеки да 
ги отворате додека сте исклучени од 
Интернет, или користејќи Tor бутирачкото ЦД 
како Tails.\n
 torbutton.popup.launch = Преземи датотека
 torbutton.popup.cancel = Откажи
 torbutton.popup.dontask = Автоматски преземај 
датотеки од сега па натаму
 torbutton.popup.prompted_language = За да ви даде повеќе 
приватност, Torbutton може да бара англсика 
верзија на веб страниците. Ова може да 
предизвика веб страните кои преферираат да 
ви бидат достапни на вашиот мајчин јазик, 
наместо тоа да бидат прикажани на 
англиски.\n\nДали сакате да побарате 
англиска верзија на веб страните за 
подобра приватност?

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

2018-01-19 Thread translation
commit 55f211ad67056c88e35f2b2723c19920ba33b6d9
Author: Translation commit bot 
Date:   Sat Jan 20 04:45:22 2018 +

Update translations for torcheck_completed
---
 mk/torcheck.po | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mk/torcheck.po b/mk/torcheck.po
index 7ee6fb59d..e22dc3357 100644
--- a/mk/torcheck.po
+++ b/mk/torcheck.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "POT-Creation-Date: 2012-02-16 20:28+PDT\n"
-"PO-Revision-Date: 2018-01-19 23:21+\n"
+"PO-Revision-Date: 2018-01-20 04:45+\n"
 "Last-Translator: Zarko Gjurov \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -27,7 +27,7 @@ msgid ""
 "Please refer to the https://www.torproject.org/\;>Tor website "
 "for further information about using Tor safely.  You are now free to browse "
 "the Internet anonymously."
-msgstr "Посетете го https://www.torproject.org/\;>мрежното месот на Tor 
за повеќе информации за негова безбедна 
употреба. Сега слободно можете да 
прелистувате на Интернет анонимно."
+msgstr "Посетете го https://www.torproject.org/\;>мрежното месо на Tor 
за повеќе информации за негова безбедна 
употреба. Сега слободно можете да 
прелистувате на Интернет анонимно."
 
 msgid "There is a security update available for Tor Browser."
 msgstr "Достапна е надоградба за Tor 
прелистувачот."

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


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

2018-01-19 Thread translation
commit 095ff23a01f9f53847b37ed1c3fdd2766b89825e
Author: Translation commit bot 
Date:   Sat Jan 20 04:45:14 2018 +

Update translations for torcheck
---
 mk/torcheck.po | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk/torcheck.po b/mk/torcheck.po
index 7ee6fb59d..a1b8669bf 100644
--- a/mk/torcheck.po
+++ b/mk/torcheck.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "POT-Creation-Date: 2012-02-16 20:28+PDT\n"
-"PO-Revision-Date: 2018-01-19 23:21+\n"
+"PO-Revision-Date: 2018-01-20 04:44+\n"
 "Last-Translator: Zarko Gjurov \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"

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


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

2018-01-19 Thread translation
commit 303ceaa369d2a9f0ca92caa4837255e46839737b
Author: Translation commit bot 
Date:   Sat Jan 20 01:48:55 2018 +

Update translations for torbutton-abouttorproperties
---
 ar/abouttor.properties | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/ar/abouttor.properties b/ar/abouttor.properties
index 8b3d02eea..369c25708 100644
--- a/ar/abouttor.properties
+++ b/ar/abouttor.properties
@@ -11,10 +11,10 @@ aboutTor.searchDDG.search.link=https://duckduckgo.com/
 aboutTor.donationBanner.donate=تبرع الآن !
 
 aboutTor.donationBanner.slogan=تور : دعم الصمود الرقمي
-aboutTor.donationBanner.mozilla=Give today and Mozilla will match your gift!
+aboutTor.donationBanner.mozilla=اعطِ اليوم ومودزيلا 
سترُد لك الهدية
 
-aboutTor.donationBanner.tagline1=Protecting Journalists, Whistleblowers, & 
Activists Since 2006
-aboutTor.donationBanner.tagline2=Networking Freedom Worldwide
+aboutTor.donationBanner.tagline1=حماية الصحافيين ، الم
ُخبرين والنُشطاء منذ عام 2006
+aboutTor.donationBanner.tagline2=حرية التواصل الشبكي 
العالمية
 aboutTor.donationBanner.tagline3=Freedom Online
-aboutTor.donationBanner.tagline4=Fostering Free Expression Worldwide
+aboutTor.donationBanner.tagline4=تعزيز حرية التعبير عالم
ياً
 aboutTor.donationBanner.tagline5=تحمي خصوصية الملايين من 
الأشخاص كل يوم

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


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

2018-01-19 Thread translation
commit 58d54306a5efba40271b6f9b972ef5e26ba55692
Author: Translation commit bot 
Date:   Sat Jan 20 01:49:03 2018 +

Update translations for torbutton-abouttorproperties_completed
---
 ar/abouttor.properties | 11 +++
 1 file changed, 11 insertions(+)

diff --git a/ar/abouttor.properties b/ar/abouttor.properties
index a93fa4425..369c25708 100644
--- a/ar/abouttor.properties
+++ b/ar/abouttor.properties
@@ -7,3 +7,14 @@ aboutTor.searchDDG.privacy=ابحث آم
نا مع https://duckduckgo.com/privacy.html
 # The following string is a link which replaces %2$S above.
 aboutTor.searchDDG.search.link=https://duckduckgo.com/
+
+aboutTor.donationBanner.donate=تبرع الآن !
+
+aboutTor.donationBanner.slogan=تور : دعم الصمود الرقمي
+aboutTor.donationBanner.mozilla=اعطِ اليوم ومودزيلا 
سترُد لك الهدية
+
+aboutTor.donationBanner.tagline1=حماية الصحافيين ، الم
ُخبرين والنُشطاء منذ عام 2006
+aboutTor.donationBanner.tagline2=حرية التواصل الشبكي 
العالمية
+aboutTor.donationBanner.tagline3=Freedom Online
+aboutTor.donationBanner.tagline4=تعزيز حرية التعبير عالم
ياً
+aboutTor.donationBanner.tagline5=تحمي خصوصية الملايين من 
الأشخاص كل يوم

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


[tor-commits] [translation/tails-greeter-2] Update translations for tails-greeter-2

2018-01-19 Thread translation
commit dabb31d414cdab9e9b747329fc53b32456321e87
Author: Translation commit bot 
Date:   Sat Jan 20 01:20:44 2018 +

Update translations for tails-greeter-2
---
 ar/ar.po | 33 +++--
 1 file changed, 19 insertions(+), 14 deletions(-)

diff --git a/ar/ar.po b/ar/ar.po
index a5e48efb7..43d9e6a81 100644
--- a/ar/ar.po
+++ b/ar/ar.po
@@ -10,7 +10,7 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2017-09-15 21:21+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: ButterflyOfFire , 2017\n"
+"Last-Translator: Ibrahim ElNajar , 2018\n"
 "Language-Team: Arabic (https://www.transifex.com/otf/teams/1519/ar/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -77,10 +77,13 @@ msgid ""
 " as it helps you hide your geographical location. But it might also create "
 "connectivity problems or look suspicious."
 msgstr ""
+"تُخفي خاصية تغيير العنوان MAC الرقم 
التسلسلي لواجهة شبكتك ( لاسلكية أو سلكية"
+" ) عن الشبكة المحلية . تغيير عناوين MAC خاصية 
آمنة عموماً حيث أنها تساعدك "
+"بإخفاء موقعك الجغرافي ، ولكنها قد تخلق م
شاكل بالاتصال أو تثير الشكوك ."
 
 #: ../data/greeter.ui.h:15
 msgid "Spoof all MAC addresses (default)"
-msgstr ""
+msgstr "تمويه كل عناوين MAC ( الافتراضي )"
 
 #: ../data/greeter.ui.h:16
 msgid "Don't spoof MAC addresses"
@@ -94,7 +97,7 @@ msgstr "تعذر فك قفل مساحة التخزين الم
عماة بواسط
 msgid ""
 "You will configure the Tor bridge and local proxy later on after connecting "
 "to a network."
-msgstr ""
+msgstr "ستقوم بتعيين جسور Tor والوكيل المحلي 
لاحقاً بعد الاتصال بالشبكة ."
 
 #: ../data/greeter.ui.h:19
 msgid "Welcome to Tails!"
@@ -121,23 +124,23 @@ msgstr "حفظ إعدادات اللغة و الم
نطقة"
 
 #: ../data/greeter.ui.h:25
 msgid "_Language"
-msgstr ""
+msgstr "_اللغة"
 
 #: ../data/greeter.ui.h:26
 msgid "_Keyboard Layout"
-msgstr ""
+msgstr "_نسق لوحة المفاتيح"
 
 #: ../data/greeter.ui.h:27
 msgid "_Formats"
-msgstr ""
+msgstr "_الصيغ"
 
 #: ../data/greeter.ui.h:28
 msgid "_Time Zone"
-msgstr ""
+msgstr "_النطاق الزمني"
 
 #: ../data/greeter.ui.h:29
 msgid "Encrypted _Persistent Storage"
-msgstr ""
+msgstr "الذاكرة المستديمة مشفرة"
 
 #: ../data/greeter.ui.h:30
 msgid "Show Passphrase"
@@ -166,7 +169,7 @@ msgstr ""
 
 #: ../data/greeter.ui.h:36
 msgid "_Additional Settings"
-msgstr ""
+msgstr "إعدادات إضافية"
 
 #: ../data/greeter.ui.h:37
 msgid "Save Additional Settings"
@@ -174,7 +177,7 @@ msgstr "حفظ الإعدادات الإضافية"
 
 #: ../data/greeter.ui.h:38
 msgid "Add an additional setting"
-msgstr ""
+msgstr "إضافة إعداد إضافي"
 
 #: ../data/greeter.ui.h:39
 msgid "Network Configuration"
@@ -186,6 +189,8 @@ msgid ""
 "configure a Tor bridge or a local proxy. To work completely offline, you can"
 " disable all networking."
 msgstr ""
+"إذا كان الاتصال بالشبكة مراقب ، مصفي ، أو 
تحت البروكسي اضبط جسر Tor أو وكيل "
+"محلي . يمكنك تعطيل جميع الاتصالات للشبكة 
للعمل بخفاء ."
 
 #: ../data/greeter.ui.h:41
 msgid "Connect directly to the Tor network (default)"
@@ -209,7 +214,7 @@ msgstr ""
 
 #: ../data/greeter.ui.h:45
 msgid "_Administration Password"
-msgstr ""
+msgstr "كلمة السر للأدمن"
 
 #: ../data/greeter.ui.h:46
 msgid "Off (default)"
@@ -217,7 +222,7 @@ msgstr "معطل (إفتراضي)"
 
 #: ../data/greeter.ui.h:47
 msgid "_MAC Address Spoofing"
-msgstr ""
+msgstr "خدعة عنوان MAC"
 
 #: ../data/greeter.ui.h:48
 msgid "On (default)"
@@ -225,7 +230,7 @@ msgstr "مشغل (إفتراضي)"
 
 #: ../data/greeter.ui.h:49
 msgid "_Network Connection"
-msgstr ""
+msgstr "الاتصال بالشبكة"
 
 #: ../data/greeter.ui.h:50 ../tailsgreeter/gui.py:385
 msgid "Direct (default)"
@@ -273,7 +278,7 @@ msgstr "أغلق المتصفح"
 
 #: ../tailsgreeter/gui.py:735
 msgid "_Start Tails"
-msgstr ""
+msgstr "ابدأ تيلز"
 
 #. Translators: please do not translate this string (it is read from
 #. Gtk translation)

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


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

2018-01-19 Thread translation
commit 4f546b4b517548a3ffd19d930ba11187c36c68f5
Author: Translation commit bot 
Date:   Sat Jan 20 00:46:03 2018 +

Update translations for liveusb-creator
---
 ar/ar.po | 15 ---
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/ar/ar.po b/ar/ar.po
index c3a9238d2..ed6e8858c 100644
--- a/ar/ar.po
+++ b/ar/ar.po
@@ -11,6 +11,7 @@
 # Fadi Mansour , 2012
 # 0xidz , 2014
 # alshara3 , 2013
+# Ibrahim ElNajar, 2018
 # stayanonymous, 2015
 # Mohammed ALDOUB , 2013-2014
 # Sherief Alaa , 2013
@@ -23,8 +24,8 @@ msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2017-11-10 15:57+0100\n"
-"PO-Revision-Date: 2018-01-12 10:31+\n"
-"Last-Translator: ButterflyOfFire\n"
+"PO-Revision-Date: 2018-01-20 00:32+\n"
+"Last-Translator: Ibrahim ElNajar\n"
 "Language-Team: Arabic 
(http://www.transifex.com/otf/torproject/language/ar/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -415,7 +416,7 @@ msgid ""
 "\n"
 "\n"
 "The persistent storage on this USB stick will be preserved."
-msgstr ""
+msgstr "\n\nسيتم حفظ مساحة التخزين الثابتة علي 
وحدة التخزين المحمولة"
 
 #: ../tails_installer/gui.py:731
 #, python-format
@@ -471,7 +472,7 @@ msgstr ""
 #: ../tails_installer/source.py:63
 #, python-format
 msgid "'%s' does not exist"
-msgstr ""
+msgstr "'%s' غير موجود"
 
 #: ../tails_installer/source.py:65
 #, python-format
@@ -500,11 +501,11 @@ msgstr "تعليمات التثبيت"
 
 #: ../data/tails-installer.ui.h:2
 msgid "Clone the current Tails"
-msgstr ""
+msgstr "النَسخ من تيلز الحالية"
 
 #: ../data/tails-installer.ui.h:3
 msgid "Use a downloaded Tails ISO image"
-msgstr ""
+msgstr "استخدم صورة ISO مُحملة مسبقاً ل تيلز"
 
 #: ../data/tails-installer.ui.h:4
 msgid "Select a distribution to download:"
@@ -512,7 +513,7 @@ msgstr "إختر التوزيعة التي تود 
تنزيلها :"
 
 #: ../data/tails-installer.ui.h:5
 msgid "Target USB stick:"
-msgstr ""
+msgstr "وحدة التخزين المحمولة"
 
 #: ../data/tails-installer.ui.h:6
 msgid "Reinstall (delete all data)"

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


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

2018-01-19 Thread translation
commit 81e5d6e5b9ae6cfd2441c748aa3924ed2afeb594
Author: Translation commit bot 
Date:   Fri Jan 19 23:48:40 2018 +

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

diff --git a/mk/abouttor.properties b/mk/abouttor.properties
index 0a08d3a8a..490521976 100644
--- a/mk/abouttor.properties
+++ b/mk/abouttor.properties
@@ -10,11 +10,11 @@ aboutTor.searchDDG.search.link=https://duckduckgo.com/
 
 aboutTor.donationBanner.donate=Донирај сега!
 
-aboutTor.donationBanner.slogan=Тор: Хранење на 
дигиталниот отпор
+aboutTor.donationBanner.slogan=Тор: Напојување на 
дигиталниот отпор
 aboutTor.donationBanner.mozilla=Донирај денес и Mozilla ќе го 
зголеми двојно твојот подарок!
 
-aboutTor.donationBanner.tagline1=Заштитување на 
новинарите, свиркачите, и активистите од 
2006-та година
+aboutTor.donationBanner.tagline1=Ги штити новинарите, 
свиркачите, и активистите од 2006-та година
 aboutTor.donationBanner.tagline2=Мрежна слобода низ 
целиот свет
 aboutTor.donationBanner.tagline3=Онлајн слобода
-aboutTor.donationBanner.tagline4=Поттикнување на 
слободно изразување во светот
+aboutTor.donationBanner.tagline4=Ја поттикнува слободата 
на изразување во светот
 aboutTor.donationBanner.tagline5=Ја штити приватноста на 
милиони секојдневно

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


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

2018-01-19 Thread translation
commit 8f1176a04f79808fdbbdcd5a77ec6d4e42fd5cfb
Author: Translation commit bot 
Date:   Fri Jan 19 23:48:45 2018 +

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

diff --git a/mk/abouttor.properties b/mk/abouttor.properties
index 0a08d3a8a..490521976 100644
--- a/mk/abouttor.properties
+++ b/mk/abouttor.properties
@@ -10,11 +10,11 @@ aboutTor.searchDDG.search.link=https://duckduckgo.com/
 
 aboutTor.donationBanner.donate=Донирај сега!
 
-aboutTor.donationBanner.slogan=Тор: Хранење на 
дигиталниот отпор
+aboutTor.donationBanner.slogan=Тор: Напојување на 
дигиталниот отпор
 aboutTor.donationBanner.mozilla=Донирај денес и Mozilla ќе го 
зголеми двојно твојот подарок!
 
-aboutTor.donationBanner.tagline1=Заштитување на 
новинарите, свиркачите, и активистите од 
2006-та година
+aboutTor.donationBanner.tagline1=Ги штити новинарите, 
свиркачите, и активистите од 2006-та година
 aboutTor.donationBanner.tagline2=Мрежна слобода низ 
целиот свет
 aboutTor.donationBanner.tagline3=Онлајн слобода
-aboutTor.donationBanner.tagline4=Поттикнување на 
слободно изразување во светот
+aboutTor.donationBanner.tagline4=Ја поттикнува слободата 
на изразување во светот
 aboutTor.donationBanner.tagline5=Ја штити приватноста на 
милиони секојдневно

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


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

2018-01-19 Thread translation
commit c3e1ec89906a1d193d933882ec4445e210acd1ac
Author: Translation commit bot 
Date:   Fri Jan 19 23:47:51 2018 +

Update translations for torbutton-torbuttondtd
---
 mk/torbutton.dtd | 24 
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/mk/torbutton.dtd b/mk/torbutton.dtd
index 5636ca738..845d1afd2 100644
--- a/mk/torbutton.dtd
+++ b/mk/torbutton.dtd
@@ -1,19 +1,19 @@
 
 
-
+
 
 
 
 
 
-
+
 
 
 
-
-
-
-
+
+
+
+
 
 
 
@@ -22,29 +22,29 @@
 
 
 
-
+
 
 
 
 
 
-
+
 
-
+
 
 
 
-
+
 
 
 
 
 
-
+
 
 
 
 
 
 
-
+

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


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

2018-01-19 Thread translation
commit 27deed2b0b2883925f6859bca9a8074443908c1f
Author: Translation commit bot 
Date:   Fri Jan 19 23:47:30 2018 +

Update translations for torbutton-brandproperties_completed
---
 mk/brand.properties | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/mk/brand.properties b/mk/brand.properties
index 163752f97..8ffcbdf0d 100644
--- a/mk/brand.properties
+++ b/mk/brand.properties
@@ -2,15 +2,15 @@
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
-brandShorterName=Тор прелистувач
-brandShortName=Тор прелистувач
-brandFullName=Тор прелистувач
-vendorShortName=Тор прелистувач
+brandShorterName=Tor Browser
+brandShortName=Tor Browser
+brandFullName=Tor Browser
+vendorShortName=Tor Browser
 
 homePageSingleStartMain=Firefox Старт, брза домашна 
страница со вграден пребарувач
 homePageImport=Внесете ваша домаша страница од %S
 
 homePageMigrationPageTitle=Избор на Домашна странција
-homePageMigrationDescription=Селектирајте домашна 
страница која сакате да ја користите:
+homePageMigrationDescription=Одберете домашна страница 
која сакате да ја користите:
 
 syncBrandShortName=Синхронизирај

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


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

2018-01-19 Thread translation
commit 0f2674f996b46593e2eec0aa44bacec6047445c7
Author: Translation commit bot 
Date:   Fri Jan 19 23:47:36 2018 +

Update translations for torbutton-branddtd
---
 mk/brand.dtd | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/mk/brand.dtd b/mk/brand.dtd
index 23923b628..e5e6dca56 100644
--- a/mk/brand.dtd
+++ b/mk/brand.dtd
@@ -2,14 +2,14 @@
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
 
-
-
-
-
+
+
+
+
 
 
 
-
-
-
-
+
+
+
+

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


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

2018-01-19 Thread translation
commit 8349bca7f5c167a16c548e54e12e09da97152fb3
Author: Translation commit bot 
Date:   Fri Jan 19 23:47:24 2018 +

Update translations for torbutton-brandproperties
---
 mk/brand.properties | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/mk/brand.properties b/mk/brand.properties
index 163752f97..8ffcbdf0d 100644
--- a/mk/brand.properties
+++ b/mk/brand.properties
@@ -2,15 +2,15 @@
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
-brandShorterName=Тор прелистувач
-brandShortName=Тор прелистувач
-brandFullName=Тор прелистувач
-vendorShortName=Тор прелистувач
+brandShorterName=Tor Browser
+brandShortName=Tor Browser
+brandFullName=Tor Browser
+vendorShortName=Tor Browser
 
 homePageSingleStartMain=Firefox Старт, брза домашна 
страница со вграден пребарувач
 homePageImport=Внесете ваша домаша страница од %S
 
 homePageMigrationPageTitle=Избор на Домашна странција
-homePageMigrationDescription=Селектирајте домашна 
страница која сакате да ја користите:
+homePageMigrationDescription=Одберете домашна страница 
која сакате да ја користите:
 
 syncBrandShortName=Синхронизирај

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


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

2018-01-19 Thread translation
commit 8cb0881ad003d0d88f2622f675c3d6b839934307
Author: Translation commit bot 
Date:   Fri Jan 19 23:47:41 2018 +

Update translations for torbutton-branddtd_completed
---
 mk/brand.dtd | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/mk/brand.dtd b/mk/brand.dtd
index 23923b628..e5e6dca56 100644
--- a/mk/brand.dtd
+++ b/mk/brand.dtd
@@ -2,14 +2,14 @@
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
 
-
-
-
-
+
+
+
+
 
 
 
-
-
-
-
+
+
+
+

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


[tor-commits] [translation/abouttor-homepage] Update translations for abouttor-homepage

2018-01-19 Thread translation
commit 90ee75fd02c9b373e2618c044828abcc3658f590
Author: Translation commit bot 
Date:   Fri Jan 19 23:47:14 2018 +

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

diff --git a/mk/aboutTor.dtd b/mk/aboutTor.dtd
index 5ac38ce47..b8145af95 100644
--- a/mk/aboutTor.dtd
+++ b/mk/aboutTor.dtd
@@ -13,26 +13,26 @@
 
 
 
-
+
 
 
-
+
 
 
 https://duckduckgo.com;>
 
 
-
+
 
 
 
-
+
 
 https://www.torproject.org/download/download.html.en#warning;>
 
-
+
 
-
+
 
 https://www.torproject.org/docs/tor-doc-relay.html.en;>
 
@@ -40,6 +40,6 @@
 
 https://www.torproject.org/donate/donate.html.en;>
 
-
-
+
+
 https://www.torproject.org/about/overview.html.en;>

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


[tor-commits] [translation/abouttor-homepage_completed] Update translations for abouttor-homepage_completed

2018-01-19 Thread translation
commit d439618ec9d9e98fdda2e034660b04a606fe6686
Author: Translation commit bot 
Date:   Fri Jan 19 23:47:19 2018 +

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

diff --git a/mk/aboutTor.dtd b/mk/aboutTor.dtd
index 5ac38ce47..b8145af95 100644
--- a/mk/aboutTor.dtd
+++ b/mk/aboutTor.dtd
@@ -13,26 +13,26 @@
 
 
 
-
+
 
 
-
+
 
 
 https://duckduckgo.com;>
 
 
-
+
 
 
 
-
+
 
 https://www.torproject.org/download/download.html.en#warning;>
 
-
+
 
-
+
 
 https://www.torproject.org/docs/tor-doc-relay.html.en;>
 
@@ -40,6 +40,6 @@
 
 https://www.torproject.org/donate/donate.html.en;>
 
-
-
+
+
 https://www.torproject.org/about/overview.html.en;>

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


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

2018-01-19 Thread translation
commit 0c001533f5b0986c79ff327cbd3ab979992f0ebd
Author: Translation commit bot 
Date:   Fri Jan 19 23:47:03 2018 +

Update translations for tails-misc
---
 mk.po | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk.po b/mk.po
index 00cd2077e..7e04fca48 100644
--- a/mk.po
+++ b/mk.po
@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2017-09-13 20:10+0200\n"
-"PO-Revision-Date: 2017-12-20 21:27+\n"
+"PO-Revision-Date: 2018-01-19 23:34+\n"
 "Last-Translator: carolyn \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"

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


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

2018-01-19 Thread translation
commit 46594eb89127d552fa47112109db151e1f6383a5
Author: Translation commit bot 
Date:   Fri Jan 19 23:45:15 2018 +

Update translations for torcheck
---
 mk/torcheck.po | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk/torcheck.po b/mk/torcheck.po
index 909d8e7bf..7ee6fb59d 100644
--- a/mk/torcheck.po
+++ b/mk/torcheck.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "POT-Creation-Date: 2012-02-16 20:28+PDT\n"
-"PO-Revision-Date: 2018-01-11 19:34+\n"
+"PO-Revision-Date: 2018-01-19 23:21+\n"
 "Last-Translator: Zarko Gjurov \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"

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


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

2018-01-19 Thread translation
commit 96ed5063ce4c615cdbe4d0d6032418d190a26a70
Author: Translation commit bot 
Date:   Fri Jan 19 23:45:21 2018 +

Update translations for torcheck_completed
---
 mk/torcheck.po | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk/torcheck.po b/mk/torcheck.po
index 909d8e7bf..7ee6fb59d 100644
--- a/mk/torcheck.po
+++ b/mk/torcheck.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "POT-Creation-Date: 2012-02-16 20:28+PDT\n"
-"PO-Revision-Date: 2018-01-11 19:34+\n"
+"PO-Revision-Date: 2018-01-19 23:21+\n"
 "Last-Translator: Zarko Gjurov \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"

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


[tor-commits] [tor/master] oxford comma for-the-win

2018-01-19 Thread arma
commit 48a51c5f8b80a359da31bc5aaac8ecd25890fe0d
Author: Roger Dingledine 
Date:   Fri Jan 19 18:42:53 2018 -0500

oxford comma for-the-win
---
 src/or/hs_common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/or/hs_common.c b/src/or/hs_common.c
index 0e7d78970..6d97c8775 100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@ -210,7 +210,7 @@ hs_check_service_private_dir(const char *username, const 
char *path,
   return 0;
 }
 
-/* Default, minimum and maximum values for the maximum rendezvous failures
+/* Default, minimum, and maximum values for the maximum rendezvous failures
  * consensus parameter. */
 #define MAX_REND_FAILURES_DEFAULT 2
 #define MAX_REND_FAILURES_MIN 1

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


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

2018-01-19 Thread translation
commit cbbdcaf3065e19b22111bfdff7439939dd2afc27
Author: Translation commit bot 
Date:   Fri Jan 19 23:18:55 2018 +

Update translations for torbutton-abouttbupdatedtd_completed
---
 mk/abouttbupdate.dtd | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mk/abouttbupdate.dtd b/mk/abouttbupdate.dtd
index 5c53eedf1..8873b5f31 100644
--- a/mk/abouttbupdate.dtd
+++ b/mk/abouttbupdate.dtd
@@ -1,5 +1,5 @@
-
-
+
+
 
 
 

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


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

2018-01-19 Thread translation
commit c4a28e305ce7b47188b870cb0390715fc0e0db54
Author: Translation commit bot 
Date:   Fri Jan 19 23:18:50 2018 +

Update translations for torbutton-abouttbupdatedtd
---
 mk/abouttbupdate.dtd | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mk/abouttbupdate.dtd b/mk/abouttbupdate.dtd
index 5c53eedf1..8873b5f31 100644
--- a/mk/abouttbupdate.dtd
+++ b/mk/abouttbupdate.dtd
@@ -1,5 +1,5 @@
-
-
+
+
 
 
 

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


[tor-commits] [translation/abouttor-homepage] Update translations for abouttor-homepage

2018-01-19 Thread translation
commit 45ab536fb299cb5f38eaa3898b5c985a2dcf8066
Author: Translation commit bot 
Date:   Fri Jan 19 23:17:14 2018 +

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

diff --git a/mk/aboutTor.dtd b/mk/aboutTor.dtd
index 4861bcca0..5ac38ce47 100644
--- a/mk/aboutTor.dtd
+++ b/mk/aboutTor.dtd
@@ -4,15 +4,15 @@
- vim: set sw=2 sts=2 ts=8 et syntax=xml:
   -->
 
-
+
 
 
 
-
+
 
-
+
 
-
+
 
 
 

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


[tor-commits] [translation/abouttor-homepage_completed] Update translations for abouttor-homepage_completed

2018-01-19 Thread translation
commit 4049fda9117b9abe80d2dba4e68dbcdfc987b14d
Author: Translation commit bot 
Date:   Fri Jan 19 23:17:19 2018 +

Update translations for abouttor-homepage_completed
---
 mk/aboutTor.dtd | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/mk/aboutTor.dtd b/mk/aboutTor.dtd
index 4861bcca0..5ac38ce47 100644
--- a/mk/aboutTor.dtd
+++ b/mk/aboutTor.dtd
@@ -4,15 +4,15 @@
- vim: set sw=2 sts=2 ts=8 et syntax=xml:
   -->
 
-
+
 
 
 
-
+
 
-
+
 
-
+
 
 
 

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


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

2018-01-19 Thread translation
commit 38594c0f715c35a629d58099e85f5b6e21511990
Author: Translation commit bot 
Date:   Fri Jan 19 23:15:51 2018 +

Update translations for https_everywhere_completed
---
 mk/ssl-observatory.dtd | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/mk/ssl-observatory.dtd b/mk/ssl-observatory.dtd
index 1c012c162..cafbe6c8a 100644
--- a/mk/ssl-observatory.dtd
+++ b/mk/ssl-observatory.dtd
@@ -53,7 +53,7 @@ to turn it on?">-->
 
 
 
@@ -66,7 +66,8 @@ Mouseover the options for further details:">-->
 https://www.something.com, 
сертификатот
-примен од опсерваторијата ќе индицира 
дека некој ја посетил: www.something.com, но не и кој 
точно ја посетил таа страна, или кон која 
точно секција на таа страна била гледана. 
Обележете ги опциите со глувчето за 
понатамошни детали:">
+примен од опсерваторијата ќе индицира 
дека некој ја посетил: www.something.com, но не и кој 
точно ја посетил таа страна,
+или која точно секција на таа страна била 
гледана. Обележете ги опциите со глувчето 
за понатамошни детали:">
 
 
 
@@ -91,9 +92,9 @@ Mouseover the options for further details:">-->
 
 
 
-
+
 
 
 
+"Ова е препорачано; криптографските 
проблеми се многу чести во 
само-потпишаните оперативно-системско 
специјализирани уреди.">

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


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

2018-01-19 Thread translation
commit 43e703c078447cf453371debbb03e9c69fcac4e1
Author: Translation commit bot 
Date:   Fri Jan 19 23:15:41 2018 +

Update translations for https_everywhere
---
 mk/ssl-observatory.dtd | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/mk/ssl-observatory.dtd b/mk/ssl-observatory.dtd
index 1c012c162..cafbe6c8a 100644
--- a/mk/ssl-observatory.dtd
+++ b/mk/ssl-observatory.dtd
@@ -53,7 +53,7 @@ to turn it on?">-->
 
 
 
@@ -66,7 +66,8 @@ Mouseover the options for further details:">-->
 https://www.something.com, 
сертификатот
-примен од опсерваторијата ќе индицира 
дека некој ја посетил: www.something.com, но не и кој 
точно ја посетил таа страна, или кон која 
точно секција на таа страна била гледана. 
Обележете ги опциите со глувчето за 
понатамошни детали:">
+примен од опсерваторијата ќе индицира 
дека некој ја посетил: www.something.com, но не и кој 
точно ја посетил таа страна,
+или која точно секција на таа страна била 
гледана. Обележете ги опциите со глувчето 
за понатамошни детали:">
 
 
 
@@ -91,9 +92,9 @@ Mouseover the options for further details:">-->
 
 
 
-
+
 
 
 
+"Ова е препорачано; криптографските 
проблеми се многу чести во 
само-потпишаните оперативно-системско 
специјализирани уреди.">

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


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

2018-01-19 Thread translation
commit 5509979d351d37bc9b50de52bfa6a1f0d4db8391
Author: Translation commit bot 
Date:   Fri Jan 19 23:15:05 2018 +

Update translations for bridgedb
---
 mk/LC_MESSAGES/bridgedb.po | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mk/LC_MESSAGES/bridgedb.po b/mk/LC_MESSAGES/bridgedb.po
index 31129b898..122d72c74 100644
--- a/mk/LC_MESSAGES/bridgedb.po
+++ b/mk/LC_MESSAGES/bridgedb.po
@@ -11,7 +11,7 @@ msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: 
'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB=bridgedb-reported,msgid=isis,sysrqb=isis'\n"
 "POT-Creation-Date: 2015-07-25 03:40+\n"
-"PO-Revision-Date: 2018-01-19 19:10+\n"
+"PO-Revision-Date: 2018-01-19 23:11+\n"
 "Last-Translator: Zarko Gjurov \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -46,7 +46,7 @@ msgstr "Изворен код"
 
 #: bridgedb/https/templates/base.html:85
 msgid "Changelog"
-msgstr "Историјат на изданија"
+msgstr "Лог на измени"
 
 #: bridgedb/https/templates/base.html:88
 msgid "Contact"

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


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

2018-01-19 Thread translation
commit 8ab2cff41ecfb836656393cf975ee9baabad75c6
Author: Translation commit bot 
Date:   Fri Jan 19 23:15:13 2018 +

Update translations for bridgedb_completed
---
 mk/LC_MESSAGES/bridgedb.po | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mk/LC_MESSAGES/bridgedb.po b/mk/LC_MESSAGES/bridgedb.po
index 31129b898..122d72c74 100644
--- a/mk/LC_MESSAGES/bridgedb.po
+++ b/mk/LC_MESSAGES/bridgedb.po
@@ -11,7 +11,7 @@ msgstr ""
 "Project-Id-Version: The Tor Project\n"
 "Report-Msgid-Bugs-To: 
'https://trac.torproject.org/projects/tor/newticket?component=BridgeDB=bridgedb-reported,msgid=isis,sysrqb=isis'\n"
 "POT-Creation-Date: 2015-07-25 03:40+\n"
-"PO-Revision-Date: 2018-01-19 19:10+\n"
+"PO-Revision-Date: 2018-01-19 23:11+\n"
 "Last-Translator: Zarko Gjurov \n"
 "Language-Team: Macedonian 
(http://www.transifex.com/otf/torproject/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -46,7 +46,7 @@ msgstr "Изворен код"
 
 #: bridgedb/https/templates/base.html:85
 msgid "Changelog"
-msgstr "Историјат на изданија"
+msgstr "Лог на измени"
 
 #: bridgedb/https/templates/base.html:88
 msgid "Contact"

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


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

2018-01-19 Thread translation
commit 128d2ff1eff8a5230484b49ac10215b27076d530
Author: Translation commit bot 
Date:   Fri Jan 19 22:45:48 2018 +

Update translations for https_everywhere_completed
---
 mk/ssl-observatory.dtd | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/mk/ssl-observatory.dtd b/mk/ssl-observatory.dtd
index 8ebe517e8..1c012c162 100644
--- a/mk/ssl-observatory.dtd
+++ b/mk/ssl-observatory.dtd
@@ -27,10 +27,10 @@ to turn it on?">-->
 "Безбедно, освен ако користиш корпоративна 
мрежа со тајни интранет серверни имиња:">
 
 
+"Поднеси и провери сертификати потпишани 
од нестандардни коренски / root сертификати">
 
 
+"Безбедно е (и е добра идеа) да ја овозможиш 
оваа опција, доколку користиш наметлива 
корпоративна / компаниска мрежа или Kaspersky 
анитивирусно решение кое го мониторира 
твоето прелистување на Интернет преку TLS 
прокси и приватен основен / коренски 
авторитет за издавање на дигитален 
сертификат. Ако е овозможено на овој тип на 
мрежа, оваа опција може да објави доказ од 
кои https:// домеини биле посетени преку тоа 
прокси, бидејќи ќе создаде уникатни 
сертификати. Затоа е исклучено под дифолт.">
 
 
 -->
 "Оваа опција бара Tor да биде инсталиран и 
стартуван">
 
 
+"Кога ќе видиш нов сертификат, кажи и на 
опсерваторијата преку кој ISP / Интернет 
сервис провајдер си приклучен">
 
 
+"Ова ќе донесе и испрати 'Автономен 
системски број' од твојата мрежа. Ова ќе ни 
помогне да ги лоцираме нападите против HTTPS, 
и да утврдиме кога имаме опсервации од 
мрежите на места како во Иран или Сирија 
каде нападите се компаративно земено доста 
чести.">
 
 
 
 
+"Ова ќе ги провери испратените сертификати 
наспроти листата познатите 
повлечени/отповикани сертификати. На 
жалост не гарантиранме дека ќе го 
обележиме секој повлечен сертификат, но 
доколку видите предупредување има голема 
веројатност нешто да не е во ред.">
 
-
+
 
 ___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


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

2018-01-19 Thread translation
commit b5248c1cc526fff012f4fb91da8e80e8e10ae196
Author: Translation commit bot 
Date:   Fri Jan 19 22:45:38 2018 +

Update translations for https_everywhere
---
 mk/ssl-observatory.dtd | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/mk/ssl-observatory.dtd b/mk/ssl-observatory.dtd
index 8ebe517e8..1c012c162 100644
--- a/mk/ssl-observatory.dtd
+++ b/mk/ssl-observatory.dtd
@@ -27,10 +27,10 @@ to turn it on?">-->
 "Безбедно, освен ако користиш корпоративна 
мрежа со тајни интранет серверни имиња:">
 
 
+"Поднеси и провери сертификати потпишани 
од нестандардни коренски / root сертификати">
 
 
+"Безбедно е (и е добра идеа) да ја овозможиш 
оваа опција, доколку користиш наметлива 
корпоративна / компаниска мрежа или Kaspersky 
анитивирусно решение кое го мониторира 
твоето прелистување на Интернет преку TLS 
прокси и приватен основен / коренски 
авторитет за издавање на дигитален 
сертификат. Ако е овозможено на овој тип на 
мрежа, оваа опција може да објави доказ од 
кои https:// домеини биле посетени преку тоа 
прокси, бидејќи ќе создаде уникатни 
сертификати. Затоа е исклучено под дифолт.">
 
 
 -->
 "Оваа опција бара Tor да биде инсталиран и 
стартуван">
 
 
+"Кога ќе видиш нов сертификат, кажи и на 
опсерваторијата преку кој ISP / Интернет 
сервис провајдер си приклучен">
 
 
+"Ова ќе донесе и испрати 'Автономен 
системски број' од твојата мрежа. Ова ќе ни 
помогне да ги лоцираме нападите против HTTPS, 
и да утврдиме кога имаме опсервации од 
мрежите на места како во Иран или Сирија 
каде нападите се компаративно земено доста 
чести.">
 
 
 
 
+"Ова ќе ги провери испратените сертификати 
наспроти листата познатите 
повлечени/отповикани сертификати. На 
жалост не гарантиранме дека ќе го 
обележиме секој повлечен сертификат, но 
доколку видите предупредување има голема 
веројатност нешто да не е во ред.">
 
-
+
 
 ___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/master] Bug 23101: Pre-build HS-specific circuits (instead of general).

2018-01-19 Thread nickm
commit 489628a7e4ae716b78a9515fd36d54cca5353272
Author: Mike Perry 
Date:   Fri Dec 22 06:35:29 2017 +

Bug 23101: Pre-build HS-specific circuits (instead of general).

Prebuilt circs are 4 hops, since only server side HSDIR and intro circs
are 3 hops, and it is OK if those sometimes take longer to build.
---
 changes/bug23101  |  3 ++
 src/or/circuitbuild.c | 22 
 src/or/circuitbuild.h |  1 +
 src/or/circuitlist.c  | 52 
 src/or/circuituse.c   | 96 +++
 src/or/or.h   | 12 ++-
 6 files changed, 164 insertions(+), 22 deletions(-)

diff --git a/changes/bug23101 b/changes/bug23101
new file mode 100644
index 0..7f366793f
--- /dev/null
+++ b/changes/bug23101
@@ -0,0 +1,3 @@
+  o Minor features (Performance):
+- Support predictive circuit building for onion service circuits with
+  multiple layers of guards. Closes ticket 23101.
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index 680b32953..ddcb72bf4 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -80,6 +80,10 @@ static int circuit_send_first_onion_skin(origin_circuit_t 
*circ);
 static int circuit_build_no_more_hops(origin_circuit_t *circ);
 static int circuit_send_intermediate_onion_skin(origin_circuit_t *circ,
 crypt_path_t *hop);
+static const node_t *choose_good_middle_server(uint8_t purpose,
+  cpath_build_state_t *state,
+  crypt_path_t *head,
+  int cur_len);
 
 /** This function tries to get a channel to the specified endpoint,
  * and then calls command_setup_channel() to give it the right
@@ -1653,7 +1657,7 @@ onionskin_answer(or_circuit_t *circ,
  * new_route_len()) in the one-hop tunnel case, so we don't need to
  * handle that.
  */
-static int
+int
 route_len_for_purpose(uint8_t purpose, extend_info_t *exit_ei)
 {
   int routelen = DEFAULT_ROUTE_LEN;
@@ -1670,6 +1674,7 @@ route_len_for_purpose(uint8_t purpose, extend_info_t 
*exit_ei)
  */
 if (purpose == CIRCUIT_PURPOSE_C_ESTABLISH_REND ||
 purpose == CIRCUIT_PURPOSE_S_HSDIR_POST ||
+purpose == CIRCUIT_PURPOSE_HS_VANGUARDS ||
 purpose == CIRCUIT_PURPOSE_S_ESTABLISH_INTRO)
   return routelen+1;
 
@@ -2264,9 +2269,8 @@ pick_restricted_middle_node(router_crn_flags_t flags,
  * toward the preferences in 'options'.
  */
 static const node_t *
-choose_good_exit_server(uint8_t purpose,
-int need_uptime, int need_capacity, int is_internal,
-int need_hs_v3)
+choose_good_exit_server(origin_circuit_t *circ, int need_uptime,
+int need_capacity, int is_internal, int need_hs_v3)
 {
   const or_options_t *options = get_options();
   router_crn_flags_t flags = CRN_NEED_DESC;
@@ -2277,9 +2281,13 @@ choose_good_exit_server(uint8_t purpose,
   if (need_hs_v3)
 flags |= CRN_RENDEZVOUS_V3;
 
-  switch (purpose) {
+  switch (TO_CIRCUIT(circ)->purpose) {
 case CIRCUIT_PURPOSE_C_HSDIR_GET:
 case CIRCUIT_PURPOSE_S_HSDIR_POST:
+case CIRCUIT_PURPOSE_HS_VANGUARDS:
+  /* For these three, we want to pick the exit like a middle hop,
+   * since it should be random. */
+  tor_assert_nonfatal(is_internal);
 case CIRCUIT_PURPOSE_C_GENERAL:
   if (is_internal) /* pick it like a middle hop */
 return router_choose_random_node(NULL, options->ExcludeNodes, flags);
@@ -2294,7 +2302,7 @@ choose_good_exit_server(uint8_t purpose,
 return rendezvous_node;
   }
   }
-  log_warn(LD_BUG,"Unhandled purpose %d", purpose);
+  log_warn(LD_BUG,"Unhandled purpose %d", TO_CIRCUIT(circ)->purpose);
   tor_fragile_assert();
   return NULL;
 }
@@ -2410,7 +2418,7 @@ onion_pick_cpath_exit(origin_circuit_t *circ, 
extend_info_t *exit_ei,
 exit_ei = extend_info_dup(exit_ei);
   } else { /* we have to decide one */
 const node_t *node =
-  choose_good_exit_server(circ->base_.purpose, state->need_uptime,
+  choose_good_exit_server(circ, state->need_uptime,
   state->need_capacity, state->is_internal,
   is_hs_v3_rp_circuit);
 if (!node) {
diff --git a/src/or/circuitbuild.h b/src/or/circuitbuild.h
index a85ef672f..101447766 100644
--- a/src/or/circuitbuild.h
+++ b/src/or/circuitbuild.h
@@ -12,6 +12,7 @@
 #ifndef TOR_CIRCUITBUILD_H
 #define TOR_CIRCUITBUILD_H
 
+int route_len_for_purpose(uint8_t purpose, extend_info_t *exit_ei);
 char *circuit_list_path(origin_circuit_t *circ, int verbose);
 char *circuit_list_path_for_controller(origin_circuit_t *circ);
 void circuit_log_path(int severity, unsigned int domain,
diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c
index 03e1a7107..27d8c62b5 100644
--- a/src/or/circuitlist.c
+++ b/src/or/circuitlist.c
@@ -723,6 +723,8 @@ 

[tor-commits] [tor/master] Implement layer 2 and layer 3 guard pinning via torrc.

2018-01-19 Thread nickm
commit 20a3f611057cb81c489ccf9d40438bc5d930d766
Author: Mike Perry 
Date:   Fri Dec 22 05:43:44 2017 +

Implement layer 2 and layer 3 guard pinning via torrc.

Block circuit canibalization when HSRendezvousMiddleNodes is active.
Also make it apply to all HS circuits, not just rends.
---
 changes/bug13837  |   4 +
 doc/tor.1.txt |  94 ++
 src/or/circuitbuild.c | 257 +++---
 src/or/circuituse.c   |  66 -
 src/or/circuituse.h   |   3 +
 src/or/config.c   |   8 ++
 src/or/or.h   |   8 ++
 7 files changed, 426 insertions(+), 14 deletions(-)

diff --git a/changes/bug13837 b/changes/bug13837
new file mode 100644
index 0..5791dcee5
--- /dev/null
+++ b/changes/bug13837
@@ -0,0 +1,4 @@
+  o Major features (Onion Services):
+- Provide torrc options to pin the second and third hops of onion service
+  circuits to a list of nodes. The option HSLayer2Guards pins the second 
hop,
+  and the option HSLayer3Guards pins the third hop. Closes ticket 13837.
diff --git a/doc/tor.1.txt b/doc/tor.1.txt
index 115f09bc3..8e27a25de 100644
--- a/doc/tor.1.txt
+++ b/doc/tor.1.txt
@@ -1531,6 +1531,100 @@ The following options are useful only for clients (that 
is, if
 If no nodes in Tor2webRendezvousPoints are currently available for
 use, Tor will choose a random node when building HS circuits.
 
+[[_HSLayer2Nodes]] **_HSLayer2Nodes** __node__,__node__,__...__::
+A list of identity fingerprints, nicknames, country codes, and
+address patterns of nodes that are allowed to be used as the
+second hop in all client or service-side Onion Service circuits.
+This option mitigates attacks where the adversary runs middle nodes
+and induces your client or service to create many circuits, in order
+to discover your primary guard node.
+(Default: Any node in the network may be used in the second hop.)
+ +
+(Example:
+_HSLayer2Nodes ABCD1234CDEF5678ABCD1234CDEF5678ABCD1234, \{cc}, 
255.254.0.0/8) +
+ +
+When this is set, the resulting hidden service paths will
+look like:
+ +
+C - G - L2 - M - Rend +
+C - G - L2 - M - HSDir +
+C - G - L2 - M - Intro +
+S - G - L2 - M - Rend +
+S - G - L2 - M - HSDir +
+S - G - L2 - M - Intro +
+ +
+where C is this client, S is the service, G is the Guard node,
+L2 is a node from this option, and M is a random middle node.
+Rend, HSDir, and Intro point selection is not affected by this
+option.
+ +
+This option may be combined with _HSLayer3Nodes to create
+paths of the form:
+ +
+C - G - L2 - L3 - Rend +
+C - G - L2 - L3 - M - HSDir +
+C - G - L2 - L3 - M - Intro +
+S - G - L2 - L3 - M - Rend +
+S - G - L2 - L3 - HSDir +
+S - G - L2 - L3 - Intro +
+ +
+ExcludeNodes have higher priority than _HSLayer2Nodes,
+which means that nodes specified in ExcludeNodes will not be
+picked.
+ +
+This option is meant to be managed by a Tor controller such as
+https://github.com/mikeperry-tor/vanguards that selects and
+updates this set of nodes for you. Hence it does not do load
+balancing if fewer than 20 nodes are selected, and if no nodes in
+_HSLayer2Nodes are currently available for use, Tor will not work.
+Please use extreme care if you are setting this option manually.
+
+[[_HSLayer3Nodes]] **_HSLayer3Nodes** __node__,__node__,__...__::
+A list of identity fingerprints, nicknames, country codes, and
+address patterns of nodes that are allowed to be used as the
+third hop in all client and service-side Onion Service circuits.
+This option mitigates attacks where the adversary runs middle nodes
+and induces your client or service to create many circuits, in order
+to discover your primary or Layer2 guard nodes.
+(Default: Any node in the network may be used in the third hop.)
+ +
+(Example:
+_HSLayer3Nodes ABCD1234CDEF5678ABCD1234CDEF5678ABCD1234, \{cc}, 
255.254.0.0/8) +
+ +
+When this is set by itself, the resulting hidden service paths
+will look like: +
+C - G - M - L3 - Rend +
+C - G - M - L3 - M - HSDir +
+C - G - M - L3 - M - Intro +
+S - G - M - L3 - M - Rend +
+S - G - M - L3 - HSDir +
+S - G - M - L3 - Intro +
+where C is this client, S is the service, G is the Guard node,
+L2 is a node from this option, and M is a random middle node.
+Rend, HSDir, and Intro point selection is not affected by this
+option.
+ +
+While it is possible to use this option by itself, it should be
+combined with _HSLayer2Nodes to create paths of the form:
+ +
+C - G - L2 - L3 - Rend +
+C - G - L2 - L3 - M - HSDir +
+C - G - L2 - L3 - M - Intro +
+S - G - L2 - L3 - M - Rend +
+S - G - L2 - L3 - HSDir +
+S - G 

[tor-commits] [tor/master] Add new circuit purposes for hsdir activity.

2018-01-19 Thread nickm
commit 86ee771c28777141ee5eec30fa9739a7cec32981
Author: Mike Perry 
Date:   Sat Dec 2 02:28:16 2017 +

Add new circuit purposes for hsdir activity.

This lets us control their path len and usage.
---
 src/or/circuitbuild.c| 13 -
 src/or/circuitlist.c | 14 +
 src/or/circuituse.c  | 76 +---
 src/or/connection_edge.c |  2 ++
 src/or/or.h  | 29 +++---
 5 files changed, 113 insertions(+), 21 deletions(-)

diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index 707654adf..680b32953 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -1662,11 +1662,14 @@ route_len_for_purpose(uint8_t purpose, extend_info_t 
*exit_ei)
   if (circuit_should_use_vanguards(purpose)) {
 /* Clients want an extra hop for rends to avoid linkability.
  * Services want it for intro points to avoid publishing their
- * layer3 guards.
+ * layer3 guards. They want it for hsdir posts to use
+ * their full layer3 guard set for those connections.
  * Ex: C - G - L2 - L3 - R
+ * S - G - L2 - L3 - HSDIR
  * S - G - L2 - L3 - I
  */
 if (purpose == CIRCUIT_PURPOSE_C_ESTABLISH_REND ||
+purpose == CIRCUIT_PURPOSE_S_HSDIR_POST ||
 purpose == CIRCUIT_PURPOSE_S_ESTABLISH_INTRO)
   return routelen+1;
 
@@ -1683,9 +1686,11 @@ route_len_for_purpose(uint8_t purpose, extend_info_t 
*exit_ei)
  * Same goes for intro points. Note that the route len
  * includes the intro point or hsdir, hence the +2.
  * Ex: C - G - L2 - L3 - M - I
+ * C - G - L2 - L3 - M - HSDIR
  * S - G - L2 - L3 - M - R
  */
 if (purpose == CIRCUIT_PURPOSE_S_CONNECT_REND ||
+purpose == CIRCUIT_PURPOSE_C_HSDIR_GET ||
 purpose == CIRCUIT_PURPOSE_C_INTRODUCING)
   return routelen+2;
   }
@@ -1706,6 +1711,8 @@ route_len_for_purpose(uint8_t purpose, extend_info_t 
*exit_ei)
 /* These three purposes connect to a router that someone else
  * might have chosen, so add an extra hop to protect anonymity. */
   case CIRCUIT_PURPOSE_C_GENERAL:
+  case CIRCUIT_PURPOSE_C_HSDIR_GET:
+  case CIRCUIT_PURPOSE_S_HSDIR_POST:
 /* connecting to hidden service directory */
   case CIRCUIT_PURPOSE_C_INTRODUCING:
 /* client connecting to introduction point */
@@ -2271,6 +2278,8 @@ choose_good_exit_server(uint8_t purpose,
 flags |= CRN_RENDEZVOUS_V3;
 
   switch (purpose) {
+case CIRCUIT_PURPOSE_C_HSDIR_GET:
+case CIRCUIT_PURPOSE_S_HSDIR_POST:
 case CIRCUIT_PURPOSE_C_GENERAL:
   if (is_internal) /* pick it like a middle hop */
 return router_choose_random_node(NULL, options->ExcludeNodes, flags);
@@ -2315,6 +2324,8 @@ warn_if_last_router_excluded(origin_circuit_t *circ,
(int)purpose,
circuit_purpose_to_string(purpose));
   return;
+case CIRCUIT_PURPOSE_S_HSDIR_POST:
+case CIRCUIT_PURPOSE_C_HSDIR_GET:
 case CIRCUIT_PURPOSE_C_GENERAL:
   if (circ->build_state->is_internal)
 return;
diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c
index 028fdbfc2..03e1a7107 100644
--- a/src/or/circuitlist.c
+++ b/src/or/circuitlist.c
@@ -689,6 +689,10 @@ circuit_purpose_to_controller_string(uint8_t purpose)
 
 case CIRCUIT_PURPOSE_C_GENERAL:
   return "GENERAL";
+
+case CIRCUIT_PURPOSE_C_HSDIR_GET:
+  return "HS_CLIENT_HSDIR";
+
 case CIRCUIT_PURPOSE_C_INTRODUCING:
 case CIRCUIT_PURPOSE_C_INTRODUCE_ACK_WAIT:
 case CIRCUIT_PURPOSE_C_INTRODUCE_ACKED:
@@ -700,6 +704,9 @@ circuit_purpose_to_controller_string(uint8_t purpose)
 case CIRCUIT_PURPOSE_C_REND_JOINED:
   return "HS_CLIENT_REND";
 
+case CIRCUIT_PURPOSE_S_HSDIR_POST:
+  return "HS_SERVICE_HSDIR";
+
 case CIRCUIT_PURPOSE_S_ESTABLISH_INTRO:
 case CIRCUIT_PURPOSE_S_INTRO:
   return "HS_SERVICE_INTRO";
@@ -753,6 +760,7 @@ circuit_purpose_to_controller_hs_state_string(uint8_t 
purpose)
 case CIRCUIT_PURPOSE_REND_ESTABLISHED:
   return "OR_HS_R_JOINED";
 
+case CIRCUIT_PURPOSE_C_HSDIR_GET:
 case CIRCUIT_PURPOSE_C_INTRODUCING:
   return "HSCI_CONNECTING";
 case CIRCUIT_PURPOSE_C_INTRODUCE_ACK_WAIT:
@@ -769,6 +777,7 @@ circuit_purpose_to_controller_hs_state_string(uint8_t 
purpose)
 case CIRCUIT_PURPOSE_C_REND_JOINED:
   return "HSCR_JOINED";
 
+case CIRCUIT_PURPOSE_S_HSDIR_POST:
 case CIRCUIT_PURPOSE_S_ESTABLISH_INTRO:
   return "HSSI_CONNECTING";
 case CIRCUIT_PURPOSE_S_INTRO:
@@ -813,6 +822,9 @@ circuit_purpose_to_string(uint8_t purpose)
   return "Hidden service client: Pending rendezvous point (ack received)";
 case CIRCUIT_PURPOSE_C_REND_JOINED:
   return "Hidden service client: Active rendezvous point";
+case CIRCUIT_PURPOSE_C_HSDIR_GET:
+  return "Hidden service client: Fetching HS descriptor";
+
 case CIRCUIT_PURPOSE_C_MEASURE_TIMEOUT:
   return 

[tor-commits] [tor/master] Merge remote-tracking branch 'mikeperry/bug23101-mergeready-squashed'

2018-01-19 Thread nickm
commit 1bcbb1bb0b73794e34d1f10edbd50753eff0eb37
Merge: edd427a8b 489628a7e
Author: Nick Mathewson 
Date:   Fri Jan 19 17:28:10 2018 -0500

Merge remote-tracking branch 'mikeperry/bug23101-mergeready-squashed'

 changes/bug13837 |   4 +
 changes/bug23101 |   3 +
 doc/tor.1.txt|  94 +++
 src/or/circuitbuild.c| 290 +++
 src/or/circuitbuild.h|   1 +
 src/or/circuitlist.c |  66 +--
 src/or/circuituse.c  | 228 ++---
 src/or/circuituse.h  |   3 +
 src/or/config.c  |   8 ++
 src/or/connection_edge.c |   2 +
 src/or/or.h  |  47 ++--
 11 files changed, 696 insertions(+), 50 deletions(-)




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


[tor-commits] [tor/master] Add a "falls through" comment to make gcc happy.

2018-01-19 Thread nickm
commit ef148638a1d3b3123be41bc44197bcb7f1bb4083
Author: Nick Mathewson 
Date:   Fri Jan 19 17:29:36 2018 -0500

Add a "falls through" comment to make gcc happy.
---
 src/or/circuitbuild.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index ddcb72bf4..9c049a24b 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -2288,6 +2288,7 @@ choose_good_exit_server(origin_circuit_t *circ, int 
need_uptime,
   /* For these three, we want to pick the exit like a middle hop,
* since it should be random. */
   tor_assert_nonfatal(is_internal);
+  /* Falls through */
 case CIRCUIT_PURPOSE_C_GENERAL:
   if (is_internal) /* pick it like a middle hop */
 return router_choose_random_node(NULL, options->ExcludeNodes, flags);

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


[tor-commits] [torspec/master] Make the opening paragraph of "config options for controllers" right

2018-01-19 Thread nickm
commit d6ff5e71e305f5baef1df6676e0690be6ba705c9
Author: Nick Mathewson 
Date:   Fri Jan 19 16:37:19 2018 -0500

Make the opening paragraph of "config options for controllers" right

It said that they can be set by SETCONF; but some are not changeable
once Tor starts.  Mike Perry spotted this.
---
 control-spec.txt | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/control-spec.txt b/control-spec.txt
index 605a301..e961daa 100644
--- a/control-spec.txt
+++ b/control-spec.txt
@@ -3194,8 +3194,9 @@
 5.4. Tor config options for use by controllers
 
   Tor provides a few special configuration options for use by controllers.
-  These options can be set and examined by the SETCONF and GETCONF commands,
-  but are not saved to disk by SAVECONF.
+  These options are not saved to disk by SAVECONF.  Most can be set and
+  examined by the SETCONF and GETCONF commands, but some (noted below) can
+  only be given in a torrc file or on the command line.
 
   Generally, these options make Tor unusable by disabling a portion of Tor's
   normal operations.  Unless a controller provides replacement functionality

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


[tor-commits] [torspec/master] Document that __OwningControllerFD cannot be changed at runtime.

2018-01-19 Thread nickm
commit b698fa49afcd66f78db48b046783e07a2f81cc44
Author: Mike Perry 
Date:   Fri Jan 19 20:35:46 2018 +

Document that __OwningControllerFD cannot be changed at runtime.
---
 control-spec.txt | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/control-spec.txt b/control-spec.txt
index c201889..16c2b3d 100644
--- a/control-spec.txt
+++ b/control-spec.txt
@@ -3259,6 +3259,9 @@
 TAKEOWNERSHIP.  It will be automatically authenticated.  This option
 should only be used by other programs that are starting Tor.
 
+This option cannot be changed via SETCONF; it must be set in a torrc or
+via the command line.
+
 (Integer. Default: -1.)
 
   __DisableSignalHandlers



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


[tor-commits] [torspec/master] Merge branch 'disable_signal_handlers_squashed'

2018-01-19 Thread nickm
commit ed2a4304b88c0901b68c29c0fdfceaff3b0c1f3c
Merge: e7231f3 b698fa4
Author: Nick Mathewson 
Date:   Fri Jan 19 16:36:22 2018 -0500

Merge branch 'disable_signal_handlers_squashed'

 control-spec.txt | 17 +
 1 file changed, 17 insertions(+)




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


[tor-commits] [torspec/master] Document __DisableSignalHandlers for 24588.

2018-01-19 Thread nickm
commit bc89d9de547831ed3256cf2852b67233edb66a6e
Author: Nick Mathewson 
Date:   Fri Dec 15 12:50:50 2017 -0500

Document __DisableSignalHandlers for 24588.
---
 control-spec.txt | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/control-spec.txt b/control-spec.txt
index c9df06d..c201889 100644
--- a/control-spec.txt
+++ b/control-spec.txt
@@ -3261,6 +3261,20 @@
 
 (Integer. Default: -1.)
 
+  __DisableSignalHandlers
+
+If this option is set to true during startup, then Tor will not install
+any signal handlers to watch for POSIX signals.  The SIGNAL controller
+command will still work.
+
+This option is meant for embedding Tor inside another process, when
+the controlling process would rather handle signals on its own.
+
+This option cannot be changed via SETCONF; it must be set in a torrc or
+via the command line.
+
+(Boolean. Default: 0.)
+
 5.5. Phases from the Bootstrap status event.
 
   This section describes the various bootstrap phases currently reported



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


[tor-commits] [tor/master] Add an option to disable signal handler installation.

2018-01-19 Thread nickm
commit 20f802ea3cd5d8b3993a101da03dfec95bc9049e
Author: Nick Mathewson 
Date:   Fri Dec 15 12:48:29 2017 -0500

Add an option to disable signal handler installation.

Closes ticket 24588.
---
 changes/ticket24588 | 5 +
 src/or/config.c | 7 +++
 src/or/main.c   | 4 +++-
 src/or/or.h | 5 +
 4 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/changes/ticket24588 b/changes/ticket24588
new file mode 100644
index 0..e64872d74
--- /dev/null
+++ b/changes/ticket24588
@@ -0,0 +1,5 @@
+  o Minor features (embedding, mobile):
+- Applications that want to embed Tor can now tell Tor not to register
+  any of its own POSIX signal handlers, using the __DisableSignalHandlers
+  option. This option is not meant for general use. Closes ticket 24588.
+
diff --git a/src/or/config.c b/src/or/config.c
index 016d87f81..ebbe726c7 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -564,6 +564,7 @@ static config_var_t option_vars_[] = {
   VAR("__ReloadTorrcOnSIGHUP",   BOOL,  ReloadTorrcOnSIGHUP,  "1"),
   VAR("__AllDirActionsPrivate",  BOOL,  AllDirActionsPrivate, "0"),
   VAR("__DisablePredictedCircuits",BOOL,DisablePredictedCircuits, "0"),
+  VAR("__DisableSignalHandlers", BOOL,  DisableSignalHandlers,"0"),
   VAR("__LeaveStreamsUnattached",BOOL,  LeaveStreamsUnattached,   "0"),
   VAR("__HashedControlSessionPassword", LINELIST, HashedControlSessionPassword,
   NULL),
@@ -4652,6 +4653,12 @@ options_transition_allowed(const or_options_t *old,
 return -1;
   }
 
+  if (old->DisableSignalHandlers != new_val->DisableSignalHandlers) {
+*msg = tor_strdup("While Tor is running, changing DisableSignalHandlers "
+  "is not allowed.");
+return -1;
+  }
+
   if (strcmp(old->DataDirectory,new_val->DataDirectory)!=0) {
 tor_asprintf(msg,
"While Tor is running, changing DataDirectory "
diff --git a/src/or/main.c b/src/or/main.c
index 38f25cae5..9adad0794 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -3057,8 +3057,10 @@ void
 handle_signals(void)
 {
   int i;
+  const int enabled = !get_options()->DisableSignalHandlers;
+
   for (i = 0; signal_handlers[i].signal_value >= 0; ++i) {
-if (signal_handlers[i].try_to_register) {
+if (enabled && signal_handlers[i].try_to_register) {
   signal_handlers[i].signal_event =
 tor_evsignal_new(tor_libevent_get_base(),
  signal_handlers[i].signal_value,
diff --git a/src/or/or.h b/src/or/or.h
index 9c5394987..91d643638 100644
--- a/src/or/or.h
+++ b/src/or/or.h
@@ -4651,6 +4651,11 @@ typedef struct {
 
   /** List of files that were opened by %include in torrc and torrc-defaults */
   smartlist_t *FilesOpenedByIncludes;
+
+  /** If true, Tor shouldn't install any posix signal handlers, since it is
+   * running embedded inside another process.
+   */
+  int DisableSignalHandlers;
 } or_options_t;
 
 #define LOG_PROTOCOL_WARN (get_protocol_warning_severity_level())



___
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 'disable_signal_handlers'

2018-01-19 Thread nickm
commit edd427a8ba7520b54b92b2d828410491eb3fc2ca
Merge: df4d5ebb7 65a27d95e
Author: Nick Mathewson 
Date:   Fri Jan 19 16:35:24 2018 -0500

Merge branch 'disable_signal_handlers'

 changes/ticket24588 |  5 
 src/or/config.c |  2 ++
 src/or/main.c   | 72 +
 src/or/main.h   |  2 +-
 src/or/or.h |  5 
 5 files changed, 47 insertions(+), 39 deletions(-)

diff --cc src/or/config.c
index e5c10498c,ebbe726c7..bd309bc87
--- a/src/or/config.c
+++ b/src/or/config.c
@@@ -4663,51 -4636,142 +4664,52 @@@ options_transition_allowed(const or_opt
if (!old)
  return 0;
  
 -  if (!opt_streq(old->PidFile, new_val->PidFile)) {
 -*msg = tor_strdup("PidFile is not allowed to change.");
 -return -1;
 -  }
 -
 -  if (old->RunAsDaemon != new_val->RunAsDaemon) {
 -*msg = tor_strdup("While Tor is running, changing RunAsDaemon "
 -  "is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->Sandbox != new_val->Sandbox) {
 -*msg = tor_strdup("While Tor is running, changing Sandbox "
 -  "is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->DisableSignalHandlers != new_val->DisableSignalHandlers) {
 -*msg = tor_strdup("While Tor is running, changing DisableSignalHandlers "
 -  "is not allowed.");
 -return -1;
 -  }
 -
 -  if (strcmp(old->DataDirectory,new_val->DataDirectory)!=0) {
 -tor_asprintf(msg,
 -   "While Tor is running, changing DataDirectory "
 -   "(\"%s\"->\"%s\") is not allowed.",
 -   old->DataDirectory, new_val->DataDirectory);
 -return -1;
 -  }
 -
 -  if (!opt_streq(old->KeyDirectory, new_val->KeyDirectory)) {
 -tor_asprintf(msg,
 -   "While Tor is running, changing KeyDirectory "
 -   "(\"%s\"->\"%s\") is not allowed.",
 -   old->KeyDirectory, new_val->KeyDirectory);
 -return -1;
 -  }
 -
 -  if (!opt_streq(old->CacheDirectory, new_val->CacheDirectory)) {
 -tor_asprintf(msg,
 -   "While Tor is running, changing CacheDirectory "
 -   "(\"%s\"->\"%s\") is not allowed.",
 -   old->CacheDirectory, new_val->CacheDirectory);
 -return -1;
 -  }
 -
 -  if (!opt_streq(old->User, new_val->User)) {
 -*msg = tor_strdup("While Tor is running, changing User is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->KeepBindCapabilities != new_val->KeepBindCapabilities) {
 -*msg = tor_strdup("While Tor is running, changing KeepBindCapabilities is 
"
 -  "not allowed.");
 -return -1;
 -  }
 -
 -  if (!opt_streq(old->SyslogIdentityTag, new_val->SyslogIdentityTag)) {
 -*msg = tor_strdup("While Tor is running, changing "
 -  "SyslogIdentityTag is not allowed.");
 -return -1;
 -  }
 -
 -  if (!opt_streq(old->AndroidIdentityTag, new_val->AndroidIdentityTag)) {
 -*msg = tor_strdup("While Tor is running, changing "
 -  "AndroidIdentityTag is not allowed.");
 -return -1;
 -  }
 -
 -  if ((old->HardwareAccel != new_val->HardwareAccel)
 -  || !opt_streq(old->AccelName, new_val->AccelName)
 -  || !opt_streq(old->AccelDir, new_val->AccelDir)) {
 -*msg = tor_strdup("While Tor is running, changing OpenSSL hardware "
 -  "acceleration engine is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->TestingTorNetwork != new_val->TestingTorNetwork) {
 -*msg = tor_strdup("While Tor is running, changing TestingTorNetwork "
 -  "is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->DisableAllSwap != new_val->DisableAllSwap) {
 -*msg = tor_strdup("While Tor is running, changing DisableAllSwap "
 -  "is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->TokenBucketRefillInterval != new_val->TokenBucketRefillInterval) {
 -*msg = tor_strdup("While Tor is running, changing TokenBucketRefill"
 -  "Interval is not allowed");
 -return -1;
 -  }
 -
 -  if (old->HiddenServiceSingleHopMode != new_val->HiddenServiceSingleHopMode) 
{
 -*msg = tor_strdup("While Tor is running, changing "
 -  "HiddenServiceSingleHopMode is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->HiddenServiceNonAnonymousMode !=
 -  new_val->HiddenServiceNonAnonymousMode) {
 -*msg = tor_strdup("While Tor is running, changing "
 -  "HiddenServiceNonAnonymousMode is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->DisableDebuggerAttachment &&
 -  !new_val->DisableDebuggerAttachment) {
 -*msg = tor_strdup("While Tor is running, disabling "
 -  "DisableDebuggerAttachment is not allowed.");
 -return -1;
 -  }
 -
 -  if (old->NoExec && !new_val->NoExec) {
 -*msg = tor_strdup("While Tor is running, disabling "
 -  "NoExec is not allowed.");
 -return 

[tor-commits] [tor/master] Remove the unused is_parent==0 option from handle_signals.

2018-01-19 Thread nickm
commit fdd5734875a49c4bfdebde45189038dd42306504
Author: Nick Mathewson 
Date:   Fri Dec 15 12:45:30 2017 -0500

Remove the unused is_parent==0 option from handle_signals.
---
 src/or/main.c | 56 +++-
 src/or/main.h |  2 +-
 2 files changed, 20 insertions(+), 38 deletions(-)

diff --git a/src/or/main.c b/src/or/main.c
index aae98dd8a..38f25cae5 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -2530,7 +2530,7 @@ do_main_loop(void)
 }
   }
 
-  handle_signals(1);
+  handle_signals();
   monotime_init();
   timers_initialize();
 
@@ -3052,46 +3052,28 @@ static struct {
   { -1, -1, NULL }
 };
 
-/** Set up the signal handlers for either parent or child process */
+/** Set up the signal handlers for this process. */
 void
-handle_signals(int is_parent)
+handle_signals(void)
 {
   int i;
-  if (is_parent) {
-for (i = 0; signal_handlers[i].signal_value >= 0; ++i) {
-  if (signal_handlers[i].try_to_register) {
-signal_handlers[i].signal_event =
-  tor_evsignal_new(tor_libevent_get_base(),
-   signal_handlers[i].signal_value,
-   signal_callback,
-   _handlers[i].signal_value);
-if (event_add(signal_handlers[i].signal_event, NULL))
-  log_warn(LD_BUG, "Error from libevent when adding "
-   "event for signal %d",
-   signal_handlers[i].signal_value);
-  } else {
-signal_handlers[i].signal_event =
-  tor_event_new(tor_libevent_get_base(), -1,
-EV_SIGNAL, signal_callback,
-_handlers[i].signal_value);
-  }
+  for (i = 0; signal_handlers[i].signal_value >= 0; ++i) {
+if (signal_handlers[i].try_to_register) {
+  signal_handlers[i].signal_event =
+tor_evsignal_new(tor_libevent_get_base(),
+ signal_handlers[i].signal_value,
+ signal_callback,
+ _handlers[i].signal_value);
+  if (event_add(signal_handlers[i].signal_event, NULL))
+log_warn(LD_BUG, "Error from libevent when adding "
+ "event for signal %d",
+ signal_handlers[i].signal_value);
+} else {
+  signal_handlers[i].signal_event =
+tor_event_new(tor_libevent_get_base(), -1,
+  EV_SIGNAL, signal_callback,
+  _handlers[i].signal_value);
 }
-  } else {
-#ifndef _WIN32
-struct sigaction action;
-action.sa_flags = 0;
-sigemptyset(_mask);
-action.sa_handler = SIG_IGN;
-sigaction(SIGINT,  , NULL);
-sigaction(SIGTERM, , NULL);
-sigaction(SIGPIPE, , NULL);
-sigaction(SIGUSR1, , NULL);
-sigaction(SIGUSR2, , NULL);
-sigaction(SIGHUP,  , NULL);
-#ifdef SIGXFSZ
-sigaction(SIGXFSZ, , NULL);
-#endif
-#endif /* !defined(_WIN32) */
   }
 }
 
diff --git a/src/or/main.h b/src/or/main.h
index 8eb977575..49292f80a 100644
--- a/src/or/main.h
+++ b/src/or/main.h
@@ -66,7 +66,7 @@ MOCK_DECL(long,get_uptime,(void));
 
 unsigned get_signewnym_epoch(void);
 
-void handle_signals(int is_parent);
+void handle_signals(void);
 void activate_signal(int signal_num);
 
 int try_locking(const or_options_t *options, int err_if_locked);



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


[tor-commits] [tor/master] Improve documentation for signal code

2018-01-19 Thread nickm
commit 65a27d95e750e118162f22797dc22c4d550b9fc8
Author: Nick Mathewson 
Date:   Fri Jan 19 10:02:20 2018 -0500

Improve documentation for signal code
---
 src/or/main.c | 16 ++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/src/or/main.c b/src/or/main.c
index 9adad0794..8cbe28a21 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -3016,9 +3016,15 @@ exit_function(void)
 #else
 #define UNIX_ONLY 1
 #endif
+
 static struct {
+  /** A numeric code for this signal. Must match the signal value if
+   * try_to_register is true. */
   int signal_value;
+  /** True if we should try to register this signal with libevent and catch
+   * corresponding posix signals. False otherwise. */
   int try_to_register;
+  /** Pointer to hold the event object constructed for this signal. */
   struct event *signal_event;
 } signal_handlers[] = {
 #ifdef SIGINT
@@ -3052,7 +3058,8 @@ static struct {
   { -1, -1, NULL }
 };
 
-/** Set up the signal handlers for this process. */
+/** Set up the signal handler events for this process, and register them
+ * with libevent if appropriate. */
 void
 handle_signals(void)
 {
@@ -3060,6 +3067,11 @@ handle_signals(void)
   const int enabled = !get_options()->DisableSignalHandlers;
 
   for (i = 0; signal_handlers[i].signal_value >= 0; ++i) {
+/* Signal handlers are only registered with libevent if they need to catch
+ * real POSIX signals.  We construct these signal handler events in either
+ * case, though, so that controllers can activate them with the SIGNAL
+ * command.
+ */
 if (enabled && signal_handlers[i].try_to_register) {
   signal_handlers[i].signal_event =
 tor_evsignal_new(tor_libevent_get_base(),
@@ -3079,7 +3091,7 @@ handle_signals(void)
   }
 }
 
-/* Make sure the signal handler for signal_num will be called. */
+/* Cause the signal handler for signal_num to be called in the event loop. */
 void
 activate_signal(int signal_num)
 {



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


[tor-commits] [torspec/master] dir-spec: Add consensus parameter hs_service_max_rdv_failures

2018-01-19 Thread nickm
commit e7231f34af2305f0fe9cd7a9741fac3457f04b7a
Author: David Goulet 
Date:   Fri Jan 19 10:29:27 2018 -0500

dir-spec: Add consensus parameter hs_service_max_rdv_failures

Signed-off-by: David Goulet 
---
 dir-spec.txt | 5 +
 1 file changed, 5 insertions(+)

diff --git a/dir-spec.txt b/dir-spec.txt
index 3a9c1c6..2f4a766 100644
--- a/dir-spec.txt
+++ b/dir-spec.txt
@@ -1986,6 +1986,11 @@
   will upload its descriptor to.
  "HSV3MaxDescriptorSize"   -- Maximum descriptor size (in bytes).
 
+"hs_service_max_rdv_failures" -- This parameter determines the maximum
+number of rendezvous attempt an HS service can make per introduction.
+Min 1. Max 10. Default 2.
+First-appeared: 0.3.3.0-alpha.
+
 "shared-rand-previous-value" SP NumReveals SP Value NL
 
 [At most once]

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


[tor-commits] [tor/release-0.3.2] Merge branch 'bug24895_031_02' into bug24895_032_02

2018-01-19 Thread nickm
commit f870f9c8bcdbf2f8fd1c1e1feb9f88dc111ab25a
Merge: 44388757c f98f7ca89
Author: David Goulet 
Date:   Fri Jan 19 16:26:26 2018 -0500

Merge branch 'bug24895_031_02' into bug24895_032_02

 changes/bug24895 |  8 
 src/or/hs_circuit.c  |  7 ++-
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  2 ++
 src/or/rendservice.c |  4 ++--
 5 files changed, 35 insertions(+), 3 deletions(-)

diff --cc src/or/hs_circuit.c
index 11ce2a188,0..66c59e0dc
mode 100644,00..100644
--- a/src/or/hs_circuit.c
+++ b/src/or/hs_circuit.c
@@@ -1,1208 -1,0 +1,1213 @@@
 +/* Copyright (c) 2017, The Tor Project, Inc. */
 +/* See LICENSE for licensing information */
 +
 +/**
 + * \file hs_circuit.c
 + **/
 +
 +#define HS_CIRCUIT_PRIVATE
 +
 +#include "or.h"
 +#include "circpathbias.h"
 +#include "circuitbuild.h"
 +#include "circuitlist.h"
 +#include "circuituse.h"
 +#include "config.h"
 +#include "policies.h"
 +#include "relay.h"
 +#include "rendservice.h"
 +#include "rephist.h"
 +#include "router.h"
 +
 +#include "hs_cell.h"
 +#include "hs_ident.h"
 +#include "hs_ntor.h"
 +#include "hs_service.h"
 +#include "hs_circuit.h"
 +
 +/* Trunnel. */
 +#include "ed25519_cert.h"
 +#include "hs/cell_common.h"
 +#include "hs/cell_establish_intro.h"
 +
 +/* A circuit is about to become an e2e rendezvous circuit. Check
 + * circ_purpose and ensure that it's properly set. Return true iff
 + * circuit purpose is properly set, otherwise return false. */
 +static int
 +circuit_purpose_is_correct_for_rend(unsigned int circ_purpose,
 +int is_service_side)
 +{
 +  if (is_service_side) {
 +if (circ_purpose != CIRCUIT_PURPOSE_S_CONNECT_REND) {
 +  log_warn(LD_BUG,
 +"HS e2e circuit setup with wrong purpose (%d)", circ_purpose);
 +  return 0;
 +}
 +  }
 +
 +  if (!is_service_side) {
 +if (circ_purpose != CIRCUIT_PURPOSE_C_REND_READY &&
 +circ_purpose != CIRCUIT_PURPOSE_C_REND_READY_INTRO_ACKED) {
 +  log_warn(LD_BUG,
 +"Client e2e circuit setup with wrong purpose (%d)", circ_purpose);
 +  return 0;
 +}
 +  }
 +
 +  return 1;
 +}
 +
 +/* Create and return a crypt path for the final hop of a v3 prop224 rendezvous
 + * circuit. Initialize the crypt path crypto using the output material from 
the
 + * ntor key exchange at ntor_key_seed.
 + *
 + * If is_service_side is set, we are the hidden service and the final
 + * hop of the rendezvous circuit is the client on the other side. */
 +static crypt_path_t *
 +create_rend_cpath(const uint8_t *ntor_key_seed, size_t seed_len,
 +  int is_service_side)
 +{
 +  uint8_t keys[HS_NTOR_KEY_EXPANSION_KDF_OUT_LEN];
 +  crypt_path_t *cpath = NULL;
 +
 +  /* Do the key expansion */
 +  if (hs_ntor_circuit_key_expansion(ntor_key_seed, seed_len,
 +keys, sizeof(keys)) < 0) {
 +goto err;
 +  }
 +
 +  /* Setup the cpath */
 +  cpath = tor_malloc_zero(sizeof(crypt_path_t));
 +  cpath->magic = CRYPT_PATH_MAGIC;
 +
 +  if (circuit_init_cpath_crypto(cpath, (char*)keys, sizeof(keys),
 +is_service_side, 1) < 0) {
 +tor_free(cpath);
 +goto err;
 +  }
 +
 + err:
 +  memwipe(keys, 0, sizeof(keys));
 +  return cpath;
 +}
 +
 +/* We are a v2 legacy HS client: Create and return a crypt path for the hidden
 + * service on the other side of the rendezvous circuit circ. Initialize
 + * the crypt path crypto using the body of the RENDEZVOUS1 cell at
 + * rend_cell_body (which must be at least DH_KEY_LEN+DIGEST_LEN bytes).
 + */
 +static crypt_path_t *
 +create_rend_cpath_legacy(origin_circuit_t *circ, const uint8_t 
*rend_cell_body)
 +{
 +  crypt_path_t *hop = NULL;
 +  char keys[DIGEST_LEN+CPATH_KEY_MATERIAL_LEN];
 +
 +  /* first DH_KEY_LEN bytes are g^y from the service. Finish the dh
 +   * handshake...*/
 +  tor_assert(circ->build_state);
 +  tor_assert(circ->build_state->pending_final_cpath);
 +  hop = circ->build_state->pending_final_cpath;
 +
 +  tor_assert(hop->rend_dh_handshake_state);
 +  if (crypto_dh_compute_secret(LOG_PROTOCOL_WARN, 
hop->rend_dh_handshake_state,
 +   (char*)rend_cell_body, DH_KEY_LEN,
 +   keys, DIGEST_LEN+CPATH_KEY_MATERIAL_LEN)<0) {
 +log_warn(LD_GENERAL, "Couldn't complete DH handshake.");
 +goto err;
 +  }
 +  /* ... and set up cpath. */
 +  if (circuit_init_cpath_crypto(hop,
 +keys+DIGEST_LEN, sizeof(keys)-DIGEST_LEN,
 +0, 0) < 0)
 +goto err;
 +
 +  /* Check whether the digest is right... */
 +  if (tor_memneq(keys, rend_cell_body+DH_KEY_LEN, DIGEST_LEN)) {
 +log_warn(LD_PROTOCOL, "Incorrect digest of key material.");
 +goto err;
 +  }
 +
 +  /* clean up the crypto stuff we just made */
 +  crypto_dh_free(hop->rend_dh_handshake_state);
 +  hop->rend_dh_handshake_state = NULL;
 +
 +  goto done;
 +
 + err:
 +  

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

2018-01-19 Thread nickm
commit b39c50cde8b1d7e3e27d5a6fc2e58ff208982637
Merge: 1cf11b694 a2aaf9509
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:43 2018 -0500

Merge branch 'maint-0.2.9' into maint-0.3.0

 Conflicts:
src/or/rendservice.c

 changes/bug24895 |  8 
 src/or/rendservice.c | 26 --
 2 files changed, 32 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.1] Merge branch 'maint-0.3.1' into release-0.3.1

2018-01-19 Thread nickm
commit 0e0baad5e82e6b06d63ba404ccd5cfb0afa61847
Merge: c30d2daae 7f2e23e7a
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:53 2018 -0500

Merge branch 'maint-0.3.1' into release-0.3.1

 changes/bug24895 |  8 
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  1 +
 src/or/hs_service.c  |  1 +
 src/or/rendservice.c | 10 --
 5 files changed, 35 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.1] turn MAX_REND_FAILURES into a function

2018-01-19 Thread nickm
commit cc5a9e96674f39677a65daa2f7a2f5af7ac3106e
Author: Roger Dingledine 
Date:   Fri Jan 19 02:38:07 2018 -0500

turn MAX_REND_FAILURES into a function

no actual changes in behavior
---
 src/or/rendservice.c | 24 
 1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index acc431a57..b503eda7f 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -108,13 +108,18 @@ struct rend_service_port_config_s {
 /** Don't try to build more than this many circuits before giving up
  * for a while.*/
 #define MAX_INTRO_CIRCS_PER_PERIOD 10
-/** How many times will a hidden service operator attempt to connect to
- * a requested rendezvous point before giving up? */
-#define MAX_REND_FAILURES 1
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
 
+/** How many times will a hidden service operator attempt to connect to
+ * a requested rendezvous point before giving up? */
+static int
+get_max_rend_failures(void)
+{
+  return 1;
+}
+
 /* Hidden service directory file names:
  * new file names should be added to rend_service_add_filenames_to_list()
  * for sandboxing purposes. */
@@ -2028,7 +2033,8 @@ rend_service_receive_introduction(origin_circuit_t 
*circuit,
 
   /* Launch a circuit to the client's chosen rendezvous point.
*/
-  for (i=0;ihs_service_side_rend_circ_has_been_relaunched = 1;
 
-  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
-   * failure_count >= MAX_REND_FAILURES, because we increment the failure
-   * count for our current failure *after* this clause. */
+  /* We check failure_count >= get_max_rend_failures()-1 below, and the -1
+   * is because we increment the failure count for our current failure
+   * *after* this clause. */
+  int max_rend_failures = get_max_rend_failures() - 1;
+
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
+  oldcirc->build_state->failure_count >= max_rend_failures ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


[tor-commits] [tor/release-0.3.2] hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2

2018-01-19 Thread nickm
commit 490ae26b24a6b2b8843515425cedabf99801163a
Author: Roger Dingledine 
Date:   Fri Jan 19 03:00:43 2018 -0500

hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2
---
 changes/bug24895 | 10 ++
 src/or/rendservice.c | 10 +-
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/changes/bug24895 b/changes/bug24895
index 7b90f6d26..7edde94a0 100644
--- a/changes/bug24895
+++ b/changes/bug24895
@@ -1,6 +1,8 @@
   o Major bugfixes (onion services):
-- Fix an "off by 2" error in counting rendezvous failures on the
-  onion service side. While we thought we would stop the rendezvous
-  attempt after one failed circuit, we were actually making three
-  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+- Fix an "off by 2" error in counting rendezvous failures on the onion
+  service side. While we thought we would stop the rendezvous attempt
+  after one failed circuit, we were actually making three circuit attempts
+  before giving up. Now switch to a default of 2, and allow the consensus
+  parameter "hs_service_max_rdv_failures" to override. Fixes bug 24895;
+  bugfix on 0.0.6.
 
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index b503eda7f..da200d138 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -111,13 +111,21 @@ struct rend_service_port_config_s {
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
+/* Default, minimum and maximum values for the maximum rendezvous failures
+ * consensus parameter. */
+#define MAX_REND_FAILURES_DEFAULT 2
+#define MAX_REND_FAILURES_MIN 1
+#define MAX_REND_FAILURES_MAX 10
 
 /** How many times will a hidden service operator attempt to connect to
  * a requested rendezvous point before giving up? */
 static int
 get_max_rend_failures(void)
 {
-  return 1;
+  return networkstatus_get_param(NULL, "hs_service_max_rdv_failures",
+ MAX_REND_FAILURES_DEFAULT,
+ MAX_REND_FAILURES_MIN,
+ MAX_REND_FAILURES_MAX);
 }
 
 /* Hidden service directory file names:



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


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

2018-01-19 Thread nickm
commit df4d5ebb7dfaac49915d7ef775fcbf242e6c688b
Merge: fa6137a90 129456e22
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:53 2018 -0500

Merge branch 'maint-0.3.2'

 changes/bug24895 |  8 
 src/or/hs_circuit.c  |  7 ++-
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  2 ++
 src/or/rendservice.c |  4 ++--
 5 files changed, 35 insertions(+), 3 deletions(-)

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


[tor-commits] [tor/release-0.2.9] Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

2018-01-19 Thread nickm
commit a2aaf9509ba578f4e7705b506ee9a0f764d24ff2
Merge: 36567c5ca 490ae26b2
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:15 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

 changes/bug24895 |  8 
 src/or/rendservice.c | 29 -
 2 files changed, 32 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.1] Merge branch 'bug24895_029_02' into bug24895_031_02

2018-01-19 Thread nickm
commit f98f7ca89865d1a477fc65165b92c86b9d8437fa
Merge: f406b9df0 490ae26b2
Author: David Goulet 
Date:   Fri Jan 19 16:21:55 2018 -0500

Merge branch 'bug24895_029_02' into bug24895_031_02

 changes/bug24895 |  8 
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  1 +
 src/or/hs_service.c  |  1 +
 src/or/rendservice.c | 10 --
 5 files changed, 35 insertions(+), 2 deletions(-)

diff --cc src/or/hs_common.c
index 7cef5a8e2,0..c9af3f688
mode 100644,00..100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@@ -1,346 -1,0 +1,363 @@@
 +/* Copyright (c) 2016-2017, 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 "or.h"
 +
 +#include "config.h"
 +#include "networkstatus.h"
 +#include "hs_common.h"
 +#include "rendcommon.h"
 +
 +/* Make sure that the directory for service is private, using the 
config
 + * username.
 + * If create is true:
 + *  - if the directory exists, change permissions if needed,
 + *  - if the directory does not exist, create it with the correct permissions.
 + * If create is false:
 + *  - if the directory exists, check permissions,
 + *  - if the directory does not exist, check if we think we can create it.
 + * Return 0 on success, -1 on failure. */
 +int
 +hs_check_service_private_dir(const char *username, const char *path,
 + unsigned int dir_group_readable,
 + unsigned int create)
 +{
 +  cpd_check_t check_opts = CPD_NONE;
 +
 +  tor_assert(path);
 +
 +  if (create) {
 +check_opts |= CPD_CREATE;
 +  } else {
 +check_opts |= CPD_CHECK_MODE_ONLY;
 +check_opts |= CPD_CHECK;
 +  }
 +  if (dir_group_readable) {
 +check_opts |= CPD_GROUP_READ;
 +  }
 +  /* Check/create directory */
 +  if (check_private_dir(path, check_opts, username) < 0) {
 +return -1;
 +  }
 +  return 0;
 +}
 +
 +/** Get the default HS time period length in minutes from the consensus. */
 +STATIC uint64_t
 +get_time_period_length(void)
 +{
 +  int32_t time_period_length = networkstatus_get_param(NULL, "hsdir_interval",
 + HS_TIME_PERIOD_LENGTH_DEFAULT,
 + HS_TIME_PERIOD_LENGTH_MIN,
 + HS_TIME_PERIOD_LENGTH_MAX);
 +  /* Make sure it's a positive value. */
 +  tor_assert(time_period_length >= 0);
 +  /* uint64_t will always be able to contain a int32_t */
 +  return (uint64_t) time_period_length;
 +}
 +
 +/** Get the HS time period number at time now */
 +STATIC uint64_t
 +get_time_period_num(time_t now)
 +{
 +  uint64_t time_period_num;
 +  uint64_t time_period_length = get_time_period_length();
 +  uint64_t minutes_since_epoch = now / 60;
 +
 +  /* Now subtract half a day to fit the prop224 time period schedule (see
 +   * section [TIME-PERIODS]). */
 +  tor_assert(minutes_since_epoch > HS_TIME_PERIOD_ROTATION_OFFSET);
 +  minutes_since_epoch -= HS_TIME_PERIOD_ROTATION_OFFSET;
 +
 +  /* Calculate the time period */
 +  time_period_num = minutes_since_epoch / time_period_length;
 +  return time_period_num;
 +}
 +
 +/** Get the number of the _upcoming_ HS time period, given that the current
 + *  time is now. */
 +uint64_t
 +hs_get_next_time_period_num(time_t now)
 +{
 +  return get_time_period_num(now) + 1;
 +}
 +
 +/* Create a new rend_data_t for a specific given version.
 + * Return a pointer to the newly allocated data structure. */
 +static rend_data_t *
 +rend_data_alloc(uint32_t version)
 +{
 +  rend_data_t *rend_data = NULL;
 +
 +  switch (version) {
 +  case HS_VERSION_TWO:
 +  {
 +rend_data_v2_t *v2 = tor_malloc_zero(sizeof(*v2));
 +v2->base_.version = HS_VERSION_TWO;
 +v2->base_.hsdirs_fp = smartlist_new();
 +rend_data = >base_;
 +break;
 +  }
 +  default:
 +tor_assert(0);
 +break;
 +  }
 +
 +  return rend_data;
 +}
 +
 +/** Free all storage associated with data */
 +void
 +rend_data_free(rend_data_t *data)
 +{
 +  if (!data) {
 +return;
 +  }
 +  /* By using our allocation function, this should always be set. */
 +  tor_assert(data->hsdirs_fp);
 +  /* Cleanup the HSDir identity digest. */
 +  SMARTLIST_FOREACH(data->hsdirs_fp, char *, d, tor_free(d));
 +  smartlist_free(data->hsdirs_fp);
 +  /* Depending on the version, cleanup. */
 +  switch (data->version) {
 +  case HS_VERSION_TWO:
 +  {
 +rend_data_v2_t *v2_data = TO_REND_DATA_V2(data);
 +tor_free(v2_data);
 +break;
 +  }
 +  default:
 +tor_assert(0);
 +  }
 +}
 +
 +/* Allocate and return a deep copy of data. */
 +rend_data_t *
 +rend_data_dup(const rend_data_t *data)
 +{
 

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

2018-01-19 Thread nickm
commit 129456e22257d24c380bed0f9ebc9d68955a01df
Merge: de3cf40fa 7f2e23e7a
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:50 2018 -0500

Merge branch 'maint-0.3.1' into maint-0.3.2




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


[tor-commits] [tor/release-0.3.2] Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

2018-01-19 Thread nickm
commit a2aaf9509ba578f4e7705b506ee9a0f764d24ff2
Merge: 36567c5ca 490ae26b2
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:15 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

 changes/bug24895 |  8 
 src/or/rendservice.c | 29 -
 2 files changed, 32 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.1] Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

2018-01-19 Thread nickm
commit a2aaf9509ba578f4e7705b506ee9a0f764d24ff2
Merge: 36567c5ca 490ae26b2
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:15 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

 changes/bug24895 |  8 
 src/or/rendservice.c | 29 -
 2 files changed, 32 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.2] Merge branch 'maint-0.3.2' into release-0.3.2

2018-01-19 Thread nickm
commit 03eb2037d11d2014044d9cc90f19d0d35e6045bf
Merge: 698334eee 129456e22
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:53 2018 -0500

Merge branch 'maint-0.3.2' into release-0.3.2

 changes/bug24895 |  8 
 src/or/hs_circuit.c  |  7 ++-
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  2 ++
 src/or/rendservice.c |  4 ++--
 5 files changed, 35 insertions(+), 3 deletions(-)

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


[tor-commits] [tor/release-0.3.2] MAX_REND_FAILURES is 1, but we would try three times

2018-01-19 Thread nickm
commit a15eb9ff439623f800de813c1a78eeb5d61f7f5a
Author: Roger Dingledine 
Date:   Mon Jan 15 16:30:55 2018 -0500

MAX_REND_FAILURES is 1, but we would try three times

Fix an "off by 2" error in counting rendezvous failures on the onion
service side.

While we thought we would stop the rendezvous attempt after one failed
circuit, we were actually making three circuit attempts before giving up.

Fixes bug 24895; bugfix on 0.0.6.
---
 changes/bug24895 | 6 ++
 src/or/rendservice.c | 5 -
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/changes/bug24895 b/changes/bug24895
new file mode 100644
index 0..7b90f6d26
--- /dev/null
+++ b/changes/bug24895
@@ -0,0 +1,6 @@
+  o Major bugfixes (onion services):
+- Fix an "off by 2" error in counting rendezvous failures on the
+  onion service side. While we thought we would stop the rendezvous
+  attempt after one failed circuit, we were actually making three
+  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index a8c383444..acc431a57 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -2930,8 +2930,11 @@ rend_service_relaunch_rendezvous(origin_circuit_t 
*oldcirc)
   }
   oldcirc->hs_service_side_rend_circ_has_been_relaunched = 1;
 
+  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
+   * failure_count >= MAX_REND_FAILURES, because we increment the failure
+   * count for our current failure *after* this clause. */
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count > MAX_REND_FAILURES ||
+  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


[tor-commits] [tor/release-0.3.2] turn MAX_REND_FAILURES into a function

2018-01-19 Thread nickm
commit cc5a9e96674f39677a65daa2f7a2f5af7ac3106e
Author: Roger Dingledine 
Date:   Fri Jan 19 02:38:07 2018 -0500

turn MAX_REND_FAILURES into a function

no actual changes in behavior
---
 src/or/rendservice.c | 24 
 1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index acc431a57..b503eda7f 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -108,13 +108,18 @@ struct rend_service_port_config_s {
 /** Don't try to build more than this many circuits before giving up
  * for a while.*/
 #define MAX_INTRO_CIRCS_PER_PERIOD 10
-/** How many times will a hidden service operator attempt to connect to
- * a requested rendezvous point before giving up? */
-#define MAX_REND_FAILURES 1
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
 
+/** How many times will a hidden service operator attempt to connect to
+ * a requested rendezvous point before giving up? */
+static int
+get_max_rend_failures(void)
+{
+  return 1;
+}
+
 /* Hidden service directory file names:
  * new file names should be added to rend_service_add_filenames_to_list()
  * for sandboxing purposes. */
@@ -2028,7 +2033,8 @@ rend_service_receive_introduction(origin_circuit_t 
*circuit,
 
   /* Launch a circuit to the client's chosen rendezvous point.
*/
-  for (i=0;ihs_service_side_rend_circ_has_been_relaunched = 1;
 
-  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
-   * failure_count >= MAX_REND_FAILURES, because we increment the failure
-   * count for our current failure *after* this clause. */
+  /* We check failure_count >= get_max_rend_failures()-1 below, and the -1
+   * is because we increment the failure count for our current failure
+   * *after* this clause. */
+  int max_rend_failures = get_max_rend_failures() - 1;
+
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
+  oldcirc->build_state->failure_count >= max_rend_failures ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


[tor-commits] [tor/release-0.3.2] Merge remote-tracking branch 'dgoulet/bug24895_031_02' into maint-0.3.1

2018-01-19 Thread nickm
commit 00a42277eaa5838e5b7d0b07a53db01780232511
Merge: 483a59ec2 f98f7ca89
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:02 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_031_02' into maint-0.3.1

 changes/bug24895 |  8 
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  1 +
 src/or/hs_service.c  |  1 +
 src/or/rendservice.c | 10 --
 5 files changed, 35 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.1] Merge remote-tracking branch 'dgoulet/bug24895_031_02' into maint-0.3.1

2018-01-19 Thread nickm
commit 00a42277eaa5838e5b7d0b07a53db01780232511
Merge: 483a59ec2 f98f7ca89
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:02 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_031_02' into maint-0.3.1

 changes/bug24895 |  8 
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  1 +
 src/or/hs_service.c  |  1 +
 src/or/rendservice.c | 10 --
 5 files changed, 35 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.2] Merge branch 'bug24895_029_02' into bug24895_031_02

2018-01-19 Thread nickm
commit f98f7ca89865d1a477fc65165b92c86b9d8437fa
Merge: f406b9df0 490ae26b2
Author: David Goulet 
Date:   Fri Jan 19 16:21:55 2018 -0500

Merge branch 'bug24895_029_02' into bug24895_031_02

 changes/bug24895 |  8 
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  1 +
 src/or/hs_service.c  |  1 +
 src/or/rendservice.c | 10 --
 5 files changed, 35 insertions(+), 2 deletions(-)

diff --cc src/or/hs_common.c
index 7cef5a8e2,0..c9af3f688
mode 100644,00..100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@@ -1,346 -1,0 +1,363 @@@
 +/* Copyright (c) 2016-2017, 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 "or.h"
 +
 +#include "config.h"
 +#include "networkstatus.h"
 +#include "hs_common.h"
 +#include "rendcommon.h"
 +
 +/* Make sure that the directory for service is private, using the 
config
 + * username.
 + * If create is true:
 + *  - if the directory exists, change permissions if needed,
 + *  - if the directory does not exist, create it with the correct permissions.
 + * If create is false:
 + *  - if the directory exists, check permissions,
 + *  - if the directory does not exist, check if we think we can create it.
 + * Return 0 on success, -1 on failure. */
 +int
 +hs_check_service_private_dir(const char *username, const char *path,
 + unsigned int dir_group_readable,
 + unsigned int create)
 +{
 +  cpd_check_t check_opts = CPD_NONE;
 +
 +  tor_assert(path);
 +
 +  if (create) {
 +check_opts |= CPD_CREATE;
 +  } else {
 +check_opts |= CPD_CHECK_MODE_ONLY;
 +check_opts |= CPD_CHECK;
 +  }
 +  if (dir_group_readable) {
 +check_opts |= CPD_GROUP_READ;
 +  }
 +  /* Check/create directory */
 +  if (check_private_dir(path, check_opts, username) < 0) {
 +return -1;
 +  }
 +  return 0;
 +}
 +
 +/** Get the default HS time period length in minutes from the consensus. */
 +STATIC uint64_t
 +get_time_period_length(void)
 +{
 +  int32_t time_period_length = networkstatus_get_param(NULL, "hsdir_interval",
 + HS_TIME_PERIOD_LENGTH_DEFAULT,
 + HS_TIME_PERIOD_LENGTH_MIN,
 + HS_TIME_PERIOD_LENGTH_MAX);
 +  /* Make sure it's a positive value. */
 +  tor_assert(time_period_length >= 0);
 +  /* uint64_t will always be able to contain a int32_t */
 +  return (uint64_t) time_period_length;
 +}
 +
 +/** Get the HS time period number at time now */
 +STATIC uint64_t
 +get_time_period_num(time_t now)
 +{
 +  uint64_t time_period_num;
 +  uint64_t time_period_length = get_time_period_length();
 +  uint64_t minutes_since_epoch = now / 60;
 +
 +  /* Now subtract half a day to fit the prop224 time period schedule (see
 +   * section [TIME-PERIODS]). */
 +  tor_assert(minutes_since_epoch > HS_TIME_PERIOD_ROTATION_OFFSET);
 +  minutes_since_epoch -= HS_TIME_PERIOD_ROTATION_OFFSET;
 +
 +  /* Calculate the time period */
 +  time_period_num = minutes_since_epoch / time_period_length;
 +  return time_period_num;
 +}
 +
 +/** Get the number of the _upcoming_ HS time period, given that the current
 + *  time is now. */
 +uint64_t
 +hs_get_next_time_period_num(time_t now)
 +{
 +  return get_time_period_num(now) + 1;
 +}
 +
 +/* Create a new rend_data_t for a specific given version.
 + * Return a pointer to the newly allocated data structure. */
 +static rend_data_t *
 +rend_data_alloc(uint32_t version)
 +{
 +  rend_data_t *rend_data = NULL;
 +
 +  switch (version) {
 +  case HS_VERSION_TWO:
 +  {
 +rend_data_v2_t *v2 = tor_malloc_zero(sizeof(*v2));
 +v2->base_.version = HS_VERSION_TWO;
 +v2->base_.hsdirs_fp = smartlist_new();
 +rend_data = >base_;
 +break;
 +  }
 +  default:
 +tor_assert(0);
 +break;
 +  }
 +
 +  return rend_data;
 +}
 +
 +/** Free all storage associated with data */
 +void
 +rend_data_free(rend_data_t *data)
 +{
 +  if (!data) {
 +return;
 +  }
 +  /* By using our allocation function, this should always be set. */
 +  tor_assert(data->hsdirs_fp);
 +  /* Cleanup the HSDir identity digest. */
 +  SMARTLIST_FOREACH(data->hsdirs_fp, char *, d, tor_free(d));
 +  smartlist_free(data->hsdirs_fp);
 +  /* Depending on the version, cleanup. */
 +  switch (data->version) {
 +  case HS_VERSION_TWO:
 +  {
 +rend_data_v2_t *v2_data = TO_REND_DATA_V2(data);
 +tor_free(v2_data);
 +break;
 +  }
 +  default:
 +tor_assert(0);
 +  }
 +}
 +
 +/* Allocate and return a deep copy of data. */
 +rend_data_t *
 +rend_data_dup(const rend_data_t *data)
 +{
 

[tor-commits] [tor/release-0.3.2] Merge remote-tracking branch 'dgoulet/bug24895_032_02' into maint-0.3.2

2018-01-19 Thread nickm
commit de3cf40fa658d62a61bb620c9dba8e90105da339
Merge: e2aacf100 f870f9c8b
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:44 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_032_02' into maint-0.3.2

 changes/bug24895 |  8 
 src/or/hs_circuit.c  |  7 ++-
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  2 ++
 src/or/rendservice.c |  4 ++--
 5 files changed, 35 insertions(+), 3 deletions(-)



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


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

2018-01-19 Thread nickm
commit b39c50cde8b1d7e3e27d5a6fc2e58ff208982637
Merge: 1cf11b694 a2aaf9509
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:43 2018 -0500

Merge branch 'maint-0.2.9' into maint-0.3.0

 Conflicts:
src/or/rendservice.c

 changes/bug24895 |  8 
 src/or/rendservice.c | 26 --
 2 files changed, 32 insertions(+), 2 deletions(-)




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


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

2018-01-19 Thread nickm
commit 401e70fba2199a2ca4f243e936a4506d37314032
Merge: 4953efec3 a2aaf9509
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:53 2018 -0500

Merge branch 'maint-0.2.9' into release-0.2.9

 changes/bug24895 |  8 
 src/or/rendservice.c | 29 -
 2 files changed, 32 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.1] Merge branch 'maint-0.3.0' into maint-0.3.1

2018-01-19 Thread nickm
commit 7f2e23e7acc0735e5ae933535a1b617a0860e528
Merge: 00a42277e b39c50cde
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:12 2018 -0500

Merge branch 'maint-0.3.0' into maint-0.3.1

"ours" merge to avoid maint-0.3.0's version of 24895.




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


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

2018-01-19 Thread nickm
commit d07e069c97ac5f9e0c9a593b7ec84c540b310f0f
Merge: b2b59b06c b39c50cde
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:53 2018 -0500

Merge branch 'maint-0.3.0' into release-0.3.0

 changes/bug24895 |  8 
 src/or/rendservice.c | 26 --
 2 files changed, 32 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.0] hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2

2018-01-19 Thread nickm
commit 490ae26b24a6b2b8843515425cedabf99801163a
Author: Roger Dingledine 
Date:   Fri Jan 19 03:00:43 2018 -0500

hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2
---
 changes/bug24895 | 10 ++
 src/or/rendservice.c | 10 +-
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/changes/bug24895 b/changes/bug24895
index 7b90f6d26..7edde94a0 100644
--- a/changes/bug24895
+++ b/changes/bug24895
@@ -1,6 +1,8 @@
   o Major bugfixes (onion services):
-- Fix an "off by 2" error in counting rendezvous failures on the
-  onion service side. While we thought we would stop the rendezvous
-  attempt after one failed circuit, we were actually making three
-  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+- Fix an "off by 2" error in counting rendezvous failures on the onion
+  service side. While we thought we would stop the rendezvous attempt
+  after one failed circuit, we were actually making three circuit attempts
+  before giving up. Now switch to a default of 2, and allow the consensus
+  parameter "hs_service_max_rdv_failures" to override. Fixes bug 24895;
+  bugfix on 0.0.6.
 
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index b503eda7f..da200d138 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -111,13 +111,21 @@ struct rend_service_port_config_s {
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
+/* Default, minimum and maximum values for the maximum rendezvous failures
+ * consensus parameter. */
+#define MAX_REND_FAILURES_DEFAULT 2
+#define MAX_REND_FAILURES_MIN 1
+#define MAX_REND_FAILURES_MAX 10
 
 /** How many times will a hidden service operator attempt to connect to
  * a requested rendezvous point before giving up? */
 static int
 get_max_rend_failures(void)
 {
-  return 1;
+  return networkstatus_get_param(NULL, "hs_service_max_rdv_failures",
+ MAX_REND_FAILURES_DEFAULT,
+ MAX_REND_FAILURES_MIN,
+ MAX_REND_FAILURES_MAX);
 }
 
 /* Hidden service directory file names:



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


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

2018-01-19 Thread nickm
commit 7f2e23e7acc0735e5ae933535a1b617a0860e528
Merge: 00a42277e b39c50cde
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:12 2018 -0500

Merge branch 'maint-0.3.0' into maint-0.3.1

"ours" merge to avoid maint-0.3.0's version of 24895.




___
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] turn MAX_REND_FAILURES into a function

2018-01-19 Thread nickm
commit cc5a9e96674f39677a65daa2f7a2f5af7ac3106e
Author: Roger Dingledine 
Date:   Fri Jan 19 02:38:07 2018 -0500

turn MAX_REND_FAILURES into a function

no actual changes in behavior
---
 src/or/rendservice.c | 24 
 1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index acc431a57..b503eda7f 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -108,13 +108,18 @@ struct rend_service_port_config_s {
 /** Don't try to build more than this many circuits before giving up
  * for a while.*/
 #define MAX_INTRO_CIRCS_PER_PERIOD 10
-/** How many times will a hidden service operator attempt to connect to
- * a requested rendezvous point before giving up? */
-#define MAX_REND_FAILURES 1
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
 
+/** How many times will a hidden service operator attempt to connect to
+ * a requested rendezvous point before giving up? */
+static int
+get_max_rend_failures(void)
+{
+  return 1;
+}
+
 /* Hidden service directory file names:
  * new file names should be added to rend_service_add_filenames_to_list()
  * for sandboxing purposes. */
@@ -2028,7 +2033,8 @@ rend_service_receive_introduction(origin_circuit_t 
*circuit,
 
   /* Launch a circuit to the client's chosen rendezvous point.
*/
-  for (i=0;ihs_service_side_rend_circ_has_been_relaunched = 1;
 
-  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
-   * failure_count >= MAX_REND_FAILURES, because we increment the failure
-   * count for our current failure *after* this clause. */
+  /* We check failure_count >= get_max_rend_failures()-1 below, and the -1
+   * is because we increment the failure count for our current failure
+   * *after* this clause. */
+  int max_rend_failures = get_max_rend_failures() - 1;
+
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
+  oldcirc->build_state->failure_count >= max_rend_failures ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


[tor-commits] [tor/release-0.3.0] turn MAX_REND_FAILURES into a function

2018-01-19 Thread nickm
commit cc5a9e96674f39677a65daa2f7a2f5af7ac3106e
Author: Roger Dingledine 
Date:   Fri Jan 19 02:38:07 2018 -0500

turn MAX_REND_FAILURES into a function

no actual changes in behavior
---
 src/or/rendservice.c | 24 
 1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index acc431a57..b503eda7f 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -108,13 +108,18 @@ struct rend_service_port_config_s {
 /** Don't try to build more than this many circuits before giving up
  * for a while.*/
 #define MAX_INTRO_CIRCS_PER_PERIOD 10
-/** How many times will a hidden service operator attempt to connect to
- * a requested rendezvous point before giving up? */
-#define MAX_REND_FAILURES 1
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
 
+/** How many times will a hidden service operator attempt to connect to
+ * a requested rendezvous point before giving up? */
+static int
+get_max_rend_failures(void)
+{
+  return 1;
+}
+
 /* Hidden service directory file names:
  * new file names should be added to rend_service_add_filenames_to_list()
  * for sandboxing purposes. */
@@ -2028,7 +2033,8 @@ rend_service_receive_introduction(origin_circuit_t 
*circuit,
 
   /* Launch a circuit to the client's chosen rendezvous point.
*/
-  for (i=0;ihs_service_side_rend_circ_has_been_relaunched = 1;
 
-  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
-   * failure_count >= MAX_REND_FAILURES, because we increment the failure
-   * count for our current failure *after* this clause. */
+  /* We check failure_count >= get_max_rend_failures()-1 below, and the -1
+   * is because we increment the failure count for our current failure
+   * *after* this clause. */
+  int max_rend_failures = get_max_rend_failures() - 1;
+
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
+  oldcirc->build_state->failure_count >= max_rend_failures ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


[tor-commits] [tor/release-0.3.1] hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2

2018-01-19 Thread nickm
commit 490ae26b24a6b2b8843515425cedabf99801163a
Author: Roger Dingledine 
Date:   Fri Jan 19 03:00:43 2018 -0500

hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2
---
 changes/bug24895 | 10 ++
 src/or/rendservice.c | 10 +-
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/changes/bug24895 b/changes/bug24895
index 7b90f6d26..7edde94a0 100644
--- a/changes/bug24895
+++ b/changes/bug24895
@@ -1,6 +1,8 @@
   o Major bugfixes (onion services):
-- Fix an "off by 2" error in counting rendezvous failures on the
-  onion service side. While we thought we would stop the rendezvous
-  attempt after one failed circuit, we were actually making three
-  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+- Fix an "off by 2" error in counting rendezvous failures on the onion
+  service side. While we thought we would stop the rendezvous attempt
+  after one failed circuit, we were actually making three circuit attempts
+  before giving up. Now switch to a default of 2, and allow the consensus
+  parameter "hs_service_max_rdv_failures" to override. Fixes bug 24895;
+  bugfix on 0.0.6.
 
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index b503eda7f..da200d138 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -111,13 +111,21 @@ struct rend_service_port_config_s {
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
+/* Default, minimum and maximum values for the maximum rendezvous failures
+ * consensus parameter. */
+#define MAX_REND_FAILURES_DEFAULT 2
+#define MAX_REND_FAILURES_MIN 1
+#define MAX_REND_FAILURES_MAX 10
 
 /** How many times will a hidden service operator attempt to connect to
  * a requested rendezvous point before giving up? */
 static int
 get_max_rend_failures(void)
 {
-  return 1;
+  return networkstatus_get_param(NULL, "hs_service_max_rdv_failures",
+ MAX_REND_FAILURES_DEFAULT,
+ MAX_REND_FAILURES_MIN,
+ MAX_REND_FAILURES_MAX);
 }
 
 /* Hidden service directory file names:



___
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.0

2018-01-19 Thread nickm
commit b39c50cde8b1d7e3e27d5a6fc2e58ff208982637
Merge: 1cf11b694 a2aaf9509
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:43 2018 -0500

Merge branch 'maint-0.2.9' into maint-0.3.0

 Conflicts:
src/or/rendservice.c

 changes/bug24895 |  8 
 src/or/rendservice.c | 26 --
 2 files changed, 32 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.0' into maint-0.3.1

2018-01-19 Thread nickm
commit 7f2e23e7acc0735e5ae933535a1b617a0860e528
Merge: 00a42277e b39c50cde
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:12 2018 -0500

Merge branch 'maint-0.3.0' into maint-0.3.1

"ours" merge to avoid maint-0.3.0's version of 24895.




___
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.2] Merge branch 'maint-0.3.1' into maint-0.3.2

2018-01-19 Thread nickm
commit 129456e22257d24c380bed0f9ebc9d68955a01df
Merge: de3cf40fa 7f2e23e7a
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:50 2018 -0500

Merge branch 'maint-0.3.1' into maint-0.3.2

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


[tor-commits] [tor/release-0.3.0] Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

2018-01-19 Thread nickm
commit a2aaf9509ba578f4e7705b506ee9a0f764d24ff2
Merge: 36567c5ca 490ae26b2
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:15 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

 changes/bug24895 |  8 
 src/or/rendservice.c | 29 -
 2 files changed, 32 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.0] Merge branch 'maint-0.2.9' into maint-0.3.0

2018-01-19 Thread nickm
commit b39c50cde8b1d7e3e27d5a6fc2e58ff208982637
Merge: 1cf11b694 a2aaf9509
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:43 2018 -0500

Merge branch 'maint-0.2.9' into maint-0.3.0

 Conflicts:
src/or/rendservice.c

 changes/bug24895 |  8 
 src/or/rendservice.c | 26 --
 2 files changed, 32 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] MAX_REND_FAILURES is 1, but we would try three times

2018-01-19 Thread nickm
commit a15eb9ff439623f800de813c1a78eeb5d61f7f5a
Author: Roger Dingledine 
Date:   Mon Jan 15 16:30:55 2018 -0500

MAX_REND_FAILURES is 1, but we would try three times

Fix an "off by 2" error in counting rendezvous failures on the onion
service side.

While we thought we would stop the rendezvous attempt after one failed
circuit, we were actually making three circuit attempts before giving up.

Fixes bug 24895; bugfix on 0.0.6.
---
 changes/bug24895 | 6 ++
 src/or/rendservice.c | 5 -
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/changes/bug24895 b/changes/bug24895
new file mode 100644
index 0..7b90f6d26
--- /dev/null
+++ b/changes/bug24895
@@ -0,0 +1,6 @@
+  o Major bugfixes (onion services):
+- Fix an "off by 2" error in counting rendezvous failures on the
+  onion service side. While we thought we would stop the rendezvous
+  attempt after one failed circuit, we were actually making three
+  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index a8c383444..acc431a57 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -2930,8 +2930,11 @@ rend_service_relaunch_rendezvous(origin_circuit_t 
*oldcirc)
   }
   oldcirc->hs_service_side_rend_circ_has_been_relaunched = 1;
 
+  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
+   * failure_count >= MAX_REND_FAILURES, because we increment the failure
+   * count for our current failure *after* this clause. */
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count > MAX_REND_FAILURES ||
+  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


[tor-commits] [tor/release-0.3.1] MAX_REND_FAILURES is 1, but we would try three times

2018-01-19 Thread nickm
commit a15eb9ff439623f800de813c1a78eeb5d61f7f5a
Author: Roger Dingledine 
Date:   Mon Jan 15 16:30:55 2018 -0500

MAX_REND_FAILURES is 1, but we would try three times

Fix an "off by 2" error in counting rendezvous failures on the onion
service side.

While we thought we would stop the rendezvous attempt after one failed
circuit, we were actually making three circuit attempts before giving up.

Fixes bug 24895; bugfix on 0.0.6.
---
 changes/bug24895 | 6 ++
 src/or/rendservice.c | 5 -
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/changes/bug24895 b/changes/bug24895
new file mode 100644
index 0..7b90f6d26
--- /dev/null
+++ b/changes/bug24895
@@ -0,0 +1,6 @@
+  o Major bugfixes (onion services):
+- Fix an "off by 2" error in counting rendezvous failures on the
+  onion service side. While we thought we would stop the rendezvous
+  attempt after one failed circuit, we were actually making three
+  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index a8c383444..acc431a57 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -2930,8 +2930,11 @@ rend_service_relaunch_rendezvous(origin_circuit_t 
*oldcirc)
   }
   oldcirc->hs_service_side_rend_circ_has_been_relaunched = 1;
 
+  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
+   * failure_count >= MAX_REND_FAILURES, because we increment the failure
+   * count for our current failure *after* this clause. */
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count > MAX_REND_FAILURES ||
+  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


[tor-commits] [tor/release-0.3.0] MAX_REND_FAILURES is 1, but we would try three times

2018-01-19 Thread nickm
commit a15eb9ff439623f800de813c1a78eeb5d61f7f5a
Author: Roger Dingledine 
Date:   Mon Jan 15 16:30:55 2018 -0500

MAX_REND_FAILURES is 1, but we would try three times

Fix an "off by 2" error in counting rendezvous failures on the onion
service side.

While we thought we would stop the rendezvous attempt after one failed
circuit, we were actually making three circuit attempts before giving up.

Fixes bug 24895; bugfix on 0.0.6.
---
 changes/bug24895 | 6 ++
 src/or/rendservice.c | 5 -
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/changes/bug24895 b/changes/bug24895
new file mode 100644
index 0..7b90f6d26
--- /dev/null
+++ b/changes/bug24895
@@ -0,0 +1,6 @@
+  o Major bugfixes (onion services):
+- Fix an "off by 2" error in counting rendezvous failures on the
+  onion service side. While we thought we would stop the rendezvous
+  attempt after one failed circuit, we were actually making three
+  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index a8c383444..acc431a57 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -2930,8 +2930,11 @@ rend_service_relaunch_rendezvous(origin_circuit_t 
*oldcirc)
   }
   oldcirc->hs_service_side_rend_circ_has_been_relaunched = 1;
 
+  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
+   * failure_count >= MAX_REND_FAILURES, because we increment the failure
+   * count for our current failure *after* this clause. */
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count > MAX_REND_FAILURES ||
+  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


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

2018-01-19 Thread nickm
commit 129456e22257d24c380bed0f9ebc9d68955a01df
Merge: de3cf40fa 7f2e23e7a
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:50 2018 -0500

Merge branch 'maint-0.3.1' into maint-0.3.2




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


[tor-commits] [tor/release-0.2.9] hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2

2018-01-19 Thread nickm
commit 490ae26b24a6b2b8843515425cedabf99801163a
Author: Roger Dingledine 
Date:   Fri Jan 19 03:00:43 2018 -0500

hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2
---
 changes/bug24895 | 10 ++
 src/or/rendservice.c | 10 +-
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/changes/bug24895 b/changes/bug24895
index 7b90f6d26..7edde94a0 100644
--- a/changes/bug24895
+++ b/changes/bug24895
@@ -1,6 +1,8 @@
   o Major bugfixes (onion services):
-- Fix an "off by 2" error in counting rendezvous failures on the
-  onion service side. While we thought we would stop the rendezvous
-  attempt after one failed circuit, we were actually making three
-  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+- Fix an "off by 2" error in counting rendezvous failures on the onion
+  service side. While we thought we would stop the rendezvous attempt
+  after one failed circuit, we were actually making three circuit attempts
+  before giving up. Now switch to a default of 2, and allow the consensus
+  parameter "hs_service_max_rdv_failures" to override. Fixes bug 24895;
+  bugfix on 0.0.6.
 
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index b503eda7f..da200d138 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -111,13 +111,21 @@ struct rend_service_port_config_s {
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
+/* Default, minimum and maximum values for the maximum rendezvous failures
+ * consensus parameter. */
+#define MAX_REND_FAILURES_DEFAULT 2
+#define MAX_REND_FAILURES_MIN 1
+#define MAX_REND_FAILURES_MAX 10
 
 /** How many times will a hidden service operator attempt to connect to
  * a requested rendezvous point before giving up? */
 static int
 get_max_rend_failures(void)
 {
-  return 1;
+  return networkstatus_get_param(NULL, "hs_service_max_rdv_failures",
+ MAX_REND_FAILURES_DEFAULT,
+ MAX_REND_FAILURES_MIN,
+ MAX_REND_FAILURES_MAX);
 }
 
 /* Hidden service directory file names:



___
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.2] Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

2018-01-19 Thread nickm
commit a2aaf9509ba578f4e7705b506ee9a0f764d24ff2
Merge: 36567c5ca 490ae26b2
Author: Nick Mathewson 
Date:   Fri Jan 19 16:29:15 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_029_02' into maint-0.2.9

 changes/bug24895 |  8 
 src/or/rendservice.c | 29 -
 2 files changed, 32 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.2] hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2

2018-01-19 Thread nickm
commit 490ae26b24a6b2b8843515425cedabf99801163a
Author: Roger Dingledine 
Date:   Fri Jan 19 03:00:43 2018 -0500

hs: Use hs_service_max_rdv_failures consensus param, defaulting to 2
---
 changes/bug24895 | 10 ++
 src/or/rendservice.c | 10 +-
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/changes/bug24895 b/changes/bug24895
index 7b90f6d26..7edde94a0 100644
--- a/changes/bug24895
+++ b/changes/bug24895
@@ -1,6 +1,8 @@
   o Major bugfixes (onion services):
-- Fix an "off by 2" error in counting rendezvous failures on the
-  onion service side. While we thought we would stop the rendezvous
-  attempt after one failed circuit, we were actually making three
-  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+- Fix an "off by 2" error in counting rendezvous failures on the onion
+  service side. While we thought we would stop the rendezvous attempt
+  after one failed circuit, we were actually making three circuit attempts
+  before giving up. Now switch to a default of 2, and allow the consensus
+  parameter "hs_service_max_rdv_failures" to override. Fixes bug 24895;
+  bugfix on 0.0.6.
 
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index b503eda7f..da200d138 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -111,13 +111,21 @@ struct rend_service_port_config_s {
 /** How many seconds should we spend trying to connect to a requested
  * rendezvous point before giving up? */
 #define MAX_REND_TIMEOUT 30
+/* Default, minimum and maximum values for the maximum rendezvous failures
+ * consensus parameter. */
+#define MAX_REND_FAILURES_DEFAULT 2
+#define MAX_REND_FAILURES_MIN 1
+#define MAX_REND_FAILURES_MAX 10
 
 /** How many times will a hidden service operator attempt to connect to
  * a requested rendezvous point before giving up? */
 static int
 get_max_rend_failures(void)
 {
-  return 1;
+  return networkstatus_get_param(NULL, "hs_service_max_rdv_failures",
+ MAX_REND_FAILURES_DEFAULT,
+ MAX_REND_FAILURES_MIN,
+ MAX_REND_FAILURES_MAX);
 }
 
 /* Hidden service directory file names:



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


[tor-commits] [tor/master] MAX_REND_FAILURES is 1, but we would try three times

2018-01-19 Thread nickm
commit a15eb9ff439623f800de813c1a78eeb5d61f7f5a
Author: Roger Dingledine 
Date:   Mon Jan 15 16:30:55 2018 -0500

MAX_REND_FAILURES is 1, but we would try three times

Fix an "off by 2" error in counting rendezvous failures on the onion
service side.

While we thought we would stop the rendezvous attempt after one failed
circuit, we were actually making three circuit attempts before giving up.

Fixes bug 24895; bugfix on 0.0.6.
---
 changes/bug24895 | 6 ++
 src/or/rendservice.c | 5 -
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/changes/bug24895 b/changes/bug24895
new file mode 100644
index 0..7b90f6d26
--- /dev/null
+++ b/changes/bug24895
@@ -0,0 +1,6 @@
+  o Major bugfixes (onion services):
+- Fix an "off by 2" error in counting rendezvous failures on the
+  onion service side. While we thought we would stop the rendezvous
+  attempt after one failed circuit, we were actually making three
+  circuit attempts before giving up. Fixes bug 24895; bugfix on 0.0.6.
+
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index a8c383444..acc431a57 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -2930,8 +2930,11 @@ rend_service_relaunch_rendezvous(origin_circuit_t 
*oldcirc)
   }
   oldcirc->hs_service_side_rend_circ_has_been_relaunched = 1;
 
+  /* We check failure_count >= MAX_REND_FAILURES-1 below rather than
+   * failure_count >= MAX_REND_FAILURES, because we increment the failure
+   * count for our current failure *after* this clause. */
   if (!oldcirc->build_state ||
-  oldcirc->build_state->failure_count > MAX_REND_FAILURES ||
+  oldcirc->build_state->failure_count >= MAX_REND_FAILURES-1 ||
   oldcirc->build_state->expiry_time < time(NULL)) {
 log_info(LD_REND,
  "Attempt to build circuit to %s for rendezvous has failed "



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


[tor-commits] [tor/master] Merge remote-tracking branch 'dgoulet/bug24895_032_02' into maint-0.3.2

2018-01-19 Thread nickm
commit de3cf40fa658d62a61bb620c9dba8e90105da339
Merge: e2aacf100 f870f9c8b
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:44 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_032_02' into maint-0.3.2

 changes/bug24895 |  8 
 src/or/hs_circuit.c  |  7 ++-
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  2 ++
 src/or/rendservice.c |  4 ++--
 5 files changed, 35 insertions(+), 3 deletions(-)



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


[tor-commits] [tor/master] Merge remote-tracking branch 'dgoulet/bug24895_031_02' into maint-0.3.1

2018-01-19 Thread nickm
commit 00a42277eaa5838e5b7d0b07a53db01780232511
Merge: 483a59ec2 f98f7ca89
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:02 2018 -0500

Merge remote-tracking branch 'dgoulet/bug24895_031_02' into maint-0.3.1

 changes/bug24895 |  8 
 src/or/hs_common.c   | 17 +
 src/or/hs_common.h   |  1 +
 src/or/hs_service.c  |  1 +
 src/or/rendservice.c | 10 --
 5 files changed, 35 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.2] Merge branch 'maint-0.3.0' into maint-0.3.1

2018-01-19 Thread nickm
commit 7f2e23e7acc0735e5ae933535a1b617a0860e528
Merge: 00a42277e b39c50cde
Author: Nick Mathewson 
Date:   Fri Jan 19 16:30:12 2018 -0500

Merge branch 'maint-0.3.0' into maint-0.3.1

"ours" merge to avoid maint-0.3.0's version of 24895.




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


  1   2   3   >