Commit graph

1585 commits

Author SHA1 Message Date
Joakim Frostegård
b5dc677d97
Merge pull request #66 from greatest-ape/privdrop-2022-04-04
Improve privilege dropping; quit whole program if any thread panics; other improvements
2022-04-06 19:55:29 +02:00
Joakim Frostegård
113fe8f5fd Update TODO 2022-04-06 19:55:12 +02:00
Joakim Frostegård
3746fa76ec udp: name statistics worker thread "statistics" 2022-04-06 19:16:50 +02:00
Joakim Frostegård
0a63ee3ce7 load testers: name worker threads "load-test" 2022-04-06 19:15:01 +02:00
Joakim Frostegård
5fb91ccc73 http_private: db_connections_per_worker: add comment, default to 4 2022-04-06 19:09:46 +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
b677a104d3 cli helpers: change default log level to warn 2022-04-06 18:55:13 +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
87bfec5e55 http_private: use PrivilegeDropper 2022-04-06 18:51:56 +02:00
Joakim Frostegård
a4c7e79dc9 http_private: use PanicSentinel 2022-04-06 18:48:23 +02:00
Joakim Frostegård
f50c8970b5 aquatic_ws: use PanicSentinel, simplify lib.rs 2022-04-06 18:44:09 +02:00
Joakim Frostegård
117244f1c7 aquatic_http: use PanicSentinel, simplify lib.rs 2022-04-06 18:38:50 +02:00
Joakim Frostegård
b4d1c46595 Update TODO 2022-04-06 02:23:06 +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
94ee4027e8 Update TODO 2022-04-06 01:53:00 +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
3f46db01ff Run cargo fmt 2022-04-06 01:14:47 +02:00
Joakim Frostegård
d0eec05d4c udp: use PanicSentinel 2022-04-06 00:42:11 +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
6f30d05453 Update TODO 2022-04-05 01:33:02 +02:00
Joakim Frostegård
c888017072 Improve privilege dropping; run cargo fmt 2022-04-05 01:26:40 +02:00
Joakim Frostegård
2ad1418175
Merge pull request #63 from greatest-ape/cpu-pinning-2022-03-30
Improve CPU pinning
2022-04-05 00:57:20 +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
7acd12b717
Merge pull request #65 from greatest-ape/private-tracker-2022-04-01
Add aquatic_http_private; other improvements
2022-04-04 13:15:16 +02:00
Joakim Frostegård
e96dd55c5d http_private: use BINARY(20) for p_peer_id 2022-04-04 13:04:59 +02:00
Joakim Frostegård
4b456cc668 http_private: add some Cargo.toml fields 2022-04-04 12:55:19 +02:00
Joakim Frostegård
292ba6f741 Bump aquatic_http_private version to 0.2.0 to match other crates 2022-04-04 12:53:26 +02:00
Joakim Frostegård
9731791540 Remove old nested .gitignore and Cargo.lock files 2022-04-04 12:52:50 +02:00
Joakim Frostegård
c990521b92 Run cargo fmt 2022-04-04 12:49:35 +02:00
Joakim Frostegård
9dfc3a82ad Update TODO 2022-04-04 12:49:29 +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
44b50204e2 Switch to thin LTO; add Cargo profile release-debug 2022-04-04 12:32:42 +02:00
Joakim Frostegård
9f8f80a17b http protocol: remove AnnounceRequest::compact, fail parsing if set to 0 2022-04-04 12:16:13 +02:00
Joakim Frostegård
71c070cf98 Update TODO 2022-04-04 12:07:34 +02:00
Joakim Frostegård
61569d0f31 http_protocol: remove charset=utf-8 from response content type
We send bencode bytes. They should possibly not be sent as text at all
2022-04-04 12:06:27 +02:00
Joakim Frostegård
5da1c304a3 http_protocol: fix ScrapeRequest::write issue 2022-04-04 11:57:40 +02:00
Joakim Frostegård
db6f6e027c http_protocol: fix AnnounceResponse::warning_message serialization 2022-04-04 11:50:42 +02:00
Joakim Frostegård
68fda1be45 http_protocol: fix failing test_announce_request_from_bytes 2022-04-04 11:00:25 +02:00
Joakim Frostegård
fc159aa0a0 http_private: make call_announce_procedure cleaner 2022-04-04 10:55:24 +02:00
Joakim Frostegård
4d7ea257b8 http_private: do less separate queries when calling stored procedure 2022-04-04 10:47:49 +02:00
Joakim Frostegård
b604bd4b0a http_private: remove AnnounceProcedureParameters struct 2022-04-04 10:42:09 +02:00
Joakim Frostegård
6eb1375e4e http_protocol: skip serializing AnnounceResponse.warning_message if None 2022-04-04 10:28:48 +02:00
Joakim Frostegård
92b62e73ca http_protocol: in AnnounceRequest::write, send uploaded & downloaded 2022-04-04 10:20:43 +02:00