]>
 
 
Sergey Matveev's repositories - btrtrc.git/log 
 
 
 
 
 
 
Matt Joiner [Tue, 27 Oct 2020 00:08:08 +0000 (11:08 +1100)] 
 
sqlite storage: Do ReadAt without using incremental I/O 
 
Matt Joiner [Fri, 23 Oct 2020 00:03:42 +0000 (11:03 +1100)] 
 
sqlite storage: Working recursive CTE for excess data 
 
Matt Joiner [Thu, 22 Oct 2020 22:03:44 +0000 (09:03 +1100)] 
 
sqlite storage: Add NewProviderPool 
 
Matt Joiner [Thu, 22 Oct 2020 22:01:15 +0000 (09:01 +1100)] 
 
sqlite storage: Rename table to blob 
 
Avoiding plural table names. 
 
Matt Joiner [Thu, 22 Oct 2020 21:58:55 +0000 (08:58 +1100)] 
 
Performance improvements to PEX 
 
Matt Joiner [Thu, 15 Oct 2020 05:03:43 +0000 (16:03 +1100)] 
 
Fix error handling for bad torrent adds with safe file handling 
 
Matt Joiner [Thu, 15 Oct 2020 04:45:08 +0000 (15:45 +1100)] 
 
Sanitize metainfo file paths for file-based storage 
 
Fixes exploit where specially crafted infos can cause the client to write files to arbitrary locations on local storage when using file-based storages like mmap and file. 
 
Matt Joiner [Thu, 15 Oct 2020 01:56:06 +0000 (12:56 +1100)] 
 
Don't update requests for the current connection first when a request is deleted 
 
Matt Joiner [Thu, 15 Oct 2020 01:45:19 +0000 (12:45 +1100)] 
 
We might want to close webseed peers on response errors 
 
Matt Joiner [Thu, 15 Oct 2020 01:42:27 +0000 (12:42 +1100)] 
 
webseed: Handle http response status codes 
 
Matt Joiner [Wed, 14 Oct 2020 04:11:45 +0000 (15:11 +1100)] 
 
Ensure PeerConn._close is called for incoming connections 
 
This fixes missing calls to PeerConnClosed callback. 
 
Matt Joiner [Tue, 13 Oct 2020 02:34:05 +0000 (13:34 +1100)] 
 
Test both sqlite file and in-memory leecher storages 
 
Matt Joiner [Tue, 13 Oct 2020 02:33:22 +0000 (13:33 +1100)] 
 
Move pexConnState from peer to PeerConn 
 
Matt Joiner [Tue, 13 Oct 2020 02:02:39 +0000 (13:02 +1100)] 
 
Add PeerConnClosed callback 
 
Matt Joiner [Mon, 12 Oct 2020 22:36:58 +0000 (09:36 +1100)] 
 
Add last_used to sqlite storage 
 
Matt Joiner [Mon, 12 Oct 2020 06:13:05 +0000 (17:13 +1100)] 
 
Use bind-blob fix for crawshaw.io/sqlite 
 
Matt Joiner [Mon, 12 Oct 2020 06:12:34 +0000 (17:12 +1100)] 
 
Fix some log levels 
 
Matt Joiner [Sun, 11 Oct 2020 01:58:27 +0000 (12:58 +1100)] 
 
Add a sqlite data storage implementation 
 
Matt Joiner [Sun, 11 Oct 2020 01:57:33 +0000 (12:57 +1100)] 
 
Panic on bad piece per resource chunk names 
 
This was masking a bug in a coming sqlite storage implementation. Maybe it could be relaxed to checking for no filepath.Dir in the future. 
 
Matt Joiner [Sun, 11 Oct 2020 01:54:03 +0000 (12:54 +1100)] 
 
Tweaks to storage error and completion handling 
 
Matt Joiner [Sun, 11 Oct 2020 01:40:43 +0000 (12:40 +1100)] 
 
Tidy up some storage close handling 
 
Matt Joiner [Fri, 9 Oct 2020 23:59:17 +0000 (10:59 +1100)] 
 
Use testing.T.Name instead of missinggo.GetTestName 
 
This handles subtests correctly, and removes the need to specify when to export due to collisions with the old function. 
 
Matt Joiner [Fri, 9 Oct 2020 23:24:58 +0000 (10:24 +1100)] 
 
Tidy up some logging 
 
Matt Joiner [Tue, 6 Oct 2020 23:22:55 +0000 (10:22 +1100)] 
 
Fix webseed requests for non-trivial path components 
 
Matt Joiner [Mon, 5 Oct 2020 22:50:47 +0000 (09:50 +1100)] 
 
