Commit Graph

  • e68d5fec1f Simplify the tracker.New interface, just take a string Matt Joiner 2013-12-16 18:47:23 +1100
  • 99d2ced31c Tracker doc Matt Joiner 2013-12-16 18:46:55 +1100
  • 5f093c3803 Fixes and tests for UDP tracker protocol Matt Joiner 2013-12-14 22:21:45 +1100
  • 8baadf0af3 Fix parsing of UDP announce response peers Matt Joiner 2013-12-14 22:20:13 +1100
  • 843c954c09 Implementing UDP tracker in its own module Matt Joiner 2013-11-07 01:55:29 +1100
  • c7ca000f25 Unit test for connection address comparison to avoid adding bootstrap peers when already present Matt Joiner 2013-11-05 00:10:16 +1100
  • 69c674606f Bring the 'torrent' command up to speed with the client API, including profiling flags Matt Joiner 2013-11-05 00:07:28 +1100
  • 495082a60a Set the event condition locker in client Matt Joiner 2013-11-05 00:06:40 +1100
  • d7fd5d628b Stop connection writer timer on exit from function Matt Joiner 2013-11-05 00:06:08 +1100
  • 068236b6da Remove obsolete private type 'pieceState' Matt Joiner 2013-11-05 00:05:44 +1100
  • b499ab3619 Begin on UDP trackers Matt Joiner 2013-11-05 00:04:14 +1100
  • 36b36beb3b More explicit implementation for wantPiece method Matt Joiner 2013-10-22 18:03:44 +1100
  • ec0ffa84a4 If no requests can be found for a connection, set it to uninterested Matt Joiner 2013-10-22 18:03:27 +1100
  • 8f0b076f65 Set pieceByBytesPendingSlice capacity in advance to reduce memory pressure Matt Joiner 2013-10-22 18:02:52 +1100
  • fe5f8317d4 Reconnect to the torrentfs -testPeer at regular intervals if it's missing for any loaded torrents Matt Joiner 2013-10-22 18:01:56 +1100
  • 8df567e822 Fix keep-alive timer use in connection writer, and make connection a public type Matt Joiner 2013-10-22 18:00:35 +1100
  • d039436f55 Significant progress and improvements Matt Joiner 2013-10-21 01:07:01 +1100
  • 03b1af07cd Always finish off partially downloaded pieces Matt Joiner 2013-10-15 19:42:30 +1100
  • 0a5043ba69 Implement prioritizing of torrent data regions based on FS activity Matt Joiner 2013-10-15 01:39:12 +1100
  • 5c0ff3ff5f Torrent client publishes data ready information; torrentfs supports file reads Matt Joiner 2013-10-13 23:16:21 +1100
  • 43418e9f65 Fix bugs in the new WriteSectionTo hashing implementation Matt Joiner 2013-10-07 18:58:33 +1100
  • a44accadbe Create more efficient writer method for MMapSpan for use with hashing Matt Joiner 2013-10-07 10:35:10 +1100
  • e1526b2863 Support browsing torrents in the filesystem Matt Joiner 2013-10-07 06:00:35 +1100
  • 8e435ea9e2 Need executable permissions on torrent data directories Matt Joiner 2013-10-06 21:12:44 +1100
  • 68e189d477 Start implementing torrentfs binary Matt Joiner 2013-10-06 18:01:39 +1100
  • 5dbd675be6 Fix TestHaveEncode now that message length prefixes are actually included in Marshal output Matt Joiner 2013-10-06 16:05:03 +1100
  • 4209216696 BEP20 Matt Joiner 2013-10-02 20:12:05 +1000
  • 39660d4e9d Implement writing of chunks as they arrive Matt Joiner 2013-10-02 19:55:03 +1000
  • 381c6bef68 Failing WriteAt should return ErrShortWrite Matt Joiner 2013-10-02 19:54:23 +1000
  • 7bc8524d24 Mostly handle Piece messages, and kick off a piece check when all the chunks are done Matt Joiner 2013-10-02 17:57:59 +1000
  • beb599698f Decoding of Piece messages, and checking entire message is consumed Matt Joiner 2013-10-02 17:57:19 +1000
  • 28531a4fcc Fix request/chunk confusion, missing outgoing message prefix, protocol tests; improve request triggering Matt Joiner 2013-10-01 18:43:18 +1000
  • 081a6805c5 Implementing bitfields and connection message handling Matt Joiner 2013-09-30 21:51:08 +1000
  • abf5c92488 Implement peer connection writer, optimizer and handshake Matt Joiner 2013-09-29 16:45:17 +1000
  • 28c7c6a5d7 Fix race conditions Matt Joiner 2013-09-29 16:44:37 +1000
  • fe80bf2f2f BytesInfoHash wasn't actually initializing the info hash Matt Joiner 2013-09-29 16:43:35 +1000
  • 978aa1f0c8 Don't rely on *os.File finalizer for close Matt Joiner 2013-09-29 14:20:18 +1000
  • ac254e95f2 Prevent false-positive race conditions Matt Joiner 2013-09-29 14:18:43 +1000
  • 7870d20573 Begin implementing the adding of peers, and initiating of connections Matt Joiner 2013-09-29 08:11:24 +1000
  • ddd4382474 Handle actorTask messages Matt Joiner 2013-09-29 04:05:09 +1000
  • 805897afb5 Can't send to torrentFinished while handling an event Matt Joiner 2013-09-29 04:04:46 +1000
  • b4989a370f Fix crash due to torrent.MetaInfo being unset Matt Joiner 2013-09-29 04:03:36 +1000
  • aefe754698 Create torrent data files with at least the required size Matt Joiner 2013-09-29 04:03:04 +1000
  • 816c263760 Start implementing a basic client Matt Joiner 2013-09-26 19:49:15 +1000
  • 0866ce3579 Add some basic protocol definitions, this will be improved in the future Matt Joiner 2013-09-26 13:43:46 +1000
  • d7ed035ef1 Add torrent-verify, simple exe that logs matching pieces from a torrent file and torrent path Matt Joiner 2013-09-26 13:43:08 +1000
  • 3d1fb69e36 Add torrent.Mmap and MmapSpan, types that abstract memory-mapped torrent data Matt Joiner 2013-09-26 13:42:24 +1000
  • 2a9d48d09f Add cmds 'torrent-create' and 'torrent-metainfo-pprint' using nsf's libtorgo Matt Joiner 2013-09-19 17:00:51 +1000
  • d42799be2c torrent: Fix documentation. nsf 2012-07-11 02:44:22 +0600
  • cb1f612378 Promote DefaultName and TotalSize to methods. The need to be read-only. nsf 2012-07-11 02:41:22 +0600
  • 346dd31fd9 torrent: Remove the ugly interface{} dependent API. Use a simpler one. nsf 2012-07-11 02:30:05 +0600
  • f954b649c6 torrent: Fix bug with common part not being cut off. nsf 2012-07-09 03:37:16 +0600
  • 0e3b555c7e Introduce the notion of Batch. nsf 2012-07-08 07:01:14 +0600
  • 832248ad25 Clarify 'AddURL' -> 'AddWebSeedURL'. nsf 2012-07-07 22:26:10 +0600
  • 8149db57e0 Omg, haven't tested before committing, what a shame. :D nsf 2012-07-06 02:02:42 +0600
  • 20448260d4 Add more parameter checks and cleaning. nsf 2012-07-06 01:14:34 +0600
  • d684312a80 Add Builder docs. A bit shallow for now, but whatever. nsf 2012-07-05 22:47:14 +0600
  • e969be7752 Add Builder interface for creating .torrent files. nsf 2012-07-05 22:44:54 +0600
  • b1a6e3eeef Add MarshalBencode to the torrent_info_ex, will be used by the Builder. nsf 2012-07-05 22:44:27 +0600
  • ae6df86341 Remove md5sum fields from the encoder/decoder helper structs. nsf 2012-07-04 05:29:47 +0600
  • cfafbffbc1 Cosmetic change File -> MetaInfo. Update docs as well. nsf 2012-07-02 01:05:10 +0600
  • bac1a906fc Add torrent.File documentation. nsf 2012-06-30 22:34:18 +0600
  • d0429086be Add more comments to the bencode library. Implement UnmarshalerError. nsf 2012-06-30 22:26:20 +0600
  • f72bfd8748 Tweak interface slightly. nsf 2012-06-30 04:23:02 +0600
  • 0b385a409b Add first bits of "torrent" library (.torrent file manipulation). nsf 2012-06-28 02:26:56 +0600
  • e553531a10 Fix bugs, implement missing bits. Made a mess, can't describe properly. nsf 2012-06-28 02:21:26 +0600
  • 110956d936 Fix Marshaler case. nsf 2012-06-24 17:10:53 +0600
  • 69d1e17b80 Add MarshalBencode test. nsf 2012-06-24 17:10:27 +0600
  • 8db0c29da9 Add bufio.Writer error handling, move Flush to the internal code. nsf 2012-06-24 16:59:04 +0600
  • 27b64a002c Add a couple of decode tests, fix empty slice bug. nsf 2012-06-22 19:34:26 +0600
  • f8f98eb7cd Add missing interface definitions. nsf 2012-06-22 19:34:04 +0600
  • 57c1403300 Uncomment defer recover statement. nsf 2012-06-20 19:34:10 +0600
  • a68e4a6f5a Initial commit. nsf 2012-06-20 19:21:32 +0600