소스 검색

get rid of routerstatus->version_supports_optimistic_data

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.
Roger Dingledine 9 년 전
부모
커밋
bbfb1aca55
4개의 변경된 파일6개의 추가작업 그리고 8개의 파일을 삭제
  1. 5 0
      changes/feature13153
  2. 1 2
      src/or/circuituse.c
  3. 0 3
      src/or/or.h
  4. 0 3
      src/or/routerparse.c

+ 5 - 0
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.

+ 1 - 2
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;

+ 0 - 3
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;

+ 0 - 3
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");
     }