2
0
mirror of synced 2025-02-24 14:48:27 +00:00

103 Commits

Author SHA1 Message Date
Matt Joiner
b467f15bae Fix goroutine leak for connection.writer 2014-07-17 16:02:30 +10:00
Matt Joiner
a258b9ab21 Squash some more debug messages, fix some other error handling 2014-07-17 16:01:48 +10:00
Matt Joiner
b159968081 Missing newline between torrents in client status 2014-07-17 15:58:33 +10:00
Matt Joiner
5cda3affb4 Memory leak because queued peer requests aren't treated yet 2014-07-16 17:08:47 +10:00
Matt Joiner
583d5c266a Squash some unhelpful log messages now that stuff is available in status 2014-07-16 17:08:25 +10:00
Matt Joiner
8910eb660d Add more information I've needed to the status page 2014-07-16 17:07:28 +10:00
Matt Joiner
0d27ae7fd1 Make the discovery source for a connection more descriptive 2014-07-16 17:06:18 +10:00
Matt Joiner
9e8a72ff1d Invalidating metadata would cause a crash when metadata pieces kept arriving 2014-07-14 23:12:52 +10:00
Matt Joiner
61b87222d4 Client would attempt to download if unchoked before the metadata is available 2014-07-14 23:12:15 +10:00
Matt Joiner
28afa748e7 API changes in github.com/anacrolix/libtorgo 2014-07-13 17:37:12 +10:00
Matt Joiner
581a3d9325 Add DHT support to cmd/torrent 2014-07-11 19:30:20 +10:00
Matt Joiner
e947ce2ee4 Run go vet on everything 2014-07-10 02:59:37 +10:00
Matt Joiner
a88f856468 Fix incorrect log call
At least vet catches it...
2014-07-10 02:53:46 +10:00
Matt Joiner
4c2d07337d Keep pieces sorted by bytes left 2014-07-10 00:26:58 +10:00
Matt Joiner
ae45175015 Fix crash quitting when accept conn is closed 2014-07-04 01:44:15 +10:00
Matt Joiner
8505a1017e Move compactPeers type to util package 2014-07-04 01:41:46 +10:00
Matt Joiner
0f53e89e7b Improve some log messages 2014-07-01 00:05:28 +10:00
Matt Joiner
23cfe49ea4 Record if a connection was incoming 2014-07-01 00:04:28 +10:00
Matt Joiner
b969b17092 Disable request heat assertion for now
Probably want a flag to do intensive checks like this
2014-06-30 00:22:36 +10:00
Matt Joiner
eb070383b1 Move download strategies into their own file 2014-06-30 00:22:05 +10:00
Matt Joiner
51431c7cfc Some minor tweaks 2014-06-29 19:10:59 +10:00
Matt Joiner
b87bb74f31 Fix a race where the last piece of a torrent is requested before it's been hashed 2014-06-29 19:08:16 +10:00
Matt Joiner
3b29043861 Add peers sent over PEX 2014-06-29 19:07:43 +10:00
Matt Joiner
aec5074f3d Add support for extended handshake "v", "reqq", and "p" fields 2014-06-29 18:57:49 +10:00
Matt Joiner
5e7fe0383b Fix crash printing client status when a torrent info isn't available 2014-06-29 18:56:19 +10:00
Matt Joiner
434c954319 Log errors setting the metadata for a torrent, and report when metadata is completed from peers 2014-06-29 15:45:21 +10:00
Matt Joiner
87100587f8 Remove some metadata related debug messages 2014-06-29 15:44:55 +10:00
Matt Joiner
c96293a111 Can now download from magnet links 2014-06-28 19:38:31 +10:00
Matt Joiner
9d53e19547 Fixes for cmd/torrent with the new torrent.Info field 2014-06-27 18:57:35 +10:00
Matt Joiner
49e71f9654 Begin adding magnet and ut_metadata support 2014-06-27 00:57:07 +10:00
Matt Joiner
33d53cf9e5 Trivial fix for one of the last commits 2014-06-26 18:08:14 +10:00
Matt Joiner
7c532969d3 Various improvements that've had a lot of testing 2014-06-26 18:06:33 +10:00
Matt Joiner
de769cdce7 vet some printfs 2014-06-26 17:30:16 +10:00
Matt Joiner
cf31465904 torrentfs: Write client status to HTTP port 2014-06-26 17:29:12 +10:00
Matt Joiner
9b6e3f25cd Reorder actions after a chunk is received 2014-05-29 02:44:27 +10:00
Matt Joiner
26116a7df8 Shuffle chunk spec request order for readahead pieces
Should reduce overlap in received chunks.
2014-05-29 01:32:34 +10:00
Matt Joiner
110aa733a4 Make the readahead on ResponsiveDownloadStrategy customizable 2014-05-29 01:30:59 +10:00
Matt Joiner
cfc282ff51 Remove requests from the outbound message queue if cancelled before they're written
Only post peer protocol messages to the channel, bytes must be done directly.
This fixes a possible issue where slow responses during handshake could cause
keep alive messages to be sent prematurely.
2014-05-29 01:27:48 +10:00
Matt Joiner
f455ee3868 Remove redundant replenishConnRequests when receiving unchoke 2014-05-23 21:02:42 +10:00
Matt Joiner
dfde2a3497 dat new-world-style panic 2014-05-23 21:02:11 +10:00
Matt Joiner
91bf870eb1 Fix a race checking bytes left when announcing 2014-05-23 21:01:35 +10:00
Matt Joiner
898c4f4e4f Store request heat in the download strategy
This avoids recalculating it for every FillRequest
2014-05-23 21:01:05 +10:00
Matt Joiner
763e387c62 TorrentReadAt shouldn't care about verification state 2014-05-23 00:37:36 +10:00
Matt Joiner
65fa317244 Some minor fiddling to announcing in the client 2014-05-23 00:35:24 +10:00
Matt Joiner
96f85be99a ResponsiveDownloadStrategy will readahead blocks
Test peers don't play well with short "up request" buffers, so we need to fill
these with the most likely blocks to achieve maximum download speeds.
2014-05-23 00:33:07 +10:00
Matt Joiner
8022c09b90 client.go: Shorten module peer_protocol to pp 2014-05-21 18:01:58 +10:00
Matt Joiner
fdcee11eb0 Shorten variable names in connectionLoop 2014-05-21 17:55:50 +10:00
Matt Joiner
cc81bca617 Be more selective about when to replenish connection requests 2014-05-21 17:49:59 +10:00
Matt Joiner
309f70bcb5 Implement connection.{Cancel,Choke} 2014-05-21 17:49:28 +10:00
Matt Joiner
ef9e334479 Allocate peer_protocol.Message on the stack in connectionLoop 2014-05-21 17:48:44 +10:00