tor/src/or
David Goulet 6507ecb7e8 hs: Fix the intro circuit max retry
Some parentheses were missing making the rend_max_intro_circs_per_period()
return a lower value than it was suppose to.

The calculation is that a service at most will open a number of intro points
that it wants which is 3 by default or HiddenServiceNumIntroductionPoints. Two
extra are launched for performance reason. Finally, this can happen twice for
two descriptors for the current and next time period.

From:
  2 * n_intro_wanted + 2

...which resulted in 8 for 3 intro points, this commit fixes it to:

  (n_intro_wanted + 2) * 2

... resulting in 12 possible intro point circuit which is the correct maximum
intro circuit allowed per period.

Last, this commit rate limits the the log message if we ever go above that
limit else over a INTRO_CIRC_RETRY_PERIOD, we can print it often!

Fixes #22159

Signed-off-by: David Goulet <dgoulet@torproject.org>
2017-08-28 14:43:42 -04:00
..
addressmap.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
addressmap.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
bridges.c Set guard state on bridge descriptor fetches. 2017-05-22 15:57:33 +03:00
bridges.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
buffers.c Try a little harder to make sure we never call tor_compress_process wrong. 2017-06-26 09:39:59 -04:00
buffers.h Rename write_to_buf_zlib() to write_to_buf_compress(). 2017-04-18 01:23:39 +02:00
channel.c Fix a warning about an extraneous semicolon 2017-05-09 07:25:34 -04:00
channel.h Fix some clang-i386 warnings in master. 2017-05-08 15:34:37 -04:00
channelpadding.c Demote a log message due to libevent delays. 2017-06-26 11:26:59 -04:00
channelpadding.h Fix issues from dgoulet's code review. 2017-05-08 13:49:23 -04:00
channeltls.c whitespace fixes 2017-05-08 13:57:08 -04:00
channeltls.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
circpathbias.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
circpathbias.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
circuitbuild.c Merge branch 'dgoulet_ticket22060_031_01_squashed' 2017-05-09 10:32:21 -04:00
circuitbuild.h Add tests for new_route_len() 2017-04-03 11:58:11 -04:00
circuitlist.c Cleanup MOCK_IMPL (etc) to be findable with etags 2017-05-26 14:07:06 -04:00
circuitlist.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
circuitmux.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
circuitmux.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
circuitmux_ewma.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
circuitmux_ewma.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
circuitstats.c Merge branch 'maint-0.3.0' 2017-05-18 10:06:27 -04:00
circuitstats.h Merge branch 'maint-0.3.0' 2017-05-18 10:06:27 -04:00
circuituse.c Merge branch 'dgoulet_ticket22060_031_01_squashed' 2017-05-09 10:32:21 -04:00
circuituse.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
command.c Merge branch 'netflow_padding-v6-rebased2-squashed' 2017-05-08 13:54:59 -04:00
command.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
config.c Merge branch 'bug23053_029' into maint-0.3.1 2017-07-28 09:50:16 -04:00
config.h config: Remove {Control,DNS,Dir,Socks,Trans,NATD,OR}ListenAddress option 2017-05-09 10:30:52 -04:00
confparse.c Delete useless checks in confparse.c 2017-05-02 16:12:30 -04:00
confparse.h Add support for %include funcionality on torrc #1922 2017-05-18 23:44:16 +01:00
connection.c remove obsolete comment 2017-05-30 02:42:32 -04:00
connection.h Rename write_to_buf_zlib() to write_to_buf_compress(). 2017-04-18 01:23:39 +02:00
connection_edge.c Merge branch 'maint-0.2.9' into maint-0.3.0 2017-08-01 11:21:19 -04:00
connection_edge.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
connection_or.c Merge branch 'bug19418_029' into maint-0.3.1 2017-08-25 11:38:24 -04:00
connection_or.h Merge branch 'maint-0.3.0' 2017-06-05 15:52:06 -04:00
conscache.c Move stub accessor functions a level higher, to consdiffmgr 2017-05-15 17:21:55 -04:00
conscache.h Move stub accessor functions a level higher, to consdiffmgr 2017-05-15 17:21:55 -04:00
consdiff.c Request (and try to use) consensus diffs. 2017-05-04 08:37:41 -04:00
consdiff.h Request (and try to use) consensus diffs. 2017-05-04 08:37:41 -04:00
consdiffmgr.c Fix a memory leak in consdiffmgr.c 2017-08-08 09:13:45 -04:00
consdiffmgr.h Set published_out for consensus cache entries in spooled_resource_estimate_size(). 2017-06-27 18:25:48 -04:00
control.c Patch for 22720 from huyvq: exit(1) more often 2017-06-26 14:14:56 -04:00
control.h Add regression test for #22304 2017-04-24 09:20:59 -04:00
cpuworker.c Fix the cpuworker.c documentation to mention all the kinds of work 2017-07-27 16:28:59 -04:00
cpuworker.h Queue consensus diffs at LOW priority. 2017-07-27 16:28:59 -04:00
dircollate.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
dircollate.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
directory.c Merge remote-tracking branch 'public/bug22670_031' into maint-0.3.1 2017-06-29 11:34:06 -04:00
directory.h whitespace fix 2017-06-28 13:53:52 -04:00
dirserv.c Try to improve the keypinning-failure message even more 2017-08-28 11:35:30 -04:00
dirserv.h Store the sha3 of a networkstatus as part of the networkstatus_t 2017-05-04 08:37:41 -04:00
dirvote.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
dirvote.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
dns.c Fix GCC 7 -Wimplicit-fallthrough warnings 2017-05-30 08:33:27 -04:00
dns.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
dns_structs.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
dnsserv.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
dnsserv.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
entrynodes.c Merge branch 'maint-0.3.0' into maint-0.3.1 2017-06-29 15:57:48 -04:00
entrynodes.h Merge branch 'maint-0.3.0' into maint-0.3.1 2017-06-29 15:57:48 -04:00
ext_orport.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
ext_orport.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
fallback_dirs.inc Update fallback directory mirrors in May 2017 2017-05-16 19:02:42 +10:00
fp_pair.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
fp_pair.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
geoip.c Merge branch 'maint-0.2.4' into maint-0.2.5 2017-06-05 14:38:54 -04:00
geoip.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
hibernate.c Merge branch 'bug19418_029' into maint-0.3.1 2017-08-25 11:38:24 -04:00
hibernate.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
hs_cache.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
hs_cache.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
hs_circuitmap.c hs: Add service-side circuitmap API. 2017-04-13 14:23:51 -04:00
hs_circuitmap.h hs: Add service-side circuitmap API. 2017-04-13 14:23:51 -04:00
hs_common.c prop224: Add time period functions and unittests 2017-04-18 11:03:15 -04:00
hs_common.h prop224: Add time period functions and unittests 2017-04-18 11:03:15 -04:00
hs_descriptor.c Fix triggerable BUG() when decoding hsv3 descriptors. 2017-08-21 19:16:45 +03:00
hs_descriptor.h prop224: Change encryption keys descriptor encoding 2017-05-11 08:33:26 -04:00
hs_intropoint.c Merge branch 'maint-0.3.0' into maint-0.3.1 2017-08-03 09:14:12 -04:00
hs_intropoint.h hs: Change trunnel prop224 cell's namespace 2017-04-11 13:46:41 -04:00
hs_ntor.c prop224: Add module that performs the HS ntor handshake. 2017-04-13 09:22:19 -04:00
hs_ntor.h prop224: Add module that performs the HS ntor handshake. 2017-04-13 09:22:19 -04:00
hs_service.c Merge branch 'ticket21891_031_01_squashed' 2017-04-13 16:43:13 -04:00
hs_service.h hs: Change trunnel prop224 cell's namespace 2017-04-11 13:46:41 -04:00
include.am Merge branch 'add_rust_squashed' 2017-05-19 08:47:18 -04:00
keypin.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
keypin.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
main.c Patch for 22720 from huyvq: exit(1) more often 2017-06-26 14:14:56 -04:00
main.h clang-i386: use house style for public-when-testing variables 2017-05-08 15:38:05 -04:00
Makefile.nmake Netflow record collapsing defense. 2017-05-08 13:49:21 -04:00
microdesc.c Merge branch 'spooling_squashed' 2017-03-28 19:55:18 +02:00
microdesc.h Merge branch 'spooling_squashed' 2017-03-28 19:55:18 +02:00
networkstatus.c Fix a wide line from 22207 2017-07-05 17:37:06 -04:00
networkstatus.h Implement functions to expose valid/fresh-until and voters 2017-05-15 17:21:55 -04:00
nodelist.c Merge branch 'maint-0.3.0' into maint-0.3.1 2017-06-29 15:57:48 -04:00
nodelist.h Merge branch 'maint-0.3.0' into maint-0.3.1 2017-06-29 15:57:48 -04:00
ntmain.c Merge branch 'bug23081_025' into maint-0.3.1 2017-08-03 09:10:58 -04:00
ntmain.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
onion.c Merge remote-tracking branch 'public/bug20059_024_v2' into maint-0.2.9 2017-08-01 11:28:36 -04:00
onion.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
onion_fast.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
onion_fast.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
onion_ntor.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
onion_ntor.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
onion_tap.c Teach cov-exclude to detect runaway LCOV_EXCL_START lines 2017-04-25 10:59:19 -04:00
onion_tap.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
or.h Merge remote-tracking branch 'public/bug19769_19025_029' into maint-0.2.9 2017-08-01 11:30:29 -04:00
parsecommon.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
parsecommon.h prop224: Change encryption keys descriptor encoding 2017-05-11 08:33:26 -04:00
periodic.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
periodic.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
policies.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
policies.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
protover.c Dircache protocol version 2 adds support for diffs 2017-05-15 17:53:36 -04:00
protover.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
reasons.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
reasons.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
relay.c Merge branch 'maint-0.2.4' into maint-0.2.5 2017-06-08 09:21:15 -04:00
relay.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
rendcache.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
rendcache.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
rendclient.c Merge branch 'bug19418_029' into maint-0.3.1 2017-08-25 11:38:24 -04:00
rendclient.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
rendcommon.c Merge branch 'bug19418_029' into maint-0.3.1 2017-08-25 11:38:24 -04:00
rendcommon.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
rendmid.c hs: Add service-side circuitmap API. 2017-04-13 14:23:51 -04:00
rendmid.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
rendservice.c hs: Fix the intro circuit max retry 2017-08-28 14:43:42 -04:00
rendservice.h hs: Make the service list pruning function public 2017-04-13 16:25:49 -04:00
rephist.c Add a check and a cast in rephist.c to fix a warning 2017-05-09 11:13:22 -04:00
rephist.h Merge branch 'netflow_padding-v6-rebased2-squashed' 2017-05-08 13:54:59 -04:00
replaycache.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
replaycache.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
router.c Merge branch 'bug19418_029' into maint-0.3.1 2017-08-25 11:38:24 -04:00
router.h Merge branch 'ahf_bugs_21641_squashed' 2017-03-17 11:16:24 -04:00
routerkeys.c Merge branch 'bug19418_029' into maint-0.3.1 2017-08-25 11:38:24 -04:00
routerkeys.h Merge branch 'maint-0.3.0' 2017-06-05 15:52:06 -04:00
routerlist.c Cleanup MOCK_IMPL (etc) to be findable with etags 2017-05-26 14:07:06 -04:00
routerlist.h Remove unused "ROUTER_ADDED_NOTIFY_GENERATOR" internal value 2017-05-10 20:03:07 -04:00
routerparse.c Merge branch 'bug19418_029' into maint-0.3.1 2017-08-25 11:38:24 -04:00
routerparse.h bug#22143/prop#140: identify input diffs by their digest-as-signed 2017-05-03 13:09:08 -04:00
routerset.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
routerset.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
scheduler.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
scheduler.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
shared_random.c Remove SR_COMMIT_LEN workaround 2017-04-07 18:19:15 -04:00
shared_random.h Use macros for base64 lengths in shared_random.h 2017-04-06 17:43:17 -04:00
shared_random_state.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
shared_random_state.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
statefile.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
statefile.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
status.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
status.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
tor_main.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
torcert.c Merge branch 'bug22466_diagnostic_030' 2017-06-05 09:52:09 -04:00
torcert.h Run the copyright update script. 2017-03-15 16:13:17 -04:00
transports.c Run the copyright update script. 2017-03-15 16:13:17 -04:00
transports.h Run the copyright update script. 2017-03-15 16:13:17 -04:00