]> Sergey Matveev's repositories - btrtrc.git/log
btrtrc.git
9 years agoSet a minimum dial timeout
Matt Joiner [Wed, 19 Nov 2014 03:53:00 +0000 (21:53 -0600)]
Set a minimum dial timeout

9 years agoTODO
Matt Joiner [Wed, 19 Nov 2014 03:51:49 +0000 (21:51 -0600)]
TODO

9 years agoutil/loghttp: Don't implicitly expose pprof
Matt Joiner [Wed, 19 Nov 2014 03:51:36 +0000 (21:51 -0600)]
util/loghttp: Don't implicitly expose pprof

9 years agoImprove unknown xt parameter encoding error message
Matt Joiner [Tue, 18 Nov 2014 20:36:56 +0000 (14:36 -0600)]
Improve unknown xt parameter encoding error message

9 years agoExpose a wrapped metainfo type with helper methods
Matt Joiner [Tue, 18 Nov 2014 20:36:27 +0000 (14:36 -0600)]
Expose a wrapped metainfo type with helper methods

9 years agoutil: LoggedHTTPServe uses its own mux for use as a HTTP status server
Matt Joiner [Tue, 18 Nov 2014 20:35:32 +0000 (14:35 -0600)]
util: LoggedHTTPServe uses its own mux for use as a HTTP status server

9 years agoAdding a duplicate magnet returns the existing torrent
Matt Joiner [Tue, 18 Nov 2014 20:34:13 +0000 (14:34 -0600)]
Adding a duplicate magnet returns the existing torrent

9 years agoFix race condition calculating reduced dial timeout
Matt Joiner [Tue, 18 Nov 2014 20:33:07 +0000 (14:33 -0600)]
Fix race condition calculating reduced dial timeout

9 years agoImprove client status write-out
Matt Joiner [Tue, 18 Nov 2014 20:32:51 +0000 (14:32 -0600)]
Improve client status write-out

9 years agoCount accepted connections
Matt Joiner [Tue, 18 Nov 2014 20:31:47 +0000 (14:31 -0600)]
Count accepted connections

9 years agodht: Improve Server.GetPeers so new nodes are fed directly back into the current...
Matt Joiner [Tue, 18 Nov 2014 18:38:13 +0000 (12:38 -0600)]
dht: Improve Server.GetPeers so new nodes are fed directly back into the current discovery

9 years agocmd/dht-ping: Various improvements more like a real ping program
Matt Joiner [Tue, 18 Nov 2014 18:36:36 +0000 (12:36 -0600)]
cmd/dht-ping: Various improvements more like a real ping program

9 years agocmd/dht-get-peers: Add -once flag to do a single scrape
Matt Joiner [Tue, 18 Nov 2014 15:56:37 +0000 (09:56 -0600)]
cmd/dht-get-peers: Add -once flag to do a single scrape

9 years agocmd/dht-get-peers: Expose debug HTTP
Matt Joiner [Tue, 18 Nov 2014 15:56:05 +0000 (09:56 -0600)]
cmd/dht-get-peers: Expose debug HTTP

9 years agoEnsure the parallel dial invariant
Matt Joiner [Tue, 18 Nov 2014 00:04:33 +0000 (18:04 -0600)]
Ensure the parallel dial invariant

9 years agoReduce dial timeouts when there are lots of peers in the backlog
Matt Joiner [Tue, 18 Nov 2014 00:04:09 +0000 (18:04 -0600)]
Reduce dial timeouts when there are lots of peers in the backlog

9 years agodht: Reduce announce peer parallelism now that node goodness is fixed
Matt Joiner [Tue, 18 Nov 2014 00:03:28 +0000 (18:03 -0600)]
dht: Reduce announce peer parallelism now that node goodness is fixed

9 years agodht: Move packet processing into a separate function
Matt Joiner [Tue, 18 Nov 2014 00:03:03 +0000 (18:03 -0600)]
dht: Move packet processing into a separate function

9 years agodht: Fix "good" node determination
Matt Joiner [Tue, 18 Nov 2014 00:02:16 +0000 (18:02 -0600)]
dht: Fix "good" node determination

