2
0
mirror of synced 2025-02-24 06:38:14 +00:00

2225 Commits

Author SHA1 Message Date
Matt Joiner
376ff763fe Apply staticcheck 2020-02-20 11:09:57 +11:00
Matt Joiner
1137956861 Remove funding file
It's drawn automatically from anacrolix/.github now.
2020-01-29 09:12:49 +11:00
Matt Joiner
466cced13a Make use of requestStrategyDefaults in more places 2020-01-24 19:24:28 +11:00
Matt Joiner
53e334d3f2 Move all the request strategy stuff into its file 2020-01-24 17:55:20 +11:00
Matt Joiner
538efd12bd Restore the default duplicate request timeout strategy 2020-01-24 17:34:07 +11:00
Matt Joiner
48eb7ff3f2 Expose request strategies 2020-01-24 17:30:57 +11:00
Matt Joiner
2044457959 Fix unimplemented hooks in request strategies one and two 2020-01-24 15:09:39 +11:00
Matt Joiner
737596d3df go get -u && go mod tidy 2020-01-23 14:16:46 +11:00
Matt Joiner
913f6df80d Use CopyN to ensure early io.EOF isn't ignored when hashing pieces 2020-01-23 13:56:39 +11:00
Matt Joiner
2c1afff8b3 Skip 1 frame in reader.log 2020-01-23 13:55:40 +11:00
Matt Joiner
cf0d0118ea Finish fixing IP banning on storage errors 2020-01-23 13:54:37 +11:00
Matt Joiner
4fae1f81df Record connection dirtied piece before queuing for hash
Not a bug, but probably more robust.
2020-01-23 13:52:17 +11:00
Matt Joiner
dc643d2ed3 Update code comments 2020-01-23 13:51:14 +11:00
Matt Joiner
1d5b8f7451 Reflow some comments 2020-01-22 15:56:16 +11:00
Matt Joiner
dc39e98cfb Fix race in requestStrategyThree request timeout callback 2020-01-20 11:51:24 +11:00
Matt Joiner
ff8ce944e9 Upgrade github.com/pkg/errors@v0.9.0 2020-01-14 15:42:27 +11:00
Matt Joiner
cfc68d3ae6 Fix bad init of Torrent.requestStrategy 2020-01-14 10:51:09 +11:00
Matt Joiner
35cdebdc3b Fix panic in benchmark due to requestStrategy changes 2020-01-14 10:51:09 +11:00
Matt Joiner
2559af0f9c Extract the request timeout stuff into requestStrategyThree 2020-01-14 10:51:09 +11:00
Matt Joiner
4c989da21e Extract the request strategy logic
Bit messy. Now it'll be easier to clean-up what it depends on, and test.
2020-01-14 10:51:09 +11:00
Matt Joiner
5a1af60e96 Formatting 2020-01-14 10:51:09 +11:00
Matt Joiner
381fb293a5 Fix typos and spellos in comments 2020-01-14 10:51:09 +11:00
Matt Joiner
31fdcb3463 Update missinggo 2020-01-14 10:51:09 +11:00
Matt Joiner
72e54fb353 Resource per piece storage: Store incomplete chunks separately 2020-01-14 10:51:09 +11:00
Matt Joiner
1039e00955 When piece checks fail only ban untrusted peers and only when the entire piece is dirty
This should help with addressing https://github.com/anacrolix/torrent/issues/364.
2020-01-14 10:51:09 +11:00
Matt Joiner
bf0498ed5a Improve hash piece error logging 2020-01-14 10:51:09 +11:00
Matt Joiner
b9fb0bf2a2 Don't create piece hashers for closed Torrents 2020-01-14 10:51:09 +11:00
Matt Joiner
4911b29903 Use subtests in TestClientTransferVarious 2020-01-14 10:51:09 +11:00
Matt Joiner
814a714459 Propagate back piece hashing errors
Attempting to solve https://github.com/anacrolix/torrent/issues/364.
2020-01-14 10:51:09 +11:00
James Lawrence
ad73cf8611 fixes various vet errors 2020-01-14 09:09:09 +10:00
Matt Joiner
98bd488466 Fix a log level 2020-01-07 10:50:18 +11:00
Matt Joiner
c9f9235117 Fix panic in logging
Found by @ccampbell.
2020-01-07 10:44:58 +11:00
Matt Joiner
e80834b899
Update FUNDING.yml 2020-01-06 09:02:11 +11:00
Matt Joiner
baefdfd9ea Disable accept rate limiting by default
It messes with any non-standard usage, like localhost etc. It might even just be a bad idea when interacting with clients that behave like ourselves: opening connections with varying encryption and protocols simultaneously to each peer.
2020-01-04 17:17:56 +11:00
Matt Joiner
bd4176f5ea cmd/torrent: Disable accept rate limiting 2020-01-04 17:16:48 +11:00
Matt Joiner
3a733e530c Improve logging and errors for accept rate limiting 2020-01-04 17:14:18 +11:00
Matt Joiner
6cc65683e5 Revert to log v0.4.0 2020-01-04 16:43:15 +11:00
Matt Joiner
8323dd9a14 cmd/torrent: Move log setup earlier to avoid race 2020-01-04 16:41:18 +11:00
Matt Joiner
5746877e1d cmd/torrent: Synchronize stopping 2020-01-04 16:41:02 +11:00
Matt Joiner
01f9fdb921 Upgrade to log v0.5.0 2020-01-03 15:37:08 +11:00
Matt Joiner
bfbed8ab6d cmd/torrent: Make the addr flag a string
This avoids tagflag trying to resolve it, and then passing a bad IP for different listen networks. There's also a patch to tagflag so it doesn't do this anymore.
2020-01-03 14:51:26 +11:00
Matt Joiner
e24a9b343f cmd/torrent: Add dht flag 2020-01-03 14:51:26 +11:00
Steve Yoon
d34dfa6575 propagate proxy url parsing err 2020-01-02 09:18:14 +10:00
Sick Yoon
32579e72c7 disable listeners if proxy is configured 2020-01-02 09:18:14 +10:00
Matt Joiner
76f1516d3a Update dht to v2.3.1
Fixes a race in bootstrap stats.
2019-12-29 13:00:20 +11:00
Matt Joiner
d4e90519e6 Use new anacrolix/multiless, and incorporate Peer.Trusted into peer prioritization 2019-12-23 14:04:07 +11:00
Matt Joiner
cf85d70a5c bencode: Rename string_values->stringValues 2019-12-23 13:39:34 +11:00
Matt Joiner
4104880a66 Remove unnecessary locking in Torrent.Piece 2019-12-18 16:49:15 +11:00
Matt Joiner
5f1d937b62 Add connection trust flag, and more tests with small caches
Thanks to observations and feedback from @ccampbell.
2019-12-18 13:52:00 +11:00
Matt Joiner
9e1804f52e Switch back to anacrolix/sync for the Client lock 2019-12-17 20:49:40 +11:00