add configurables for eventdns settings
Scenarios exist where relay operators may wish to tune libevent evdns.c (eventdns) for specific exit relay requirements. For example ideal values on a high-performance exit where a local instance of Unbound is utilized might be attempts=1 timeout=15, max-inflight=16384, but these settings are inappropriate when bind9/named or non-local Unbound are employed.
Target settings:
max-inflight max-timeouts timeout attempts
Settings already configurable:
randomize-case
Other evdns.c settings exist that are not set in src/or/dns.c and it seems reasonable to omit them here as these can be adjusted via resolv.conf. The settings targeted here are under the control of the Tor daemon such that resolv.conf "options" have no effect.
Predecessor tickets: #18580 (moved) #21394 (moved)
I am willing to contribute a patch for this and unless I am advised otherwise will prepare and submit one in the next two or three weeks.
A behavior I'm inclined to implement is to have the value -1 signify that dns.c should not touch the settings, permitting resolv.conf "options" to control.