9 years agodht: Include the sender of peers in the peer stream
Matt Joiner [Mon, 17 Nov 2014 23:47:36 +0000 (17:47 -0600)]
dht: Include the sender of peers in the peer stream

9 years agoutil/CopyExact: Test copying from interfaces and nil
Matt Joiner [Mon, 17 Nov 2014 23:43:41 +0000 (17:43 -0600)]
util/CopyExact: Test copying from interfaces and nil

9 years agoTODO
Matt Joiner [Mon, 17 Nov 2014 07:47:31 +0000 (01:47 -0600)]
TODO

9 years agoExpose DHT ID distances as an interface and switch to big.Int and possibly the correc...
Matt Joiner [Mon, 17 Nov 2014 07:47:24 +0000 (01:47 -0600)]
Expose DHT ID distances as an interface and switch to big.Int and possibly the correct algorithm

9 years agocmd/dht-get-peers: Fix lockup on SIGINT
Matt Joiner [Mon, 17 Nov 2014 07:45:20 +0000 (01:45 -0600)]
cmd/dht-get-peers: Fix lockup on SIGINT

9 years agoExpvar successful and unsuccessful dials
Matt Joiner [Mon, 17 Nov 2014 07:44:06 +0000 (01:44 -0600)]
Expvar successful and unsuccessful dials

9 years agoConnect to peers using both UTP and TCP; Share UTP port with DHT
Matt Joiner [Mon, 17 Nov 2014 05:27:01 +0000 (23:27 -0600)]
Connect to peers using both UTP and TCP; Share UTP port with DHT

9 years agologhttp: Try successive port numbers until available
Matt Joiner [Mon, 17 Nov 2014 05:24:25 +0000 (23:24 -0600)]
loghttp: Try successive port numbers until available

9 years agoOpen new connections when a connection is dropped
Matt Joiner [Mon, 17 Nov 2014 03:37:34 +0000 (21:37 -0600)]
Open new connections when a connection is dropped

9 years agoTunnel addrs through dht as an internal interface to make switching easier
Matt Joiner [Mon, 17 Nov 2014 03:22:29 +0000 (21:22 -0600)]
Tunnel addrs through dht as an internal interface to make switching easier

9 years agoChange cmd/torrent default ports
Matt Joiner [Mon, 17 Nov 2014 03:21:13 +0000 (21:21 -0600)]
Change cmd/torrent default ports

9 years agoAdd util AddrIP and AddrPort functions
Matt Joiner [Mon, 17 Nov 2014 03:20:49 +0000 (21:20 -0600)]
Add util AddrIP and AddrPort functions

9 years agoAllow the client ID to be set in the config
Matt Joiner [Sun, 16 Nov 2014 19:54:43 +0000 (13:54 -0600)]
Allow the client ID to be set in the config

9 years agoPrevent clients from connecting to other clients with the same ID
Matt Joiner [Sun, 16 Nov 2014 19:54:00 +0000 (13:54 -0600)]
Prevent clients from connecting to other clients with the same ID

9 years agoFix CopyExact to work on a source string
Matt Joiner [Sun, 16 Nov 2014 19:52:37 +0000 (13:52 -0600)]
Fix CopyExact to work on a source string

9 years agoFix broken commit
Matt Joiner [Sun, 16 Nov 2014 19:51:59 +0000 (13:51 -0600)]
Fix broken commit

9 years agoUse more generic net error type to detect timeouts
Matt Joiner [Sun, 16 Nov 2014 19:31:11 +0000 (13:31 -0600)]
Use more generic net error type to detect timeouts

9 years agoMove half-open tracking into per-torrent
Matt Joiner [Sun, 16 Nov 2014 19:30:44 +0000 (13:30 -0600)]
Move half-open tracking into per-torrent

9 years agoAdd UTP support, disable TCP for now. DHT moves to another port
Matt Joiner [Sun, 16 Nov 2014 19:29:31 +0000 (13:29 -0600)]
Add UTP support, disable TCP for now. DHT moves to another port

9 years agoActually announce to DHT, don't just get peers
Matt Joiner [Sun, 16 Nov 2014 19:18:08 +0000 (13:18 -0600)]
Actually announce to DHT, don't just get peers

