diff options
Diffstat (limited to 'src/net.h')
| -rw-r--r-- | src/net.h | 8 |
1 files changed, 8 insertions, 0 deletions
| @@ -119,6 +119,14 @@ static const unsigned int MAX_CONNECTIONS = 125; | |||
| 119 | // needs only a handful; 32 leaves generous room while denying any one address | 119 | // needs only a handful; 32 leaves generous room while denying any one address |
| 120 | // more than a quarter of the table. The firewall connlimit on the relays does | 120 | // more than a quarter of the table. The firewall connlimit on the relays does |
| 121 | // the same thing a layer lower; this makes every build carry the defense. | 121 | // the same thing a layer lower; this makes every build carry the defense. |
| 122 | // | ||
| 123 | // Loopback (127.0.0.0/8) is exempt in the accept path. A managed-Tor node | ||
| 124 | // receives every inbound onion peer over its local hidden-service listener, so | ||
| 125 | // they all appear as 127.0.0.1 -- capping loopback would cap onion peers as a | ||
| 126 | // group, which is exactly wrong for a network moving toward onion-only. The | ||
| 127 | // global MAX_CONNECTIONS still bounds the total; a per-onion-identity limit, | ||
| 128 | // applied once identity is known after accept(), is the right future tool for | ||
| 129 | // onion floods. | ||
| 122 | static const unsigned int MAX_CONNECTIONS_PER_IP = 32; | 130 | static const unsigned int MAX_CONNECTIONS_PER_IP = 32; |
| 123 | 131 | ||
| 124 | // A node marked for disconnect is normally held until its buffers drain, so | 132 | // A node marked for disconnect is normally held until its buffers drain, so |