Commit Graph

93 Commits

Author SHA1 Message Date
Matt Joiner c714cb6992 Fix some go vet warnings 2021-02-03 19:42:46 +11:00
Matt Joiner 29cc20ede9 Fix "none" event for WebTorrent announces 2020-12-30 11:43:48 +11:00
Matt Joiner b67ccab7f2 Pass trackerScraper context to announces
This will cancel announces for Closed Torrents and let them move more quickly to announcing the stopped event. Spotted by @hwh33.
2020-12-21 09:29:20 +11:00
Matt Joiner 14f2e8087e Fix unused import 2020-10-01 11:50:42 +10:00
Matt Joiner 01dfc28484 Set tracker announce timeout back to default
Add lots of comments about how this works and why.
2020-10-01 11:45:47 +10:00
Matt Joiner 93685a55fe Include ip param in http announces 2020-10-01 10:46:27 +10:00
Matt Joiner e1d59f791e Pass key param in http announces 2020-10-01 10:45:29 +10:00
Matt Joiner 010362ec82 Rework HTTP announce timeouts
Use Request.Context to implement timeouts, set the default to 3s for announces from the Client.
2020-10-01 10:45:05 +10:00
Matt Joiner a1a715f362 Improve cmd/tracker-announce output 2020-05-20 12:04:53 +10:00
Matt Joiner 04ff050ecd Disable keepalives for http trackers
Should work around an issue with S3 trackers holding connections open for very long periods.
2020-04-28 09:15:06 +10:00
Matt Joiner 376ff763fe Apply staticcheck 2020-02-20 11:09:57 +11:00
Anthony Raymond 8638ed1c75 Anthonyraymond export well known (#346)
* Export HttpResponse from tracker/http.go

* Update http_test.go
2019-11-20 16:31:54 +11:00
Anthony Raymond ec56d59137 Export Peer function (#343)
* Export function to be use-able in library

* Update method call
2019-11-15 10:22:59 +11:00
Matt Joiner cb1bf0f413 goimports -local 2019-08-21 20:58:40 +10:00
Matt Joiner 9224303c1e Update all imports of dht to v2 2019-08-10 18:46:07 +10:00
Matt Joiner 27b7fbe3f3 Fix announcing to S3 HTTP trackers 2019-07-17 18:12:11 +10:00
davtoro f40140283a check if peer id exists 2019-04-15 17:58:23 +10:00
Matt Joiner cd06ab16ac tracker: Fix network error handling in unit test 2019-01-08 19:21:15 +11:00
Matt Joiner 2789a4ff39 tracker: Fix some comments 2018-11-28 12:02:25 +11:00
Matt Joiner 3e3f2e4128 tracker: Add Announce.Context
Use it to rewrite a test that fails with recent go versions due to logging after test completion.
2018-11-28 12:02:12 +11:00
Matt Joiner fc4fab91f5 Switch to goimports import sorting
Used to use sortimports, but it's old, and goimports seems to have an opinion now.
2018-11-02 23:12:01 +11:00
Denis Kuzmenok 9dc89ab6dc reverting usage of proxy for http requests 2018-10-31 10:54:10 +11:00
Matt Joiner d953ebf3ca Remove unused tracker.defaultClient 2018-10-18 11:11:17 +11:00
Matt Joiner ad0c33a50c Fix TLS handshake failures with https trackers
Fixes #276
2018-10-18 11:09:56 +11:00
Matt Joiner 4431464fd6 Improve tracker failure reason error 2018-08-13 20:28:02 +10:00
Matt Joiner 3ae66f3693 cmd/tracker-announce: Add a port flag 2018-08-13 20:27:42 +10:00
Matt Joiner 066809403a Ignore unused trailing bytes in HTTP tracker responses 2018-08-13 20:24:15 +10:00
Matt Joiner d950677f67 Expose public IPv4 and IPv6 config options and use them with trackers 2018-03-29 14:29:15 +11:00
Matt Joiner 41b66adad7 tracker: Set UDP IPAddress field in announces 2018-02-21 13:33:12 +11:00
Matt Joiner 8f7408b1f9 IPv6 tracker support 2018-02-19 16:19:18 +11:00
Matt Joiner 0af2aaf85f Add a bunch of TODOs 2018-02-13 11:18:23 +11:00
Matt Joiner eeaf9f67a9 tracker: Support peers6 key in http responses 2018-02-13 00:23:07 +11:00
Matt Joiner 8e3aa89286 tracker: Export vars 2018-02-13 00:19:37 +11:00
Matt Joiner b33ce1e01b tracker: Move Peer into the correct file 2018-02-12 23:49:33 +11:00
Matt Joiner ce78248ba1 Update test trackers 2018-02-12 23:49:05 +11:00
Matt Joiner 57216bd299 Standardize on krpc types, and extend PEX message type for IPv6 2018-02-11 15:13:00 +11:00
Matt Joiner 2f616b9d8b megacheck and staticcheck fixes 2018-01-06 16:53:40 +11:00
Denis Kuzmenok 455a414204 adding http user-agent setters and usage 2017-12-28 10:47:51 +02:00
themihai 6ab65a49a8 feat(config): Allows the torrent client to customise the client identity and connection config 2017-11-07 20:14:13 +02:00
Matt Joiner 53ee52e26a Fix copypasta PR ಠ_ಠ 2017-10-29 12:49:58 +11:00
dz0ny caa58d0f69 Provide trackers specific http client
Mainly follows https://medium.com/@nate510/don-t-use-go-s-default-http-client-4804cb19f779
but also disables HTTPS certificate verification.
2017-10-28 16:30:10 +02:00
Matt Joiner 054ff25f7c Add CircleCI 2.0 turd
Adds tests for https://github.com/anacrolix/utp/issues/24, and mobile on the master branch. The UDP tracker test uses udp4 because of some bad behaviour on CircleCI.
2017-08-27 02:10:17 +10:00
Matt Joiner 389898bb84 tracker: Support the original http response peers format
Fixes #130
2016-11-22 15:40:46 +11:00
Matt Joiner 3602d90b65 gofmt simplify 2016-11-22 14:01:09 +11:00
Matt Joiner c5e0c806ea tracker: Skip any net errors to third party trackers 2016-05-23 09:29:14 +10:00
Matt Joiner 7f6f921aa9 Comment on tracker.AnnounceRequest.Event 2016-05-22 22:42:37 +10:00
Matt Joiner 2c5eb2ae43 tracker: Allow resolving announce URL host in advance, and passing the desired Host field for HTTP requests
Also did some clean-up of the announce code, the concept of a client is going away.
2016-05-20 00:48:46 +10:00
Matt Joiner b8e1edef27 Remove the vestiges of the expose tracker Client interface 2016-05-09 12:20:35 +10:00
Matt Joiner d5d3d9f623 tracker: Skip DNS error in UDP test 2016-05-07 18:17:40 +10:00
Seth Hoenig 9f4bf70e17 refactor struct identifiers to follow conventional go names 2016-04-18 23:11:11 -05:00