Skip to content

protect SSL torrents from malicious mutable torrent - #8831

Open
arvidn wants to merge 1 commit into
masterfrom
resolve-links-protection
Open

protect SSL torrents from malicious mutable torrent#8831
arvidn wants to merge 1 commit into
masterfrom
resolve-links-protection

Conversation

@arvidn

@arvidn arvidn commented Sep 3, 2026

Copy link
Copy Markdown
Owner

No description provided.

@arvidn
arvidn force-pushed the resolve-links-protection branch from f649217 to f444811 Compare September 3, 2026 00:51
@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown

🐰 Bencher Report

Branchresolve-links-protection
Testbedubuntu-24.04
Click to view all benchmark results
BenchmarkLatencyBenchmark Result
nanoseconds (ns)
(Result Δ%)
Upper Boundary
nanoseconds (ns)
(Limit %)
base-v1.torrent📈 view plot
🚷 view threshold
45,962.27 ns
(-24.02%)Baseline: 60,492.16 ns
94,521.16 ns
(48.63%)
base-v2.torrent📈 view plot
🚷 view threshold
56,254.96 ns
(-42.54%)Baseline: 97,905.27 ns
170,301.69 ns
(33.03%)
dh_compute_secret📈 view plot
🚷 view threshold
41,858.23 ns
(-40.26%)Baseline: 70,065.57 ns
188,517.39 ns
(22.20%)
dh_handshake📈 view plot
🚷 view threshold
84,928.49 ns
(-39.08%)Baseline: 139,404.90 ns
372,207.52 ns
(22.82%)
dh_key_exchange📈 view plot
🚷 view threshold
42,552.15 ns
(-37.72%)Baseline: 68,326.34 ns
179,384.30 ns
(23.72%)
ip_filter: access, hit📈 view plot
🚷 view threshold
62.63 ns
(-4.19%)Baseline: 65.36 ns
82.26 ns
(76.13%)
ip_filter: access, miss📈 view plot
🚷 view threshold
63.05 ns
(-2.45%)Baseline: 64.63 ns
80.32 ns
(78.50%)
many-pad-files.torrent📈 view plot
🚷 view threshold
915,302.81 ns
(-46.71%)Baseline: 1,717,650.54 ns
8,009,364.65 ns
(11.43%)
merkle: compute root📈 view plot
🚷 view threshold
173,466.40 ns
(-26.70%)Baseline: 236,666.39 ns
515,283.74 ns
(33.66%)
merkle: create proof📈 view plot
🚷 view threshold
129.39 ns
(+3.38%)Baseline: 125.16 ns
156.93 ns
(82.45%)
merkle: validate proof📈 view plot
🚷 view threshold
2,008.29 ns
(-24.63%)Baseline: 2,664.53 ns
5,680.14 ns
(35.36%)
piece picker: add/remove near-seed📈 view plot
🚷 view threshold
199,812.63 ns
(+9.44%)Baseline: 182,575.75 ns
327,891.04 ns
(60.94%)
piece picker: add/remove seed📈 view plot
🚷 view threshold
32.09 ns
(+10.84%)Baseline: 28.95 ns
37.48 ns
(85.63%)
piece picker: break one seed📈 view plot
🚷 view threshold
137,293.51 ns
(+12.74%)Baseline: 121,779.22 ns
165,411.44 ns
(83.00%)
piece picker: get availability📈 view plot
🚷 view threshold
17,644.28 ns
(+6.85%)Baseline: 16,513.37 ns
23,264.87 ns
(75.84%)
piece picker: mark as downloading, high index📈 view plot
🚷 view threshold
102.57 ns
(+6.96%)Baseline: 95.90 ns
118.87 ns
(86.29%)
piece picker: mark as downloading, low index📈 view plot
🚷 view threshold
1,613.11 ns
(-0.67%)Baseline: 1,623.93 ns
2,213.45 ns
(72.88%)
piece picker: pick pieces, after dirty📈 view plot
🚷 view threshold
1,071,627.01 ns
(+9.75%)Baseline: 976,456.80 ns
1,270,166.85 ns
(84.37%)
piece picker: pick pieces, clean📈 view plot
🚷 view threshold
46.83 ns
(+6.10%)Baseline: 44.14 ns
53.04 ns
(88.30%)
piece picker: pick pieces, dense peer📈 view plot
🚷 view threshold
47.70 ns
(+5.73%)Baseline: 45.12 ns
54.35 ns
(87.76%)
piece picker: pick pieces, sparse peer📈 view plot
🚷 view threshold
293,407.78 ns
(-7.82%)Baseline: 318,304.17 ns
656,771.79 ns
(44.67%)
piece picker: piece priorities📈 view plot
🚷 view threshold
19,166.98 ns
(+3.59%)Baseline: 18,502.83 ns
23,024.37 ns
(83.25%)
piece picker: refcount bitfield, 1 bit set📈 view plot
🚷 view threshold
5,548.94 ns
(-92.66%)Baseline: 75,638.98 ns
293,779.82 ns
(1.89%)
piece picker: refcount bitfield, 10 bits set📈 view plot
🚷 view threshold
5,775.88 ns
(-92.42%)Baseline: 76,167.68 ns
295,037.58 ns
(1.96%)
piece picker: refcount bitfield, 200 bits set📈 view plot
🚷 view threshold
7,053.60 ns
(-91.01%)Baseline: 78,475.40 ns
299,107.43 ns
(2.36%)
piece picker: refcount bitfield, 49 bits set📈 view plot
🚷 view threshold
5,916.72 ns
(-92.27%)Baseline: 76,494.78 ns
294,485.83 ns
(2.01%)
piece picker: refcount bitfield, 50 bits set📈 view plot
🚷 view threshold
5,976.03 ns
(-92.19%)Baseline: 76,518.31 ns
294,624.40 ns
(2.03%)
piece picker: refcount bitfield, 5000 bits set📈 view plot
🚷 view threshold
33,264.38 ns
(-66.38%)Baseline: 98,939.39 ns
298,004.28 ns
(11.16%)
rc4_encrypt📈 view plot
🚷 view threshold
31,508.81 ns
(-2.92%)Baseline: 32,457.62 ns
47,604.45 ns
(66.19%)
🐰 View full continuous benchmarking report in Bencher

Comment thread test/test_ssl.cpp
// to get at the fingerprint set_trust_certificate() computes as a side effect
sha256_hash fingerprint_cert(std::string const& pem)
{
aux::ssl::context ctx(aux::ssl::context::tls);
Comment thread test/test_ssl.cpp

// invalid input is reported as an error, with an all-zero fingerprint,
// not a crash or a bogus hash
aux::ssl::context ctx(aux::ssl::context::tls);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants