Commit Graph

3457 Commits

Author SHA1 Message Date
Raphaël Thériault 455913c752
pass TrackerDialContext to webtorrent trackers (#785) 2022-11-14 19:20:08 +11:00
Raphaël Thériault 8e53dbaeb8
support providing a DialContext for the http client (#786) 2022-11-14 19:19:02 +11:00
pk de4c16bbe9
Retrive file via HTTP URL in `metainfo.go` (#778) 2022-09-26 10:01:51 +10:00
Matt Joiner e81c6569af
Run default DHT with table maintainer 2022-09-23 23:29:19 +10:00
Matt Joiner c8ccd1c1b0
Update github.com/anacrolix/dht/v2 2022-09-18 11:26:58 +10:00
Matt Joiner 648acc0120
Merge branch 'webrtc-conn-leak' 2022-08-31 11:09:47 +10:00
Matt Joiner e931f0c113
Merge branch 'bargle' 2022-08-31 11:06:00 +10:00
Alex Sharov 61302332cf
Win limit amount of peers per udp packet (#771) 2022-08-08 15:38:19 +10:00
Alex Sharov caa9400c52
use rLock where can, part2 (#767) 2022-07-13 20:04:03 +10:00
Alex Sharov 67b55c222b
use RLock where can (#766) 2022-07-13 20:03:42 +10:00
Matt Joiner 35834100cc
cmd/torrent: Restore the announce and bencode subcommands 2022-07-13 11:34:02 +10:00
Matt Joiner 309a900b9a
Close data channel on offer init errors 2022-07-12 16:15:51 +10:00
Matt Joiner 3aa2320442
Also close created data channels when cleaning up webrtc conns 2022-07-12 16:15:50 +10:00
Matt Joiner cf58c53ad4
Support announcing to webtorrent trackers without offers 2022-07-12 16:15:50 +10:00
Matt Joiner 9694c66b36
webtorrent: Create data channel earlier per webrtc examples 2022-07-12 16:15:50 +10:00
Matt Joiner 0a4c416881
Trace some webrtcNetConn use 2022-07-12 16:15:50 +10:00
Matt Joiner 5d263855d9
cmd/torrent: Time and log TracerProvider.Shutdown 2022-07-12 16:15:50 +10:00
Matt Joiner d9ca26dabb
Close detached data channel and end span on webrtc conn close 2022-07-12 16:15:50 +10:00
Matt Joiner 660d4dfba6
cmd/torrent: Use tracing SDK 2022-07-12 16:15:49 +10:00
Matt Joiner c17018d04e
Add tracing to webtorrent webrtc resources 2022-07-12 16:15:49 +10:00
Matt Joiner 43b2d3ee21
cmd/torrent serve: Support multiple file paths 2022-07-12 16:12:02 +10:00
Matt Joiner 240b42fd56
cmd/torrent create: Add piece length and private options 2022-07-12 16:12:02 +10:00
Matt Joiner fe4c930bf5
Restore torrent metainfo pprint 2022-07-12 16:12:02 +10:00
Matt Joiner 0bf75b8fa8
Move cmd/torrent-create into torrent create 2022-07-12 16:12:01 +10:00
Matt Joiner a87f321f37
Update anacrolix/bargle 2022-07-12 16:00:52 +10:00
Matt Joiner 2c5f9c41df
Update bargle use 2022-07-12 16:00:52 +10:00
Matt Joiner 5c2f1ed307
Track latest bargle 2022-07-12 16:00:51 +10:00
Matt Joiner a5877a938c
Fix webrtcNetAddr.String for IPv6
(cherry picked from commit d37354e6743e905d42689e88068058dd45e5be43)
2022-07-12 15:54:36 +10:00
Matt Joiner 214fe6b93c
Use webrtc local addr for webrtc conn peer priority
WebRTC conns are providing the correct IP for peer priority calculations, so use that instead of trying to guess (which doesn't work if there are no regular conn listeners attached to the Client.

(cherry picked from commit e86bb5fee3958dc90a3d012469b1352005d6c9ad)
2022-07-12 15:52:03 +10:00
Matt Joiner aedf2583cc
Remove relevant webtorrent offers when closing Torrent
(cherry picked from commit 73a0b5e4d2fe679aac31d87171537c70f91f46ee)
2022-07-12 15:49:58 +10:00
Craig Campbell f120b93e1c
Add ability to set DialContext/ListenPacket for tracker announcements (#760)
This is useful if you want to use a custom dialer to proxy requests via
an external server since the HTTPProxy can only be used with tcp
trackers and not udp.
2022-07-07 15:51:58 +10:00
Alex Sharov 75cc4e98d4
Do torrent storage flush on piece completion (#755) 2022-07-07 15:46:27 +10:00
Matt Joiner b58aec9ca8
go get -u ./... && go mod tidy 2022-07-03 21:56:42 +10:00
Matt Joiner ae2e4bf7e7
Use metainfo.ChoosePieceLength from more locations 2022-07-03 21:47:16 +10:00
Matt Joiner 12279621e4
Check that incoming peer request chunk lengths don't exceed the upload rate limiter burst size
Should fix #759.
2022-06-25 23:16:58 +10:00
Matt Joiner ae4eb8569b
Add exatorrent and finish tidying downstream projects 2022-06-25 17:28:23 +10:00
Marco Vidonis 8f711b633f
optimise torrent piece length (#758) 2022-06-23 22:44:06 +10:00
Matt Joiner 05cd58de85
Add Client.PublicIPs 2022-06-22 23:59:18 +10:00
Matt Joiner b232729e0c
Fix typo 2022-06-22 14:19:26 +10:00
FIGBERT fcfc5bb923
Update tidwall/btree (0.7.2 -> 1.3.1) (#757) 2022-06-22 14:16:20 +10:00
Matt Joiner 32cdaf4ada
Update anacrolix/generics 2022-06-21 08:51:33 +10:00
Matt Joiner 58200a304c
Update downstream projects 2022-06-21 08:34:38 +10:00
Matt Joiner 585e062804
torrent serve: Add some reasonable tracker defaults 2022-06-15 14:23:18 +10:00
Matt Joiner f527180873
Bump up the local client reqq
This seems to boost upload speeds to Transmission to 16MB/s. It may require a corresponding amount of buffering in memory, that could require work later.
2022-06-15 14:22:17 +10:00
Matt Joiner 3c54eadf28
torrent serve: Print magnet link 2022-06-14 18:23:00 +10:00
Matt Joiner 0158a830f5
Add comments for #752 and #753 2022-06-14 16:02:43 +10:00
Matt Joiner 1a3508bcbd
Update github.com/frankban/quicktest 2022-06-14 16:02:03 +10:00
Matt Joiner 54665f160a
Rework peer connection writer to keep individual writes smaller
This fixes an issue with WebRTC when the write buffers get too big.
2022-06-14 16:01:47 +10:00
Matt Joiner caf35cd9b8
internal/testutil.Info: Support multi-file Torrents 2022-06-14 16:01:47 +10:00
Matt Joiner 65896d4cec
ExportStatusWriter: take testing.TB instead of *testing.T 2022-06-14 16:01:47 +10:00