Fix PeerConn conn status string 
 
Matt Joiner [Thu, 1 Oct 2020 01:50:42 +0000 (11:50 +1000)] 
 
Fix unused import 
 
Matt Joiner [Thu, 1 Oct 2020 01:45:47 +0000 (11:45 +1000)] 
 
Set tracker announce timeout back to default 
 
Add lots of comments about how this works and why. 
 
Matt Joiner [Thu, 1 Oct 2020 01:20:44 +0000 (11:20 +1000)] 
 
Expose Client.ConnStats 
 
Matt Joiner [Thu, 1 Oct 2020 00:46:27 +0000 (10:46 +1000)] 
 
Include ip param in http announces 
 
Matt Joiner [Thu, 1 Oct 2020 00:45:29 +0000 (10:45 +1000)] 
 
Pass key param in http announces 
 
Matt Joiner [Thu, 1 Oct 2020 00:45:05 +0000 (10:45 +1000)] 
 
Rework HTTP announce timeouts 
 
Use Request.Context to implement timeouts, set the default to 3s for announces from the Client. 
 
Matt Joiner [Thu, 1 Oct 2020 00:43:10 +0000 (10:43 +1000)] 
 
Limit simultaneous announces to the same URL 
 
Matt Joiner [Wed, 30 Sep 2020 06:56:27 +0000 (16:56 +1000)] 
 
Limit half-open connections at the Client level 
 
Matt Joiner [Tue, 29 Sep 2020 06:42:52 +0000 (16:42 +1000)] 
 
Rename struct size test 
 
Matt Joiner [Tue, 29 Sep 2020 06:37:58 +0000 (16:37 +1000)] 
 
Optimize padding on Piece 
 
Matt Joiner [Tue, 29 Sep 2020 06:24:43 +0000 (16:24 +1000)] 
 
Add a test for Piece size 
 
Matt Joiner [Tue, 29 Sep 2020 06:21:54 +0000 (16:21 +1000)] 
 
Fix conn status string for WebRTC connections 
 
Matt Joiner [Thu, 3 Sep 2020 04:34:06 +0000 (14:34 +1000)] 
 
Fix panic for unexpected piece rejections 
 
Should fix #419. 
 
Matt Joiner [Tue, 11 Aug 2020 01:43:12 +0000 (11:43 +1000)] 
 
Add to downstream projects in README 
 
CortexFoundation/torrentfs 
 
Matt Joiner [Wed, 15 Jul 2020 06:16:09 +0000 (16:16 +1000)] 
 
Add ReadExtendedHandshake callback 
 
Matt Joiner [Wed, 15 Jul 2020 06:15:38 +0000 (16:15 +1000)] 
 
Expose peer.RemoteAddr 
 
Matt Joiner [Wed, 15 Jul 2020 06:13:26 +0000 (16:13 +1000)] 
 
Switch to crawshaw.io/sqlite 
 
I'm using it elsewhere, and it seems to conflict when linking with github.com/mattn/go-sqlite3. 
 
Matt Joiner [Wed, 15 Jul 2020 04:00:47 +0000 (14:00 +1000)] 
 
Add some client callbacks 
 
Matt Joiner [Tue, 14 Jul 2020 22:39:44 +0000 (08:39 +1000)] 
 
Add PkgGoDev badge 
 
Matt Joiner [Fri, 10 Jul 2020 03:24:08 +0000 (13:24 +1000)] 
 
Pull in go-libutp fix for race 
 
Matt Joiner [Fri, 10 Jul 2020 03:21:24 +0000 (13:21 +1000)] 
 
Support -testPeer addresses that need resolving 
 
Fixes #395. 
 
Matt Joiner [Fri, 10 Jul 2020 03:18:33 +0000 (13:18 +1000)] 
 
Handle errors in webseed peers for bad URLs 
 
Matt Joiner [Fri, 19 Jun 2020 02:24:03 +0000 (12:24 +1000)] 
 
Update bbolt 
 
Matt Joiner [Fri, 19 Jun 2020 01:41:26 +0000 (11:41 +1000)] 
 
Don't filter context cancel errors 
 
The caller thinks this means it succeeded, when it fact it was cancelled and it should interpret that appropriately. 
 
Matt Joiner [Thu, 4 Jun 2020 01:58:18 +0000 (11:58 +1000)] 
 
Tidy up webseed peer naming and unused types 
 
Matt Joiner [Thu, 4 Jun 2020 01:50:20 +0000 (11:50 +1000)] 
 
Fix panic in webseed request rejection logging 
 
