Yoann Ciabaud
fa0b3e4535
Double default for webrtc trackers (now Chrome 51 is released) #152
2016-06-07 18:50:06 +02:00
Feross Aboukhadijeh
2959c2cea6
Use safe-buffer
...
Use the new Buffer APIs from Node v6 for added security. For example,
`Buffer.from()` will throw if passed a number, unlike `Buffer()` which
allocated UNINITIALIZED memory in that case.
Use the `safe-buffer` package for compatibility with previous versions
of
Node.js, including v4.x, v0.12, and v0.10.
https://github.com/feross/safe-buffer
2016-05-29 23:12:23 -07:00
Feross Aboukhadijeh
4431ae14ab
Ensure client.destroy() callback is called when websocket pool used
...
Fixes #141
2016-03-31 21:49:18 -07:00
Feross Aboukhadijeh
2966165a8f
BREAKING: Client() takes single opts object now
...
To use the client, you used to pass in four arguments:
`new Client(peerId, port, parsedTorrent, opts)`
Now, passing in the torrent is no longer required, just the `announce`
and `infoHash` properties. This decouples this package from
`parse-torrent`.
All options get passed in together now:
new Client({
infoHash: '', // hex string or Buffer
peerId: '', // hex string or Buffer
announce: [], // list of tracker server urls
port: 6881 // torrent client port, (in browser, optional)
})
All the normal optional arguments (rtcConfig, wrtc, etc.) can still be
passed in with the rest of these options.
Fixes #118 . Fixes #115 .
Added ws tests for scrape.
2016-03-31 21:37:51 -07:00
Feross Aboukhadijeh
c92b1714db
Remove all Function.bind calls
...
For https://github.com/feross/webtorrent-desktop/issues/256
2016-03-28 23:38:23 -07:00
Feross Aboukhadijeh
721a7bea7c
make server and client always send { action: 'announce' }
2016-03-23 22:04:07 -07:00
Feross Aboukhadijeh
4159d35cfc
ws client: drop support for old tracker servers
...
Old tracker server versions don’t send data.action === ‘announce’
2016-03-23 21:26:52 -07:00
Feross Aboukhadijeh
89b9fb7f40
prevent two reconnect timers for running at same time
2016-03-18 23:14:48 -07:00
Feross Aboukhadijeh
49025c1320
reset self.peers = {} after destroy
...
Supersedes PR #135
2016-03-18 23:12:54 -07:00
Feross Aboukhadijeh
db868cac78
guard against self.socket being null
2016-03-18 23:12:28 -07:00
Feross Aboukhadijeh
51e2439333
Lower generated offer number to 5
...
Temporary mitigation for leak issue
2016-03-16 18:06:42 -07:00
Feross Aboukhadijeh
c181020937
client: Do not include WebRTC offers with 'stopped' announce event ( fix #132 )
2016-03-16 18:04:56 -07:00
Feross Aboukhadijeh
2c23ae7f00
client: websocket: Unref peer.trackerTimeout
2016-03-16 17:59:01 -07:00
Feross Aboukhadijeh
d079171044
Fixes for PR #129
2016-03-16 17:58:47 -07:00
Yoann Ciabaud
5127aad052
Make electron webrtc working in headless and stabdard fix
2016-03-16 17:33:07 -07:00
Yoann Ciabaud
d4c34c344e
Destroy peers and tracker timeouts on destroy
2016-03-16 17:33:07 -07:00
Yoann Ciabaud
3252070328
Clear reconnect timeout on destroy
2016-03-16 17:33:06 -07:00
Yoann Ciabaud
35e6eeaef2
Close the websocket only when no one is using it
2016-03-16 17:33:06 -07:00
Feross Aboukhadijeh
5d4cf75e0a
Merge pull request #123 from DiegoRBaquero/patch-1
...
Reconnect timeout improvement
2016-03-15 21:41:01 -07:00
Diego Rodríguez Baquero
050d95ac72
Variance and higher max
2016-03-16 01:14:24 -03:00
Feross Aboukhadijeh
8c01cb7268
do not throw and crash client
2016-03-15 20:59:04 -07:00
Feross Aboukhadijeh
ba4a52d2d1
Fixes for PR #125
2016-03-15 20:06:39 -07:00
Feross Aboukhadijeh
3d753ab805
Merge pull request #125 from yciabaud/ws-scrape
...
Scrape implementation for websocket. Issue #116
2016-03-15 19:39:59 -07:00
Feross Aboukhadijeh
6df64ffe06
Fixes for PR #126
2016-03-14 19:16:00 -07:00
Autarc
09e2b55e42
invoke callbacks of destroyed trackers
2016-03-14 17:13:34 +01:00
Yoann Ciabaud
39507bf8be
Scrape implementation for websocket. Issue #116
2016-03-14 00:36:51 +01:00
Diego Rodríguez Baquero
529203ea40
Max reconnect time
2016-03-11 15:26:55 -03:00
Diego Rodríguez Baquero
8e2dbdc576
Reconnect timeout increase lineally
...
Minimum set at 15 seconds, each retry adds 30 seconds.
2016-03-11 04:12:09 -03:00
Feross Aboukhadijeh
0585d8b18a
use delete obj[key]
instead of obj[key] = null
2016-03-10 21:26:28 -08:00
Feross Aboukhadijeh
a82f5c9878
websocket client: fix: emit 'update' when data.complete is 0
2016-02-29 14:48:59 -08:00
Feross Aboukhadijeh
b34fc100a1
fixes for PR #107
2016-02-29 12:34:06 -08:00
Feross Aboukhadijeh
1db2cb8736
Merge pull request #107 from yciabaud/announce-extension
...
Provide a way to give extra data on announce
2016-02-29 10:19:14 -08:00
Feross Aboukhadijeh
ad580c3d7c
fixes for simple-websocket@4
2016-02-15 19:38:50 -08:00
Feross Aboukhadijeh
1e919c44cb
changes for simple-get 2.0.0
2016-02-14 00:31:44 -08:00
Feross Aboukhadijeh
ab042bd2f6
remove old todo
2016-02-05 14:06:45 -08:00
Yoann Ciabaud
f1669a506e
Provide a way to give updated announce opts via callback on setInterval
2016-02-03 08:28:38 +01:00
Feross Aboukhadijeh
8d735bf97d
more cleanup
2015-12-05 03:06:54 -08:00
Feross Aboukhadijeh
3f1c9644ec
50s offer timeout
2015-12-05 03:06:46 -08:00
Feross Aboukhadijeh
5687a72fdb
raise number of offers created to 10 again
2015-12-05 01:01:23 -08:00
Feross Aboukhadijeh
fe2ac4ac67
cleanup peers that never get an answer
...
attempt to fix https://github.com/feross/webtorrent/issues/502
2015-12-05 01:01:04 -08:00
Feross Aboukhadijeh
208ae5d911
calling tracker.setInterval() should override current interval
2015-12-04 23:59:11 -08:00
Feross Aboukhadijeh
582ac990a4
webtorrent perf: create 5 offers at a time
2015-12-04 23:38:50 -08:00
Feross Aboukhadijeh
177171b82c
expose client.peerId
and client.peerIdBuffer
2015-12-02 22:33:15 -08:00
Feross Aboukhadijeh
d344537766
expose client.infoHash and client.infoHashBuffer
2015-12-02 15:46:41 -08:00
Feross Aboukhadijeh
38a80093a1
Fix UDP scrape returning invalid info hashes ( Fix #97 )
2015-12-02 15:35:42 -08:00
Feross Aboukhadijeh
e9322a32d6
code style
2015-12-02 15:31:20 -08:00
Aram Drevekenin
ab3482fc4f
Changed infoHash to always be hex
2015-11-29 16:02:29 +02:00
Feross Aboukhadijeh
abbb076484
client: interval.unref()
2015-08-24 00:11:48 +02:00
Feross Aboukhadijeh
6ef2d98b07
client: websocket-tracker: announce on reconnect
...
when coming back from being offline, or losing the websocket
connection, announcing immediately means peers will be found faster
(for us and remote peers who may be sitting at 0 peers)
2015-07-29 03:56:22 -07:00
Feross Aboukhadijeh
4128604301
remove socket from pool on destroy
2015-07-29 03:21:31 -07:00