Matt Joiner
d24922dc09
Add support for non-IP-based networks
...
Includes a test with unix sockets. Exposes AddDialer, AddListener, and reworks Peer.
2020-02-20 16:47:37 +11:00
Matt Joiner
cb1bf0f413
goimports -local
2019-08-21 20:58:40 +10:00
Matt Joiner
fc4fab91f5
Switch to goimports import sorting
...
Used to use sortimports, but it's old, and goimports seems to have an opinion now.
2018-11-02 23:12:01 +11:00
Matt Joiner
cee8e3b9f9
Update external use of ClientConfig
2018-06-16 16:33:40 +10:00
Matt Joiner
b5df073217
Support different hosts for each network
...
CircleCI's localhost hostname doesn't resolve for IPv6.
2018-04-12 15:06:53 +10:00
Matt Joiner
319e57d1c6
Rework conns to/and allow multiple DHT servers
...
This will help with #229 , and IPv6 support.
2018-04-12 11:41:07 +10:00
Matt Joiner
2f616b9d8b
megacheck and staticcheck fixes
2018-01-06 16:53:40 +11:00
Matt Joiner
4ffcd9f1ce
cmd/torrentfs: Switch to tagflag and rename -torrentPath->-metainfoDir
2017-08-27 12:25:51 +10:00
Matt Joiner
401974dd8d
dht.ServerConfig.StartingNodes is now a function
...
Additionally cmd/torrentfs uses the global bootstrap nodes for its DHT. Aids with https://github.com/anacrolix/torrent/issues/180
2017-08-25 16:28:27 +10:00
Matt Joiner
0bd5bcd1a5
cmd/torrentfs: Ensure unmounting occurs for some errors
...
Restructured so other errors can be handled better too.
2016-08-02 11:19:41 +10:00
ctn
a3739fc47c
torrentfs: fix panic when testPeer is not specified
2016-07-26 23:30:40 +03:00
Matt Joiner
b714da8184
Torrent.AddPeers can't fail, so don't return an error
2016-05-12 12:26:09 +10:00
Matt Joiner
23ff66e300
cmd/...: Some package synopses
2015-04-06 23:04:18 +10:00
Matt Joiner
0fddc286e6
cmd/torrentfs: Tidy
2015-04-01 14:32:42 +11:00
Matt Joiner
8ba4a2e0f3
cmd/torrentfs: Check error creating client
...
This wouldn't have happened with exceptions ;)
2015-04-01 14:30:22 +11:00
Matt Joiner
3aa78763aa
Use rogpeppe's sortimports to fix this goimports ordering madness
2015-03-26 17:18:08 +11:00
Matt Joiner
842a32ae0c
Rewrite import paths for migration from Bitbucket
2015-03-20 16:37:44 +11:00
Matt Joiner
ad6ac3f2cd
More cleaning of public interface
2015-03-08 17:28:14 +11:00
Matt Joiner
bc940ae2c6
Remove unused code
2015-02-25 01:40:27 +11:00
Matt Joiner
40593a741e
Provide HTTP pprof via envpprof package
2015-01-29 14:51:23 +11:00
Matt Joiner
8a0be03eec
cmd/torrentfs: Tidy up flags, switch to default download strategy
2014-12-01 14:31:52 -06:00
Matt Joiner
82ca11faa9
Destroy the torrent FS on exit signals so ongoing syscalls don't block the unmount
2014-12-01 14:30:50 -06:00
Matt Joiner
ecf2639856
Add magnet-metainfo, tool to download magnet to torrent file
2014-09-25 18:05:52 +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
2b079e4a9d
Got a nice working algorithm for responsive download strategy
2014-08-24 03:08:11 +10:00
Matt Joiner
60df4e100c
Simplify dirwatch to scan the whole directory on changes
2014-08-22 17:31:03 +10:00
Matt Joiner
74f05db2ea
Clean up imports
2014-08-21 21:08:56 +10:00
Matt Joiner
40fd1d647c
Tidy up the torrent and DHT APIs
2014-08-21 18:07:06 +10:00
Matt Joiner
324fb94684
cmd/torrentfs: Missing listener on client
2014-07-24 13:45:49 +10:00
Matt Joiner
7cc22565ed
Abstract the status HTTP server into package util
2014-07-23 01:54:58 +10:00
Matt Joiner
6158b1f6ec
torrentfs: Match the active torrents to those found in the given directory
2014-07-23 01:54:11 +10:00
Matt Joiner
c96293a111
Can now download from magnet links
2014-06-28 19:38:31 +10:00
Matt Joiner
cf31465904
torrentfs: Write client status to HTTP port
2014-06-26 17:29:12 +10:00
Matt Joiner
809aabe531
cmd/torrentfs: Expose readahead bytes as a flag
2014-06-26 01:37:00 +10:00
Matt Joiner
110aa733a4
Make the readahead on ResponsiveDownloadStrategy customizable
2014-05-29 01:30:59 +10:00
Matt Joiner
04879b0002
Add Client.DownloadStrategy; fix priority of incomplete pieces
2014-05-21 17:40:54 +10:00
Matt Joiner
1aa1063863
Big visibility/doc clean-up, and extract mmap_span package
2014-04-09 02:36:05 +10:00
Matt Joiner
f1bf5a46a1
Check for asynchronous mount error after serving
2014-04-09 01:18:55 +10:00
Matt Joiner
fc653a307b
Break up torrentfs main(), it's too large
2014-04-09 01:18:29 +10:00
Matt Joiner
998dba34b8
Handle repeat SIGINT/SIGTERMs
...
Need to determine if there's a way to better interrupt the FS or if we have no control over that.
2014-04-09 01:17:53 +10:00
Matt Joiner
1415c0d824
goimports decided to reorganise imports
2014-04-08 19:39:34 +10:00
Matt Joiner
9ee83455cf
Various progress, particularly around the way data readiness is handled
2014-03-20 04:30:08 +11:00
Matt Joiner
2e81f914e7
Add a end-to-end test for torrentfs
...
Basic unchoking and uploading.
Accept incoming connections.
Break out torrentfs lib.
Fix and implement some protocol stuff.
2014-03-18 01:44:22 +11:00
Matt Joiner
c7ca000f25
Unit test for connection address comparison to avoid adding bootstrap peers when already present
2013-11-05 00:10:16 +11:00
Matt Joiner
fe5f8317d4
Reconnect to the torrentfs -testPeer at regular intervals if it's missing for any loaded torrents
2013-10-22 18:01:56 +11:00
Matt Joiner
d039436f55
Significant progress and improvements
...
Piece state is broken up into several dimensions.
Implement keep-alive in connection writer.
Lazily hash pieces, only as requested.
Replace client actor mechanism with a mutex.
Fix runConnection/connectionLoop/handshake misnomers.
Fix broken reading from partially complete pieces.
2013-10-21 01:07:01 +11:00
Matt Joiner
03b1af07cd
Always finish off partially downloaded pieces
2013-10-15 19:42:30 +11:00
Matt Joiner
0a5043ba69
Implement prioritizing of torrent data regions based on FS activity
2013-10-15 01:39:12 +11:00
Matt Joiner
5c0ff3ff5f
Torrent client publishes data ready information; torrentfs supports file reads
2013-10-13 23:16:21 +11:00
Matt Joiner
e1526b2863
Support browsing torrents in the filesystem
2013-10-07 06:00:35 +11:00