David Goulet
c13dc8b08a
Merge branch 'ticket40674_047_01' into maint-0.4.7
2022-11-09 15:32:18 -05:00
Rasmus Dahlberg
21eac1e8d8
dns: Make TTLs fuzzy at exit relays
...
This change mitigates DNS-based website oracles by making the time that
a domain name is cached uncertain (+- 4 minutes of what's measurable).
Resolves TROVE-2021-009.
Fixes #40674
2022-11-09 15:30:43 -05:00
David Goulet
560d44b08b
Merge branch 'maint-0.4.7'
2022-11-09 15:29:04 -05:00
David Goulet
780ca741f3
relay: Cache onion queue parameters on consensus change
...
This is part of the fast path so we need to cache consensus parameters
instead of querying it everytime we need to learn a value.
Part of #40704
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 15:12:51 -05:00
David Goulet
e3f6908984
relay: Make the max pending tasks per CPU a consensus parameter
...
Until now, there was this magic number (64) used as the maximum number
of tasks a CPU worker can take at once.
This commit makes it a consensus parameter so our future selves can
think of a better value depending on network conditions.
Part of #40704
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 13:13:21 -05:00
David Goulet
9c8c7804d5
relay: Add the onion_queue_wait_cutoff consensus param
...
Transform the hardcoded value ONIONQUEUE_WAIT_CUTOFF into a consensus
parameter so we can control it network wide.
Closes #40704
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 11:57:32 -05:00
David Goulet
93523ed0d6
relay: Make MaxOnionQueueDelay into a consensus param
...
Part of #40704
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 11:57:32 -05:00
David Goulet
bd055a258a
Merge branch 'maint-0.4.7'
2022-11-09 11:51:52 -05:00
David Goulet
4db03ac360
Merge branch 'tor-gitlab/mr/654' into maint-0.4.7
2022-11-09 11:51:46 -05:00
Mike Perry
04fafeb2dd
metrics: Reorganize state labels so rate() can be applied
...
Part of #40708 .
2022-11-09 11:48:42 -05:00
Mike Perry
09d32ac667
metrics: Use N_EWMA for moving avg, with N=100.
...
Part of #40708 .
2022-11-09 11:48:42 -05:00
David Goulet
1ff78f3751
Merge branch 'maint-0.4.7'
2022-11-09 11:47:06 -05:00
David Goulet
fe045f02d0
Merge branch 'maint-0.4.5' into maint-0.4.7
2022-11-09 11:47:06 -05:00
Sam James
ee38514cc4
build: fix -Wstrict-prototypes (Clang 16)
...
Clang 16 warns on -Wstrict-prototypes in preparation for C23 which can
among other things, lead to some configure tests silently failing/returning the wrong result.
Fixes this error:
```
-ignoreme: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
+ignoreme: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
main ()
```
For more information, see LWN.net [0] or LLVM's Discourse [1], gentoo-dev@ [2],
or the (new) c-std-porting mailing list [3].
[0] https://lwn.net/Articles/913505/
[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213
[2] https://archives.gentoo.org/gentoo-dev/message/dd9f2d3082b8b6f8dfbccb0639e6e240
[3] hosted at lists.linux.dev.
Bug: https://bugs.gentoo.org/879747
Signed-off-by: Sam James <sam@gentoo.org>
---
2022-11-09 11:46:55 -05:00
David Goulet
97512f3f7b
changelog: Add the missing latest stables
...
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-09 08:44:43 -05:00
David Goulet
8b8873b759
Merge branch 'maint-0.4.7'
2022-11-08 15:26:44 -05:00
David Goulet
5b0103cfb4
Merge branch 'tor-gitlab/mr/651' into maint-0.4.7
2022-11-08 15:25:08 -05:00
Mike Perry
59bef48490
metrics: Record percentage of blocked channels
...
Part of #40708 .
2022-11-08 18:25:07 +00:00
David Goulet
56ee2131f1
Merge branch 'maint-0.4.7'
2022-11-08 12:47:17 -05:00
Mike Perry
00633bc619
metrics: Report amount of cwnd drop from delta and gamma
...
Part of #40708 .
2022-11-08 12:47:14 -05:00
David Goulet
2adc73afdb
Merge branch 'maint-0.4.7'
2022-11-08 12:36:44 -05:00
David Goulet
fde87096c3
Merge branch 'tor-gitlab/mr/650' into maint-0.4.7
2022-11-08 12:36:19 -05:00
David Goulet
fb206d284c
Merge branch 'maint-0.4.7'
2022-11-08 12:35:48 -05:00
David Goulet
d634a5ebc7
relay: Remove unused conn->ext_or_conn_id
...
This also incidently removes a use of uninitialized stack data from the
connection_or_set_ext_or_identifier() function.
Fixes #40648
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-08 12:35:09 -05:00
David Goulet
2066e0494c
math: Replace naughty macro by an inline function
...
Part of #40708
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-07 14:49:41 -05:00
Mike Perry
fec9757a37
metrics: Add flow control metrics.
...
Part of #40708 .
2022-11-07 09:55:06 -05:00
Mike Perry
2f7e05d89d
metrics: Add stats when the clock stalls.
...
Part of #40708 .
2022-11-07 09:55:06 -05:00
Mike Perry
83fdaff7c0
metrics: Add running average of CC cwnd in slow start when closing circuit
...
Count slow start separately.
Part of #40708
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-07 09:55:06 -05:00
David Goulet
f270d20cb0
changes: Add file for ticket 40708
...
Closes #40708
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-07 09:55:06 -05:00
David Goulet
62ce557b0b
metrics: Add stats when reaching vegas delta or ss_cwnd_max
...
Part of #40708
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-07 09:55:06 -05:00
David Goulet
a0e72fcb97
metrics: Add running average of CC cwnd when closing circuit
...
Part of #40708
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-07 09:55:06 -05:00
David Goulet
c565ef9c58
metrics: Add running average of CC cwnd when exiting slow start
...
Part of #40708
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-07 09:55:06 -05:00
Vinícius Zavam
bd64e6bd08
fix: %s/param.sh/param.h
...
while here also reflect the check for __NETBSD_SOURCE on
tor_libc_get_version_str
2022-11-05 20:51:26 +00:00
Vinícius Zavam
cc95be8e17
fix: we shall not produce warnings compiling tor
2022-11-05 20:49:04 +00:00
Vinícius Zavam
64f8490ede
present __DragonFly_version, from DragonFlyBSD
2022-11-05 18:58:59 +00:00
Vinícius Zavam
2077b880d8
once NetBSD was presented, return its version
...
* defined by __NetBSD_Version__ on <sys/param.h> too.
2022-11-05 18:46:09 +00:00
Vinícius Zavam
8a879395ab
make tor_libc_get_name aware of NetBSD
...
* __NETBSD_SOURCE was used here to verify if we are running on NetBSD
2022-11-05 18:41:17 +00:00
Vinícius Zavam
c98ec6d001
return what OpenBSD gives as base system version
...
* it also uses sys/param.h to track its version;
* present that to tor_libc_get_version_str() as libc version;
while here, we also fix the return of FreeBSD version
* __FreeBSD_version is the correct var tracking the OSVERSION
2022-11-05 18:38:04 +00:00
Vinícius Zavam
9c7f919d6f
should we identify __FreeBSD__, return its version
...
* we use OSVERSION here (defined by __FreeBSD__);
* it's part of the <sys/param.h> include;
* that tracks all noteworthy changes made to the base system.
2022-11-05 18:31:46 +00:00
Vinícius Zavam
dba3090a68
return BSD if tor_libc_get_name sees __BSD_VISIBLE
...
* __BSD_VISIBLE is defined by systems like FreeBSD and OpenBSD;
* that also extends to DragonFlyBSD;
* it's used on stdlib.h and ctypes.h on those systems.
2022-11-05 18:17:12 +00:00
David Goulet
863428d753
Merge branch 'tor-gitlab/mr/627'
2022-11-03 15:43:20 -04:00
David Goulet
6196e9596a
metrics: Add connection socket family to metrics
...
Adds either ipv4 or ipv6 to the "tor_relay_connections_total" stats.
Closes #40710
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-03 13:05:21 -04:00
David Goulet
87e820a0c5
metrics: Add stats for num circ reaching max cell outq
...
Part of #40708
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-11-03 09:37:38 -04:00
Andy
1bb386a759
added check for compiler support of Wextra-semi
...
update AX_CHECK_COMPILE_FLAG function call
2022-11-01 15:32:43 -06:00
Rasmus Dahlberg
0fe2096144
Clip DNS TTL values once in event callback
...
This change ensures that other parts of the code base always operate on
the same clipped TTL values, notably without being aware of clipping.
2022-11-01 09:29:19 -04:00
David Goulet
b04705305b
Merge branch 'tor-gitlab/mr/649'
2022-11-01 09:14:33 -04:00
David Goulet
15e5b203cd
Merge branch 'tor-gitlab/mr/594'
2022-11-01 09:11:29 -04:00
Alexander Færøy
75d12dffe7
Remove BUG()
in Windows process read callback.
...
This BUG() was added when the code was written to see if this callback
was ever executed after we marked the handle as EOF. It turns out, it
does, but we handle it gracefully. We can therefore remove the BUG().
Fixes tpo/core/tor#40596.
2022-11-01 11:11:20 +01:00
David Goulet
c733ccda99
Merge branch 'tor-gitlab/mr/579'
2022-10-31 15:28:36 -04:00
David Goulet
2a838c196d
Merge branch 'maint-0.4.7'
2022-10-31 15:00:15 -04:00