#25223: dos: dos_new_client_conn: Non-fatal assertion !(entry == NULL) failed
 Reporter:  dgoulet             |          Owner:  dgoulet
     Type:  defect              |         Status:  assigned
 Priority:  High                |      Milestone:  Tor: 0.3.3.x-final
Component:  Core Tor/Tor        |        Version:
 Severity:  Normal              |     Resolution:
 Keywords:  tor-dos, tor-relay  |  Actual Points:
Parent ID:                      |         Points:
 Reviewer:                      |        Sponsor:

Comment (by dgoulet):

 Ok I figure it out I think.

 Bridge aren't suppose to have DoS mitigation on because of this in

   if (public_server_mode(options)) {
     /* If we are configured as a relay, initialize the subsystem. Even on
      * this is safe to call as it will load data from the current options
      * or/and the consensus. */

 So we don't init the DoS mitigation when reading the options. However,
 when we get a new consensus, we do `set_dos_parameters()` which can
 enable/disable it. See `dos_consensus_has_changed()`.

 Basically, we need to gate the `set_dos_parameters()` for public relays.
 We call that in `dos_init()` and when the consensus changes.

Ticket URL: <https://trac.torproject.org/projects/tor/ticket/25223#comment:1>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
tor-bugs mailing list

Reply via email to