Commit graph

91 commits

Author SHA1 Message Date
Joakim Frostegård
65a8c9d6ff Use Rust 1.64 workspace inheritance 2022-09-25 11:40:43 +02:00
Joakim Frostegård
5f7e9f20f3 Upgrade ahash from version 0.7.6 to 0.8 2022-09-18 14:09:20 +02:00
Joakim Frostegård
c76d7442e2 Use regular (ahash) IndexMap for PeerMaps 2022-08-06 16:53:49 +02:00
Joakim Frostegård
c0ed0eb7db
Merge pull request #86 from greatest-ape/more-compact-peers
Reduce ValidUntil size; reduce size of various ws structs; improve aquatic_http_protocol
2022-08-06 12:09:41 +02:00
Joakim Frostegård
fcf18c845f Reduce ValidUntil size; reduce size of various ws structs 2022-08-01 14:15:06 +02:00
Joakim Frostegård
6bdb50df8a access control: strip whitespace in hashes, ignore empty lines 2022-07-26 23:22:02 +02:00
Joakim Frostegård
414af5a26f aquatic_common: ignore some whitespace in cli arg parser 2022-07-24 12:01:18 +02:00
Joakim Frostegård
ea046dd5fe AccessListConfig: add serde(default, deny_unknown_fields) 2022-07-23 17:51:21 +02:00
Joakim Frostegård
cedf0b61ca Exit with error message on unrecognized config keys 2022-07-05 11:26:46 +02:00
Joakim Frostegård
a852b290ca Add cli flag for printing parsed config 2022-07-05 11:15:53 +02:00
Joakim Frostegård
224d50e98b common: do more request to swarm worker renames 2022-07-04 11:53:42 +02:00
Joakim Frostegård
fb2794643d udp, common: rename request workers to swarm workers 2022-07-04 11:49:39 +02:00
Joakim Frostegård
cc1eda80a7 Update rustls-pemfile to v1.0.0 2022-05-10 23:16:04 +02:00
Joakim Frostegård
c229872134 Use idiomatic feature names & namespace support from Rust 1.60 2022-04-10 01:25:03 +02:00
Joakim Frostegård
bd6764afaf Move aquatic_cli_helpers code into aquatic_common and remove crate 2022-04-06 19:02:39 +02:00
Joakim Frostegård
745a85f71d PrivilegeDropper::after_socket_creation: take ownership of self 2022-04-06 18:53:11 +02:00
Joakim Frostegård
ffa7c7532f PanicSentinel: only set flag if dropped while panicking 2022-04-06 01:56:45 +02:00
Joakim Frostegård
10997596fa PanicSentinel: send SIGTERM only once 2022-04-06 01:52:06 +02:00
Joakim Frostegård
b61b136b0c Add PanicSentinelWatcher
Use to determine if SIGTERM was caused by panic in other thread
2022-04-06 01:33:19 +02:00
Joakim Frostegård
49523779d9 common: add PanicSentinel, improve PrivilegeDropper anyhow context 2022-04-06 00:41:15 +02:00
Joakim Frostegård
cb2f7483d3 Return anyhow::Result on PrivDropper waiting and socket creation 2022-04-05 23:15:29 +02:00
Joakim Frostegård
02ba4ec922 privilege dropping: actually set group, default to "nogroup" 2022-04-05 23:03:54 +02:00
Joakim Frostegård
c888017072 Improve privilege dropping; run cargo fmt 2022-04-05 01:26:40 +02:00
Joakim Frostegård
621f45e84c aquatic_common: add doc comments for CpuPinningConfig structs 2022-04-04 23:04:56 +02:00
Joakim Frostegård
76ccd8ba55 aquatic_common: rename CpuPinningMode to CpuPinningDirection 2022-04-04 23:04:09 +02:00
Joakim Frostegård
ffce413217 aquatic_common: fix build error with aquatic_udp 2022-04-04 23:00:07 +02:00
Joakim Frostegård
908e18360c Merge branch 'master' into cpu-pinning-2022-03-30 2022-04-04 22:49:25 +02:00
Joakim Frostegård
6c149331dc Rewrite CpuPinningConfig implementation to support aquatic_toml_config 2022-04-04 22:38:47 +02:00
Joakim Frostegård
c18a59b0cb Use proper workspace path declarations, remove workspace patch section 2022-04-04 12:46:42 +02:00
Joakim Frostegård
e790727bc0 aquatic_common: add feature gated fn create_rustls_config 2022-04-03 18:36:37 +02:00
Joakim Frostegård
3dc9068dd2 cpu pinning: add hyperthread mapping modes (glommio only) 2022-03-31 15:12:04 +02:00
Joakim Frostegård
fb607ac0c2 Improve CPU pinning 2022-03-30 22:53:15 +02:00
Joakim Frostegård
d78b0fa31e Bump version to 0.2.0 for all aquatic crates 2022-03-26 11:39:37 +01:00
Joakim Frostegård
90437e23bb Cargo.toml files: add readme keys, remove some exclude keys 2022-03-26 11:39:04 +01:00
Joakim Frostegård
7180318abb access list: rename white to allow, black to deny 2022-03-26 11:18:19 +01:00
Joakim Frostegård
5176b18ef9 common: rename AHashIndexMap to AmortizedIndexMap 2022-03-20 19:42:46 +01:00
Joakim Frostegård
3785e57513 Sort dependencies in Cargo.toml files 2022-02-20 01:44:34 +01:00
Joakim Frostegård
f18fc52675 Run cargo fmt 2022-02-20 00:45:04 +01:00
Joakim Frostegård
4560c7fce0 aquatic_common: possibly do less allocations in extract_response_peers 2022-02-19 15:19:23 +01:00
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