Commit Graph

628 Commits

Author SHA1 Message Date
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 ade6087b2f Move torrentOffsetRequest and torrentRequestOffset, fixing a bug in former, and test it 2015-04-08 02:20:01 +10:00
Matt Joiner 533c034747 import pp peer_protocol in misc.go 2015-04-08 02:17:15 +10:00
Matt Joiner d48b755776 cmd/torrent-magnet: Error if arguments are given
Too easy to make this mistake, and then it hangs.
2015-04-08 02:15:25 +10:00
Matt Joiner 6c48d59adb Move piece into its own file 2015-04-08 02:14:35 +10:00
Matt Joiner 814aa311c8 fs: Improve test logging 2015-04-08 01:43:50 +10:00
Matt Joiner 23ff66e300 cmd/...: Some package synopses 2015-04-06 23:04:18 +10:00
Matt Joiner ab6f6d7758 Merge pull request #10 from milosgajdos83/dht-bootstrap-servers
Added BootstrapNodes to dht.ServerConfig
2015-04-03 10:33:40 +11:00
Milos Gajdos bdaeaf80c9 Added BootstrapNodes to dht.ServerConfig
This is beneficial to users who are running their own private trackers
or have outbound connections to ports 6881 disallowed on firewalls.
2015-04-02 23:35:30 +01:00
Matt Joiner 502bb455e8 dht: Remove obsolete function Server.AnnouncePeer 2015-04-01 17:38:17 +11:00
Matt Joiner 4cb3e94a91 dht: Apply blocklist to incoming packets 2015-04-01 17:37:32 +11: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 b3a4d6c6a4 dht: Rename get_peers.go->announce.go
It has had the wrong name for a very long time.
2015-04-01 16:05:57 +11:00
Matt Joiner 6d9e800a1e Update README 2015-04-01 14:36:38 +11:00
Matt Joiner 6c3f8ea26c Remove unnecessary reflection 2015-04-01 14:34:57 +11:00
Matt Joiner 0fddc286e6 cmd/torrentfs: Tidy 2015-04-01 14:32:42 +11:00
Matt Joiner 9fdd6be3f3 fs: Remove noisy debug logging 2015-04-01 14:31:29 +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 f58c7203c7 fs: Root node wasn't listing: Bazil keeps changing his interface 2015-04-01 12:15:44 +11:00
Matt Joiner 44947ff52f dht: Avoid allocation(s) testing if an IP is blocked 2015-03-30 23:12:33 +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 d05e63d094 Use math.MaxUint64, the more you know 2015-03-30 23:08:43 +11:00
Matt Joiner 1c6045bbf8 Fix peer parsing error introduced during tracker package merges 2015-03-30 23:05:39 +11:00
Matt Joiner 4084cad34b iplist: Fail invalid IPs, they were always passing 2015-03-28 02:54:17 +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 026b6da54f cmd/tracker-announce: Send left=-1, which is what we send when we don't have the metainfo 2015-03-27 17:23:42 +11:00
Matt Joiner d4875c0bfa Send supportcrypto=1 to HTTP trackers 2015-03-27 17:22:42 +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
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 176f6e6aa4 Tidy up error handling on HTTP tracker client 2015-03-27 17:18:45 +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 9f62098e85 cmd/scrape -> cmd/tracker-announce, and a big refresh
What it was doing was not scraping, that's something completely different. Now it can also announce magnets.
2015-03-26 17:22:17 +11:00
Matt Joiner 9869f8f5a9 Almost completed http tracker support 2015-03-26 17:20:31 +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 604e61497e The license is MPL2.0
Fixes #1
2015-03-25 17:35:33 +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 01210a4577 Fixes for changes to basil.org/fuse 2015-03-25 17:25:24 +11:00
Matt Joiner 87690e4c4c Show metadata state in status output
This is help verify the cause for an occasional stall obtaining metadata from peers.
2015-03-25 15:50:31 +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
Matt Joiner 1ec15c9560 cmd/torrent: Replace flag with go-flags, rejig options 2015-03-25 15:41:15 +11:00
Matt Joiner 03e69c5464 Fix crash from bad metadata_size in extended handshake 2015-03-24 16:47:02 +11:00
Matt Joiner ecda836926 Merge pull request #4 from dborzov/master
Add tests for ParseMagnetURI
2015-03-23 12:13:49 +11:00