summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2011-12-28 16:50:45 -0500
committerNick Mathewson <nickm@torproject.org>2011-12-28 16:50:45 -0500
commit84bf8e3808d5f10e5ffd0d9f9f31760c6d3875ab (patch)
tree110d0cc9d5ceb0e38ba428ab6c5b366bdd0c3d5e /src
parentc563551eefefdf5a8e5e32feb1ca84a517770fda (diff)
parent9bcb18738747e12629c38ae366b96993e2002859 (diff)
downloadtor-84bf8e3808d5f10e5ffd0d9f9f31760c6d3875ab.tar.gz
tor-84bf8e3808d5f10e5ffd0d9f9f31760c6d3875ab.zip
Merge remote-tracking branch 'public/bug4788' into maint-0.2.2
Diffstat (limited to 'src')
-rw-r--r--src/or/dirserv.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/or/dirserv.c b/src/or/dirserv.c
index 634b3eca2e..0308d4dbc1 100644
--- a/src/or/dirserv.c
+++ b/src/or/dirserv.c
@@ -388,19 +388,20 @@ dirserv_get_status_impl(const char *id_digest, const char *nickname,
strmap_size(fingerprint_list->fp_by_name),
digestmap_size(fingerprint_list->status_by_digest));
- /* Tor 0.2.0.26-rc is the oldest version that currently caches the right
- * directory information. Once more of them die off, we should raise this
- * minimum. */
- if (platform && !tor_version_as_new_as(platform,"0.2.0.26-rc")) {
+ /* Versions before Tor 0.2.1.30 have known security issues that
+ * make them unsuitable for the current network. */
+ if (platform && !tor_version_as_new_as(platform,"0.2.1.30")) {
if (msg)
- *msg = "Tor version is far too old to work.";
- return FP_REJECT;
- } else if (platform && tor_version_as_new_as(platform,"0.2.1.3-alpha")
- && !tor_version_as_new_as(platform, "0.2.1.19")) {
- /* These versions mishandled RELAY_EARLY cells on rend circuits. */
- if (msg)
- *msg = "Tor version is too buggy to work.";
+ *msg = "Tor version is insecure. Please upgrade!";
return FP_REJECT;
+ } else if (platform && tor_version_as_new_as(platform,"0.2.2.1-alpha")) {
+ /* Versions from 0.2.2.1-alpha...0.2.2.20-alpha have known security
+ * issues that make them unusable for the current network */
+ if (!tor_version_as_new_as(platform, "0.2.2.21-alpha")) {
+ if (msg)
+ *msg = "Tor version is insecure. Please upgrade!";
+ return FP_REJECT;
+ }
}
result = dirserv_get_name_status(id_digest, nickname);