mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-14 07:03:44 +01:00
Bug 4786 fix: don't convert EARLY to RELAY on v1 connections
We used to do this as a workaround for older Tors, but now it's never the correct thing to do (especially since anything that didn't understand RELAY_EARLY is now deprecated hard).
This commit is contained in:
parent
9d0777839b
commit
120a745346
9
changes/bug4786
Normal file
9
changes/bug4786
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
- Feature removal:
|
||||||
|
- When sending or relaying a RELAY_EARLY cell, we used to convert
|
||||||
|
it to a RELAY cell if the connection was using the v1 link
|
||||||
|
protocol. This was a workaround for older versions of Tor, which
|
||||||
|
didn't handle RELAY_EARLY cells properly. Now that all supported
|
||||||
|
versions can handle RELAY_EARLY cells, and now that we're
|
||||||
|
enforcing the "no RELAY_EXTEND commands except in RELAY_EARLY
|
||||||
|
cells" rule, we're removing this workaround. Addresses bug 4786.
|
||||||
|
|
@ -1858,10 +1858,6 @@ append_cell_to_circuit_queue(circuit_t *circ, or_connection_t *orconn,
|
|||||||
queue = &orcirc->p_conn_cells;
|
queue = &orcirc->p_conn_cells;
|
||||||
streams_blocked = circ->streams_blocked_on_p_conn;
|
streams_blocked = circ->streams_blocked_on_p_conn;
|
||||||
}
|
}
|
||||||
if (cell->command == CELL_RELAY_EARLY && orconn->link_proto < 2) {
|
|
||||||
/* V1 connections don't understand RELAY_EARLY. */
|
|
||||||
cell->command = CELL_RELAY;
|
|
||||||
}
|
|
||||||
|
|
||||||
cell_queue_append_packed_copy(queue, cell);
|
cell_queue_append_packed_copy(queue, cell);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user