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
Matt Joiner
8ae09e2fa8
Only the first tracker was being tried
...
Must have lost this in the client tracker clean-up a while back.
2015-03-27 17:20:02 +11:00
Matt Joiner
64f833f3f0
cmd/torrent-magnet: Converts a torrent from stdin to a magnet link
2015-03-27 17:16:50 +11:00
Matt Joiner
5049f5d375
More unnecessary log shushing
2015-03-27 15:37:58 +11:00
Matt Joiner
60d8ea75a2
Prevent bad metadata_size in extended handshakes from stalling completion of metadata
...
Occasionally bad peers send ridiculous or incorrect metadata_size in their handshakes. If the first acceptable size is wrong, and too small, we'll keep failing metadata completion. If it's too large, honest peers will never send us the pieces we're asking for and we'll never complete the metadata. Now we just adjust the expected metadata size, and keep retrying until we finish. Additionally, we can now request metadata after sending initial messages.
2015-03-27 15:36:59 +11:00
Matt Joiner
5f7ad4c769
Merge all the tracker packages, why would anyone want them separately?
2015-03-27 15:12:15 +11:00
Matt Joiner
3aa78763aa
Use rogpeppe's sortimports to fix this goimports ordering madness
2015-03-26 17:18:08 +11:00
Matt Joiner
d97b487229
cmd/torrent: Report progress
...
Fixes #6
2015-03-25 17:32:42 +11:00
Matt Joiner
c471613cd0
Suppress some noisy errors that aren't interesting to the average user
2015-03-25 17:28:34 +11:00
Matt Joiner
6da805d1b1
Move ut_pex back into the "m" map
2015-03-25 15:49:27 +11:00
Matt Joiner
19a50712dc
Add the ability to disable PEX
...
Fixes #3
2015-03-25 15:42:14 +11:00
Peter Borzov
f574117e30
Fix typos
2015-03-21 09:11:45 -04:00
Matt Joiner
67f90ed886
More public interface tidying
2015-03-20 23:52:53 +11:00
Matt Joiner
ec25ef417e
bitbucket.org/anacrolix/sync moved to github
2015-03-20 16:46:39 +11:00
Matt Joiner
842a32ae0c
Rewrite import paths for migration from Bitbucket
2015-03-20 16:37:44 +11:00
Matt Joiner
0c63952353
More cleaning up of public interface
2015-03-20 10:52:01 +11:00
Matt Joiner
a646308a12
Update the example
2015-03-20 10:51:06 +11:00
Matt Joiner
a07eb8d720
Misc, some encryption related
2015-03-18 18:37:26 +11:00
Matt Joiner
f90e6e7c2c
Don't accept unless connections are wanted
2015-03-18 18:36:27 +11:00
Matt Joiner
c413ed7963
Comments in banned torrent list
2015-03-18 18:35:52 +11:00
Matt Joiner
a451bc7e6d
Handle data going missing
2015-03-18 18:35:22 +11:00
Matt Joiner
29238ff23f
Change the interface to add torrents to a Client
2015-03-18 18:32:31 +11:00
Matt Joiner
58b2b9bec7
Avoid dopplegangers, foreign address that have our client ID
2015-03-18 18:29:51 +11:00
Matt Joiner
a7dddd9be6
Rewrite handshaking and connection management
2015-03-18 18:28:13 +11:00
Matt Joiner
fa025bdbee
Disable AllowedFast
2015-03-18 18:21:00 +11:00
Matt Joiner
203da0aab0
Tidy up extension bytes handling; don't close conn from handshake writer; force protocol encryption for now
2015-03-13 06:21:13 +11:00
Matt Joiner
e85b7e228b
Add support for Fast Extension
2015-03-12 20:06:23 +11:00
Matt Joiner
339c650085
Count peers obtained by tracker
2015-03-12 20:04:44 +11:00
Matt Joiner
26b21d1fcb
Apply IP blocklist to trackers
2015-03-11 02:41:41 +11:00
Matt Joiner
e6fbde0dc6
Rework piece completion
2015-03-11 02:41:21 +11:00
Matt Joiner
914bc12bb6
Harmless improvements
2015-03-11 02:39:01 +11:00
Matt Joiner
36c6283a94
Fix a status line going to stdout
2015-03-09 17:35:51 +11:00
Matt Joiner
ad6ac3f2cd
More cleaning of public interface
2015-03-08 17:28:14 +11:00
Matt Joiner
3e753bb8ad
Change up the data storage interfaces a bit
2015-03-07 17:11:45 +11:00
Matt Joiner
cad611bbcf
Since IPv6 blocklists aren't prevalent, default to using IPv4 in client for now
2015-03-07 17:11:02 +11:00
Matt Joiner
1c5bd1855a
Improvements to P2P blocklist scanning errors
2015-03-07 17:09:18 +11:00
Matt Joiner
e4dec03a32
Change the way readahead pieces are calculated
2015-03-04 13:07:11 +11:00
Matt Joiner
779f4d3b97
Implement Handle.ReadAt
2015-03-04 13:06:33 +11:00
Matt Joiner
4eb70e0673
Support opening handles to Torrent and File
2015-03-01 14:32:54 +11:00
Matt Joiner
a2d69b4931
Make blob data stateful
2015-02-27 12:45:55 +11:00
Matt Joiner
bd6d72fa5f
Files.Path and .FileInfo change
2015-02-27 01:46:40 +11:00
Matt Joiner
315c703456
Rename TorrentData->Data
2015-02-27 01:43:37 +11:00
Matt Joiner
f588522b66
Client.Torrent(InfoHash)
2015-02-26 16:10:55 +11:00
Matt Joiner
3f335cabfc
Implement File.ReadAt
2015-02-26 16:10:38 +11:00
Matt Joiner
9ffb9b0b88
Scale readahead pieces a bit
2015-02-26 16:10:15 +11:00
Matt Joiner
c75dbccea3
Hide a whole bunch of functions seen via torrent
2015-02-25 15:42:47 +11:00
Matt Joiner
80ce2c3188
Set torrentDataOpener from config
2015-02-25 15:41:13 +11:00
Matt Joiner
295b71c09b
Not listening!
2015-02-25 14:52:19 +11:00
Matt Joiner
48dc85bfd3
Return no Files if Torrent Info isn't available
2015-02-25 14:51:56 +11:00
Matt Joiner
0eb418360b
Allow configuring Client torrent data opener, config dir, disabling metainfo cache, and prune with a timer instead of goroutine
2015-02-25 14:48:39 +11:00