2
0
mirror of synced 2025-02-24 22:58:28 +00:00

357 Commits

Author SHA1 Message Date
Matt Joiner
84fc3aab0f client.go: Missing perf import 2015-07-17 21:45:44 +10:00
Matt Joiner
0600c3b5e3 Several speedups in logic 2015-07-17 21:07:01 +10:00
Matt Joiner
6c04000644 Downloading a chunk may mean the piece isn't wanted anymore
Hopefully this fixes a very rare logic error in replenishing connection requests for a piece that isn't wanted, yet is still in the connection piece request order.
2015-07-17 21:04:43 +10:00
Matt Joiner
7e9fe4f447 Store chunk data without holding client lock 2015-07-15 16:00:59 +10:00
Matt Joiner
c018c660f0 Allow chunk size to be specified per torrent 2015-07-15 15:31:18 +10:00
Matt Joiner
4807f12ea1 When seeding, actually seed beyond 6 chunks 2015-07-15 15:29:53 +10:00
Matt Joiner
08f89c49f3 Don't raise piece priority while hashing or if piece complete 2015-07-04 13:38:42 +10:00
Matt Joiner
fd2824f595 Raise socketsPerTorrent to 80 2015-06-30 00:46:43 +10:00
Matt Joiner
bb28ff7492 Replace pruning timer with as-required connection dropping 2015-06-30 00:45:26 +10:00
Matt Joiner
1595f65ac2 Adjust some expvars 2015-06-30 00:35:47 +10:00
Matt Joiner
2277e16dca Rename and sort some of the expvars 2015-06-28 16:41:51 +10:00
Matt Joiner
dd34efad57 Comments and update version strings 2015-06-28 16:40:46 +10:00
Matt Joiner
4f293ca75b Several trivial fixes 2015-06-28 16:39:04 +10:00
Matt Joiner
4b6c8b1c39 Move methods to correct file 2015-06-23 02:02:22 +10:00
Matt Joiner
b5ee4f602d Document ConfigDir 2015-06-22 19:48:50 +10:00
Matt Joiner
ad6fec2e77 Clarify downloaded chunk counters 2015-06-22 19:48:30 +10:00
Matt Joiner
859129fb28 Print peer IDs as escaped ascii 2015-06-22 19:46:26 +10:00
Matt Joiner
99a06e3f50 Move IP blocklist loading into iplist package 2015-06-22 19:44:59 +10:00
Matt Joiner
b2b290a589 Small tweak to readahead, and fix the tests 2015-06-16 17:14:15 +10:00
Matt Joiner
ced5733c88 Improve uploading/seeding 2015-06-16 16:57:47 +10:00
Matt Joiner
764f5db512 Make readahead always at least 2 blocks. 2015-06-16 16:54:12 +10:00
Matt Joiner
d63c5e5b98 Don't try to connect again without encryption, if encryption is disabled 2015-06-08 18:16:01 +10:00
Matt Joiner
5014b62e17 Reduce log noise due to uTP connection timeouts 2015-06-03 22:44:03 +10:00
Matt Joiner
005ca8124a Fix rare single-torrent stall due to obsolete ceaseNetworking call
Only occurred if you have a data backend that can drop completed pieces, and it happened that you wanted to redownload data that had been dropped after completely downloading the torrent in the past.
2015-06-03 22:43:40 +10:00
Matt Joiner
7e8ee950bc Docs and comments 2015-06-03 13:30:55 +10:00
Matt Joiner
a2df9f8b01 Miscellaneous changes 2015-06-03 00:03:43 +10:00
Matt Joiner
5de6abd6a7 Fix race to set IPBlocklist on DHT before it bootstraps and serves 2015-06-02 23:58:49 +10:00
Matt Joiner
5b52769523 Changes to the way piece prioritization affects the piece 2015-06-01 18:23:35 +10:00
Matt Joiner
21fb4933fc Change the way piece state is exposed to give more detail 2015-06-01 18:22:12 +10:00
Matt Joiner
bc4aa06c91 Comments 2015-06-01 18:17:14 +10:00
Matt Joiner
7f9d6eed78 Relax pedantic listen addr matching
Fixes #15.
2015-05-20 18:14:42 +10:00
Matt Joiner
085dbaa8ff Include reason for panic on different listener addresses 2015-05-20 15:45:58 +10:00
Matt Joiner
1cf591dc3d Switch to using a slice for tracking pending chunks. Saves massive amounts of memory. 2015-05-16 10:51:48 +10:00
Matt Joiner
0d13293d71 Support seeding 2015-05-15 08:39:53 +10:00
Matt Joiner
5eb6b5286e Rare panic: a piece is requested that shouldn't have been 2015-05-09 11:52:52 +10:00
Matt Joiner
ca74d8ed33 Made Torrent.GotInfo a function, to avoid use of zero-initialized channel 2015-04-30 00:30:19 +10:00
Matt Joiner
0ec0302d1c Publicly expose Torrent.GotInfo 2015-04-28 15:24:17 +10:00
Matt Joiner
526d9d738e Rewrite imports to local bencode and metainfo 2015-04-27 14:55:01 +10:00
Matt Joiner
cc6a52fee0 Remove all the old intermediate config fields from Client 2015-04-27 14:05:27 +10:00
Matt Joiner
b37f6d6f96 Add the option to disable encryption 2015-04-20 17:30:22 +10:00
Matt Joiner
28b299e7c8 Rework the Torrent Reader interface, to allow reader options, and add "responsive" as one such option
Had several weeks of testing. Removes a lot of the "helper" reading methods, but this was necessary to allow per-Torrent reading options.
2015-04-14 23:59:41 +10:00
Matt Joiner
97c235440c If IP blocklists are enabled, block anything that isn't IPv4
I know of no public IPv6 blocklists.
2015-04-01 17:36:51 +11:00
Matt Joiner
6b81d57ca2 dht: Clean-up interface, add loads of documentation 2015-04-01 17:29:55 +11:00
Matt Joiner
6c3f8ea26c Remove unnecessary reflection 2015-04-01 14:34:57 +11:00
Matt Joiner
8ba4a2e0f3 cmd/torrentfs: Check error creating client
This wouldn't have happened with exceptions ;)
2015-04-01 14:30:22 +11:00
Matt Joiner
c202e2289c Opinionated torrent filter doesn't belong in this package 2015-03-30 23:11:20 +11:00
Matt Joiner
1ce84f664e Fix a few minor data races 2015-03-30 23:10:37 +11:00
Matt Joiner
5ecde3a874 Show number of torrents in the client status 2015-03-28 02:51:16 +11:00
Matt Joiner
6582cffe06 AddTorrentSpec now merges in new information an existing torrent didn't have 2015-03-28 02:50:55 +11:00
Matt Joiner
90b27618ac The signedness on several tracker.AnnounceRequest fields now matters
Sending negative ports and lefts through to HTTP trackers was making them mad.
2015-03-27 17:22:00 +11:00