three hacks to workaround bug 1038
commit2b63fa40e8349e0e6c40d0660d9df5b0ba73937e
authorRoger Dingledine <arma@torproject.org>
Tue, 28 Jul 2009 01:01:24 +0000 (27 21:01 -0400)
committerRoger Dingledine <arma@torproject.org>
Tue, 28 Jul 2009 01:58:32 +0000 (27 21:58 -0400)
tree533c7b62fa1081b970c9ab9965f133cb222c4405
parentf39cee375472a6e3a4f0decb7e2f91c5768a2165
three hacks to workaround bug 1038

The problem is that clients and hidden services are receiving
relay_early cells, and they tear down the circuit.

Hack #1 is for rendezvous points to rewrite relay_early cells to
relay cells. That way there are never any incoming relay_early cells.

Hack #2 is for clients and hidden services to never send a relay_early
cell on an established rendezvous circuit. That works around rendezvous
points that haven't upgraded yet.

Hack #3 is for clients and hidden services to not tear down the circuit
when they receive an inbound relay_early cell. We already refuse extend
cells at clients.
ChangeLog
src/or/command.c
src/or/or.h
src/or/relay.c