Also use a new helper in Logger to simplify things. 
 
ucwong [Wed, 3 Jun 2020 04:35:52 +0000 (04:35  +0000)] 
 
torrent : add udp scheme to 'switch case' 
 
Maxb [Wed, 3 Jun 2020 19:17:47 +0000 (12:17 -0700)] 
 
Add DisallowDataDownload/Upload to TorrentSpec and small log cleanup 
 
Matt Joiner [Wed, 3 Jun 2020 01:25:08 +0000 (11:25 +1000)] 
 
Merge pull request #410 from anacrolix/webseeds 
 
* Rename Peer to PeerInfo, and unexport PeerInfos 
 
* Break peer out from PeerConn 
 
* Abstract out segments mapping and use it in mmap storage 
 
* Got file storage working with segment index 
 
* Fix race in webtorrent.TrackerClient.Run 
 
* storage file implementation: Error on short writes 
 
* Remove debug logging from storage file implementation 
 
* cmd/torrent-verify: Fix piece hash output 
 
* Support disabling webtorrent 
 
* Further progress on webseeding 
 
* Handle webseed Client events 
 
* Rename fastestConn->fastestPeer 
 
* Add webseeds from magnet links 
 
* Remove events from webseed 
 
Manage this stuff inside the webseed peer instead. 
 
* Make use of magnet source fields and expose Torrent.MergeSpec 
 
* Add option to disable webseeds 
 
* Fix webseeds when info isn't available immediately 
 
* Handle webseed request errors 
 
* Tidy up the interface changes 
 
Matt Joiner [Tue, 2 Jun 2020 07:41:59 +0000 (17:41 +1000)] 
 
Tidy up the interface changes 
 
Matt Joiner [Tue, 2 Jun 2020 06:41:49 +0000 (16:41 +1000)] 
 
Handle webseed request errors 
 
Matt Joiner [Tue, 2 Jun 2020 06:18:25 +0000 (16:18 +1000)] 
 
Fix webseeds when info isn't available immediately 
 
Matt Joiner [Tue, 2 Jun 2020 06:17:32 +0000 (16:17 +1000)] 
 
Add option to disable webseeds 
 
Matt Joiner [Tue, 2 Jun 2020 05:06:05 +0000 (15:06 +1000)] 
 
Make use of magnet source fields and expose Torrent.MergeSpec 
 
Matt Joiner [Tue, 2 Jun 2020 03:54:26 +0000 (13:54 +1000)] 
 
Remove events from webseed 
 
Manage this stuff inside the webseed peer instead. 
 
Matt Joiner [Tue, 2 Jun 2020 03:53:25 +0000 (13:53 +1000)] 
 
Add webseeds from magnet links 
 
Maxb [Sat, 30 May 2020 19:42:51 +0000 (12:42 -0700)] 
 
Add per-torrent ability to disable uploading 
 
Matt Joiner [Mon, 1 Jun 2020 09:09:17 +0000 (19:09 +1000)] 
 
Rename fastestConn->fastestPeer 
 
Matt Joiner [Mon, 1 Jun 2020 08:41:21 +0000 (18:41 +1000)] 
 
Handle webseed Client events 
 
Matt Joiner [Mon, 1 Jun 2020 08:25:45 +0000 (18:25 +1000)] 
 
Further progress on webseeding 
 
Matt Joiner [Mon, 1 Jun 2020 08:24:46 +0000 (18:24 +1000)] 
 
Support disabling webtorrent 
 
Matt Joiner [Mon, 1 Jun 2020 01:16:17 +0000 (11:16 +1000)] 
 
cmd/torrent-verify: Fix piece hash output 
 
Matt Joiner [Mon, 1 Jun 2020 01:12:51 +0000 (11:12 +1000)] 
 
Remove debug logging from storage file implementation 
 
Matt Joiner [Mon, 1 Jun 2020 01:12:33 +0000 (11:12 +1000)] 
 
storage file implementation: Error on short writes 
 
Matt Joiner [Mon, 1 Jun 2020 01:11:41 +0000 (11:11 +1000)] 
 
Fix race in webtorrent.TrackerClient.Run 
 
Matt Joiner [Sun, 31 May 2020 14:14:51 +0000 (00:14  +1000)] 
 
Got file storage working with segment index 
 
Matt Joiner [Sun, 31 May 2020 14:04:15 +0000 (00:04  +1000)] 
 
cmd/torrent-verify now needs to call InitIndex 
 
Matt Joiner [Sun, 31 May 2020 14:03:51 +0000 (00:03  +1000)] 
 
