Commit Graph

1801 Commits

Author SHA1 Message Date
Matt Joiner b5df073217 Support different hosts for each network
CircleCI's localhost hostname doesn't resolve for IPv6.
2018-04-12 15:06:53 +10:00
Matt Joiner 319e57d1c6 Rework conns to/and allow multiple DHT servers
This will help with #229, and IPv6 support.
2018-04-12 11:41:07 +10:00
Matt Joiner a101ebb07e package assert->expect 2018-04-12 11:34:24 +10:00
Matt Joiner 92f6209c5f Prioritize pending nodes with BEP 40 2018-04-04 17:59:28 +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 76002b87f1 Start implementing BEP 40 2018-03-29 14:27:48 +11:00
Matt Joiner ed80150f08 github.com/go-fsnotify/fsnotify -> github.com/fsnotify/fsnotify 2018-03-27 17:31:52 +11:00
Matt Joiner 41b66adad7 tracker: Set UDP IPAddress field in announces 2018-02-21 13:33:12 +11:00
Matt Joiner 5a7c4fc135 cmd/torrent: Add packed-blocklist flag 2018-02-19 16:20:31 +11:00
Matt Joiner 7a7f468d9d cmd/tracker-announce: Rework to be faster and support UDP IPv6 2018-02-19 16:20:08 +11:00
Matt Joiner 8f7408b1f9 IPv6 tracker support 2018-02-19 16:19:18 +11:00
Matt Joiner 9513270c06 Trackers shown are just the enabled ones 2018-02-17 11:13:48 +11:00
Matt Joiner aab77ab05d Adjust some config defaults 2018-02-16 12:15:56 +11:00
Matt Joiner 377cb62da9 Make half-open connection limit more dynamic 2018-02-16 12:15:07 +11:00
Matt Joiner 646622b8f1 Move clamp and max, and add min to misc.go 2018-02-16 12:14:15 +11:00
Matt Joiner dbb2936cdf TODO 2018-02-16 11:03:21 +11:00
Matt Joiner fc03dcb859 Set the connection.cryptoMethod
It was unwittingly dropped from received connections, and may never have been set for initiated connections.
2018-02-16 10:59:56 +11:00
Matt Joiner b92e8b7814 Add support for disabling IPv4 and IPv4 peers 2018-02-16 10:46:11 +11:00
Matt Joiner 066cdd520b Add mse.CryptoMethod type 2018-02-16 10:36:29 +11:00
Matt Joiner 3f7eab00de Change some connection flag strings to avoid collision 2018-02-15 16:04:42 +11:00
Matt Joiner 0aad14afd1 Add a check for a strange panic in production 2018-02-15 16:03:44 +11:00
Matt Joiner 35b224ba36 Add extra pedantic checks to requesting to try and flush out @deranjer's panics 2018-02-15 15:21:51 +11:00
Matt Joiner d69cfbc419 Track IPv6 peers received over PEX and simplify the adding code 2018-02-15 14:43:57 +11:00
Matt Joiner d6f6359799 Remove errant log message 2018-02-14 01:14:05 +11:00
Matt Joiner 0af2aaf85f Add a bunch of TODOs 2018-02-13 11:18:23 +11:00
Matt Joiner 7dec0a196d Count errors returned from connection.mainReadLoop 2018-02-13 00:56:21 +11:00
Matt Joiner 33bfa908d2 bencode.Decoder.Decode: Don't assume panic values are type error 2018-02-13 00:55:15 +11:00
Matt Joiner 70010ce691 Support IPv6 peers over PEX 2018-02-13 00:50:32 +11:00
Matt Joiner 39bde7237e Try to count IPv6 connections 2018-02-13 00:48:21 +11:00
Matt Joiner 4b5203851a bencode: Support unmarshalling strings into slices of kind Uint8 2018-02-13 00:44:05 +11:00
Matt Joiner eeaf9f67a9 tracker: Support peers6 key in http responses 2018-02-13 00:23:07 +11:00
Matt Joiner dd9244c01d bencode: Unmarshal now returns an error on unused trailing bytes 2018-02-13 00:21:28 +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 6773fa9a7e Fix TestSetMaxEstablishedConn and allow it to be run with -count > 1
Similar changes should occur to other tests exporting StatusWriters.
2018-02-11 15:14:31 +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 8d1995c4d4 Support IPv6 blocklists
Existing packed blocklists need to be regenerated.
2018-02-11 15:11:26 +11:00
Matt Joiner 924b916b2a Expose Client.Closed 2018-02-08 23:57:53 +11:00
Matt Joiner 1f81f57b9c There was no error for missing file, and no way to close the mmap returned from iplist.MmapPacked
The function is also renamed due to the changed behaviour.
2018-02-08 23:57:35 +11:00
Matt Joiner fadbd68d99 Count peers not added because of bad addresses and rearrange method 2018-02-08 23:55:28 +11:00
Matt Joiner eb0f9ff813 Raise default torrent peers highwater to 500 2018-02-08 23:52:54 +11:00
Matt Joiner e3fdd4890e Simplify crypto select func 2018-02-08 23:52:31 +11:00
Matt Joiner 5023dcaa3a Fixes for non-pointer Bitmap corrupting state 2018-02-08 15:08:33 +11:00
Matt Joiner 15ed1bbd69 Remove uploadChunksPosted expvar
Use messageTypesPosted.Piece
2018-02-07 13:57:50 +11:00
Matt Joiner 05da46ddbb Raise the nominal max requests for connections that download lots of useful chunks
Massive speed increases for some connections.
2018-02-05 18:49:55 +11:00
Matt Joiner f4c03ee6ac Simplify the utpSocket interface definition 2018-02-05 18:03:27 +11:00
Matt Joiner 54f43419e2 Fix fast extension message type constants
iota isn't worth the trouble
2018-02-05 18:00:47 +11:00
Matt Joiner d5682e9cd0 Change a bunch of Stringer and status stuff
Cumulative interest time, download rate per connection, request low and high waters, peer extension bytes
2018-02-05 17:47:47 +11:00
Matt Joiner f57437201e Send bitfield messages before other initial messages 2018-02-05 17:41:53 +11:00