summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/feature131535
-rw-r--r--src/or/circuituse.c3
-rw-r--r--src/or/or.h3
-rw-r--r--src/or/routerparse.c3
4 files changed, 6 insertions, 8 deletions
diff --git a/changes/feature13153 b/changes/feature13153
new file mode 100644
index 0000000000..15f8fe8b4f
--- /dev/null
+++ b/changes/feature13153
@@ -0,0 +1,5 @@
+ o Code simplication:
+ - Clients are now willing to send optimistic circuit data (before they
+ receive a 'connected' cell) to relays of any version. We used to
+ only do it for relays running 0.2.3.1-alpha or later, but now all
+ relays are new enough. Resolves ticket 13153.
diff --git a/src/or/circuituse.c b/src/or/circuituse.c
index bd42bd39cb..cb2d7e2b68 100644
--- a/src/or/circuituse.c
+++ b/src/or/circuituse.c
@@ -2110,8 +2110,7 @@ link_apconn_to_circ(entry_connection_t *apconn, origin_circuit_t *circ,
exitnode->rs) {
/* Okay; we know what exit node this is. */
if (optimistic_data_enabled() &&
- circ->base_.purpose == CIRCUIT_PURPOSE_C_GENERAL &&
- exitnode->rs->version_supports_optimistic_data)
+ circ->base_.purpose == CIRCUIT_PURPOSE_C_GENERAL)
apconn->may_use_optimistic_data = 1;
else
apconn->may_use_optimistic_data = 0;
diff --git a/src/or/or.h b/src/or/or.h
index ba7eeea9e6..b2b0d5f7ab 100644
--- a/src/or/or.h
+++ b/src/or/or.h
@@ -2149,9 +2149,6 @@ typedef struct routerstatus_t {
/** True iff this router is a version that, if it caches directory info,
* we can get microdescriptors from. */
unsigned int version_supports_microdesc_cache:1;
- /** True iff this router is a version that allows DATA cells to arrive on
- * a stream before it has sent a CONNECTED cell. */
- unsigned int version_supports_optimistic_data:1;
/** True iff this router has a version that allows it to accept EXTEND2
* cells */
unsigned int version_supports_extend2_cells:1;
diff --git a/src/or/routerparse.c b/src/or/routerparse.c
index 281341d134..250d1cd062 100644
--- a/src/or/routerparse.c
+++ b/src/or/routerparse.c
@@ -1916,12 +1916,9 @@ routerstatus_parse_entry_from_string(memarea_t *area,
rs->version_known = 1;
if (strcmpstart(tok->args[0], "Tor ")) {
rs->version_supports_microdesc_cache = 1;
- rs->version_supports_optimistic_data = 1;
} else {
rs->version_supports_microdesc_cache =
tor_version_supports_microdescriptors(tok->args[0]);
- rs->version_supports_optimistic_data =
- tor_version_as_new_as(tok->args[0], "0.2.3.1-alpha");
rs->version_supports_extend2_cells =
tor_version_as_new_as(tok->args[0], "0.2.4.8-alpha");
}