connLessTrusted takes peer instead of PeerConn 
 
Matt Joiner [Sun, 31 May 2020 11:00:44 +0000 (21:00 +1000)] 
 
webseed Client skeleton 
 
Matt Joiner [Sun, 31 May 2020 11:00:19 +0000 (21:00 +1000)] 
 
Abstract out segments mapping and use it in mmap storage 
 
Matt Joiner [Sun, 31 May 2020 03:22:36 +0000 (13:22 +1000)] 
 
Export PeerImpl and all its methods 
 
Matt Joiner [Sun, 31 May 2020 03:09:56 +0000 (13:09 +1000)] 
 
Got things compiling 
 
Matt Joiner [Sat, 30 May 2020 07:52:27 +0000 (17:52 +1000)] 
 
Save progress 
 
Matt Joiner [Sat, 30 May 2020 05:18:28 +0000 (15:18 +1000)] 
 
Seperate peer and PeerConn 
 
Matt Joiner [Sat, 30 May 2020 00:14:20 +0000 (10:14 +1000)] 
 
Break peer out from PeerConn 
 
Matt Joiner [Fri, 29 May 2020 09:44:48 +0000 (19:44 +1000)] 
 
Rename Peer to PeerInfo, and unexport PeerInfos 
 
Matt Joiner [Sun, 24 May 2020 07:47:16 +0000 (17:47 +1000)] 
 
BEP27 isn't implemented 
 
https://github.com/anacrolix/torrent/issues/406 
 
Yaroslav Kolomiiets [Wed, 20 May 2020 16:18:00 +0000 (17:18 +0100)] 
 
torrent-metainfo-pprint: include the 'nodes' field into the output when non-empty 
 
Matt Joiner [Thu, 21 May 2020 02:17:10 +0000 (12:17 +1000)] 
 
Fix panic closing torrent that failed to open storage 
 
Matt Joiner [Wed, 20 May 2020 02:04:53 +0000 (12:04 +1000)] 
 
Improve cmd/tracker-announce output 
 
Matt Joiner [Tue, 19 May 2020 05:22:58 +0000 (15:22 +1000)] 
 
Don't error on setting info when we already have it 
 
Matt Joiner [Tue, 19 May 2020 05:00:08 +0000 (15:00 +1000)] 
 
Fix https://github.com/anacrolix/torrent/issues/388 
 
Matt Joiner [Tue, 19 May 2020 04:59:45 +0000 (14:59 +1000)] 
 
Add tests for https://github.com/anacrolix/torrent/issues/388 
 
Rob Powell [Sun, 17 May 2020 15:26:59 +0000 (16:26 +0100)] 
 
Update README.md 
 
Matt Joiner [Tue, 19 May 2020 02:44:42 +0000 (12:44 +1000)] 
 
Fix panic caused by adding disabled udp trackers 
 
Matt Joiner [Wed, 13 May 2020 07:32:16 +0000 (17:32 +1000)] 
 
Fix Client torrent "of %d bytes" in status 
 
Matt Joiner [Wed, 13 May 2020 04:33:19 +0000 (14:33 +1000)] 
 
Add comment to metainfo.MetaInfo.CreationDate 
 
Matt Joiner [Wed, 13 May 2020 04:32:20 +0000 (14:32 +1000)] 
 
Expose metainfo.GeneratePieces 
 
Matt Joiner [Tue, 12 May 2020 01:31:56 +0000 (11:31 +1000)] 
 
cmd/tracker-announce: Rework for better utility in shell scripts 
 
Matt Joiner [Mon, 4 May 2020 23:00:43 +0000 (09:00 +1000)] 
 
doc comment 
 
Matt Joiner [Sun, 3 May 2020 09:31:20 +0000 (19:31 +1000)] 
 
Fix benchmark failing due to mainReadLoop returning io.EOF 
 
Matt Joiner [Sun, 3 May 2020 08:51:09 +0000 (18:51 +1000)] 
 
Pull fix to panic in pion/ice 
 
https://github.com/pion/ice/issues/182 
 
Matt Joiner [Sun, 3 May 2020 08:45:12 +0000 (18:45 +1000)] 
 
webtorrent: Synchronize access to PeerConnection.Close 
 
Matt Joiner [Sun, 3 May 2020 08:42:37 +0000 (18:42 +1000)] 
 
cmd/torrent: Output stats on termination, not just completion 
 
Matt Joiner [Sun, 3 May 2020 08:42:03 +0000 (18:42 +1000)] 
 
cmd/torrent: Add download -pex flag 
 
For testing with https://github.com/anacrolix/torrent/issues/402.