aboutsummaryrefslogtreecommitdiff
path: root/src/or/reasons.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2010-08-15 21:27:32 -0400
committerNick Mathewson <nickm@torproject.org>2010-08-15 21:27:32 -0400
commit9bcea4a8ef33bc3f1b66682a0eea463b891cd7ba (patch)
treeae59b0189576acc89aad1fdb4e6a447989295dda /src/or/reasons.c
parent5757f47fc34235675d67b71c68b207582b245ca8 (diff)
parent161b275028e90d38582c3cddf65d906e8a181368 (diff)
downloadtor-9bcea4a8ef33bc3f1b66682a0eea463b891cd7ba.tar
tor-9bcea4a8ef33bc3f1b66682a0eea463b891cd7ba.tar.gz
Merge commit 'sebastian/misc-reason'
Diffstat (limited to 'src/or/reasons.c')
-rw-r--r--src/or/reasons.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/or/reasons.c b/src/or/reasons.c
index 2dd5fe946..8d71f3b39 100644
--- a/src/or/reasons.c
+++ b/src/or/reasons.c
@@ -28,6 +28,7 @@ stream_end_reason_to_control_string(int reason)
case END_STREAM_REASON_DESTROY: return "DESTROY";
case END_STREAM_REASON_DONE: return "DONE";
case END_STREAM_REASON_TIMEOUT: return "TIMEOUT";
+ case END_STREAM_REASON_NOROUTE: "return "NOROUTE";
case END_STREAM_REASON_HIBERNATING: return "HIBERNATING";
case END_STREAM_REASON_INTERNAL: return "INTERNAL";
case END_STREAM_REASON_RESOURCELIMIT: return "RESOURCELIMIT";
@@ -62,6 +63,7 @@ stream_end_reason_to_string(int reason)
case END_STREAM_REASON_DESTROY: return "destroyed";
case END_STREAM_REASON_DONE: return "closed normally";
case END_STREAM_REASON_TIMEOUT: return "gave up (timeout)";
+ case END_STREAM_REASON_NOROUTE: return "no route to host";
case END_STREAM_REASON_HIBERNATING: return "server is hibernating";
case END_STREAM_REASON_INTERNAL: return "internal error at server";
case END_STREAM_REASON_RESOURCELIMIT: return "server out of resources";
@@ -104,6 +106,8 @@ stream_end_reason_to_socks5_response(int reason)
return SOCKS5_SUCCEEDED;
case END_STREAM_REASON_TIMEOUT:
return SOCKS5_TTL_EXPIRED;
+ case END_STREAM_REASON_NOROUTE:
+ return SOCKS5_HOST_UNREACHABLE;
case END_STREAM_REASON_RESOURCELIMIT:
return SOCKS5_GENERAL_ERROR;
case END_STREAM_REASON_HIBERNATING:
@@ -164,6 +168,8 @@ errno_to_stream_end_reason(int e)
S_CASE(ENOTCONN):
S_CASE(ENETUNREACH):
return END_STREAM_REASON_INTERNAL;
+ E_CASE(EHOSTUNREACH):
+ return END_STREAM_REASON_NOROUTE;
S_CASE(ECONNREFUSED):
return END_STREAM_REASON_CONNECTREFUSED;
S_CASE(ECONNRESET):