Found by cypherpunks; fix for a part of bug 10777; bugfix on 0.1.0.1-rc.
@@ -0,0 +1,7 @@
+ - Minor bugfixes:
+
+ - Treat ENETUNRECH at an exit node as a NOROUTE error, not an
+ INTERNAL error, since it can apparently happen when trying to
+ connect to the wrong sort of netblocks. Fixes a part of bug 10777;
+ bugfix on 0.1.0.1-rc.
@@ -176,8 +176,8 @@ errno_to_stream_end_reason(int e)
S_CASE(EAFNOSUPPORT):
E_CASE(EACCES):
S_CASE(ENOTCONN):
- S_CASE(ENETUNREACH):
return END_STREAM_REASON_INTERNAL;
+ S_CASE(ENETUNREACH):
S_CASE(EHOSTUNREACH):
return END_STREAM_REASON_NOROUTE;
S_CASE(ECONNREFUSED):