Commit Graph

283 Commits

Author SHA1 Message Date
Matt Joiner 7dd932bd5a Fix a few crashes 2014-08-25 22:15:45 +10:00
Matt Joiner 1bb5ee9006 Some logic improvements to torrentfs.fileNode.Read 2014-08-25 22:15:18 +10:00
Matt Joiner d17a2958a6 dht.Server.Ping didn't lock structure 2014-08-25 22:14:31 +10:00
Matt Joiner 2d9c22ae1e Misc trivial improvements 2014-08-25 22:14:10 +10:00
Matt Joiner 891745360e Add a date to the metadata packet client version string 2014-08-25 22:12:50 +10:00
Matt Joiner c9bc892789 Implement the DHT Port message 2014-08-25 22:12:16 +10:00
Matt Joiner 28e80062b6 TODO 2014-08-25 06:01:09 +10:00
Matt Joiner 6aa459dc0d Stop announcing on DHT if a torrent is removed 2014-08-25 06:01:05 +10:00
Matt Joiner 78ed2c74d0 Make NoUpload a client configuration option and use it for torrentfs 2014-08-25 06:00:29 +10:00
Matt Joiner c8f335182f Improve incomplete piece ordering, responsive download strategy 2014-08-25 05:31:34 +10:00
Matt Joiner 8f89d7a07e Use CopyExact when extracting handshake read 2014-08-25 05:25:52 +10:00
Matt Joiner 0b01c597c0 Let client.DataWaiter have its own mutex 2014-08-25 05:24:18 +10:00
Matt Joiner 8db966cd42 Make use of levelmu to prioritize client.TorrentReadAt 2014-08-25 05:23:28 +10:00
Matt Joiner caa1d65bc8 Add levelmu, a package implementing priority mutex with levels 2014-08-25 05:22:34 +10:00
Matt Joiner 8f065e473f Add some checks to TorrentReadAt for 0 byte reads 2014-08-24 06:54:14 +10:00
Matt Joiner 6dce2cbf76 Add piece length to torrent status 2014-08-24 03:11:35 +10:00
Matt Joiner b72b05f495 Count posted cancels 2014-08-24 03:10:47 +10:00
Matt Joiner 2a3243db2a TODO 2014-08-24 03:09:13 +10:00
Matt Joiner ed8ee625c9 Optimize torrent.Length() 2014-08-24 03:09:02 +10:00
Matt Joiner 2b079e4a9d Got a nice working algorithm for responsive download strategy 2014-08-24 03:08:11 +10:00
Matt Joiner 1ff7414869 Add a counter for optimized cancels 2014-08-24 03:04:07 +10:00
Matt Joiner c1896c4d46 Count unexpected cancels received 2014-08-22 17:47:44 +10:00
Matt Joiner 713cf7e71f Extend the dial timeout to 30s 2014-08-22 17:40:22 +10:00
Matt Joiner d3d6f460c9 Missing Close 2014-08-22 17:40:10 +10:00
Matt Joiner a2fabedfa2 Clarify EOF in message decoding 2014-08-22 17:39:18 +10:00
Matt Joiner 063e02cbfd Avoid allocations in shuffledPendingChunkSpecs 2014-08-22 17:37:18 +10:00
Matt Joiner 189f1e364e Ditch ordering of prioritized chunks 2014-08-22 17:35:15 +10:00
Matt Joiner 95d5d4a30c Improve status and logging 2014-08-22 17:33:17 +10:00
Matt Joiner 60df4e100c Simplify dirwatch to scan the whole directory on changes 2014-08-22 17:31:03 +10:00
Matt Joiner 3e26952f2f Improve DHT distance tests 2014-08-22 03:45:31 +10:00
Matt Joiner 2410c3eddd Extract function generating all chunk specs for a piece 2014-08-22 03:42:38 +10:00
Matt Joiner 00a4e9bc11 Fix crash in metadata requests beyond available info bytes 2014-08-22 03:42:00 +10:00
Matt Joiner f4687ba28f Improve the log message for torrentfs reads 2014-08-22 01:37:34 +10:00
Matt Joiner edf0a13128 Export some log events via expvar instead 2014-08-22 01:33:13 +10:00
Matt Joiner 848636f830 Fix error in bitfield correction expression and off by one condition when metadata is completed 2014-08-22 01:26:41 +10:00
Matt Joiner 702665f9f3 Remove torrent from download strategy when dropped 2014-08-22 01:25:18 +10:00
Matt Joiner 4a7c94d04d Add test for dht.NewServer and change StopServing to Close 2014-08-21 21:12:50 +10:00
Matt Joiner e8f184a7bf Store pending peers in a dict to prevent duplicates 2014-08-21 21:10:19 +10:00
Matt Joiner 74f05db2ea Clean up imports 2014-08-21 21:08:56 +10:00
Matt Joiner cb68c984fa Move some tracker.CompactPeer into util 2014-08-21 21:07:44 +10:00
Matt Joiner 5c1492bffe Add CopyExact util function 2014-08-21 18:24:19 +10:00
Matt Joiner b8ae475625 Add TODO file 2014-08-21 18:13:41 +10:00
Matt Joiner 52fc7c7205 Improve the internal connection and handshake logic 2014-08-21 18:12:49 +10:00
Matt Joiner 40fd1d647c Tidy up the torrent and DHT APIs 2014-08-21 18:07:06 +10:00
Matt Joiner 96e44f8950 Print dht-ping reponses with %q 2014-08-17 00:44:05 +10:00
Matt Joiner 466c85a1b2 Triage upload contention due to lack of uploader routine 2014-07-24 13:46:49 +10:00
Matt Joiner 3a852886ad Triage announcer leak on dropped torrents 2014-07-24 13:46:14 +10:00
Matt Joiner 324fb94684 cmd/torrentfs: Missing listener on client 2014-07-24 13:45:49 +10:00
Matt Joiner cd7a758acd dht: Message only the most likely peers 2014-07-24 13:45:18 +10:00
Matt Joiner 8ff1c6f34a Support watching for ".magnet" files in torrent directory 2014-07-24 13:44:23 +10:00