9 years agoTidy up address handling
Matt Joiner [Sun, 16 Nov 2014 19:16:26 +0000 (13:16 -0600)]
Tidy up address handling

9 years agoAdd dht AnnouncePeer
Matt Joiner [Sun, 16 Nov 2014 19:08:33 +0000 (13:08 -0600)]
Add dht AnnouncePeer

9 years agoFix localhost assumption in connecting 2 clients in tests
Matt Joiner [Sun, 16 Nov 2014 19:06:32 +0000 (13:06 -0600)]
Fix localhost assumption in connecting 2 clients in tests

9 years agoTODO
Matt Joiner [Sun, 16 Nov 2014 19:05:38 +0000 (13:05 -0600)]
TODO

9 years agocheck that util.CompactPeer is unmarshaled from the correct number of bytes
Matt Joiner [Sun, 16 Nov 2014 19:05:19 +0000 (13:05 -0600)]
check that util.CompactPeer is unmarshaled from the correct number of bytes

9 years agologonce is a package that prints each distinct message only once
Matt Joiner [Sun, 16 Nov 2014 19:04:44 +0000 (13:04 -0600)]
logonce is a package that prints each distinct message only once

9 years agoTODO
Matt Joiner [Thu, 25 Sep 2014 08:06:57 +0000 (18:06 +1000)]
TODO

9 years agoAdd magnet-metainfo, tool to download magnet to torrent file
Matt Joiner [Thu, 25 Sep 2014 08:05:52 +0000 (18:05 +1000)]
Add magnet-metainfo, tool to download magnet to torrent file

9 years agoTODO
Matt Joiner [Sun, 14 Sep 2014 17:37:57 +0000 (03:37 +1000)]
TODO

9 years agoLazily hash pieces where possible
Matt Joiner [Sun, 14 Sep 2014 17:25:53 +0000 (03:25 +1000)]
Lazily hash pieces where possible

9 years agoFix crash when piece hash completes for dropped torrent
Matt Joiner [Sat, 13 Sep 2014 18:07:05 +0000 (04:07 +1000)]
Fix crash when piece hash completes for dropped torrent

9 years agoMissing torrent functions
Matt Joiner [Sat, 13 Sep 2014 18:06:17 +0000 (04:06 +1000)]
Missing torrent functions

9 years agoImprovements arising from attempting to delay piece hashing until necessary
Matt Joiner [Sat, 13 Sep 2014 18:03:23 +0000 (04:03 +1000)]
Improvements arising from attempting to delay piece hashing until necessary

9 years agoTODO
Matt Joiner [Sat, 13 Sep 2014 17:59:51 +0000 (03:59 +1000)]
TODO

9 years agoTreat PORT messages with port of 0 to mean on the remote port
Matt Joiner [Sat, 13 Sep 2014 17:59:31 +0000 (03:59 +1000)]
Treat PORT messages with port of 0 to mean on the remote port

9 years agoMissed this dataRead call in an earlier commit
Matt Joiner [Sat, 13 Sep 2014 17:58:13 +0000 (03:58 +1000)]
Missed this dataRead call in an earlier commit

9 years agoTrack failed piece hashes
Matt Joiner [Sat, 13 Sep 2014 17:57:51 +0000 (03:57 +1000)]
Track failed piece hashes

9 years agoImprove the data waiter system
Matt Joiner [Sat, 13 Sep 2014 17:50:15 +0000 (03:50 +1000)]
Improve the data waiter system

9 years agoSuppress metadata extension message errors from Xunlei client
Matt Joiner [Sat, 13 Sep 2014 17:47:47 +0000 (03:47 +1000)]
Suppress metadata extension message errors from Xunlei client

9 years agoIncrease peer connection buffer size from default (4096) to 20KiB
Matt Joiner [Sat, 13 Sep 2014 17:47:06 +0000 (03:47 +1000)]
Increase peer connection buffer size from default (4096) to 20KiB

This reduces syscall overhead which becoming noticeable.

9 years agoTreat ECONNRESET and i/o timeout from peers as EOF
Matt Joiner [Sat, 13 Sep 2014 17:45:38 +0000 (03:45 +1000)]
Treat ECONNRESET and i/o timeout from peers as EOF

9 years agoOn torrentfs read, read the full requested buffer and don't return early
Matt Joiner [Sat, 13 Sep 2014 17:44:07 +0000 (03:44 +1000)]
On torrentfs read, read the full requested buffer and don't return early

9 years agoImprovements to written status
Matt Joiner [Sat, 13 Sep 2014 17:43:11 +0000 (03:43 +1000)]
Improvements to written status

9 years agoNew worst conn algorithm that incorporates useful/unwanted chunk download rates
Matt Joiner [Sat, 13 Sep 2014 17:40:35 +0000 (03:40 +1000)]
New worst conn algorithm that incorporates useful/unwanted chunk download rates

9 years agoNew worst conns algorithm that takes into account connection useful chunk hit rate
Matt Joiner [Thu, 11 Sep 2014 10:31:31 +0000 (20:31 +1000)]
New worst conns algorithm that takes into account connection useful chunk hit rate

9 years agoRename and improve downloaded chunk counters and status per connection
Matt Joiner [Thu, 11 Sep 2014 10:30:13 +0000 (20:30 +1000)]
Rename and improve downloaded chunk counters and status per connection

9 years agoTighten responsive download strategy partial piece request filling
Matt Joiner [Thu, 11 Sep 2014 04:22:29 +0000 (14:22 +1000)]
Tighten responsive download strategy partial piece request filling

9 years agoDon't log extension message parsing errors from -SD0100-
Matt Joiner [Thu, 11 Sep 2014 04:20:47 +0000 (14:20 +1000)]
Don't log extension message parsing errors from -SD0100-

9 years agoCheck magnet URI scheme
Matt Joiner [Thu, 11 Sep 2014 04:19:23 +0000 (14:19 +1000)]
Check magnet URI scheme

9 years agoClean up magnet URI parsing errors in dirwatch
Matt Joiner [Thu, 11 Sep 2014 04:18:59 +0000 (14:18 +1000)]
Clean up magnet URI parsing errors in dirwatch

9 years agoUpdate TODO
Matt Joiner [Thu, 28 Aug 2014 00:09:33 +0000 (10:09 +1000)]
Update TODO

9 years agoDisable TCP linger for peer connections
Matt Joiner [Thu, 28 Aug 2014 00:06:57 +0000 (10:06 +1000)]
Disable TCP linger for peer connections

9 years agoIntroduce socket/torrent limits, work in progress
Matt Joiner [Thu, 28 Aug 2014 00:06:36 +0000 (10:06 +1000)]
Introduce socket/torrent limits, work in progress

9 years agoMisc tweaks
Matt Joiner [Thu, 28 Aug 2014 00:05:41 +0000 (10:05 +1000)]
Misc tweaks

9 years agoFixes to closing torrents and connections
Matt Joiner [Thu, 28 Aug 2014 00:04:44 +0000 (10:04 +1000)]
Fixes to closing torrents and connections

9 years agoGreat complexifying of the responsive download strategy
Matt Joiner [Thu, 28 Aug 2014 00:04:00 +0000 (10:04 +1000)]
Great complexifying of the responsive download strategy

Should be better after 4 days of experimentation...

9 years agoForgot to commit duplicateConnsAvoided expvar
Matt Joiner [Wed, 27 Aug 2014 23:45:58 +0000 (09:45 +1000)]
Forgot to commit duplicateConnsAvoided expvar

9 years agoKeep track of ongoing handshakes and add timeouts to connection sockets
Matt Joiner [Wed, 27 Aug 2014 23:45:20 +0000 (09:45 +1000)]
Keep track of ongoing handshakes and add timeouts to connection sockets

9 years agoCease networking on a torrent if it's finished and we're not going to seed
Matt Joiner [Wed, 27 Aug 2014 23:39:27 +0000 (09:39 +1000)]
Cease networking on a torrent if it's finished and we're not going to seed

9 years agoAvoid connecting to the same peer twice by address
Matt Joiner [Wed, 27 Aug 2014 23:35:13 +0000 (09:35 +1000)]
Avoid connecting to the same peer twice by address

9 years agoAdd useful new metrics to connection
Matt Joiner [Wed, 27 Aug 2014 23:32:49 +0000 (09:32 +1000)]
Add useful new metrics to connection

9 years agoRename connection.closed->closing
Matt Joiner [Wed, 27 Aug 2014 23:31:05 +0000 (09:31 +1000)]
Rename connection.closed->closing

9 years agoFix crashes in torrentfs.fileNode.Read
Matt Joiner [Wed, 27 Aug 2014 22:09:41 +0000 (08:09 +1000)]
Fix crashes in torrentfs.fileNode.Read

9 years agoMake use of FUSE readahead
Matt Joiner [Wed, 27 Aug 2014 22:08:59 +0000 (08:08 +1000)]
Make use of FUSE readahead

9 years agoAdd some counters and tracking to torrentfs events
Matt Joiner [Wed, 27 Aug 2014 22:08:09 +0000 (08:08 +1000)]
Add some counters and tracking to torrentfs events

9 years agoSome fixes and improvements to dirwatch
Matt Joiner [Wed, 27 Aug 2014 22:05:06 +0000 (08:05 +1000)]
Some fixes and improvements to dirwatch

9 years agoA type for heapifying worst performing conns
Matt Joiner [Wed, 27 Aug 2014 22:04:41 +0000 (08:04 +1000)]
A type for heapifying worst performing conns

9 years agoAdd a test for double Close of torrent.torrent
Matt Joiner [Wed, 27 Aug 2014 22:03:55 +0000 (08:03 +1000)]
Add a test for double Close of torrent.torrent

9 years agoFix a few crashes
Matt Joiner [Mon, 25 Aug 2014 12:15:45 +0000 (22:15 +1000)]
Fix a few crashes

9 years agoSome logic improvements to torrentfs.fileNode.Read
Matt Joiner [Mon, 25 Aug 2014 12:15:18 +0000 (22:15 +1000)]
Some logic improvements to torrentfs.fileNode.Read

9 years agodht.Server.Ping didn't lock structure
Matt Joiner [Mon, 25 Aug 2014 12:14:31 +0000 (22:14 +1000)]
dht.Server.Ping didn't lock structure

9 years agoMisc trivial improvements
Matt Joiner [Mon, 25 Aug 2014 12:14:10 +0000 (22:14 +1000)]
Misc trivial improvements

9 years agoAdd a date to the metadata packet client version string
Matt Joiner [Mon, 25 Aug 2014 12:12:50 +0000 (22:12 +1000)]
Add a date to the metadata packet client version string

9 years agoImplement the DHT Port message
Matt Joiner [Mon, 25 Aug 2014 12:12:16 +0000 (22:12 +1000)]
Implement the DHT Port message

9 years agoTODO
Matt Joiner [Sun, 24 Aug 2014 20:01:09 +0000 (06:01 +1000)]
TODO

9 years agoStop announcing on DHT if a torrent is removed
Matt Joiner [Sun, 24 Aug 2014 20:01:05 +0000 (06:01 +1000)]
Stop announcing on DHT if a torrent is removed

9 years agoMake NoUpload a client configuration option and use it for torrentfs
Matt Joiner [Sun, 24 Aug 2014 20:00:29 +0000 (06:00 +1000)]
Make NoUpload a client configuration option and use it for torrentfs

9 years agoImprove incomplete piece ordering, responsive download strategy
Matt Joiner [Sun, 24 Aug 2014 19:31:34 +0000 (05:31 +1000)]
Improve incomplete piece ordering, responsive download strategy

9 years agoUse CopyExact when extracting handshake read
Matt Joiner [Sun, 24 Aug 2014 19:25:52 +0000 (05:25 +1000)]
Use CopyExact when extracting handshake read

9 years agoLet client.DataWaiter have its own mutex
Matt Joiner [Sun, 24 Aug 2014 19:24:18 +0000 (05:24 +1000)]
Let client.DataWaiter have its own mutex

9 years agoMake use of levelmu to prioritize client.TorrentReadAt
Matt Joiner [Sun, 24 Aug 2014 19:23:28 +0000 (05:23 +1000)]
Make use of levelmu to prioritize client.TorrentReadAt