Joakim Frostegård
|
14a4c10546
|
s/toml_config/aquatic_toml_config/
|
2022-02-19 15:11:00 +01:00 |
|
Joakim Frostegård
|
4073a1b8be
|
Update hashbrown to 0.12
|
2022-02-19 14:32:31 +01:00 |
|
Joakim Frostegård
|
8889ab586c
|
Use CanonicalSocketAddr in ws and http; remove old option from common
|
2022-02-03 19:29:21 +01:00 |
|
Joakim Frostegård
|
91dcd3de4d
|
Add CanonicalSocketAddr struct (#49)
* Add CanonicalSocketAddr struct to aquatic_common, use in aquatic_udp
* udp_bench: fix build error by using CanonicalSocketAddr
|
2022-02-02 22:34:54 +01:00 |
|
Joakim Frostegård
|
a208775104
|
Include documentation in printed config files (#41)
* Start work on printing toml config with comments
* WIP: toml_config: extract default values for fields
* WIP: toml_config: handle single-level nested structs
* WIP: toml_config: improve comment handling, std type trait impls
* WIP: toml_config: add Private trait, improve comment handling, clean up
* toml_config: fix default value bug; improve tests
* Use toml_config in all applicable crates; add toml_config enum support
* toml_config: improve comments
* toml_config_derive: support enum comments
* Improve config comments for udp, cli_helpers, common
* Improve config comments
* Add tests for Config struct TomlConfig implementations
* Improve Config comments
* Improve Config comments
* ws, http: add config comments for tls cert and private key lines
* small fixes to toml_config and toml_config_derive
* Run cargo fmt
* Fix typo in several config comments
* Update README
* Update README
|
2021-12-26 11:33:27 +01:00 |
|
Joakim Frostegård
|
473276cd46
|
Switch to rust edition 2021
|
2021-11-24 18:56:26 +01:00 |
|
Joakim Frostegård
|
59e95894b9
|
udp: statistics: show number of torrents and access list len
|
2021-11-19 12:04:16 +01:00 |
|
Joakim Frostegård
|
028a366ce5
|
Don't unnecessarily constrain crate versions in Cargo.toml files
|
2021-11-19 02:45:53 +01:00 |
|
Joakim Frostegård
|
a530dc2860
|
udp: network: update ValidUntil structs less often
|
2021-11-19 01:18:58 +01:00 |
|
Joakim Frostegård
|
593a46452f
|
aquatic_common: use hwloc for cpu pinning, for automatic core selection
This might not work very well on virtualized hosts, however..
|
2021-11-19 00:17:14 +01:00 |
|
Joakim Frostegård
|
54149ed3eb
|
aquatic_common: add work-in-progress SO_ATTACH_REUSEPORT_CBPF impl
|
2021-11-18 22:42:37 +01:00 |
|
Joakim Frostegård
|
4f8328b70a
|
Feature-gate CPU pinning, since it only works on Linux
|
2021-11-09 11:40:16 +01:00 |
|
Joakim Frostegård
|
e86410291a
|
cpu pinning: set affinity to multiple hyperthreads, fix issues
|
2021-11-07 13:31:03 +01:00 |
|
Joakim Frostegård
|
aa332ab296
|
aquatic_common, udp, udp load test: improve cpu pinning
|
2021-11-07 11:04:31 +01:00 |
|
Joakim Frostegård
|
b8073e4bd1
|
Replace HashMap and IndexMap with indexmap_amortized
This will hopefully get down latency.
|
2021-11-03 10:35:29 +01:00 |
|
Joakim Frostegård
|
fa3b6bb259
|
Move fn update_access_list to aquatic_common
|
2021-11-02 23:33:47 +01:00 |
|
Joakim Frostegård
|
992f4df635
|
aquatic_common: add access list test
|
2021-11-02 22:54:18 +01:00 |
|
Joakim Frostegård
|
fdaafae4b7
|
aquatic_udp: glommio: use signals for access list update
|
2021-11-02 22:23:47 +01:00 |
|
Joakim Frostegård
|
9b75b50802
|
aquatic_udp: mio: access list: use SIGUSR1, improve errors
|
2021-11-02 21:06:57 +01:00 |
|
Joakim Frostegård
|
d922e5e680
|
aquatic_udp: mio: update access list on SIGHUP instead of regularly
|
2021-11-02 20:33:08 +01:00 |
|
Joakim Frostegård
|
49ed4371e7
|
Run cargo fmt, clean up imports
|
2021-10-28 01:23:43 +02:00 |
|
Joakim Frostegård
|
d6d5cc78b7
|
udp, http: move privilege drop code into aquatic_common
|
2021-10-27 20:49:15 +02:00 |
|
Joakim Frostegård
|
35b8a1820d
|
Rename CoreAffinityConfig to CpuPinningConfig, rename fields
|
2021-10-27 20:21:11 +02:00 |
|
Joakim Frostegård
|
d659117ae5
|
Move CoreAffinityConfig to aquatic_common, use in glommio http
|
2021-10-27 20:19:02 +02:00 |
|
Joakim Frostegård
|
96196239f5
|
aquatic_udp: glommio: mostly implement scrape request support
|
2021-10-23 14:43:16 +02:00 |
|
Joakim Frostegård
|
119cd0fe46
|
Improve common AccessList code
|
2021-10-23 12:57:00 +02:00 |
|
Joakim Frostegård
|
38617c70f4
|
Refactor AccessList; update it periodically in aquatic_udp glommio
|
2021-10-19 22:52:31 +02:00 |
|
Joakim Frostegård
|
f3487d4749
|
Rename AccessList variants
|
2021-10-17 18:19:31 +02:00 |
|
Joakim Frostegård
|
f32cb522e2
|
aquatic_common: rename a AccessList function argument
|
2021-10-16 17:54:13 +02:00 |
|
Joakim Frostegård
|
7ccd5fcbf7
|
access lists: filter requests in socket workers instead
|
2021-10-16 17:26:40 +02:00 |
|
Joakim Frostegård
|
40b7bfe309
|
aquatic_common: make info hash parse test code look nicer
|
2021-10-15 22:09:20 +02:00 |
|
Joakim Frostegård
|
ba787c3361
|
aquatic_common: improve comments, run rustfmt
|
2021-10-15 22:07:29 +02:00 |
|
Joakim Frostegård
|
490c0b037d
|
AccessListMode: rename Allow to Require and Deny to Forbid
|
2021-10-15 21:59:46 +02:00 |
|
Joakim Frostegård
|
3a2e751668
|
AccessListConfig: put mode field first
|
2021-10-15 21:58:47 +02:00 |
|
Joakim Frostegård
|
b3d1bcb7f1
|
aquatic_udp: serde-rename AccessListMode variants to lowercase
|
2021-10-15 21:58:23 +02:00 |
|
Joakim Frostegård
|
f0846e3128
|
aquatic_common: rename AccessListType to AccessListMode
|
2021-10-15 21:55:01 +02:00 |
|
Joakim Frostegård
|
60d183003d
|
aquatic_common: move access list code to own file
|
2021-10-15 21:53:42 +02:00 |
|
Joakim Frostegård
|
f370dac330
|
access list: use hex crate for info hash parsing
|
2021-10-15 10:09:02 +02:00 |
|
Joakim Frostegård
|
ec5d535ffc
|
access list: improve naming
|
2021-10-15 02:46:28 +02:00 |
|
Joakim Frostegård
|
4b96cfbdf9
|
access list: don't delete old until new sucessfully created
|
2021-10-15 02:44:05 +02:00 |
|
Joakim Frostegård
|
ea52317b49
|
access list: improve info hash string parsing
|
2021-10-15 02:41:26 +02:00 |
|
Joakim Frostegård
|
6cfa220097
|
access list: log when update fails; run cargo fmt
|
2021-10-15 02:35:13 +02:00 |
|
Joakim Frostegård
|
b5a2b81bd7
|
aquatic_udp: simplify access list logic
|
2021-10-15 02:30:49 +02:00 |
|
Joakim Frostegård
|
8639f380f4
|
aquatic_udp: first access list implementation
|
2021-10-15 02:08:57 +02:00 |
|
Joakim Frostegård
|
32541c5c15
|
Upgrade hashbrown
|
2021-08-15 22:29:09 +02:00 |
|
Joakim Frostegård
|
d0e716f80b
|
Run rustfmt, clean up aquatic_http_protocol/Cargo.toml
|
2021-08-15 22:26:11 +02:00 |
|
Joakim Frostegård
|
e1260d14de
|
Update rand to 0.8 and rand_distr to 0.4
|
2021-02-10 18:36:23 +01:00 |
|
Joakim Frostegård
|
fe11ed138a
|
Use (patched) crates.io deps for crates, add some package metadata
|
2020-09-13 17:30:26 +02:00 |
|
Joakim Frostegård
|
6ee8ed4895
|
aquatic_common: extract response peers: don't return sender
Seems to fix or at least help with some issues with
real clients being slow to initiate transfers
|
2020-08-16 23:07:39 +02:00 |
|
Joakim Frostegård
|
a3a1d1606b
|
WIP: udp: add ipv6 support
Returning IPv6 peers doesn't really work with UDP. It is not supported by
https://libtorrent.org/udp_tracker_protocol.html. There is a suggestion in
https://web.archive.org/web/20170503181830/http://opentracker.blog.h3q.com/2007/12/28/the-ipv6-situation/
of using action number 4 and returning IPv6 octets just like for IPv4
addresses. Clients seem not to support it very well, but due to a lack of
alternative solutions, it is implemented here
|
2020-07-31 05:37:58 +02:00 |
|