[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-bugs] #4710 [Tor Relay]: Tor does not convert TCP socket exhaustion to END_STREAM_REASON_RESOURCELIMIT
#4710: Tor does not convert TCP socket exhaustion to
END_STREAM_REASON_RESOURCELIMIT
-----------------------+----------------------------------------------------
Reporter: mikeperry | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: Tor Relay | Version:
Keywords: | Parent:
Points: | Actualpoints:
-----------------------+----------------------------------------------------
Moritz has reported the appearance of warns to the effect of "[warn] Error
binding network socket: Address already in use" recently as a result of
the PID feedback experiment. We could implement a feedback cap for nodes
that hit this exhaustion, if we could detect it using stream end reasons
(#4709).
However, in errno_to_stream_end_reason(), it looks like Tor does not have
a case covering "Address already in use" (EADDRINUSE and possibly also
EADDRNOTAVAIL), which seems to be the errno Moritz's Ubuntu server is
choosing when it runs out of TCP source ports.
I'd add these cases myself, but I am not sure if it should be an E_CASE or
S_CASE, and I'm also not sure if the TCP source port exhaustion errno is
always the same EADDRINUSE across all platforms, or just on Linux. It
seems like a weird choice to me.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/4710>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs