Commit graph

32 commits

Author SHA1 Message Date
Joakim Frostegård
94e3af2463
http: use separate sockets for IPv4 and IPv6 (#221) 2025-01-16 22:53:56 +01:00
Joakim Frostegård
048c297fc7
udp: open one socket each for IPv4 and IPv6 (#220)
* tmp work on udp double sockets

* WIP: udp: open two sockets (one for ipv4, one for ipv6)

io_uring not ported yet

* udp: open one socket each for IPv4 and IPv6

Config file now has one setting for each

* file transfer ci: fix udp network.address_ipv4
2025-01-16 20:13:28 +01:00
Joakim Frostegård
0eb66f150c Improve network address config documentation, update TODO 2025-01-13 22:14:15 +01:00
Joakim Frostegård
24897dd73d Improve documentation around IPv4/IPv6 address binding 2025-01-12 23:09:05 +01:00
Joakim Frostegård
86ff9cd577 http: fix enclose macro invocation error 2025-01-12 22:10:16 +01:00
Joakim Frostegård
7795a1a532 Make mimalloc optional for udp and http 2024-05-03 22:38:25 +02:00
Joakim Frostegård
79d8a3b6f3 http: don't always close connection after sending error response 2024-04-25 22:31:02 +02:00
Joakim Frostegård
921fb57e9e http: improve peer addr extraction logic 2024-04-20 10:27:48 +02:00
Joakim Frostegård
3e7ad2a9e7 http socket worker, connection module: add comment about peer addr 2024-04-14 00:47:57 +02:00
Joakim Frostegård
b898c53ae1 http: don't require peer addr to have been set in send_response 2024-04-14 00:46:02 +02:00
Joakim Frostegård
e705c03981 Explicity use IndexMap::swap_remove to silence warnings 2024-02-06 18:34:17 +01:00
Joakim Frostegård
40e33d8af1 fix prometheus timeout mask metrics 2024-02-04 00:03:01 +01:00
Joakim Frostegård
437f2def7d aquatic_common: feature-gate cpu pinning, remove hwloc feature 2024-02-03 23:16:45 +01:00
Joakim Frostegård
1acf44c001 ws and http: remove CPU pinning config structs, update CHANGELOG 2024-02-03 23:06:02 +01:00
Joakim Frostegård
498481568d http: improve prometheus idle timeout 2024-02-03 23:01:45 +01:00
Joakim Frostegård
d7e06468c3 http: quit if any worker thread quits 2024-02-03 22:38:05 +01:00
Joakim Frostegård
38de05a6c4 http protocol: rename methods for writing to and parsing from bytes 2024-01-29 19:52:41 +01:00
Joakim Frostegård
964636db7c http and ws: fix build errors with --no-default-features 2024-01-27 18:21:44 +01:00
Joakim Frostegård
352194e0bd http: avoid heap allocation for torrents with few peers; refactor 2024-01-27 10:58:03 +01:00
Joakim Frostegård
c7f7f010ca http: upgrade metrics crate to 0.22 2024-01-25 00:03:05 +01:00
Joakim Frostegård
73eeb22f66 http: extract response peers while announcing peer removed
This improves performance by avoiding lots of comparisons
2024-01-24 23:33:15 +01:00
Joakim Frostegård
63ae98f67c http: index peer map by IP and port instead of IP and peer id 2024-01-24 22:54:13 +01:00
Joakim Frostegård
746aa47cce http: silence clippy warnings 2024-01-20 10:29:13 +01:00
Joakim Frostegård
5401eaf85f Run cargo clippy --fix and cargo fmt 2024-01-20 09:56:14 +01:00
Joakim Frostegård
22e151d0f0 http: start awaiting conn close message before tls setup 2024-01-20 09:43:55 +01:00
Joakim Frostegård
7cfcf5ea55 http: split swarm worker module into submodules 2023-11-18 00:29:15 +01:00
Joakim Frostegård
923b3637e8 http: allow disabling TLS, allow reverse proxies, general fixes 2023-11-17 18:16:29 +01:00
Joakim Frostegård
fe5ccf6646
ws: refactor, bug fixes, improvements (#155)
- split swarm worker into two modules
- split socket worker into two modules
- keep track of which offers peers have sent and only allow matching
answers
- always clean up after closing connection
- use channel for telling connections to close
- move some logic into new ConnectionRunner struct
- use slotmap for connection reference storage
- fix double counting of error responses
- actually close connections that take too long to send responses to
- remove announced_info_hashes entry on AnnounceEvent::Stopped
2023-11-09 18:06:21 +01:00
Joakim Frostegård
99647a323a http: reload tls config on SIGUSR1 2023-10-24 18:44:49 +02:00
Joakim Frostegård
6a23ef9103 ws: reload tls config on SIGUSR1 2023-10-24 18:36:56 +02:00
Joakim Frostegård
c5c995bb80
Split README into separate files (#150)
* Create a separate udp README file

* Split README into separate files for all three implementations

* Minor README fixes
2023-10-19 19:59:11 +02:00
Joakim Frostegård
9b032f7e24 Move all crates to new crates dir 2023-10-18 23:53:41 +02:00