tor-commits
Threads by month
- ----- 2025 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
December 2013
- 25 participants
- 992 discussions

06 Dec '13
commit 1aca5ec7224eb162cf2d3ae16af7a17a1d27fb56
Author: Translation commit bot <translation(a)torproject.org>
Date: Fri Dec 6 02:15:08 2013 +0000
Update translations for gettor
---
pt_BR/gettor.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/pt_BR/gettor.po b/pt_BR/gettor.po
index d8acac8..fab302a 100644
--- a/pt_BR/gettor.po
+++ b/pt_BR/gettor.po
@@ -14,8 +14,8 @@ msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2013-01-19 13:40+0100\n"
-"PO-Revision-Date: 2013-12-02 23:50+0000\n"
-"Last-Translator: Communia <ameaneantie(a)riseup.net>\n"
+"PO-Revision-Date: 2013-12-06 02:10+0000\n"
+"Last-Translator: ebonsi\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/torproject/language/pt_BR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -105,7 +105,7 @@ msgstr "Este exemplo lhe enviará o pacote solicitado em uma versão local para\
#: lib/gettor/i18n.py:76
msgid " List of supported locales:"
-msgstr "Lista de locais disponíveis:"
+msgstr "Lista de locais suportados:"
#: lib/gettor/i18n.py:78
msgid "Here is a list of all available languages:"
1
0

[translation/https_everywhere_completed] Update translations for https_everywhere_completed
by translation@torproject.org 06 Dec '13
by translation@torproject.org 06 Dec '13
06 Dec '13
commit 83d82b230a5f32c941f116751f2b2f870aa399ea
Author: Translation commit bot <translation(a)torproject.org>
Date: Fri Dec 6 00:15:57 2013 +0000
Update translations for https_everywhere_completed
---
de/https-everywhere.dtd | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/de/https-everywhere.dtd b/de/https-everywhere.dtd
index f258ef7..919f19b 100644
--- a/de/https-everywhere.dtd
+++ b/de/https-everywhere.dtd
@@ -6,7 +6,7 @@
<!ENTITY https-everywhere.about.librarians "Regelliste">
<!ENTITY https-everywhere.about.thanks "Dank an">
<!ENTITY https-everywhere.about.contribute "Wenn du HTTPS-Everywhere magst, solltest du mal dieses ausprobieren">
-<!ENTITY https-everywhere.about.donate_tor "Spende an Tor">
+<!ENTITY https-everywhere.about.donate_tor "An Tor spenden">
<!ENTITY https-everywhere.about.tor_lang_code "de-DE">
<!ENTITY https-everywhere.about.donate_eff "Spende an EFF">
@@ -38,5 +38,9 @@
<!ENTITY https-everywhere.popup.paragraph1 "Oops. Du hattest die stabile Version von HTTPS Everywhere benutzt, aber wir haben dich möglicherweise in unserem letztdem Update auf eine Entwickler-Version geupgraded.">
<!ENTITY https-everywhere.popup.paragraph2 "Möchtest du zurück zur stabilen Version?">
<!ENTITY https-everywhere.popup.paragraph3 "Wir würden uns freuen, wenn du weiterhin die Entwickler-Version benutzen würdest, um uns zu helfen HTTPS Everywhere zu verbessern! Es könnte sein, dass du hier und da einige Fehler findest, welche du an https-everywhere(a)eff.org melden kannst. Entschuldige die Unannehmlichkeit und danke, dass du HTTPS Everywhere benutzt.">
-<!ENTITY https-everywhere.popup.keep "Entwickler-Version beibehalten.">
+<!ENTITY https-everywhere.popup.keep "Entwicklerversion beibehalten.">
<!ENTITY https-everywhere.popup.revert "Die letzte stabile Version herunterladen">
+
+<!ENTITY https-everywhere.ruleset-tests.status_title "HTTPS-Everywhere-Regelsatztests">
+<!ENTITY https-everywhere.ruleset-tests.status_cancel_button "Abbrechen">
+<!ENTITY https-everywhere.ruleset-tests.status_start_button "Start">
1
0

[translation/https_everywhere] Update translations for https_everywhere
by translation@torproject.org 06 Dec '13
by translation@torproject.org 06 Dec '13
06 Dec '13
commit b46bc216e2421241da12d71275eb2315d1ffa726
Author: Translation commit bot <translation(a)torproject.org>
Date: Fri Dec 6 00:15:52 2013 +0000
Update translations for https_everywhere
---
de/https-everywhere.dtd | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/de/https-everywhere.dtd b/de/https-everywhere.dtd
index 83af4a4..919f19b 100644
--- a/de/https-everywhere.dtd
+++ b/de/https-everywhere.dtd
@@ -6,7 +6,7 @@
<!ENTITY https-everywhere.about.librarians "Regelliste">
<!ENTITY https-everywhere.about.thanks "Dank an">
<!ENTITY https-everywhere.about.contribute "Wenn du HTTPS-Everywhere magst, solltest du mal dieses ausprobieren">
-<!ENTITY https-everywhere.about.donate_tor "Spende an Tor">
+<!ENTITY https-everywhere.about.donate_tor "An Tor spenden">
<!ENTITY https-everywhere.about.tor_lang_code "de-DE">
<!ENTITY https-everywhere.about.donate_eff "Spende an EFF">
@@ -38,9 +38,9 @@
<!ENTITY https-everywhere.popup.paragraph1 "Oops. Du hattest die stabile Version von HTTPS Everywhere benutzt, aber wir haben dich möglicherweise in unserem letztdem Update auf eine Entwickler-Version geupgraded.">
<!ENTITY https-everywhere.popup.paragraph2 "Möchtest du zurück zur stabilen Version?">
<!ENTITY https-everywhere.popup.paragraph3 "Wir würden uns freuen, wenn du weiterhin die Entwickler-Version benutzen würdest, um uns zu helfen HTTPS Everywhere zu verbessern! Es könnte sein, dass du hier und da einige Fehler findest, welche du an https-everywhere(a)eff.org melden kannst. Entschuldige die Unannehmlichkeit und danke, dass du HTTPS Everywhere benutzt.">
-<!ENTITY https-everywhere.popup.keep "Entwickler-Version beibehalten.">
+<!ENTITY https-everywhere.popup.keep "Entwicklerversion beibehalten.">
<!ENTITY https-everywhere.popup.revert "Die letzte stabile Version herunterladen">
-<!ENTITY https-everywhere.ruleset-tests.status_title "HTTPS Everywhere Ruleset Tests">
+<!ENTITY https-everywhere.ruleset-tests.status_title "HTTPS-Everywhere-Regelsatztests">
<!ENTITY https-everywhere.ruleset-tests.status_cancel_button "Abbrechen">
<!ENTITY https-everywhere.ruleset-tests.status_start_button "Start">
1
0

Re: [tor-commits] [tor/master] Set CREATE_NO_WINDOW in tor_spawn_background.
by Nick Mathewson 05 Dec '13
by Nick Mathewson 05 Dec '13
05 Dec '13
On Thu, Dec 5, 2013 at 1:37 PM, GITNE <gitne(a)gmx.de> wrote:
> nickm(a)torproject.org wrote:
>>
>> commit b60049544143e8569e491dd30541d28127bfdb22
>> Author: David Fifield <david(a)bamsoftware.com>
>> Date: Thu Dec 5 04:56:28 2013 +0000
>>
>> Set CREATE_NO_WINDOW in tor_spawn_background.
>> This flag prevents the creation of a console window popup on
>> Windows. We
>> need it for pluggable transport executables--otherwise you get blank
>> console windows when you launch the 3.x browser bundle with transports
>> enabled.
>>
>> http://msdn.microsoft.com/en-us/library/ms684863.aspx#CREATE_NO_WINDOW
>> The browser bundles that used Vidalia used to set this flag when
>> launching tor itself; it was apparently inherited by the pluggable
>> transports launched by tor. In the 3.x bundles, tor is launched by
>> some
>> JavaScript code, which doesn't have the ability to set
>> CREATE_NO_WINDOW.
>> tor itself is now being compiled with the -mwindows option, so that it
>> is a GUI application, not a console application, and doesn't show a
>> console window in any case. This workaround doesn't work for pluggable
>> transports, because they need to be able to write control messages to
>> stdout.
>> https://trac.torproject.org/projects/tor/ticket/9444#comment:30
>
>
> Please note, that this is actually a specification problem. Tor's current
> PTE specification makes invalid or naive assumptions about IPC and the
> available methodologies thereof on Windows. The pluggable transport
> executables on Windows should be linked as UI applications too, not as
> console applications. If the PTEs need to talk to the user on the console,
> they should do so by detecting whether they were launched from a console,
> get a handle to it and in that case write to this console. However, they can
> write to stdout or stderr anytime they want, no matter whether they have
> been launched from console or any UI app. Hence, the changeset here does not
> fix anything substantially because Tor's PTE specification is flawed for
> Windows. Tor's PTE specification for Windows /must/ be revised.
>
> IPC on Windows should either be done via clipboard, COM, data copy
> (WM_COPYDATA event), DDE, file mapping, mailslots, pipes, RPC, or Windows
> Sockets, not via console output or stdin/stdout/stderr. Please do not assume
> stdin, stdout, and stderr to be equivalent to POSIX pipes, simply because
> they are not pipes on Windows. The same applies to Windows pipes. They are
> similar to POSIX pipes but not equivalent, meaning they do not implement
> POSIX pipes' semantics.
Hi! Your message got bounced from tor-commits because that list only
takes posts from people with commit permisions on our repositories.
Maybe send it to tor-dev (which allows all subscribers to post), or
use the bugtracker?
(As a side note, sure, I'm fine with revisions or extensions to the
pluggable transport protocol for windows, but they probably won't be
ones that windows programmers would like unless they are designed by a
windows programmer.)
peace,
--
Nick
1
0

[translation/liveusb-creator] Update translations for liveusb-creator
by translation@torproject.org 05 Dec '13
by translation@torproject.org 05 Dec '13
05 Dec '13
commit 663782d81163a59833c2a5de3c330f0f9cf99f2e
Author: Translation commit bot <translation(a)torproject.org>
Date: Thu Dec 5 19:45:55 2013 +0000
Update translations for liveusb-creator
---
de/de.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/de/de.po b/de/de.po
index 7357043..5c93db2 100644
--- a/de/de.po
+++ b/de/de.po
@@ -23,8 +23,8 @@ msgid ""
msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-11-12 13:29+0100\n"
-"PO-Revision-Date: 2013-11-28 16:20+0000\n"
+"POT-Creation-Date: 2013-11-30 15:23+0100\n"
+"PO-Revision-Date: 2013-12-05 19:40+0000\n"
"Last-Translator: to_ba\n"
"Language-Team: German (http://www.transifex.com/projects/p/torproject/language/de/)\n"
"MIME-Version: 1.0\n"
@@ -363,7 +363,7 @@ msgstr "Die ausgewählte Datei konnte nicht gelesen werden. Bitte korrigieren Si
msgid ""
"There was a problem executing the following command: `%(command)s`.\n"
"A more detailed error log has been written to '%(filename)s'."
-msgstr "Es gab ein Problem beim Ausführen des folgenden Befehls `%(command)s`. \nEine detailreichere Fehlerbeschreibung ist hier zu finden: '%(filename)s'"
+msgstr "Es gab ein Problem beim Ausführen des folgenden Befehls »%(command)s«. \nEine detailreichere Fehlerbeschreibung ist hier zu finden: »%(filename)s«"
#: ../liveusb/dialog.py:160
msgid ""
1
0

