diff options
author | Nick Mathewson <nickm@torproject.org> | 2014-02-09 21:30:23 -0500 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2014-02-09 21:30:23 -0500 |
commit | f5d32c08ba0b7307873324f8b24c4142523c1155 (patch) | |
tree | 0bb632f1be90029c204592c7b61de6c15a4864e4 | |
parent | 9bb34aa897e4ecac27a6f8d50a659803f73c6cb9 (diff) | |
download | tor-f5d32c08ba0b7307873324f8b24c4142523c1155.tar tor-f5d32c08ba0b7307873324f8b24c4142523c1155.tar.gz |
Call ENETUNREACH a case of NOROUTE, not a case of INTERNAL.
Found by cypherpunks; fix for a part of bug 10777; bugfix on 0.1.0.1-rc.
-rw-r--r-- | changes/10777_netunreach | 7 | ||||
-rw-r--r-- | src/or/reasons.c | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/changes/10777_netunreach b/changes/10777_netunreach new file mode 100644 index 000000000..369774f79 --- /dev/null +++ b/changes/10777_netunreach @@ -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. + diff --git a/src/or/reasons.c b/src/or/reasons.c index 637f8cdc7..fc31a438f 100644 --- a/src/or/reasons.c +++ b/src/or/reasons.c @@ -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): |