diff options
author | Nick Mathewson <nickm@torproject.org> | 2012-05-16 12:31:45 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2012-05-16 12:46:24 -0400 |
commit | 2b6e91c2ee4f89c0ee31c83c3a5e5414fd2b3d40 (patch) | |
tree | d4fc8705f41242f0732b2b4e219978963e4f2d69 | |
parent | 75fc4dbbcabaedc715f0f9e883ccab1c9634e787 (diff) | |
download | tor-2b6e91c2ee4f89c0ee31c83c3a5e5414fd2b3d40.tar.gz tor-2b6e91c2ee4f89c0ee31c83c3a5e5414fd2b3d40.zip |
Report EADDRNOTAVAIL and EADDRINUSE as RESOURCELIMIT
These errors usually mean address exhaustion; reporting them as such
lets clients adjust their load to try other exits.
Fix for bug 4710; bugfix on 0.1.0.1-rc, which started using
END_STREAM_REASON_RESOURCELIMIT.
-rw-r--r-- | changes/bug4710 | 5 | ||||
-rw-r--r-- | src/or/reasons.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/changes/bug4710 b/changes/bug4710 new file mode 100644 index 0000000000..7f94b4d20d --- /dev/null +++ b/changes/bug4710 @@ -0,0 +1,5 @@ + o Minor bugfixes: + - Exit nodes now correcly report EADDRINUSE and EADDRNOTAVAIL as + resource exhaustion, so that clients can adjust their load to + try other exits. Fix for bug 4710; bugfix on 0.1.0.1-rc, which + started using END_STREAM_REASON_RESOURCELIMIT. diff --git a/src/or/reasons.c b/src/or/reasons.c index 319e6c055a..67abc350d1 100644 --- a/src/or/reasons.c +++ b/src/or/reasons.c @@ -184,6 +184,8 @@ errno_to_stream_end_reason(int e) S_CASE(ENOBUFS): case ENOMEM: case ENFILE: + S_CASE(EADDRINUSE): + S_CASE(EADDRNOTAVAIL): E_CASE(EMFILE): return END_STREAM_REASON_RESOURCELIMIT; default: |