mirror of
https://github.com/webtorrent/bittorrent-tracker.git
synced 2025-02-22 05:09:01 +00:00
parent
8e7a43493b
commit
604880b87b
@ -143,7 +143,7 @@ server.on('listening', function () {
|
|||||||
})
|
})
|
||||||
|
|
||||||
// start tracker server listening! Use 0 to listen on a random free port.
|
// start tracker server listening! Use 0 to listen on a random free port.
|
||||||
server.listen(port)
|
server.listen(port, hostname, onlistening)
|
||||||
|
|
||||||
// listen for individual tracker messages from peers:
|
// listen for individual tracker messages from peers:
|
||||||
|
|
||||||
|
25
server.js
25
server.js
@ -99,23 +99,24 @@ Server.prototype._onError = function (err) {
|
|||||||
self.emit('error', err)
|
self.emit('error', err)
|
||||||
}
|
}
|
||||||
|
|
||||||
Server.prototype.listen = function (port, onlistening) {
|
Server.prototype.listen = function (/* port, hostname, onlistening */) {
|
||||||
var self = this
|
var self = this
|
||||||
if (typeof port === 'function') {
|
|
||||||
onlistening = port
|
|
||||||
port = undefined
|
|
||||||
}
|
|
||||||
if (!port) port = 0
|
|
||||||
if (self.listening) throw new Error('server already listening')
|
|
||||||
debug('listen %o', port)
|
|
||||||
|
|
||||||
if (onlistening) self.once('listening', onlistening)
|
var lastArg = arguments[arguments.length - 1]
|
||||||
|
if (typeof lastArg === 'function') self.once('listening', lastArg)
|
||||||
|
|
||||||
|
var port = toNumber(arguments[0]) || arguments[0] || 0
|
||||||
|
var hostname = typeof arguments[1] !== 'function' ? arguments[1] : undefined
|
||||||
|
|
||||||
|
if (self.listening) throw new Error('server already listening')
|
||||||
|
|
||||||
|
debug('listen %o %s', port, hostname)
|
||||||
|
|
||||||
// ATTENTION:
|
// ATTENTION:
|
||||||
// binding to :: only receives IPv4 connections if the bindv6only
|
// binding to :: only receives IPv4 connections if the bindv6only
|
||||||
// sysctl is set 0, which is the default on many operating systems.
|
// sysctl is set 0, which is the default on many operating systems.
|
||||||
self.http && self.http.listen(port.http || port, '::')
|
self.http && self.http.listen(port.http || port, hostname || '::')
|
||||||
self.udp && self.udp.bind(port.udp || port)
|
self.udp && self.udp.bind(port.udp || port, hostname)
|
||||||
}
|
}
|
||||||
|
|
||||||
Server.prototype.close = function (cb) {
|
Server.prototype.close = function (cb) {
|
||||||
@ -485,3 +486,5 @@ Server.prototype._onWebSocketError = function (socket, err) {
|
|||||||
self.emit('warning', err)
|
self.emit('warning', err)
|
||||||
self._onWebSocketClose(socket)
|
self._onWebSocketClose(socket)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function toNumber (x) { return (x = Number(x)) >= 0 ? x : false }
|
||||||
|
Loading…
Reference in New Issue
Block a user