summaryrefslogtreecommitdiff
path: root/src/or/channel.h
diff options
context:
space:
mode:
authorDavid Goulet <dgoulet@torproject.org>2018-01-25 09:44:21 -0500
committerDavid Goulet <dgoulet@torproject.org>2018-01-30 09:18:16 -0500
commit82de4ea900c5d3513214b127421890595343bfaa (patch)
tree27d926d2666961490eaf53eda267e6c2a9bae136 /src/or/channel.h
parent14a8b87852887f8c20a424ff32a2b6746105dd6c (diff)
downloadtor-82de4ea900c5d3513214b127421890595343bfaa.tar.gz
tor-82de4ea900c5d3513214b127421890595343bfaa.zip
dos: Clear connection tracked flag if geoip entry is removed
Imagine this scenario. We had 10 connections over the 24h lifetime of a geoip cache entry. The lifetime of the entry has been reached so it is about to get freed but 2 connections remain for it. After the free, a third connection comes in thus making us create a new geoip entry for that address matching the 2 previous ones that are still alive. If they end up being closed, we'll have a concurrent count desynch from what the reality is. To mitigate this probably very rare scenario in practice, when we free a geoip entry and it has a concurrent count above 0, we'll go over all connections matching the address and clear out the tracked flag. So once they are closed, we don't try to decrement the count. Signed-off-by: David Goulet <dgoulet@torproject.org>
Diffstat (limited to 'src/or/channel.h')
0 files changed, 0 insertions, 0 deletions