Commit graph

110 commits

Author SHA1 Message Date
Joakim Frostegård
9bf17b0ab4 bittorrent_udp: response_to_bytes: return Result<(), io:Error> 2020-04-11 15:03:50 +02:00
Joakim Frostegård
054d36b316 Update TODO 2020-04-11 15:03:45 +02:00
Joakim Frostegård
c45fa80391 bittorrent_udp: simplify quickcheck test syntax, keeping functionality 2020-04-11 14:57:08 +02:00
Joakim Frostegård
02b63feef7 bittorrent_udp: add quickcheck tests for request byte conversion 2020-04-11 14:53:36 +02:00
Joakim Frostegård
554895a9df bittorrent_udp: implement quickcheck::Arbitrary for request types 2020-04-11 14:43:58 +02:00
Joakim Frostegård
9a1143ffac aquatic_bench: enable loading configuration from file 2020-04-11 14:31:21 +02:00
Joakim Frostegård
4691080602 Update TODO 2020-04-11 14:23:03 +02:00
Joakim Frostegård
834a8c3fa2 cli_helpers: run_with_cli_and_config: rename function and "f" argument 2020-04-11 14:19:46 +02:00
Joakim Frostegård
688372bdf2 aquatic: announce and scrape handlers: send back error on invalid conn 2020-04-11 14:17:03 +02:00
Joakim Frostegård
b32046e768 bittorrent_udp: improve code formatting and imports 2020-04-10 15:20:27 +02:00
Joakim Frostegård
fe85901021 bittorrent_udp: add RequestParseError; remove InvalidRequest; other fixes 2020-04-10 15:16:20 +02:00
Joakim Frostegård
f80646e3a8 bittorrent_udp: add From<> for requests and responses into their enums 2020-04-10 11:19:29 +02:00
Joakim Frostegård
44b0489521 bittorrent_udp: response_to_bytes: simplify code for ipv6 announce 2020-04-10 10:10:33 +02:00
Joakim Frostegård
2fadbcc8f8 Update TODO 2020-04-10 03:35:22 +02:00
Joakim Frostegård
25f6be3940 Add scripts/test.sh for running tests with higher quickcheck settings 2020-04-10 03:30:59 +02:00
Joakim Frostegård
c964f05e84 bittorrent_udp: add quickcheck tests for response byte conversion 2020-04-10 03:30:53 +02:00
Joakim Frostegård
46f9a1d13c Update TODO 2020-04-10 03:29:55 +02:00
Joakim Frostegård
6e6633951f Update README 2020-04-10 03:29:42 +02:00
Joakim Frostegård
264ad17b7b aquatic_bench: use 20 rounds again 2020-04-10 03:29:26 +02:00
Joakim Frostegård
43b31e5e96 bittorrent_udp: request_to_bytes: fix bad writing of zero after IP 2020-04-10 01:43:00 +02:00
Joakim Frostegård
9fbcd60dff bittorrent_udp: response_from_bytes: improve announce code 2020-04-10 01:42:20 +02:00
Joakim Frostegård
b20e5912e2 bittorrent_udp: request converters: general cleanup and fixes 2020-04-10 01:22:13 +02:00
Joakim Frostegård
5bd0deb105 bittorrent_udp: requests converters: clean up 2020-04-10 01:08:54 +02:00
Joakim Frostegård
c5d746a42e bittorrent_udp: request_from_bytes: improve scrape code 2020-04-10 01:05:29 +02:00
Joakim Frostegård
acfd2a75d8 bittorrent_udp: response_to_bytes: improve code 2020-04-09 21:30:58 +02:00
Joakim Frostegård
f203250155 bittorrent_udp: response_from_bytes: more improvements 2020-04-09 21:17:30 +02:00
Joakim Frostegård
928a82e4dc bittorrent_udp: response_from_bytes: improve announce part 2020-04-09 21:08:29 +02:00
Joakim Frostegård
13e7ef6b57 bittorrent_udp: response_from_bytes: more fixes 2020-04-09 20:43:42 +02:00
Joakim Frostegård
a37b44ec89 bittorrent_udp: response_to_bytes: improve scrape encoding 2020-04-09 20:27:50 +02:00
Joakim Frostegård
9705d1822e Update TODO 2020-04-09 17:58:09 +02:00
Joakim Frostegård
8dfd49af0d cli helpers: in run function, take function as argument instead 2020-04-09 17:56:20 +02:00
Joakim Frostegård
ac52668a3d add crate cli_helpers with option and config parsing; use in aquatic
Putting cli functionality into its own crate will allow using it
from aquatic_bench and possibly other programs.
2020-04-09 16:55:40 +02:00
Joakim Frostegård
06756f1c74 Add short README.md 2020-04-09 11:53:19 +02:00
Joakim Frostegård
05d085e076 aquatic_bench: Cargo.toml: sort dependencies alphabetically 2020-04-09 11:52:23 +02:00
Joakim Frostegård
91c764d143 Update TODO 2020-04-09 11:48:00 +02:00
Joakim Frostegård
b457df26e3 aquatic annonunce handler: downgrade TorrentMap ref instead of new .get 2020-04-09 11:46:06 +02:00
Joakim Frostegård
32edee9bbb aquatic: add #[inline] to handle_readable_socket and handlers
Also update aquatic_bench comment with new bench results
2020-04-09 10:14:53 +02:00
Joakim Frostegård
2fd732efc6 aquatic: handlers: pass rng's as function arguments 2020-04-09 09:53:18 +02:00
Joakim Frostegård
bd16cdd709 aquatic: event loop: don't preallocate request/response vectors
It's better to just allocate when needed.
2020-04-09 09:34:39 +02:00
Joakim Frostegård
eddd353621 aquatic: when statistics.interval == 0, skip adding to stats atomics 2020-04-08 22:00:52 +02:00
Joakim Frostegård
5d2e4412b3 aquatic: create function in tasks.rs for statistics printing 2020-04-08 21:55:16 +02:00
Joakim Frostegård
58fbf8b7fe aquatic: add comments to many config fields 2020-04-08 21:50:23 +02:00
Joakim Frostegård
e3b29723a4 aquatic: when config recv_buffer_size is zero, don't set on socket 2020-04-08 21:45:25 +02:00
Joakim Frostegård
ad68dda9f5 aquatic: remove unnecessary fields from Peer; general clean up 2020-04-08 21:40:36 +02:00
Joakim Frostegård
31c8864658 aquatic: put max_scrape_torrents, max_response_peers in NetworkConfig 2020-04-08 21:32:05 +02:00
Joakim Frostegård
7239e9c047 aquatic: add and use NetworkConfig.peer_announce_interval 2020-04-08 21:30:57 +02:00
Joakim Frostegård
ca9d15c7a9 aquatic: move some fields from Config into new NetworkConfig 2020-04-08 21:27:12 +02:00
Joakim Frostegård
fa60eddcc4 aquatic: add CleaningConfig and StatisticsConfig to Config, use them 2020-04-08 21:22:45 +02:00
Joakim Frostegård
766606cc08 aquatic: announce handler: improve safety by small margin 2020-04-08 20:26:39 +02:00
Joakim Frostegård
789783cfe4 aquatic scrape handler: preallocate stats vec better 2020-04-08 20:23:31 +02:00