05 Dec '13
commit b60049544143e8569e491dd30541d28127bfdb22
Author: David Fifield <david(a)bamsoftware.com>
Date: Thu Dec 5 04:56:28 2013 +0000
Set CREATE_NO_WINDOW in tor_spawn_background.
This flag prevents the creation of a console window popup on Windows. We
need it for pluggable transport executables--otherwise you get blank
console windows when you launch the 3.x browser bundle with transports
enabled.
http://msdn.microsoft.com/en-us/library/ms684863.aspx#CREATE_NO_WINDOW
The browser bundles that used Vidalia used to set this flag when
launching tor itself; it was apparently inherited by the pluggable
transports launched by tor. In the 3.x bundles, tor is launched by some
JavaScript code, which doesn't have the ability to set CREATE_NO_WINDOW.
tor itself is now being compiled with the -mwindows option, so that it
is a GUI application, not a console application, and doesn't show a
console window in any case. This workaround doesn't work for pluggable
transports, because they need to be able to write control messages to
stdout.
https://trac.torproject.org/projects/tor/ticket/9444#comment:30
---
changes/bug10297 | 4 ++++
src/common/util.c | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/changes/bug10297 b/changes/bug10297
new file mode 100644
index 0000000..4cdd80f
--- /dev/null
+++ b/changes/bug10297
@@ -0,0 +1,4 @@
+ o Minor features:
+ - Spawn background processes using the CREATE_NO_WINDOW flag on
+ Windows, in order to prevent a console window from appearing.
+ Resolves ticket 10297.
diff --git a/src/common/util.c b/src/common/util.c
index ae3f69b..054de3d 100644
--- a/src/common/util.c
+++ b/src/common/util.c
@@ -3803,7 +3803,7 @@ tor_spawn_background(const char *const filename, const char **argv,
TRUE, // handles are inherited
/*(TODO: set CREATE_NEW CONSOLE/PROCESS_GROUP to make GetExitCodeProcess()
* work?) */
- 0, // creation flags
+ CREATE_NO_WINDOW, // creation flags
(env==NULL) ? NULL : env->windows_environment_block,
NULL, // use parent's current directory
&siStartInfo, // STARTUPINFO pointer
1
0

r26453: {website} update the script some more, do a trial run and update of th (in website/trunk: . include)
by Andrew Lewman 05 Dec '13
by Andrew Lewman 05 Dec '13
05 Dec '13
Author: phobos
Date: 2013-12-05 17:11:12 +0000 (Thu, 05 Dec 2013)
New Revision: 26453
Added:
website/trunk/include/tor-mirrors.csv
Modified:
website/trunk/include/mirrors-table.wmi
website/trunk/update-mirrors.pl
Log:
update the script some more, do a trial run and update of the live mirrors-table.
Modified: website/trunk/include/mirrors-table.wmi
===================================================================
--- website/trunk/include/mirrors-table.wmi 2013-12-05 08:13:08 UTC (rev 26452)
+++ website/trunk/include/mirrors-table.wmi 2013-12-05 17:11:12 UTC (rev 26453)
@@ -1,15 +1,15 @@
<tr>
- <td>CZ</td>
+ <td>US</td>
- <td>Lightning-bolt.net</td>
+ <td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://torproject.lightning-bolt.net/dist/">http</a></td>
- <td><a href="http://torproject.lightning-bolt.net/">http</a></td>
+ <td><a href="http://mirror.nametoday.me/tor/dist/">http</a></td>
+ <td><a href="http://mirror.nametoday.me/tor/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -18,15 +18,32 @@
<tr>
+ <td>NO</td>
+
+ <td>MultiNet AS</td>
+
+ <td>Up to date</td>
+
+ <td> - </td>
+ <td><a href="http://tor.multinet.no/dist/">http</a></td>
+ <td><a href="http://tor.multinet.no/">http</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+</tr>
+
+<tr>
+
<td>NL</td>
- <td>CCC</td>
+ <td>BBLN</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.ccc.de/dist/">http</a></td>
- <td><a href="http://tor.ccc.de/">http</a></td>
+ <td><a href="http://t02.nl/mirror/dist/">http</a></td>
+ <td><a href="http://t02.nl/mirror/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -35,15 +52,15 @@
<tr>
- <td>DK</td>
+ <td>US</td>
- <td>Zentrum der Gesundheit</td>
+ <td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.idnr.ws/dist/">http</a></td>
- <td><a href="http://tor.idnr.ws/">http</a></td>
+ <td><a href="http://199.175.55.215/dist/">http</a></td>
+ <td><a href="http://199.175.55.215/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -69,15 +86,15 @@
<tr>
- <td>ES</td>
+ <td>IS</td>
- <td></td>
+ <td>torproject.is</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.zilog.es/dist/">http</a></td>
- <td><a href="http://tor.zilog.es/">http</a></td>
+ <td><a href="http://torproject.is/dist/">http</a></td>
+ <td><a href="http://torproject.is/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -86,6 +103,23 @@
<tr>
+ <td>DE</td>
+
+ <td>spline</td>
+
+ <td>Up to date</td>
+
+ <td><a href="ftp://ftp.spline.de/pub/tor">ftp</a></td>
+ <td><a href="http://tor.spline.de/dist/">http</a></td>
+ <td><a href="http://tor.spline.de/">http</a></td>
+ <td><a href="https://tor.spline.inf.fu-berlin.de/dist/">https</a></td>
+ <td><a href="https://tor.spline.inf.fu-berlin.de/">https</a></td>
+ <td><a href="rsync://ftp.spline.de/tor/dist">rsync</a></td>
+ <td><a href="rsync://ftp.spline.de/tor">rsync</a></td>
+</tr>
+
+<tr>
+
<td>RO</td>
<td>me0w.cc</td>
@@ -105,81 +139,81 @@
<td>DE</td>
- <td></td>
+ <td>borgmann.tv</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://torproject.cryptowars.info/dist/">http</a></td>
- <td><a href="http://torproject.cryptowars.info/">http</a></td>
- <td><a href="https://torproject.cryptowars.info/dist/">https</a></td>
- <td><a href="https://torproject.cryptowars.info/">https</a></td>
+ <td><a href="http://tor.borgmann.tv/dist/">http</a></td>
+ <td><a href="http://tor.borgmann.tv/">http</a></td>
<td> - </td>
- <td><a href="rsync://torproject.cryptowars.info/">rsync</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>FR</td>
+ <td>HU</td>
- <td>linsrv</td>
+ <td>Unknown</td>
<td>Up to date</td>
- <td><a href="ftp://ftp.linsrv.net/pub/torproject/">ftp</a></td>
- <td><a href="http://mirrors.linsrv.net/torproject/dist/">http</a></td>
- <td><a href="http://mirrors.linsrv.net/torproject/">http</a></td>
<td> - </td>
+ <td><a href="http://mirror.tor.hu/dist/">http</a></td>
+ <td><a href="http://mirror.tor.hu/">http</a></td>
<td> - </td>
- <td><a href="mirrors.linsrv.net::pub/torproject/dist">rsync</a></td>
- <td><a href="mirrors.linsrv.net::pub/torproject">rsync</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>DE</td>
+ <td>NL</td>
- <td></td>
+ <td>CCC</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.dev-random.de/dist/">http</a></td>
- <td><a href="http://tor.dev-random.de/">http</a></td>
- <td><a href="https://tor.dev-random.de/dist/">https</a></td>
- <td><a href="https://tor.dev-random.de/">https</a></td>
+ <td><a href="http://tor.ccc.de/dist/">http</a></td>
+ <td><a href="http://tor.ccc.de/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
<td>AT</td>
- <td>cyberarmy</td>
+ <td></td>
<td>Up to date</td>
<td> - </td>
+ <td><a href="http://tor.dont-know-me.at/dist/">http</a></td>
+ <td><a href="http://tor.dont-know-me.at/">http</a></td>
<td> - </td>
- <td><a href="http://tor.cyberarmy.at/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
- <td> - </td>
</tr>
<tr>
- <td>NO</td>
+ <td>INT</td>
- <td>MultiNet AS</td>
+ <td>CoralCDN</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.multinet.no/dist/">http</a></td>
- <td><a href="http://tor.multinet.no/">http</a></td>
+ <td><a href="http://www.torproject.org.nyud.net/dist/">http</a></td>
+ <td><a href="http://www.torproject.org.nyud.net/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -188,15 +222,15 @@
<tr>
- <td>FR</td>
+ <td>US</td>
<td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://torproject.c3l.lu/dist/">http</a></td>
- <td><a href="http://torproject.c3l.lu/">http</a></td>
+ <td><a href="http://mirror.nametoday.me/tor/dist/">http</a></td>
+ <td><a href="http://mirror.nametoday.me/tor/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -205,15 +239,15 @@
<tr>
- <td>DE</td>
+ <td>AT</td>
- <td>chaos darmstadt</td>
+ <td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://mirrors.chaos-darmstadt.de/tor-mirror/dist/">http</a></td>
- <td><a href="http://mirrors.chaos-darmstadt.de/tor-mirror/">http</a></td>
+ <td><a href="http://torproject.ph3x.at/dist/">http</a></td>
+ <td><a href="http://torproject.ph3x.at/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -239,36 +273,53 @@
<tr>
- <td>US</td>
+ <td>CH</td>
- <td>HackThisSite.org</td>
+ <td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://mirror.hackthissite.org/tor">http</a></td>
- <td><a href="http://tor.hackthissite.org/">http</a></td>
- <td><a href="https://mirror.hackthissite.org/tor">https</a></td>
- <td><a href="https://tor.hackthissite.org/">https</a></td>
+ <td><a href="http://torproject.pillo-srv.ch/dist/">http</a></td>
+ <td><a href="http://torproject.pillo-srv.ch/">http</a></td>
+ <td><a href="https://torproject.pillo-srv.ch/dist/">https</a></td>
+ <td><a href="https://torproject.pillo-srv.ch/">https</a></td>
<td> - </td>
<td> - </td>
</tr>
<tr>
- <td>US</td>
+ <td>BE</td>
- <td></td>
+ <td>teambelgium</td>
<td>Up to date</td>
+ <td><a href="ftp://tor.teambelgium.net:2121/torproject/">ftp</a></td>
+ <td><a href="http://tor.teambelgium.net:8082/dist/">http</a></td>
+ <td><a href="http://tor.teambelgium.net:8082/">http</a></td>
<td> - </td>
- <td><a href="http://199.175.55.215/dist/">http</a></td>
- <td><a href="http://199.175.55.215/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
+</tr>
+
+<tr>
+
+ <td>US</td>
+
+ <td>Xpdm</td>
+
+ <td>Up to date</td>
+
<td> - </td>
+ <td><a href="http://torproj.xpdm.us/dist/">http</a></td>
+ <td><a href="http://torproj.xpdm.us/">http</a></td>
+ <td><a href="https://torproj.xpdm.us/dist/">https</a></td>
+ <td><a href="https://torproj.xpdm.us/">https</a></td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
@@ -290,49 +341,49 @@
<tr>
- <td>US</td>
+ <td>DE</td>
<td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://torproject.guilhem.org/dist/">http</a></td>
- <td><a href="http://torproject.guilhem.org/">http</a></td>
- <td><a href="https://torproject.guilhem.org/dist/">https</a></td>
- <td><a href="https://torproject.guilhem.org/">https</a></td>
+ <td><a href="http://tormirror.almnet.de/dist/">http</a></td>
+ <td><a href="http://tormirror.almnet.de/">http</a></td>
+ <td><a href="https://tormirror.almnet.de/dist/">https</a></td>
+ <td><a href="https://tormirror.almnet.de/">https</a></td>
<td> - </td>
<td> - </td>
</tr>
<tr>
- <td>RU</td>
+ <td>LT</td>
- <td>Soviet Anonymous</td>
+ <td></td>
<td>Up to date</td>
- <td><a href="ftp://creep.im/mirrors/tor">ftp</a></td>
- <td><a href="http://creep.im/tor/dist/">http</a></td>
- <td><a href="http://creep.im/tor">http</a></td>
- <td><a href="https://creep.im/tor/dist/">https</a></td>
- <td><a href="https://creep.im/tor">https</a></td>
- <td><a href="rsync://creep.im/tor-dist">rsync</a></td>
- <td><a href="rsync://creep.im/tor">rsync</a></td>
+ <td> - </td>
+ <td><a href="http://tor.vesta.nu/dist/">http</a></td>
+ <td><a href="http://tor.vesta.nu/">http</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
<td>US</td>
- <td></td>
+ <td>AskApache</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://mirror.nametoday.me/tor/dist/">http</a></td>
- <td><a href="http://mirror.nametoday.me/tor/">http</a></td>
+ <td><a href="http://tor.askapache.com/dist/">http</a></td>
+ <td><a href="http://tor.askapache.com/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -341,19 +392,19 @@
<tr>
- <td>DE</td>
+ <td>US</td>
- <td>spline</td>
+ <td>hessmo</td>
<td>Up to date</td>
- <td><a href="ftp://ftp.spline.de/pub/tor">ftp</a></td>
- <td><a href="http://tor.spline.de/dist/">http</a></td>
- <td><a href="http://tor.spline.de/">http</a></td>
- <td><a href="https://tor.spline.inf.fu-berlin.de/dist/">https</a></td>
- <td><a href="https://tor.spline.inf.fu-berlin.de/">https</a></td>
- <td><a href="rsync://ftp.spline.de/tor/dist">rsync</a></td>
- <td><a href="rsync://ftp.spline.de/tor">rsync</a></td>
+ <td> - </td>
+ <td><a href="http://mirror.hessmo.com/tor/dist/">http</a></td>
+ <td><a href="http://mirror.hessmo.com/tor/">http</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
@@ -365,29 +416,46 @@
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tormirror.almnet.de/dist/">http</a></td>
- <td><a href="http://tormirror.almnet.de/">http</a></td>
- <td><a href="https://tormirror.almnet.de/dist/">https</a></td>
- <td><a href="https://tormirror.almnet.de/">https</a></td>
+ <td><a href="http://tor.dev-random.de/dist/">http</a></td>
+ <td><a href="http://tor.dev-random.de/">http</a></td>
+ <td><a href="https://tor.dev-random.de/dist/">https</a></td>
+ <td><a href="https://tor.dev-random.de/">https</a></td>
<td> - </td>
<td> - </td>
</tr>
<tr>
- <td>INT</td>
+ <td>FR</td>
- <td>CoralCDN</td>
+ <td>linsrv</td>
<td>Up to date</td>
+ <td><a href="ftp://ftp.linsrv.net/pub/torproject/">ftp</a></td>
+ <td><a href="http://mirrors.linsrv.net/torproject/dist/">http</a></td>
+ <td><a href="http://mirrors.linsrv.net/torproject/">http</a></td>
<td> - </td>
- <td><a href="http://www.torproject.org.nyud.net/dist/">http</a></td>
- <td><a href="http://www.torproject.org.nyud.net/">http</a></td>
<td> - </td>
+ <td><a href="mirrors.linsrv.net::pub/torproject/dist">rsync</a></td>
+ <td><a href="mirrors.linsrv.net::pub/torproject">rsync</a></td>
+</tr>
+
+<tr>
+
+ <td>FR</td>
+
+ <td></td>
+
+ <td>Up to date</td>
+
<td> - </td>
+ <td><a href="http://tor.mirror.chekanov.net/dist/">http</a></td>
+ <td><a href="http://tor.mirror.chekanov.net/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
@@ -409,74 +477,210 @@
<tr>
- <td>BE</td>
+ <td>FR</td>
- <td>teambelgium</td>
+ <td>BarkerJr</td>
<td>Up to date</td>
- <td><a href="ftp://tor.teambelgium.net:2121/torproject/">ftp</a></td>
- <td><a href="http://tor.teambelgium.net:8082/dist/">http</a></td>
- <td><a href="http://tor.teambelgium.net:8082/">http</a></td>
<td> - </td>
+ <td><a href="http://www.oignon.net/dist/">http</a></td>
+ <td><a href="http://www.oignon.net/">http</a></td>
+ <td><a href="https://www.oignon.net/dist/">https</a></td>
+ <td><a href="https://www.oignon.net/">https</a></td>
<td> - </td>
<td> - </td>
+</tr>
+
+<tr>
+
+ <td>US</td>
+
+ <td>HackThisSite.org</td>
+
+ <td>Up to date</td>
+
<td> - </td>
+ <td><a href="http://mirror.hackthissite.org/tor">http</a></td>
+ <td><a href="http://tor.hackthissite.org/">http</a></td>
+ <td><a href="https://mirror.hackthissite.org/tor">https</a></td>
+ <td><a href="https://tor.hackthissite.org/">https</a></td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>IS</td>
+ <td>DE</td>
- <td>torproject.is</td>
+ <td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://torproject.is/dist/">http</a></td>
- <td><a href="http://torproject.is/">http</a></td>
+ <td><a href="http://tor.linuxlounge.net/dist/">http</a></td>
+ <td><a href="http://tor.linuxlounge.net/">http</a></td>
+ <td><a href="https://tor.linuxlounge.net/dist/">https</a></td>
+ <td><a href="https://tor.linuxlounge.net/">https</a></td>
<td> - </td>
<td> - </td>
+</tr>
+
+<tr>
+
+ <td>AU</td>
+
+ <td>CoffsWiFi</td>
+
+ <td>Up to date</td>
+
<td> - </td>
+ <td><a href="http://torproject.coffswifi.net/dist">http</a></td>
+ <td><a href="http://torproject.coffswifi.net">http</a></td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
<td>AT</td>
+ <td>cyberarmy</td>
+
+ <td>Up to date</td>
+
+ <td> - </td>
+ <td> - </td>
+ <td><a href="http://tor.cyberarmy.at/">http</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+</tr>
+
+<tr>
+
+ <td>DE</td>
+
<td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://torproject.ph3x.at/dist/">http</a></td>
- <td><a href="http://torproject.ph3x.at/">http</a></td>
+ <td><a href="http://torproject.cryptowars.info/dist/">http</a></td>
+ <td><a href="http://torproject.cryptowars.info/">http</a></td>
+ <td><a href="https://torproject.cryptowars.info/dist/">https</a></td>
+ <td><a href="https://torproject.cryptowars.info/">https</a></td>
<td> - </td>
+ <td><a href="rsync://torproject.cryptowars.info/">rsync</a></td>
+</tr>
+
+<tr>
+
+ <td>IS</td>
+
+ <td>TheOnionRouter</td>
+
+ <td>Up to date</td>
+
<td> - </td>
+ <td><a href="http://theonionrouter.com/dist/">http</a></td>
+ <td><a href="http://theonionrouter.com/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>AT</td>
+ <td>DE</td>
+ <td>crazyhaze.de</td>
+
+ <td>Up to date</td>
+
+ <td> - </td>
+ <td><a href="http://tor.crazyhaze.de/dist/">http</a></td>
+ <td><a href="http://tor.crazyhaze.de/">http</a></td>
+ <td><a href="https://tor.crazyhaze.de/dist/">https</a></td>
+ <td><a href="https://tor.crazyhaze.de/">https</a></td>
+ <td> - </td>
+ <td> - </td>
+</tr>
+
+<tr>
+
+ <td>US</td>
+
<td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.dont-know-me.at/dist/">http</a></td>
- <td><a href="http://tor.dont-know-me.at/">http</a></td>
+ <td><a href="http://torproject.guilhem.org/dist/">http</a></td>
+ <td><a href="http://torproject.guilhem.org/">http</a></td>
+ <td><a href="https://torproject.guilhem.org/dist/">https</a></td>
+ <td><a href="https://torproject.guilhem.org/">https</a></td>
<td> - </td>
<td> - </td>
+</tr>
+
+<tr>
+
+ <td>DE</td>
+
+ <td>chaos darmstadt</td>
+
+ <td>Up to date</td>
+
<td> - </td>
+ <td><a href="http://mirrors.chaos-darmstadt.de/tor-mirror/dist/">http</a></td>
+ <td><a href="http://mirrors.chaos-darmstadt.de/tor-mirror/">http</a></td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
+ <td>RU</td>
+
+ <td>Soviet Anonymous</td>
+
+ <td>Up to date</td>
+
+ <td><a href="ftp://creep.im/mirrors/tor">ftp</a></td>
+ <td><a href="http://creep.im/tor/dist/">http</a></td>
+ <td><a href="http://creep.im/tor">http</a></td>
+ <td><a href="https://creep.im/tor/dist/">https</a></td>
+ <td><a href="https://creep.im/tor">https</a></td>
+ <td><a href="rsync://creep.im/tor-dist">rsync</a></td>
+ <td><a href="rsync://creep.im/tor">rsync</a></td>
+</tr>
+
+<tr>
+
+ <td>US</td>
+
+ <td></td>
+
+ <td>Up to date</td>
+
+ <td><a href="ftp://mirrors.go-parts.com/tor/">ftp</a></td>
+ <td><a href="http://mirrors.go-parts.com/tor/dist/">http</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td><a href="rsync://mirrors.go-parts.com/mirrors/tor/">rsync</a></td>
+ <td> - </td>
+</tr>
+
+<tr>
+
<td>DE</td>
<td>torservers</td>
@@ -494,32 +698,32 @@
<tr>
- <td>IS</td>
+ <td>GB</td>
- <td>myRL.net</td>
+ <td>torland</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.myrl.net/dist/">http</a></td>
- <td><a href="http://tor.myrl.net/">http</a></td>
- <td><a href="https://tor.myrl.net/dist/">https</a></td>
- <td><a href="https://tor.myrl.net/">https</a></td>
+ <td><a href="http://mirror.torland.me/torproject.org/dist/">http</a></td>
+ <td><a href="http://mirror.torland.me/torproject.org/">http</a></td>
+ <td><a href="https://mirror.torland.me/torproject.org/dist/">https</a></td>
+ <td><a href="https://mirror.torland.me/torproject.org/">https</a></td>
<td> - </td>
<td> - </td>
</tr>
<tr>
- <td>US</td>
+ <td>FR</td>
- <td>hessmo</td>
+ <td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://mirror.hessmo.com/tor/dist/">http</a></td>
- <td><a href="http://mirror.hessmo.com/tor/">http</a></td>
+ <td><a href="http://torproject.c3l.lu/dist/">http</a></td>
+ <td><a href="http://torproject.c3l.lu/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -528,66 +732,66 @@
<tr>
- <td>DE</td>
+ <td>CZ</td>
- <td></td>
+ <td>Lightning-bolt.net</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.linuxlounge.net/dist/">http</a></td>
- <td><a href="http://tor.linuxlounge.net/">http</a></td>
- <td><a href="https://tor.linuxlounge.net/dist/">https</a></td>
- <td><a href="https://tor.linuxlounge.net/">https</a></td>
+ <td><a href="http://torproject.lightning-bolt.net/dist/">http</a></td>
+ <td><a href="http://torproject.lightning-bolt.net/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>DE</td>
+ <td>IS</td>
- <td>crazyhaze.de</td>
+ <td>myRL.net</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://tor.crazyhaze.de/dist/">http</a></td>
- <td><a href="http://tor.crazyhaze.de/">http</a></td>
- <td><a href="https://tor.crazyhaze.de/dist/">https</a></td>
- <td><a href="https://tor.crazyhaze.de/">https</a></td>
+ <td><a href="http://tor.myrl.net/dist/">http</a></td>
+ <td><a href="http://tor.myrl.net/">http</a></td>
+ <td><a href="https://tor.myrl.net/dist/">https</a></td>
+ <td><a href="https://tor.myrl.net/">https</a></td>
<td> - </td>
<td> - </td>
</tr>
<tr>
- <td>MX</td>
+ <td>NL</td>
- <td></td>
+ <td>Amorphis</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://fbnaia.homelinux.net/torproject/dist/">http</a></td>
- <td><a href="http://fbnaia.homelinux.net/torproject/">http</a></td>
- <td><a href="https://fbnaia.homelinux.net/torproject//dist/">https</a></td>
- <td><a href="https://fbnaia.homelinux.net/torproject/">https</a></td>
+ <td><a href="http://tor.amorphis.eu/dist/">http</a></td>
+ <td><a href="http://tor.amorphis.eu/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>NL</td>
+ <td>DK</td>
- <td>BBLN</td>
+ <td>Zentrum der Gesundheit</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://t02.nl/mirror/dist/">http</a></td>
- <td><a href="http://t02.nl/mirror/">http</a></td>
+ <td><a href="http://tor.idnr.ws/dist/">http</a></td>
+ <td><a href="http://tor.idnr.ws/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -596,49 +800,49 @@
<tr>
- <td>CH</td>
+ <td>ES</td>
<td></td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://torproject.pillo-srv.ch/dist/">http</a></td>
- <td><a href="http://torproject.pillo-srv.ch/">http</a></td>
- <td><a href="https://torproject.pillo-srv.ch/dist/">https</a></td>
- <td><a href="https://torproject.pillo-srv.ch/">https</a></td>
+ <td><a href="http://tor.zilog.es/dist/">http</a></td>
+ <td><a href="http://tor.zilog.es/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>FR</td>
+ <td>SE</td>
- <td>BarkerJr</td>
+ <td>homosu</td>
<td>Up to date</td>
<td> - </td>
- <td><a href="http://www.oignon.net/dist/">http</a></td>
- <td><a href="http://www.oignon.net/">http</a></td>
- <td><a href="https://www.oignon.net/dist/">https</a></td>
- <td><a href="https://www.oignon.net/">https</a></td>
+ <td><a href="http://tor.homosu.net/dist/">http</a></td>
+ <td><a href="http://tor.homosu.net/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>AU</td>
+ <td>IN</td>
- <td>CoffsWiFi</td>
+ <td>India Tor Fans</td>
- <td>Up to date</td>
+ <td>DO NOT USE. Out of date.</td>
<td> - </td>
- <td><a href="http://torproject.coffswifi.net/dist">http</a></td>
- <td><a href="http://torproject.coffswifi.net">http</a></td>
+ <td><a href="http://www.torproject.org.in/dist/">http</a></td>
+ <td><a href="http://www.torproject.org.in/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -647,49 +851,83 @@
<tr>
- <td>FR</td>
+ <td>TN</td>
<td></td>
- <td>Up to date</td>
+ <td>DO NOT USE. Out of date.</td>
<td> - </td>
- <td><a href="http://tor.mirror.chekanov.net/dist/">http</a></td>
- <td><a href="http://tor.mirror.chekanov.net/">http</a></td>
<td> - </td>
+ <td><a href="http://torproject.antagonism.org/">http</a></td>
<td> - </td>
+ <td><a href="https://torproject.antagonism.org/">https</a></td>
<td> - </td>
<td> - </td>
</tr>
<tr>
- <td>HU</td>
+ <td>US</td>
+ <td></td>
+
<td>Unknown</td>
- <td>Up to date</td>
+ <td> - </td>
+ <td><a href="http://tor.loritsu.com/dist/">http</a></td>
+ <td><a href="http://tor.loritsu.com/">http</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
+</tr>
+
+<tr>
+ <td>US</td>
+
+ <td></td>
+
+ <td>Unknown</td>
+
<td> - </td>
- <td><a href="http://mirror.tor.hu/dist/">http</a></td>
- <td><a href="http://mirror.tor.hu/">http</a></td>
+ <td><a href="http://tor.mirrors.whitedholdings.org/dist/">http</a></td>
+ <td><a href="http://tor.mirrors.whitedholdings.org/">http</a></td>
+ <td><a href="https://tor.mirrors.whitedholdings.org/dist/">https</a></td>
+ <td><a href="https://tor.mirrors.whitedholdings.org/">https</a></td>
+ <td><a href="rsync://tor.mirrors.whitedholdings.org/tor-dist">rsync</a></td>
+ <td><a href="rsync://mirrors.whitedholdings.org/tor">rsync</a></td>
+</tr>
+
+<tr>
+
+ <td>US</td>
+
+ <td>searchprivate</td>
+
+ <td>DO NOT USE. Out of date.</td>
+
<td> - </td>
+ <td><a href="http://tor.searchprivate.com/dist/">http</a></td>
+ <td><a href="http://tor.searchprivate.com/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
+ <td> - </td>
</tr>
<tr>
<td>DE</td>
- <td>borgmann.tv</td>
+ <td></td>
- <td>Up to date</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://tor.borgmann.tv/dist/">http</a></td>
- <td><a href="http://tor.borgmann.tv/">http</a></td>
+ <td><a href="http://tor.taskserver.de/dist/">http</a></td>
+ <td><a href="http://tor.taskserver.de/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -698,49 +936,49 @@
<tr>
- <td>US</td>
+ <td>LU</td>
- <td>Xpdm</td>
+ <td></td>
- <td>Up to date</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://torproj.xpdm.us/dist/">http</a></td>
- <td><a href="http://torproj.xpdm.us/">http</a></td>
- <td><a href="https://torproj.xpdm.us/dist/">https</a></td>
- <td><a href="https://torproj.xpdm.us/">https</a></td>
+ <td><a href="http://torproject.adamas.ai/dist/">http</a></td>
+ <td><a href="http://torproject.adamas.ai/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>GB</td>
+ <td>DE</td>
- <td>torland</td>
+ <td>Netzkonstrukt Berlin</td>
- <td>Up to date</td>
+ <td>DO NOT USE. Out of date.</td>
<td> - </td>
- <td><a href="http://mirror.torland.me/torproject.org/dist/">http</a></td>
- <td><a href="http://mirror.torland.me/torproject.org/">http</a></td>
- <td><a href="https://mirror.torland.me/torproject.org/dist/">https</a></td>
- <td><a href="https://mirror.torland.me/torproject.org/">https</a></td>
+ <td><a href="http://mirror.ntzk.de/torproject.org/dist/">http</a></td>
+ <td><a href="http://mirror.ntzk.de/torproject.org/">http</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>IS</td>
+ <td>UA</td>
- <td>TheOnionRouter</td>
+ <td></td>
- <td>Up to date</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://theonionrouter.com/dist/">http</a></td>
- <td><a href="http://theonionrouter.com/">http</a></td>
+ <td><a href="http://torua.reactor-xg.kiev.ua/dist/">http</a></td>
+ <td><a href="http://torua.reactor-xg.kiev.ua/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -749,19 +987,36 @@
<tr>
- <td>SE</td>
+ <td>MX</td>
- <td>homosu</td>
+ <td></td>
- <td>Up to date</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://tor.homosu.net/dist/">http</a></td>
- <td><a href="http://tor.homosu.net/">http</a></td>
+ <td><a href="http://fbnaia.homelinux.net/torproject/dist/">http</a></td>
+ <td><a href="http://fbnaia.homelinux.net/torproject/">http</a></td>
+ <td><a href="https://fbnaia.homelinux.net/torproject//dist/">https</a></td>
+ <td><a href="https://fbnaia.homelinux.net/torproject/">https</a></td>
<td> - </td>
<td> - </td>
+</tr>
+
+<tr>
+
+ <td>FR</td>
+
+ <td></td>
+
+ <td>Unknown</td>
+
<td> - </td>
+ <td><a href="http://37.187.0.127/tormirror/dist/">http</a></td>
+ <td><a href="http://37.187.0.127/tormirror/">http</a></td>
<td> - </td>
+ <td> - </td>
+ <td> - </td>
+ <td> - </td>
</tr>
<tr>
@@ -770,11 +1025,11 @@
<td></td>
- <td>Up to date</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://mirror.nametoday.me/tor/dist/">http</a></td>
- <td><a href="http://mirror.nametoday.me/tor/">http</a></td>
+ <td><a href="http://tor.minibofh.org/dist/">http</a></td>
+ <td><a href="http://tor.minibofh.org/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -783,15 +1038,15 @@
<tr>
- <td>LT</td>
+ <td>UK</td>
<td></td>
- <td>Up to date</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://tor.vesta.nu/dist/">http</a></td>
- <td><a href="http://tor.vesta.nu/">http</a></td>
+ <td><a href="http://tor.mage.me.uk/dist/">http</a></td>
+ <td><a href="http://tor.mage.me.uk/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
@@ -800,51 +1055,119 @@
<tr>
+ <td>DE</td>
+
+ <td>tor-mirror.de</td>
+
+ <td>Unknown</td>
+
+ <td> - </td>
+ <td><a href="http://tor-mirror.de/dist/">http</a></td>
+ <td><a href="http://tor-mirror.de/">http</a></td>
+ <td><a href="https://tor-mirror.de/dist/">https</a></td>
+ <td><a href="https://tor-mirror.de/">https</a></td>
+ <td> - </td>
+ <td> - </td>
+</tr>
+
+<tr>
+
+ <td>DE</td>
+
+ <td>[[:bbs:]]</td>
+
+ <td>Unknown</td>
+
+ <td> - </td>
+ <td><a href="http://tor.blingblingsquad.net/dist/">http</a></td>
+ <td><a href="http://tor.blingblingsquad.net/">http</a></td>
+ <td><a href="https://tor.blingblingsquad.net/dist/">https</a></td>
+ <td><a href="https://tor.blingblingsquad.net/">https</a></td>
+ <td> - </td>
+ <td> - </td>
+</tr>
+
+<tr>
+
<td>US</td>
- <td>AskApache</td>
+ <td></td>
- <td>Up to date</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://tor.askapache.com/dist/">http</a></td>
- <td><a href="http://tor.askapache.com/">http</a></td>
+ <td><a href="http://www.netgull.com/torproject/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
<td> - </td>
+ <td> - </td>
</tr>
<tr>
+ <td>US</td>
+
+ <td>NW Linux</td>
+
+ <td>Unknown</td>
+
+ <td> - </td>
+ <td><a href="http://torproject.nwlinux.us/dist/">http</a></td>
+ <td><a href="http://torproject.nwlinux.us/">http</a></td>
+ <td> - </td>
+ <td> - </td>
+ <td><a href="rsync://nwlinux.us/tor-dist">rsync</a></td>
+ <td><a href="rsync://nwlinux.us/tor-web">rsync</a></td>
+</tr>
+
+<tr>
+
<td>NL</td>
- <td>Amorphis</td>
+ <td></td>
- <td>Up to date</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://tor.amorphis.eu/dist/">http</a></td>
- <td><a href="http://tor.amorphis.eu/">http</a></td>
<td> - </td>
<td> - </td>
+ <td><a href="https://www.coevoet.nl/tor/dist/">https</a></td>
<td> - </td>
<td> - </td>
+ <td> - </td>
</tr>
<tr>
- <td>IN</td>
+ <td>FR</td>
- <td>India Tor Fans</td>
+ <td>LazyTiger</td>
- <td>DO NOT USE. Out of date.</td>
+ <td>Unknown</td>
<td> - </td>
- <td><a href="http://www.torproject.org.in/dist/">http</a></td>
- <td><a href="http://www.torproject.org.in/">http</a></td>
+ <td><a href="http://tor.taiga-san.net/dist/">http</a></td>
+ <td><a href="http://tor.taiga-san.net/">http</a></td>
<td> - </td>
<td> - </td>
<td> - </td>
<td> - </td>
</tr>
+
+<tr>
+
+ <td>EE</td>
+
+ <td></td>
+
+ <td>Unknown</td>
+
+ <td> - </td>
+ <td><a href="http://tor.li/dist/">http</a></td>
+ <td><a href="http://tor.li/">http</a></td>
+ <td><a href="https://tor.li/dist/">https</a></td>
+ <td><a href="https://tor.li/">https</a></td>
+ <td> - </td>
+ <td> - </td>
+</tr>
Added: website/trunk/include/tor-mirrors.csv
===================================================================
--- website/trunk/include/tor-mirrors.csv (rev 0)
+++ website/trunk/include/tor-mirrors.csv 2013-12-05 17:11:12 UTC (rev 26453)
@@ -0,0 +1,70 @@
+adminContact, orgName, isoCC, subRegion, region, ipv4, ipv6, loadBalanced, httpWebsiteMirror, httpsWebsiteMirror, rsyncWebsiteMirror, ftpWebsiteMirror, httpDistMirror, httpsDistMirror, rsyncDistMirror, hiddenServiceMirror, updateDate
+, , US, , US, True, False, No, http://mirror.nametoday.me/tor/, , , , http://mirror.nametoday.me/tor/dist/, , , , Thu Dec 5 03:59:24 2013
+, , US, , US, True, True, No, http://tor.loritsu.com/, , , , http://tor.loritsu.com/dist/, , , ,
+info AT zentrum-der-gesundheit DOT de, Zentrum der Gesundheit, DK, , Europe, True, False, Unknown, http://tor.idnr.ws/, , , , http://tor.idnr.ws/dist/, , , , Wed Dec 4 07:16:29 2013
+http://www.multinet.no, MultiNet AS, NO, Trondheim, Trondheim, True, True, No, http://tor.multinet.no/, , , , http://tor.multinet.no/dist/, , , , Thu Dec 5 03:59:24 2013
+, , US, , US, True, False, No, http://tor.mirrors.whitedholdings.org/, https://tor.mirrors.whitedholdings.org/, rsync://mirrors.whitedholdings.org/tor, , http://tor.mirrors.whitedholdings.org/dist/, https://tor.mirrors.whitedholdings.org/dist/, rsync://tor.mirrors.whitedholdings.org/tor-dist, ,
+haskell at gmx.es, , ES, Spain, Europe, True, False, No, http://tor.zilog.es/, , , , http://tor.zilog.es/dist/, , , , Wed Dec 4 07:16:29 2013
+webmaster AT bbln DOT nl, BBLN, NL, The Netherlands, Europe, True, True, No, http://t02.nl/mirror/, , , , http://t02.nl/mirror/dist/, , , , Thu Dec 5 03:59:24 2013
+, , US, , US, True, False, No, http://199.175.55.215/, , , , http://199.175.55.215/dist/, , , , Thu Dec 5 03:59:24 2013
+margus.random at mail.ee, CyberSIDE, EE, , EE, True, False, No, http://cyberside.planet.ee/tor/, , , , http://cyberside.net.ee/tor/, , , , Thu Dec 5 03:59:24 2013
+, torproject.is, IS, , IS, True, False, No, http://torproject.is/, , , , http://torproject.is/dist/, , , , Thu Dec 5 03:59:24 2013
+, spline, DE, , DE, True, False, No, http://tor.spline.de/, https://tor.spline.inf.fu-berlin.de/, rsync://ftp.spline.de/tor, ftp://ftp.spline.de/pub/tor, http://tor.spline.de/dist/, https://tor.spline.inf.fu-berlin.de/dist/, rsync://ftp.spline.de/tor/dist, , Thu Dec 5 03:59:24 2013
+, me0w.cc, RO, , RO, True, False, No, http://tor.me0w.cc/, , , , http://tor.me0w.cc/dist/, , , , Thu Dec 5 03:59:24 2013
+, borgmann.tv, DE, , DE, True, False, No, http://tor.borgmann.tv/, , , , http://tor.borgmann.tv/dist/, , , , Thu Dec 5 03:59:24 2013
+security AT hostoffice DOT hu, Unknown, HU, Hungary, Europe, True, False, No, http://mirror.tor.hu/, , , , http://mirror.tor.hu/dist/, , , , Thu Dec 5 03:59:24 2013
+, , TN, , TN, True, False, No, http://torproject.antagonism.org/, https://torproject.antagonism.org/, , , , , , , Fri Jun 21 10:33:04 2013
+webmaster AT ccc DOT de, CCC, NL, , Europe, True, False, Unknown, http://tor.ccc.de/, , , , http://tor.ccc.de/dist/, , , , Thu Dec 5 03:59:24 2013
+, searchprivate, US, TX, US, True, False, No, http://tor.searchprivate.com/, , , , http://tor.searchprivate.com/dist/, , , , Sun Jul 29 23:49:26 2012
+, , AT, , AT, True, True, No, http://tor.dont-know-me.at/, , , , http://tor.dont-know-me.at/dist/, , , , Thu Dec 5 03:59:24 2013
+marz.michael at gmail.com, , DE, , , True, False, No, http://tor.taskserver.de/, , , , http://tor.taskserver.de/dist/, , , ,
+, , LU, , LU, True, False, No, http://torproject.adamas.ai/, , , , http://torproject.adamas.ai/dist/, , , ,
+mirror ntzk de, Netzkonstrukt Berlin, DE, Germany, Europe, True, False, No, http://mirror.ntzk.de/torproject.org/, , , , http://mirror.ntzk.de/torproject.org/dist/, , , , Sun Dec 1 03:54:10 2013
+coralcdn.org, CoralCDN, INT, , INT, True, False, Yes, http://www.torproject.org.nyud.net/, , , , http://www.torproject.org.nyud.net/dist/, , , ,
+, , US, , US, True, True, No, http://mirror.nametoday.me/tor/, , , , http://mirror.nametoday.me/tor/dist/, , , , Thu Dec 5 03:59:24 2013
+, , AT, , AT, True, False, No, http://torproject.ph3x.at/, , , , http://torproject.ph3x.at/dist/, , , , Thu Dec 5 03:59:24 2013
+info /AT enn /DOT lu, Frenn vun der Enn A.S.B.L., IS, Iceland, Europe, True, False, No, http://torproject.lu/, , , , http://torproject.lu/dist/, , , http://btn6gqzqevlhoryd.onion, Thu Dec 5 03:59:24 2013
+, , CH, , CH, True, False, No, http://torproject.pillo-srv.ch/, https://torproject.pillo-srv.ch/, , , http://torproject.pillo-srv.ch/dist/, https://torproject.pillo-srv.ch/dist/, , , Thu Dec 5 03:59:24 2013
+neutrino8 AT gmail DOT com, teambelgium, BE, Belgium, Europe, True, False, No, http://tor.teambelgium.net:8082/, , , ftp://tor.teambelgium.net:2121/torproject/, http://tor.teambelgium.net:8082/dist/, , , , Thu Dec 5 03:59:24 2013
+tormaster AT xpdm DOT us, Xpdm, US, , North America, True, False, Unknown, http://torproj.xpdm.us/, https://torproj.xpdm.us/, , , http://torproj.xpdm.us/dist/, https://torproj.xpdm.us/dist/, , http://h3prhz46uktgm4tt.onion/, Thu Dec 5 03:59:24 2013
+, , UA, , UA, True, False, No, http://torua.reactor-xg.kiev.ua/, , , , http://torua.reactor-xg.kiev.ua/dist/, , , ,
+ mail AT benjamin-meier DOT info, beme it, DE, , DE, True, False, No, http://tor.beme-it.de/, https://tor.beme-it.de/, rsync://tor.beme-it.de/tor, , http://tor.beme-it.de/dist/, https://tor.beme-it.de/dist/, rsync://tor.beme-it.de/tor/dist, , Thu Dec 5 03:59:24 2013
+wollomatic at posteo.eu, , DE, Germany, Europe, True, True, No, http://tormirror.almnet.de/, https://tormirror.almnet.de/, , , http://tormirror.almnet.de/dist/, https://tormirror.almnet.de/dist/, , , Thu Dec 5 03:59:24 2013
+, , LT, , LT, True, False, No, http://tor.vesta.nu/, , , , http://tor.vesta.nu/dist/, , , , Thu Dec 5 03:59:24 2013
+, , MX, , MX, True, False, No, http://fbnaia.homelinux.net/torproject/, https://fbnaia.homelinux.net/torproject/, , , http://fbnaia.homelinux.net/torproject/dist/, https://fbnaia.homelinux.net/torproject//dist/, , , Thu Dec 5 03:59:24 2013
+, , FR, , , True, False, No, http://37.187.0.127/tormirror/, , , , http://37.187.0.127/tormirror/dist/, , , ,
+, , US, , US, True, False, No, http://tor.minibofh.org/, , , , http://tor.minibofh.org/dist/, , , ,
+, , UK, , UK, True, False, No, http://tor.mage.me.uk/, , , , http://tor.mage.me.uk/dist/, , , ,
+webmaster AT askapache DOT com, AskApache, US, California, US, True, False, No, http://tor.askapache.com/, , , , http://tor.askapache.com/dist/, , , , Thu Dec 5 03:59:24 2013
+nsane2307 eml cc, tor-mirror.de, DE, Germany, Europe, True, False, No, http://tor-mirror.de/, https://tor-mirror.de/, , , http://tor-mirror.de/dist/, https://tor-mirror.de/dist/, , ,
+, hessmo, US, , US, True, False, No, http://mirror.hessmo.com/tor/, , , , http://mirror.hessmo.com/tor/dist/, , , , Thu Dec 5 03:59:24 2013
+, , DE, , DE, True, False, No, http://tor.dev-random.de/, https://tor.dev-random.de/, , , http://tor.dev-random.de/dist/, https://tor.dev-random.de/dist/, , , Thu Dec 5 03:59:24 2013
+, India Tor Fans, IN, , IN, True, False, No, http://www.torproject.org.in/, , , , http://www.torproject.org.in/dist/, , , , Mon Nov 25 18:31:18 2013
+mirror-admin(a)linsrv.net, linsrv, FR, France, Europe, True, False, No, http://mirrors.linsrv.net/torproject/, , mirrors.linsrv.net::pub/torproject, ftp://ftp.linsrv.net/pub/torproject/, http://mirrors.linsrv.net/torproject/dist/, , mirrors.linsrv.net::pub/torproject/dist, , Thu Dec 5 03:59:24 2013
+, , FR, , FR, True, False, No, http://tor.mirror.chekanov.net/, , , , http://tor.mirror.chekanov.net/dist/, , , , Thu Dec 5 03:59:24 2013
+http://sebastian.pfeifer.or.at/, TechAsk.IT, AT, Favoriten, Wien, True, True, No, http://www.unicorncloud.org/public/torproject.org/, https://www.unicorncloud.org/public/torproject.org/, , , http://www.unicorncloud.org/public/torproject.org/dist, https://www.unicorncloud.org/public/torproject.org/dist, , , Thu Dec 5 03:59:24 2013
+BarkerJr AT barkerjr DOT net, BarkerJr, FR, , FR, True, False, No, http://www.oignon.net/, https://www.oignon.net/, , , http://www.oignon.net/dist/, https://www.oignon.net/dist/, , , Thu Dec 5 03:59:24 2013
+root AT amorphis DOT eu, Amorphis, NL, , Europe, True, False, Unknown, http://tor.amorphis.eu/, , , , http://tor.amorphis.eu/dist/, , , , Wed Dec 4 22:13:02 2013
+hackthissite.org, HackThisSite.org, US, , US, True, True, No, http://tor.hackthissite.org/, https://tor.hackthissite.org/, , , http://mirror.hackthissite.org/tor, https://mirror.hackthissite.org/tor, , , Thu Dec 5 03:59:24 2013
+citizen428 AT gmail DOT com, [[:bbs:]], DE, , Europe, True, False, Unknown, http://tor.blingblingsquad.net/, https://tor.blingblingsquad.net/, , , http://tor.blingblingsquad.net/dist/, https://tor.blingblingsquad.net/dist/, , ,
+, , DE, , DE, True, False, No, http://tor.linuxlounge.net/, https://tor.linuxlounge.net/, , , http://tor.linuxlounge.net/dist/, https://tor.linuxlounge.net/dist/, , ,
+, , US, , US, True, False, No, , , , , http://www.netgull.com/torproject/, , , ,
+paul at coffswifi.net, CoffsWiFi, AU, Australia and New Zealand, APNIC, True, False, No, http://torproject.coffswifi.net, , , , http://torproject.coffswifi.net/dist, , , , Thu Dec 5 03:59:24 2013
+, cyberarmy, AT, , AT, True, False, No, http://tor.cyberarmy.at/, , , , , , , , Thu Dec 5 03:59:24 2013
+, , DE, , DE, True, False, No, http://torproject.cryptowars.info/, https://torproject.cryptowars.info/, rsync://torproject.cryptowars.info/, , http://torproject.cryptowars.info/dist/, https://torproject.cryptowars.info/dist/, , , Thu Dec 5 03:59:24 2013
+hostmaster AT zombiewerks DOT com, TheOnionRouter, IS, , Iceland, True, False, Unknown, http://theonionrouter.com/, , , , http://theonionrouter.com/dist/, , , , Thu Dec 5 03:59:24 2013
+, crazyhaze.de, DE, , DE, True, False, No, http://tor.crazyhaze.de/, https://tor.crazyhaze.de/, , , http://tor.crazyhaze.de/dist/, https://tor.crazyhaze.de/dist/, , , Thu Dec 5 03:59:24 2013
+, , US, , US, True, False, No, http://torproject.guilhem.org/, https://torproject.guilhem.org/, , , http://torproject.guilhem.org/dist/, https://torproject.guilhem.org/dist/, , , Thu Dec 5 03:59:24 2013
+, chaos darmstadt, DE, Germany, Europe, True, False, No, http://mirrors.chaos-darmstadt.de/tor-mirror/, , , , http://mirrors.chaos-darmstadt.de/tor-mirror/dist/, , , , Thu Dec 5 03:59:24 2013
+, Soviet Anonymous, RU, , RU, True, False, No, http://creep.im/tor, https://creep.im/tor, rsync://creep.im/tor, ftp://creep.im/mirrors/tor, http://creep.im/tor/dist/, https://creep.im/tor/dist/, rsync://creep.im/tor-dist, , Thu Dec 5 03:59:24 2013
+, , US, , US, True, False, No, , , , ftp://mirrors.go-parts.com/tor/, http://mirrors.go-parts.com/tor/dist/, , rsync://mirrors.go-parts.com/mirrors/tor/, , Thu Dec 5 03:59:24 2013
+, NW Linux, US, WA, US, True, False, No, http://torproject.nwlinux.us/, , rsync://nwlinux.us/tor-web, , http://torproject.nwlinux.us/dist/, , rsync://nwlinux.us/tor-dist, ,
+, torservers, DE, , DE, True, False, No, http://www.torservers.net/mirrors/torproject.org/, https://www.torservers.net/mirrors/torproject.org/, , , http://www.torservers.net/mirrors/torproject.org/dist/, https://www.torservers.net/mirrors/torproject.org/dist/, , http://hbpvnydyyjbmhx6b.onion/mirrors/torproject.org/, Thu Dec 5 03:59:24 2013
+, , NL, , NL, True, False, No, , , , , , https://www.coevoet.nl/tor/dist/, , ,
+, torland, GB, , GB, True, False, No, http://mirror.torland.me/torproject.org/, https://mirror.torland.me/torproject.org/, , , http://mirror.torland.me/torproject.org/dist/, https://mirror.torland.me/torproject.org/dist/, , , Thu Dec 5 03:59:24 2013
+, , FR, , FR, True, False, No, http://torproject.c3l.lu/, , , , http://torproject.c3l.lu/dist/, , , , Thu Dec 5 03:59:24 2013
+, Lightning-bolt.net, CZ, , CZ, True, False, No, http://torproject.lightning-bolt.net/, , , , http://torproject.lightning-bolt.net/dist/, , , , Thu Dec 5 03:59:24 2013
+, LazyTiger, FR, , FR, True, False, No, http://tor.taiga-san.net/, , , , http://tor.taiga-san.net/dist/, , , ,
+, , EE, , EE, True, False, No, http://tor.li/, https://tor.li/, , , http://tor.li/dist/, https://tor.li/dist/, , ,
+, homosu, SE, , SE, True, False, No, http://tor.homosu.net/, , , , http://tor.homosu.net/dist/, , , , Wed Dec 4 07:16:29 2013
+IceBear, myRL.net, IS, , IS, True, False, No, http://tor.myrl.net/, https://tor.myrl.net/, , , http://tor.myrl.net/dist/, https://tor.myrl.net/dist/, , , Thu Dec 5 03:59:24 2013
Property changes on: website/trunk/include/tor-mirrors.csv
___________________________________________________________________
Added: svn:mime-type
+ text/csv
Modified: website/trunk/update-mirrors.pl
===================================================================
--- website/trunk/update-mirrors.pl 2013-12-05 08:13:08 UTC (rev 26452)
+++ website/trunk/update-mirrors.pl 2013-12-05 17:11:12 UTC (rev 26453)
@@ -45,7 +45,7 @@
push @links, Fetch($attr_value, \&ExtractLinks);
}
elsif ($attr_value =~ /\.(xpi|dmg|exe|tar\.gz)$/)
- #elsif ($attr_value =~ /\.(asc)$/)
+ #elsif ($attr_value =~ /\.(asc)$/) # small pgp files easier to test with
{
push @links, $attr_value;
}
@@ -58,12 +58,11 @@
$content = sanitize($content);
my $date = str2time($content);
- print "Extracting possible date from: $content\n";
if ($date) {
- print "We've fetched a date $date.\n";
+ print "ExtractDate($content) = $date\n";
return $date;
} else {
- print "We haven't fetched a date.\n";
+ print "ExtractDate($content) = ?\n";
return undef;
}
}
@@ -75,12 +74,11 @@
sub Fetch {
my ($url, $sub) = @_; # Base url for mirror
- print "Fetch $url\n";
my $request = new HTTP::Request GET => "$url";
my $result = $lua->request($request);
my $code = $result->code();
- print "\tResult code $code\n";
+ print "\nGET $url: $code\n";
if ($result->is_success && $code eq "200"){
my $content = $result->content;
@@ -89,1286 +87,52 @@
} else {
print "Unable to fetch $url, empty content returned.\n";
}
-
- } else {
- print "Our request failed, we had no result.\n";
}
return undef;
}
+my @columns;
+sub LoadMirrors {
+ open(CSV, "<", "include/tor-mirrors.csv") or die "Cannot open tor-mirrors.csv: $!";
+ my $line = <CSV>;
+ chomp($line);
+ @columns = split(/\s*,\s*/, $line);
+ my @mirrors;
+ while ($line = <CSV>)
+ {
+ chomp($line);
+ my @values = split(/\s*,\s*/, $line);
+ my %server;
+ for (my $i = 0; $i < scalar(@columns); $i++)
+ {
+ $server{$columns[$i]} = $values[$i] || '';
+ }
+ $server{updateDate} = str2time($server{updateDate}) if ($server{updateDate});
+ push @mirrors, {%server};
+ }
+ close(CSV);
+ return @mirrors;
+}
-# This is the list of all known Tor mirrors
-# Add new mirrors to the bottom!
-my %m = (
-
-
- mirror000 => {
- adminContact => "coralcdn.org",
- orgName => "CoralCDN",
- isoCC => "INT",
- subRegion => "",
- region => "INT",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "Yes",
- httpWebsiteMirror => "http://www.torproject.org.nyud.net/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://www.torproject.org.nyud.net/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
-
- mirror001 => {
- adminContact => "BarkerJr AT barkerjr DOT net",
- orgName => "BarkerJr",
- isoCC => "FR",
- subRegion => "",
- region => "FR",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://www.oignon.net/",
- httpsWebsiteMirror => "https://www.oignon.net/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://www.oignon.net/dist/",
- httpsDistMirror => "https://www.oignon.net/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
-
- mirror003 => {
- adminContact => "citizen428 AT gmail DOT com",
- orgName => "[[:bbs:]]",
- isoCC => "DE",
- subRegion => "",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "Unknown",
- httpWebsiteMirror => "http://tor.blingblingsquad.net/",
- httpsWebsiteMirror => "https://tor.blingblingsquad.net/",
- ftpWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- httpDistMirror => "http://tor.blingblingsquad.net/dist/",
- httpsDistMirror => "https://tor.blingblingsquad.net/dist/",
- rsyncDistMirror => ""
- },
-
- mirror007 => {
- adminContact => "info AT zentrum-der-gesundheit DOT de",
- orgName => "Zentrum der Gesundheit",
- isoCC => "DK",
- subRegion => "",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "Unknown",
- httpWebsiteMirror => "http://tor.idnr.ws/",
- ftpWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- httpDistMirror => "http://tor.idnr.ws/dist/",
- rsyncDistMirror => ""
- },
-
- mirror008 => {
- adminContact => "root AT amorphis DOT eu",
- orgName => "Amorphis",
- isoCC => "NL",
- subRegion => "",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "Unknown",
- httpWebsiteMirror => "http://tor.amorphis.eu/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.amorphis.eu/dist/",
- rsyncDistMirror => ""
- },
- mirror010 => {
- adminContact => "webmaster AT ccc DOT de",
- orgName => "CCC",
- isoCC => "NL",
- subRegion => "",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "Unknown",
- httpWebsiteMirror => "http://tor.ccc.de/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.ccc.de/dist/",
- rsyncDistMirror => ""
- },
-
- mirror013 => {
- adminContact => "hostmaster AT zombiewerks DOT com",
- orgName => "TheOnionRouter",
- isoCC => "IS",
- subRegion => "",
- region => "Iceland",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "Unknown",
- httpWebsiteMirror => "http://theonionrouter.com/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://theonionrouter.com/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => ""
- },
- mirror014 => {
- adminContact => "tormaster AT xpdm DOT us",
- orgName => "Xpdm",
- isoCC => "US",
- subRegion => "",
- region => "North America",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "Unknown",
- httpWebsiteMirror => "http://torproj.xpdm.us/",
- httpsWebsiteMirror => "https://torproj.xpdm.us/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproj.xpdm.us/dist/",
- httpsDistMirror => "https://torproj.xpdm.us/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "http://h3prhz46uktgm4tt.onion/"
- },
- mirror016 => {
- adminContact => "security AT hostoffice DOT hu",
- orgName => "Unknown",
- isoCC => "HU",
- subRegion => "Hungary",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://mirror.tor.hu/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://mirror.tor.hu/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror018 => {
- adminContact => "",
- orgName => "chaos darmstadt",
- isoCC => "DE",
- subRegion => "Germany",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://mirrors.chaos-darmstadt.de/tor-mirror/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://mirrors.chaos-darmstadt.de/tor-mirror/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
-
- mirror019 => {
- adminContact => "webmaster AT askapache DOT com",
- orgName => "AskApache",
- isoCC => "US",
- subRegion => "California",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.askapache.com/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.askapache.com/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
-
- mirror020 => {
- adminContact => " mail AT benjamin-meier DOT info ",
- orgName => "beme it",
- isoCC => "DE",
- subRegion => "",
- region => "DE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.beme-it.de/",
- httpsWebsiteMirror => "https://tor.beme-it.de/",
- rsyncWebsiteMirror => "rsync://tor.beme-it.de/tor",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.beme-it.de/dist/",
- httpsDistMirror => "https://tor.beme-it.de/dist/",
- rsyncDistMirror => "rsync://tor.beme-it.de/tor/dist",
- hiddenServiceMirror => ""
- },
-
- mirror021 => {
- adminContact => "",
- orgName => "India Tor Fans",
- isoCC => "IN",
- subRegion => "",
- region => "IN",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://www.torproject.org.in/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://www.torproject.org.in/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
-
- mirror024 => {
- adminContact => "",
- orgName => "homosu",
- isoCC => "SE",
- subRegion => "",
- region => "SE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.homosu.net/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.homosu.net/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
-
- mirror025 => {
- adminContact => "margus.random at mail.ee",
- orgName => "CyberSIDE",
- isoCC => "EE",
- subRegion => "",
- region => "EE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://cyberside.planet.ee/tor/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://cyberside.net.ee/tor/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
-
- mirror028 => {
- adminContact => "",
- orgName => "NW Linux",
- isoCC => "US",
- subRegion => "WA",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.nwlinux.us/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "rsync://nwlinux.us/tor-web",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.nwlinux.us/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "rsync://nwlinux.us/tor-dist",
- hiddenServiceMirror => "",
- },
- mirror029 => {
- adminContact => "",
- orgName => "LazyTiger",
- isoCC => "FR",
- subRegion => "",
- region => "FR",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.taiga-san.net/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.taiga-san.net/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror030 => {
- adminContact => "",
- orgName => "searchprivate",
- isoCC => "US",
- subRegion => "TX",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.searchprivate.com/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.searchprivate.com/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror031 => {
- adminContact => "",
- orgName => "cyberarmy",
- isoCC => "AT",
- subRegion => "",
- region => "AT",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.cyberarmy.at/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror032 => {
- adminContact => "",
- orgName => "torproject.is",
- isoCC => "IS",
- subRegion => "",
- region => "IS",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.is/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.is/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror033 => {
- adminContact => "",
- orgName => "torservers",
- isoCC => "DE",
- subRegion => "",
- region => "DE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://www.torservers.net/mirrors/torproject.org/",
- httpsWebsiteMirror => "https://www.torservers.net/mirrors/torproject.org/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://www.torservers.net/mirrors/torproject.org/dist/",
- httpsDistMirror => "https://www.torservers.net/mirrors/torproject.org/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "http://hbpvnydyyjbmhx6b.onion/mirrors/torproject.org/",
- },
- mirror036 => {
- adminContact => "",
- orgName => "",
- isoCC => "NL",
- subRegion => "",
- region => "NL",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "",
- httpsDistMirror => "https://www.coevoet.nl/tor/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror038 => {
- adminContact => "",
- orgName => "",
- isoCC => "LT",
- subRegion => "",
- region => "LT",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.vesta.nu/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.vesta.nu/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror045 => {
- adminContact => "",
- orgName => "",
- isoCC => "TN",
- subRegion => "",
- region => "TN",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.mirror.tn/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.mirror.tn/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror045 => {
- adminContact => "",
- orgName => "",
- isoCC => "TN",
- subRegion => "",
- region => "TN",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.antagonism.org/",
- httpsWebsiteMirror => "https://torproject.antagonism.org/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror048 => {
- adminContact => "",
- orgName => "",
- isoCC => "AT",
- subRegion => "",
- region => "AT",
- ipv4 => "True",
- ipv6 => "True",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.dont-know-me.at/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.dont-know-me.at/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror049 => {
- adminContact => "IceBear",
- orgName => "myRL.net",
- isoCC => "IS",
- subRegion => "",
- region => "IS",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.myrl.net/",
- httpsWebsiteMirror => "https://tor.myrl.net/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.myrl.net/dist/",
- httpsDistMirror => "https://tor.myrl.net/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror050 => {
- adminContact => "",
- orgName => "borgmann.tv",
- isoCC => "DE",
- subRegion => "",
- region => "DE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.borgmann.tv/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.borgmann.tv/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror051 => {
- adminContact => "",
- orgName => "torland",
- isoCC => "GB",
- subRegion => "",
- region => "GB",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://mirror.torland.me/torproject.org/",
- httpsWebsiteMirror => "https://mirror.torland.me/torproject.org/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://mirror.torland.me/torproject.org/dist/",
- httpsDistMirror => "https://mirror.torland.me/torproject.org/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror052 => {
- adminContact => "",
- orgName => "spline",
- isoCC => "DE",
- subRegion => "",
- region => "DE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.spline.de/",
- httpsWebsiteMirror => "https://tor.spline.inf.fu-berlin.de/",
- rsyncWebsiteMirror => "rsync://ftp.spline.de/tor",
- ftpWebsiteMirror => "ftp://ftp.spline.de/pub/tor",
- httpDistMirror => "http://tor.spline.de/dist/",
- httpsDistMirror => "https://tor.spline.inf.fu-berlin.de/dist/",
- rsyncDistMirror => "rsync://ftp.spline.de/tor/dist",
- hiddenServiceMirror => "",
- },
- mirror053 => {
- adminContact => "",
- orgName => "",
- isoCC => "AT",
- subRegion => "",
- region => "AT",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.ph3x.at/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.ph3x.at/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror054 => {
- adminContact => "",
- orgName => "hessmo",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://mirror.hessmo.com/tor/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://mirror.hessmo.com/tor/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror058 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "True",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.loritsu.com/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.loritsu.com/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror060 => {
- adminContact => "",
- orgName => "",
- isoCC => "DE",
- subRegion => "",
- region => "DE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.cryptowars.info/",
- httpsWebsiteMirror => "https://torproject.cryptowars.info/",
- rsyncWebsiteMirror => "rsync://torproject.cryptowars.info/",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.cryptowars.info/dist/",
- httpsDistMirror => "https://torproject.cryptowars.info/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror062 => {
- adminContact => "",
- orgName => "",
- isoCC => "DE",
- subRegion => "",
- region => "DE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.dev-random.de/",
- httpsWebsiteMirror => "https://tor.dev-random.de/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.dev-random.de/dist/",
- httpsDistMirror => "https://tor.dev-random.de/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror063 => {
- adminContact => "",
- orgName => "crazyhaze.de",
- isoCC => "DE",
- subRegion => "",
- region => "DE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.crazyhaze.de/",
- httpsWebsiteMirror => "https://tor.crazyhaze.de/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.crazyhaze.de/dist/",
- httpsDistMirror => "https://tor.crazyhaze.de/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror066 => {
- adminContact => "",
- orgName => "Lightning-bolt.net",
- isoCC => "CZ",
- subRegion => "",
- region => "CZ",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.lightning-bolt.net/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.lightning-bolt.net/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror067 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.mirrors.whitedholdings.org/",
- httpsWebsiteMirror => "https://tor.mirrors.whitedholdings.org/",
- rsyncWebsiteMirror => "rsync://mirrors.whitedholdings.org/tor",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.mirrors.whitedholdings.org/dist/",
- httpsDistMirror => "https://tor.mirrors.whitedholdings.org/dist/",
- rsyncDistMirror => "rsync://tor.mirrors.whitedholdings.org/tor-dist",
- hiddenServiceMirror => "",
- },
- mirror069 => {
- adminContact => "",
- orgName => "",
- isoCC => "FR",
- subRegion => "",
- region => "FR",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.mirror.chekanov.net/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.mirror.chekanov.net/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror072 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.minibofh.org/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.minibofh.org/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror073 => {
- adminContact => "",
- orgName => "",
- isoCC => "UA",
- subRegion => "",
- region => "UA",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torua.reactor-xg.kiev.ua/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torua.reactor-xg.kiev.ua/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror075 => {
- adminContact => "",
- orgName => "me0w.cc",
- isoCC => "RO",
- subRegion => "",
- region => "RO",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.me0w.cc/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.me0w.cc/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror076 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://mirror.nametoday.me/tor/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://mirror.nametoday.me/tor/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror077 => {
- adminContact => "",
- orgName => "",
- isoCC => "UK",
- subRegion => "",
- region => "UK",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.mage.me.uk/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.mage.me.uk/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror078 => {
- adminContact => "",
- orgName => "",
- isoCC => "CH",
- subRegion => "",
- region => "CH",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.pillo-srv.ch/",
- httpsWebsiteMirror => "https://torproject.pillo-srv.ch/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.pillo-srv.ch/dist/",
- httpsDistMirror => "https://torproject.pillo-srv.ch/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror079 => {
- adminContact => "",
- orgName => "",
- isoCC => "LU",
- subRegion => "",
- region => "LU",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.adamas.ai/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.adamas.ai/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror080 => {
- adminContact => "",
- orgName => "",
- isoCC => "FR",
- subRegion => "",
- region => "FR",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.c3l.lu/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.c3l.lu/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror081 => {
- adminContact => "",
- orgName => "",
- isoCC => "EE",
- subRegion => "",
- region => "EE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.li/",
- httpsWebsiteMirror => "https://tor.li/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.li/dist/",
- httpsDistMirror => "https://tor.li/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror082 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "True",
- loadBalanced => "No",
- httpWebsiteMirror => "http://mirror.nametoday.me/tor/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://mirror.nametoday.me/tor/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror085 => {
- adminContact => "",
- orgName => "Soviet Anonymous",
- isoCC => "RU",
- subRegion => "",
- region => "RU",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://creep.im/tor",
- httpsWebsiteMirror => "https://creep.im/tor",
- rsyncWebsiteMirror => "rsync://creep.im/tor",
- ftpWebsiteMirror => "ftp://creep.im/mirrors/tor",
- httpDistMirror => "http://creep.im/tor/dist/",
- httpsDistMirror => "https://creep.im/tor/dist/",
- rsyncDistMirror => "rsync://creep.im/tor-dist",
- hiddenServiceMirror => "",
- },
- mirror086 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://199.175.55.215/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://199.175.55.215/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror087 => {
- adminContact => "",
- orgName => "",
- isoCC => "DE",
- subRegion => "",
- region => "DE",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.linuxlounge.net/",
- httpsWebsiteMirror => "https://tor.linuxlounge.net/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.linuxlounge.net/dist/",
- httpsDistMirror => "https://tor.linuxlounge.net/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror088 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "ftp://mirrors.go-parts.com/tor/",
- httpDistMirror => "http://mirrors.go-parts.com/tor/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "rsync://mirrors.go-parts.com/mirrors/tor/",
- hiddenServiceMirror => "",
- },
- mirror089 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://www.netgull.com/torproject/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror090 => {
- adminContact => "",
- orgName => "",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.guilhem.org/",
- httpsWebsiteMirror => "https://torproject.guilhem.org/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.guilhem.org/dist/",
- httpsDistMirror => "https://torproject.guilhem.org/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror091 => {
- adminContact => "",
- orgName => "",
- isoCC => "MX",
- subRegion => "",
- region => "MX",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://fbnaia.homelinux.net/torproject/",
- httpsWebsiteMirror => "https://fbnaia.homelinux.net/torproject/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://fbnaia.homelinux.net/torproject/dist/",
- httpsDistMirror => "https://fbnaia.homelinux.net/torproject//dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => "",
- },
- mirror092 => {
- adminContact => "hackthissite.org",
- orgName => "HackThisSite.org",
- isoCC => "US",
- subRegion => "",
- region => "US",
- ipv4 => "True",
- ipv6 => "True",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.hackthissite.org/",
- httpsWebsiteMirror => "https://tor.hackthissite.org/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://mirror.hackthissite.org/tor",
- httpsDistMirror => "https://mirror.hackthissite.org/tor",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror093 => {
- adminContact => "http://sebastian.pfeifer.or.at/",
- orgName => "TechAsk.IT",
- isoCC => "AT",
- subRegion => "Favoriten",
- region => "Wien",
- ipv4 => "True",
- ipv6 => "True",
- loadBalanced => "No",
- httpWebsiteMirror => "http://www.unicorncloud.org/public/torproject.org/",
- httpsWebsiteMirror => "https://www.unicorncloud.org/public/torproject.org/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://www.unicorncloud.org/public/torproject.org/dist",
- httpsDistMirror => "https://www.unicorncloud.org/public/torproject.org/dist",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror094 => {
- adminContact =>"http://www.multinet.no",
- orgName => "MultiNet AS",
- isoCC => "NO",
- subRegion => "Trondheim",
- region => "Trondheim",
- ipv4 => "True",
- ipv6 => "True",
- loadBalanced => "No",
- httpWebsiteMirror =>"http://tor.multinet.no/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror =>"http://tor.multinet.no/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror095 => {
- adminContact => "mirror-admin\(a)linsrv.net",
- orgName => "linsrv",
- isoCC => "FR",
- subRegion => "France",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://mirrors.linsrv.net/torproject/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "mirrors.linsrv.net::pub/torproject",
- ftpWebsiteMirror => "ftp://ftp.linsrv.net/pub/torproject/",
- httpDistMirror => "http://mirrors.linsrv.net/torproject/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "mirrors.linsrv.net::pub/torproject/dist",
- hiddenServiceMirror => ""
- },
- mirror097 => {
- adminContact => "marz.michael at gmail.com",
- orgName => "",
- isoCC => "DE",
- subRegion => "",
- region => "",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.taskserver.de/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.taskserver.de/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror098 => {
- adminContact => "",
- orgName => "",
- isoCC => "FR",
- subRegion => "",
- region => "",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://37.187.0.127/tormirror/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://37.187.0.127/tormirror/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror099 => {
- adminContact => "paul at coffswifi.net",
- orgName => "CoffsWiFi",
- isoCC => "AU",
- subRegion => "Australia and New Zealand",
- region => "APNIC",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.coffswifi.net",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.coffswifi.net/dist",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror100 => {
- adminContact => "nsane2307 eml cc",
- orgName => "tor-mirror.de",
- isoCC => "DE",
- subRegion => "Germany",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor-mirror.de/",
- httpsWebsiteMirror => "https://tor-mirror.de/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor-mirror.de/dist/",
- httpsDistMirror => "https://tor-mirror.de/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror101 => {
- adminContact => "info /AT\ enn /DOT\ lu",
- orgName => "Frenn vun der Enn A.S.B.L.",
- isoCC => "IS",
- subRegion => "Iceland",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://torproject.lu/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://torproject.lu/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => "http://btn6gqzqevlhoryd.onion"
- },
- mirror102 => {
- adminContact => "neutrino8 AT gmail DOT com",
- orgName => "teambelgium",
- isoCC => "BE",
- subRegion => "Belgium",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.teambelgium.net:8082/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "ftp://tor.teambelgium.net:2121/torproject/",
- httpDistMirror => "http://tor.teambelgium.net:8082/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror103 => {
- adminContact => "mirror ntzk de",
- orgName => "Netzkonstrukt Berlin",
- isoCC => "DE",
- subRegion => "Germany",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://mirror.ntzk.de/torproject.org/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://mirror.ntzk.de/torproject.org/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror104 => {
- adminContact => "webmaster AT bbln DOT nl",
- orgName => "BBLN",
- isoCC => "NL",
- subRegion => "The Netherlands",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "True",
- loadBalanced => "No",
- httpWebsiteMirror => "http://t02.nl/mirror/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://t02.nl/mirror/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror105 => {
- adminContact => "wollomatic at posteo.eu",
- orgName => "",
- isoCC => "DE",
- subRegion => "Germany",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "True",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tormirror.almnet.de/",
- httpsWebsiteMirror => "https://tormirror.almnet.de/",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tormirror.almnet.de/dist/",
- httpsDistMirror => "https://tormirror.almnet.de/dist/",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
- },
- mirror106 => {
- adminContact => "haskell at gmx.es",
- orgName => "",
- isoCC => "ES",
- subRegion => "Spain",
- region => "Europe",
- ipv4 => "True",
- ipv6 => "False",
- loadBalanced => "No",
- httpWebsiteMirror => "http://tor.zilog.es/",
- httpsWebsiteMirror => "",
- rsyncWebsiteMirror => "",
- ftpWebsiteMirror => "",
- httpDistMirror => "http://tor.zilog.es/dist/",
- httpsDistMirror => "",
- rsyncDistMirror => "",
- hiddenServiceMirror => ""
+sub DumpMirrors {
+ my @m = @_;
+ open(CSV, ">", "tor-mirrors.csv") or die "Cannot open tor-mirrors.csv: $!";
+ print CSV join(", ", @columns) . "\n";
+ foreach my $server(@m) {
+ $server->{updateDate} = gmtime($server->{updateDate}) if ($server->{updateDate});
+ print CSV join(", ", map($server->{$_}, @columns));
+ print CSV "\n";
}
-);
-my $count = values %m;
+ close(CSV);
+}
+
+my @m = LoadMirrors();
+my $count = scalar(@m);
print "We have a total of $count mirrors\n";
print "Fetching the last updated date for each mirror.\n";
-my $tortime = Fetch("https://www.torproject.org/project/trace/www-master.torproject.org", \&ExtractDate);
+my $tortime = Fetch("https://www.torproject.org/project/trace/www-master.torproject.org", \&ExtractDate);
my @torfiles = Fetch("https://www.torproject.org/dist/", \&ExtractLinks);
my %randomtorfiles;
@@ -1383,89 +147,49 @@
print "Using these files for sig matching:\n";
print join("\n", keys %randomtorfiles);
-# Adjust offical Tor time by out-of-date offset: number of days * seconds per day
+# Adjust official Tor time by out-of-date offset: number of days * seconds per day
$tortime -= 1 * 172800;
print "The official time for Tor is $tortime. \n";
-my %todelete;
-foreach my $server ( keys %m ) {
-
- print "Attempting to fetch from $server: $m{$server}{'orgName'}\n";
-
- foreach my $serverType('httpWebsiteMirror', 'httpsWebsiteMirror', 'ftpWebsiteMirror')
+for(my $server = 0; $server < scalar(@m); $server++) {
+ foreach my $serverType('httpWebsiteMirror', 'httpsWebsiteMirror', 'ftpWebsiteMirror', 'httpDistMirror', 'httpsDistMirror')
{
- if ($m{$server}{$serverType}) {
- print "Attempt to fetch via $serverType.\n";
- $m{$server}{"updateDate"} = Fetch("$m{$server}{$serverType}/project/trace/www-master.torproject.org", \&ExtractDate);
- if ($m{$server}{updateDate}) {
+ if ($m[$server]->{$serverType}) {
+ my $updateDate = Fetch("$m[$server]->{$serverType}/project/trace/www-master.torproject.org", \&ExtractDate);
+
+ if ($updateDate) {
+ $m[$server]->{updateDate} = $updateDate;
+ $m[$server]->{sigMatched} = 1;
foreach my $randomtorfile(keys %randomtorfiles) {
- my $sig = Fetch("$m{$server}{$serverType}/$randomtorfile", \&ExtractSig);
- if (!$sig) {
- $todelete{$server} = "Unreadable $randomtorfile";
- } elsif ($sig ne $randomtorfiles{$randomtorfile}) {
- $todelete{$server} = "Sig mismatch on $randomtorfile";
- } else {
- print "Sig $sig matches for $randomtorfile on $m{$server}{$serverType}\n";
- }
- last;
+ my $sig = Fetch("$m[$server]->{$serverType}/$randomtorfile", \&ExtractSig);
+ if (!$sig) {
+ print STDERR "Unreadable $randomtorfile on $m[$server]->{$serverType}";
+ $m[$server]->{sigMatched} = 0;
+ last;
+ } elsif ($sig ne $randomtorfiles{$randomtorfile}) {
+ $m[$server]->{sigMatched} = 0;
+ print STDERR "Sig mismatch of $randomtorfile on $m[$server]->{$serverType}";
+ last;
+ }
}
- } else {
- delete $m{$server}{updateDate};
- $todelete{$server} = "Unreadable date";
}
last;
- }
+ }
}
- if (exists $m{$server}{updateDate}) {
- print "We fetched and stored the following: $m{$server}{'updateDate'}\n";
- } else {
- $todelete{$server} = "Unreadable date";
- }
- }
-
-foreach my $outdated(keys %todelete)
-{
- print "Deleted $outdated due to $todelete{$outdated}\n";
- print Dumper($m{$outdated});
- delete $m{$outdated};
}
-foreach my $k(keys %m)
-{
- print "$k\n";
- print "$m{$k}{updateDate}\n";
-}
-
-print "We sorted the following mirrors by their date of last update: \n";
-foreach my $server ( sort { $m{$b}{'updateDate'} <=> $m{$a}{'updateDate'}} keys %m ) {
-
- print "\n";
- print "Mirror $m{$server}{'orgName'}: \n";
-
- foreach my $attrib ( sort keys %{$m{$server}} ) {
- print "$attrib = $m{$server}{$attrib}";
- print "\n";
- };
-}
-
-my $outFile = "include/mirrors-table.wmi";
-my $html;
-open(OUT, "> $outFile") or die "Can't open $outFile: $!";
-
-# Here's where we open a file and print some wml include goodness
-# This is sorted from last known recent update to unknown update times
-foreach my $server ( sort { $m{$b}{'updateDate'} <=> $m{$a}{'updateDate'}} keys %m ) {
-
+sub PrintServer {
+ my $server = shift;
my $time;
- if ( "$m{$server}{'updateDate'}" ne "Unknown") {
- if ( $m{$server}{'updateDate'} > $tortime ) {
+ if ( $server->{'updateDate'} ) {
+ if ( $server->{'updateDate'} > $tortime ) {
$time = "Up to date";
} else { $time = "DO NOT USE. Out of date."; }
} else { $time = "Unknown"; }
print OUT <<"END";
\n<tr>\n
- <td>$m{$server}{'isoCC'}</td>\n
- <td>$m{$server}{'orgName'}</td>\n
+ <td>$server->{'isoCC'}</td>\n
+ <td>$server->{'orgName'}</td>\n
<td>$time</td>\n
END
@@ -1480,8 +204,8 @@
foreach my $precious ( sort keys %prettyNames )
{
- if ($m{$server}{"$precious"}) {
- print OUT " <td><a href=\"" . $m{$server}{$precious} . "\">" .
+ if ($server->{"$precious"}) {
+ print OUT " <td><a href=\"" . $server->{$precious} . "\">" .
"$prettyNames{$precious}</a></td>\n";
} else { print OUT " <td> - </td>\n"; }
}
@@ -1489,4 +213,19 @@
print OUT "</tr>\n";
}
+
+my $outFile = "include/mirrors-table.wmi";
+open(OUT, "> $outFile") or die "Can't open $outFile: $!";
+
+# Here's where we open a file and print some wml include goodness
+# This is sorted from last known recent update to unknown update times
+foreach my $server ( sort { $b->{'updateDate'} <=> $a->{'updateDate'}} grep {$_->{updateDate} && $_->{sigMatched}} @m ) {
+ PrintServer($server);
+}
+foreach my $server ( grep {!$_->{updateDate} || !$_->{sigMatched}} @m ) {
+ PrintServer($server);
+}
+
+DumpMirrors(@m);
+
close(OUT);
1
0
commit 586eefedcd322feff099ead14fd0e83f93a7abaf
Author: Nick Mathewson <nickm(a)torproject.org>
Date: Thu Dec 5 11:26:14 2013 -0500
Add references to other documents
---
proposals/224-rend-spec-ng.txt | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/proposals/224-rend-spec-ng.txt b/proposals/224-rend-spec-ng.txt
index f88a287..0f94745 100644
--- a/proposals/224-rend-spec-ng.txt
+++ b/proposals/224-rend-spec-ng.txt
@@ -580,6 +580,9 @@ Status: Draft
* the hidden service directories' public keys,
* a shared random value that changes in each time period,
* a set of network-wide networkstatus consensus parameters.
+ (Consensus parameters are integer values voted on by authorities
+ and published in the consensus documents, described in
+ dir-spec.txt, section 3.3.)
Below we explain in more detail.
@@ -688,7 +691,8 @@ Status: Draft
INT_8(period_num) )
where shared_random is the shared value generated by the authorities
- in section PUB-SHAREDRANDOM.
+ in section PUB-SHAREDRANDOM, and node_identity_digest is a SHA1
+ digest of the node's RSA public key as described in tor-spec.txt.
Finally, for replicanum in 1...hsdir_n_replicas, the hidden service
host uploads descriptors to the first hsdir_spread_store nodes whose
1
0

[metrics-tasks/master] Add script to aggregate fast-exit statistics (#6498).
by karsten@torproject.org 05 Dec '13
by karsten@torproject.org 05 Dec '13
05 Dec '13
commit ef1648c41bca36627edd9d303266e1d4c10ba09b
Author: Karsten Loesing <karsten.loesing(a)gmx.net>
Date: Thu Dec 5 17:00:42 2013 +0100
Add script to aggregate fast-exit statistics (#6498).
---
task-6498/.gitignore | 1 +
task-6498/convert.R | 25 +++++++++++++++++++++++++
2 files changed, 26 insertions(+)
diff --git a/task-6498/.gitignore b/task-6498/.gitignore
index bce212d..5a1ef35 100644
--- a/task-6498/.gitignore
+++ b/task-6498/.gitignore
@@ -5,6 +5,7 @@ bin/
in/
parsed-consensuses
task-6498-results.csv
+fast-exits.csv
Rplots.pdf
*.png
diff --git a/task-6498/convert.R b/task-6498/convert.R
new file mode 100644
index 0000000..bddc699
--- /dev/null
+++ b/task-6498/convert.R
@@ -0,0 +1,25 @@
+require(reshape)
+t <- read.csv("task-6498-results.csv", stringsAsFactors = FALSE)
+t <- t[t$valid_after < paste(Sys.Date() - 1, "23:59:59"), ]
+t <- rbind(
+ data.frame(t[t$ports == "80-443-554-1755", c(1, 6, 7)], var = "fast"),
+ data.frame(t[t$ports == "80-443", c(1, 6, 7)], var = "both"))
+r <- cast(t, valid_after ~ var, value = "relays", fun.aggregate = max)
+e <- cast(t, valid_after ~ var, value = "exit_prob",
+ fun.aggregate = max)
+t <- rbind(
+ data.frame(valid_after = r$valid_after, value = r$fast,
+ variable = "fastnum"),
+ data.frame(valid_after = r$valid_after, value = r$both - r$fast,
+ variable = "almostnum"),
+ data.frame(valid_after = e$valid_after, value = 100 * e$fast,
+ variable = "fastprob"),
+ data.frame(valid_after = e$valid_after, value = 100 * (e$both - e$fast),
+ variable = "almostprob"))
+t <- aggregate(list(value = t$value),
+ by = list(date = as.Date(cut.Date(as.Date(t$valid_after), "day")),
+ variable = t$variable), FUN = median)
+t <- cast(t, date ~ variable, value = "value", fun.aggregate = max)
+t <- data.frame(date = t$date, round(t[, 2:3], 0), round(t[, 4:5], 2))
+write.csv(t, "fast-exits.csv", quote = FALSE, row.names = FALSE)
+
1
0

[translation/liveusb-creator_completed] Update translations for liveusb-creator_completed
by translation@torproject.org 05 Dec '13
by translation@torproject.org 05 Dec '13
05 Dec '13
commit 34e3b011c4a2e4eebc8eb96b9f1b6b621f236bf8
Author: Translation commit bot <translation(a)torproject.org>
Date: Thu Dec 5 07:16:01 2013 +0000
Update translations for liveusb-creator_completed
---
pt_BR/pt_BR.po | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/pt_BR/pt_BR.po b/pt_BR/pt_BR.po
index 4aefea6..1777b70 100644
--- a/pt_BR/pt_BR.po
+++ b/pt_BR/pt_BR.po
@@ -21,7 +21,7 @@ msgstr ""
"Project-Id-Version: The Tor Project\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2013-11-30 15:23+0100\n"
-"PO-Revision-Date: 2013-12-05 06:43+0000\n"
+"PO-Revision-Date: 2013-12-05 07:00+0000\n"
"Last-Translator: ebonsi\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/torproject/language/pt_BR/)\n"
"MIME-Version: 1.0\n"
@@ -347,7 +347,7 @@ msgstr "Dispositivo Selecionado"
msgid ""
"The Master Boot Record on your device is blank. Pressing 'Install Tails' "
"again will reset the MBR on this device."
-msgstr "O Registro Mestre de Inicialização no seu dispositivo está apagado. Pressionando 'Instalar Tais' irá novamente repor o MBR neste dispositivo."
+msgstr "O Registro Mestre de Inicialização no seu dispositivo está apagado. Pressionando 'Instalar Tails' irá novamente repor o MBR neste dispositivo."
#: ../liveusb/gui.py:795
msgid ""
@@ -569,7 +569,7 @@ msgstr "Gravou no dispositivo a uma velocidade de %(speed)d MB/s"
msgid ""
"You are going to install Tails on the %(size)s %(vendor)s %(model)s device "
"(%(device)s). All data on the selected device will be lost. Continue?"
-msgstr "Você está prestes a instalar o Tais no dispositivo %(size)s %(vendor)s %(model)s (%(device)s). Todos os dados no dispositivo selecionado serão perdidos. Continuar?"
+msgstr "Você está prestes a instalar o Tails no %(size)s %(vendor)s %(model)s dispositivo (%(device)s). Todos os dados no dispositivo selecionado serão perdidos. Continue?"
#: ../liveusb/gui.py:718
#, python-format
@@ -577,7 +577,7 @@ msgid ""
"You are going to upgrade Tails on the %(parent_size)s %(vendor)s %(model)s "
"device (%(device)s). Any persistent volume on this device will remain "
"unchanged. Continue?"
-msgstr "Você está prestes a atualizar o Tails no dispositivo %(parent_size)s %(vendor)s %(model)s (%(device)s). Qualquer volume persistente neste dispositivo permanecerá inalterado. Continuar?"
+msgstr "Você está prestes a atualizar o Tails no %(parent_size)s %(vendor)s %(model)s dispositivo (%(device)s). Qualquer volume persistente neste dispositivo permanecerá inalterado. Continue?"
#: ../liveusb/creator.py:607
msgid ""
1
0