Send END_STREAM_REASON_NOROUTE: clients that didn't grok it are now obsolete

This commit is contained in:
Nick Mathewson 2011-03-28 13:42:59 -04:00
parent 9facf8918f
commit fc64783278
2 changed files with 6 additions and 7 deletions

5
changes/noroute Normal file
View file

@ -0,0 +1,5 @@
- Minor features
- Send END_STREAM_REASON_NOROUTE in response to EHOSTUNREACH errors.
Clients before 0.2.1.27 didn't handle NOROUTE correctly, but
such clients are already deprecated because of security bugs.

View file

@ -174,13 +174,7 @@ errno_to_stream_end_reason(int e)
S_CASE(ENETUNREACH):
return END_STREAM_REASON_INTERNAL;
S_CASE(EHOSTUNREACH):
/* XXXX023
* The correct behavior is END_STREAM_REASON_NOROUTE, but older
* clients don't recognize it. So we're going to continue sending
* "MISC" until 0.2.1.27 or later is "well established".
*/
/* return END_STREAM_REASON_NOROUTE; */
return END_STREAM_REASON_MISC;
return END_STREAM_REASON_NOROUTE;
S_CASE(ECONNREFUSED):
return END_STREAM_REASON_CONNECTREFUSED;
S_CASE(ECONNRESET):