Feross Aboukhadijeh
c75ca05479
swarm.announce() should always call callback
...
It’s important that calls to swarm.announce() always calls the callback
that it’s passed otherwise http announce/scrape requests
will hang (because res.end() is never called).
Also, since this swarm implementation is in-memory, we can get rid of
the callbacks to internal functions.
Lastly, fixed references to non-existent start() function.
2014-12-11 13:43:11 -08:00
Feross Aboukhadijeh
edb5c6e854
code style
2014-12-11 12:53:39 -08:00
Feross Aboukhadijeh
20cb18272e
Merge pull request #45 from feross/refactor
...
Refactor the server-side code
2014-12-11 12:38:32 -08:00
Astro
c97e4236f4
server parseHttpRequest(): simplify info_hash checking
2014-12-11 17:07:37 +01:00
Astro
217bcf7de5
server _onUdpRequest(): don't check empty params, errors will be thrown now
2014-12-11 16:39:10 +01:00
Astro
7a8f9a779f
server _onHttpRequest(): don't wrap errors in errors
2014-12-11 16:24:33 +01:00
Astro
74d9139049
server _onHttpRequest(): ensure non-empty params
2014-12-11 16:22:17 +01:00
Astro
e64fecc063
parseUdpRequest(): throw on invalid packet
2014-12-11 16:19:08 +01:00
Astro
7a417a591d
parseUdpRequest(): fix params.ip
2014-12-11 16:11:12 +01:00
Astro
e234f14d56
server swarm: split out announce events
2014-12-10 17:01:34 +01:00
Astro
8439300df9
server: unify compact serialization
2014-12-10 16:51:35 +01:00
Astro
b72960dee3
server: split out Swarm
2014-12-10 16:47:41 +01:00
Astro
1c754a2f49
move parseHttpRequest(), parseUdpRequest() to lib/parse_{http,udp}.js
2014-12-10 00:44:45 +01:00
Astro
aea3c44c08
server: expose getSwarm()
...
drops capability to pass a *hex* infoHash
2014-12-09 23:18:47 +01:00
Astro
fee289b074
server: rm superfluous action fields
2014-12-09 23:18:35 +01:00
Astro
366b49bf06
server: split out _onRequest() et al
2014-12-09 02:35:05 +01:00
Astro
85be917d51
server: replace request string by action number
2014-12-09 00:29:02 +01:00
Astro
0bc88bcf22
server: split out parseUdpRequest()
2014-12-09 00:22:36 +01:00
Astro
037a53accb
server: split out parseHttpRequest()
2014-12-08 23:42:05 +01:00
Astro
28189a0b12
server tests: fix serverType in announceUrl
2014-12-05 02:41:57 +01:00
Astro
f77015c046
server tests: run udp tests with udp
2014-12-04 17:38:03 +01:00
Feross Aboukhadijeh
8ef041f4f8
2.9.1
2014-11-27 17:32:38 +08:00
Feross Aboukhadijeh
84f6107345
check for domain names in data.peers6
2014-11-27 17:31:49 +08:00
Feross Aboukhadijeh
0b831d2fde
actually iterate over ipv6 peers
2014-11-27 17:31:33 +08:00
Feross Aboukhadijeh
0c709523df
2.9.0
2014-11-26 20:21:49 +08:00
Feross Aboukhadijeh
6db96d6125
bn.js@0.15 & bump dev-deps
2014-11-26 20:20:23 +08:00
Feross Aboukhadijeh
d7c4af4ce8
handle case where server returns ip in square brackets
2014-11-26 20:18:56 +08:00
Feross Aboukhadijeh
b079bad35a
code style
2014-11-26 20:18:56 +08:00
Feross Aboukhadijeh
32b622aa51
cleanup tests
2014-11-26 20:18:56 +08:00
Astro
1ca387f2fe
client IPv6 support [BEP-7]
2014-11-26 20:18:56 +08:00
Feross Aboukhadijeh
54b8d7112a
2.8.2
2014-11-26 17:40:59 +08:00
Feross Aboukhadijeh
2824f16c49
don't assume peer var will exist
2014-11-26 17:40:34 +08:00
Feross Aboukhadijeh
20d08f6d03
2.8.1
2014-11-26 16:22:12 +08:00
Feross Aboukhadijeh
deee4e1d7d
fix client handling to support http peers
non-compact response
2014-11-26 16:21:45 +08:00
Astro
4f1ea32f35
client _handleResponse: allow string form of peer.ip
2014-11-26 16:20:14 +08:00
Feross Aboukhadijeh
7376843920
2.8.0
2014-11-26 15:27:31 +08:00
Feross Aboukhadijeh
026f2c2de0
Recover from unexpected events better
...
When you restart the tracker server, all peers it's tracking are
discarded. Then, clients that are already running will continue to send
`update` events, but the tracker throws them away because it was
expected to get a `start` event first.
This should only be a warning, and not a fatal error. I just made the
following changes:
- unexpected `started` event (for peer already in swarm) is treated as
an `update`
- unexpected `stopped` event is discarded
- unexpected `completed` event is treated as a `start`
- unexpected `update` event (from peer not in swarm) is treated as
`start`
Fixes #42
2014-11-26 15:27:02 +08:00
Feross Aboukhadijeh
b44715d37a
2.7.0
2014-10-06 23:14:35 -07:00
Feross Aboukhadijeh
07850cdc13
Fixes for PR #39
...
- emit 'warning' instead of 'error' because it's not a fatal error,
just a bad tracker response.
- made the try block more concise so it only catches the errors from
`string2compact`
2014-10-06 23:14:09 -07:00
Feross Aboukhadijeh
7e081f88d1
Merge pull request #39 from Theadd/master
...
handle .* IP/PORTs (6 bytes) error
2014-10-06 23:10:27 -07:00
Theadd
e898ef45f6
handle .* IP/PORTs (6 bytes) error
2014-09-24 18:03:30 +02:00
Feross Aboukhadijeh
a357dd2957
2.6.1
2014-09-16 19:58:24 -07:00
Feross Aboukhadijeh
1e354c8f22
debug@2 and bn.js@0.14
2014-09-16 19:58:05 -07:00
Feross Aboukhadijeh
b956132918
update dep
2014-09-09 09:39:49 +01:00
Feross Aboukhadijeh
0edafda089
2.6.0
2014-08-18 01:40:52 -07:00
Feross Aboukhadijeh
61cfe0afa6
don't emit 'error' for non-fatal errors
2014-08-18 01:40:30 -07:00
Feross Aboukhadijeh
1bcb3e4097
2.5.1
2014-08-17 20:56:39 -07:00
Feross Aboukhadijeh
48dcab8420
don't crash if torrent.announce is undefined
2014-08-17 20:56:11 -07:00
Feross Aboukhadijeh
8ba742eed4
whitespace
2014-08-17 01:41:09 -07:00
Feross Aboukhadijeh
06eab6871d
2.5.0
2014-08-16 19:06:23 -07:00