1
0
mirror of https://github.com/veggiedefender/torrent-client.git synced 2025-11-06 09:29:16 +02:00

Commit Graph

  • e0f58e0b16 Merge pull request #10 from yeung66/patch-1 master Jesse Li 2023-02-15 15:12:03 -05:00
  • ab1aeff121 fix: expected port in test YeungYeah 2022-04-10 20:36:44 +08:00
  • 94a3f930cb fix: change port used in buildTrackerURL variable port should use port from parameter instead of a const Port YeungYeah 2022-04-10 20:16:44 +08:00
  • d51be59e2c Merge pull request #7 from uxlsl/master Jesse Li 2021-02-22 22:51:44 -05:00
  • 463431dd71 fix shift count type int, must be unsigned integer linsonglin 2021-02-23 11:04:04 +08:00
  • 457c84954e Merge pull request #4 from antontomusiak/master Jesse Li 2020-09-28 08:35:51 -04:00
  • 7b89866bbd Handle keep-alive in recvBitfield anton 2020-09-28 14:11:01 +03:00
  • a83013d250 Rewrite handshake Serialize Jesse 2020-01-12 09:17:19 -05:00
  • 439a0e19a8 Update README.md Jesse Li 2020-01-04 18:34:56 -05:00
  • 2bde944888 Update README.md Jesse Li 2020-01-04 14:06:43 -05:00
  • 2768f3ea3d Remove buffering from results channel Jesse Li 2020-01-04 11:01:01 -05:00
  • 09818dfa78 Implement peer String() method Jesse Li 2020-01-03 13:04:16 -05:00
  • a8225373e7 Update README.md Jesse Li 2020-01-02 21:44:34 -05:00
  • 8aa4a57933 Add circleci file Jesse Li 2020-01-02 21:37:15 -05:00
  • 67d6a6808c Test the client Jesse Li 2020-01-02 21:28:15 -05:00
  • b59125b5b7 Rip out reader code Jesse Li 2020-01-02 19:36:25 -05:00
  • e9edc62c57 Split client into its own package Jesse Li 2020-01-02 13:48:21 -05:00
  • f46d43985a Test tracker Jesse Li 2020-01-02 13:07:59 -05:00
  • 0050772d42 Update handshake comments Jesse Li 2020-01-02 12:31:41 -05:00
  • 669f15ec75 Remove support for MsgPort Jesse Li 2020-01-02 12:30:17 -05:00
  • 81a6437145 More informative comments for message IDs Jesse Li 2020-01-02 12:29:10 -05:00
  • b3beb5ed2a Check infohash in handshake Jesse Li 2020-01-02 12:26:54 -05:00
  • b3ee9f4117 Use clearer names for functions that send messages Jesse Li 2020-01-02 12:23:22 -05:00
  • b255ecc574 Fix torrentfile TestOpen Jesse Li 2020-01-02 12:20:41 -05:00
  • b3299a6bfa Simplify download interface Jesse Li 2020-01-02 12:17:45 -05:00
  • 06b849a44d Fix bug which produced incorrect piece size Jesse Li 2020-01-02 11:49:08 -05:00
  • 873008bb96 Caveat that Download stores the file in memory Jesse Li 2020-01-02 10:51:13 -05:00
  • 22fc59dae3 Small refactor of downloadState Jesse Li 2020-01-02 10:47:00 -05:00
  • d4f6d1265d Check error in request to client Jesse Li 2020-01-02 10:44:08 -05:00
  • 70713e028d Fix race condition Jesse Li 2020-01-02 10:41:21 -05:00
  • 73a9a5216b Break p2p.Peer and parsePeers into its own package Jesse Li 2020-01-02 10:39:35 -05:00
  • 25810161eb Add timeout to tracker GET request Jesse Li 2020-01-02 10:34:47 -05:00
  • 17e57b6dd6 Rename getPeers to requestPeers Jesse Li 2020-01-02 10:32:20 -05:00
  • cc088e8b79 Only use fmt.Errorf Jesse Li 2020-01-02 10:30:30 -05:00
  • 4f6a2eb20e Make peerSize a const Jesse Li 2020-01-02 10:28:58 -05:00
  • 4fd40f9f0a Return plain struct from toTorrentFile Jesse Li 2020-01-02 10:27:00 -05:00
  • 7e8b3413ac Check error in getPeers Jesse Li 2020-01-02 10:23:18 -05:00
  • f746beb9d6 Remove log in torrentfile Jesse Li 2020-01-02 10:22:29 -05:00
  • 9c6bf79e61 Rename toTorrent to toTorrentFile Jesse Li 2019-12-31 23:36:27 -05:00
  • acd4fe9c62 Implement golden file test for torrentfile.Open Jesse Li 2019-12-31 12:18:18 -05:00
  • a5e2137e37 Update README.md Jesse Li 2019-12-30 10:56:35 -05:00
  • 487337a08a Add bounds checking to bitfield Jesse 2019-12-30 10:34:41 -05:00
  • 402e4e1665 Correct the size of a piece Jesse 2019-12-30 10:23:12 -05:00
  • 928bbfeab4 Simplify download algorithm Jesse 2019-12-30 10:19:09 -05:00
  • 46b55339aa Fix unit in comment about block size Jesse 2019-12-29 22:47:32 -05:00
  • 23f3a144af Add logging around tracker and number of peers Jesse 2019-12-29 21:59:33 -05:00
  • 67066ad77c Set 30 second deadline for pieces to download Jesse 2019-12-29 21:43:58 -05:00
  • c4fbd50021 Make MaxBlockSize and MaxBacklog public Jesse 2019-12-29 20:58:35 -05:00
  • 92974b393a Update README.md Jesse Li 2019-12-29 20:54:51 -05:00
  • 6d7c786022 Create LICENSE Jesse Li 2019-12-29 20:47:44 -05:00
  • 648d87a2d0 Comments for bitfield SetPiece test cases Jesse 2019-12-29 20:44:11 -05:00
  • 3b7eb1da70 Separate bitfield into its own package Jesse 2019-12-29 20:24:06 -05:00
  • 353d112e4d Create README.md Jesse Li 2019-12-29 20:08:03 -05:00
  • 43d771aa0d Remove commented out code Jesse 2019-12-29 19:55:21 -05:00
  • 5a57bde05a Use slightly more correct handling of choking Jesse 2019-12-29 19:51:17 -05:00
  • a8274e966b Add go mod files Jesse 2019-12-29 19:36:24 -05:00
  • 97dbe49f57 Increase backlog to 5 Jesse 2019-12-29 19:32:44 -05:00
  • 97f2be0747 Reorder algorithm steps Jesse 2019-12-29 19:26:57 -05:00
  • 0a5176e4ee Decrease backlog Jesse 2019-12-29 19:14:44 -05:00
  • ff89aa406c Cleaner algorithm for downloading piece Jesse 2019-12-29 19:06:45 -05:00
  • dced33b933 Report more accurate count of workers Jesse 2019-12-29 15:15:53 -05:00
  • ffa8c82919 Rename downloadWorker to startDownloadWorker Jesse 2019-12-29 15:12:20 -05:00
  • 738af57ef1 Move big switch into a function Jesse 2019-12-29 14:53:31 -05:00
  • 9d7ddbc62c Refactor p2p Jesse 2019-12-29 14:02:50 -05:00
  • d7d46ab7ef Finishes download Jesse 2019-12-27 14:33:03 -05:00
  • 06fab65638 Pipeline 5 requests at a time Jesse 2019-12-27 12:30:20 -05:00
  • 7e8cac2d3e Incredibly messy and slow download Jesse 2019-12-26 21:53:11 -05:00
  • b1fc8c7fb8 Add p2p client Jesse 2019-12-26 17:04:32 -05:00
  • 5201cfc0b4 Shorten Message.String() output Jesse 2019-12-26 11:21:14 -05:00
  • f2768fefd6 Implement testing membership in bitfield Jesse 2019-12-25 23:10:23 -05:00
  • f9a22a6d9f Add timeout mechanism Jesse Li 2019-12-24 13:23:46 -05:00
  • 415666a020 Implement handshake.New() Jesse Li 2019-12-24 11:05:22 -05:00
  • c20965ebf5 Move handshake into its own package Jesse Li 2019-12-24 10:39:22 -05:00
  • aa8ef0ed76 Close connection after handling error Jesse Li 2019-12-24 10:19:40 -05:00
  • cdfb02a591 Implement formatting requests and parsing pieces Jesse 2019-12-23 12:56:11 -05:00
  • 7999e23fe1 Super janky download first piece Jesse 2019-12-22 23:51:31 -05:00
  • 12fac89ce5 Remove PieceLength from Downloader struct Jesse 2019-12-22 22:37:27 -05:00
  • 0b46e8444c Test buildTrackerURL Jesse 2019-12-22 22:36:07 -05:00
  • 519d64fa9a Stub out p2p interface Jesse 2019-12-22 22:25:57 -05:00
  • b7cccc4662 Change Torrent.PieceHashes to [][20]byte Jesse 2019-12-22 21:56:45 -05:00
  • 2810320046 Receive handshake from peer! Jesse Li 2019-12-22 17:43:39 -05:00
  • 4256e5110f Implement parsing and serializing handshake Jesse Li 2019-12-22 16:03:38 -05:00
  • 5ebabfabcd Make hash a [20]byte Jesse Li 2019-12-22 15:19:46 -05:00
  • a786dcaf37 Document Message and keep-alive nil behavior Jesse Li 2019-12-22 15:02:50 -05:00
  • 2f3008cc55 Rename package peer to message Jesse Li 2019-12-22 14:57:10 -05:00
  • 297d34d11e Remove Tracker struct Jesse Li 2019-12-22 14:54:54 -05:00
  • df3ffed19e Implement Message.String() Jesse Li 2019-12-22 14:45:16 -05:00
  • 7897f345e8 Rename peer to message Jesse Li 2019-12-22 14:19:38 -05:00
  • 0291f579c5 Test parsePeers Jesse Li 2019-12-22 14:18:19 -05:00
  • 1cb698ce85 Test torrent Jesse Li 2019-12-22 13:46:51 -05:00
  • 4841bcda29 Refactor torrent Jesse Li 2019-12-22 13:22:03 -05:00
  • 11314c13dc Implement parsing peer messages Jesse Li 2019-12-22 12:51:59 -05:00
  • 941fba7a64 Parse torrent and fetch peers Jesse Li 2019-12-21 23:14:33 -05:00