X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fcontrollers%2Ftracker.ts;h=4f756fc0a3e4a5e4193b49ea0d04739d9109a59c;hb=610d0be13b3d01f653ef269271dd667a57c85ef2;hp=2ae1cf86c5d979225929685b5a65c81c980413af;hpb=35f28e94c763370616d25d5820f4b9ef70cedca9;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/controllers/tracker.ts b/server/controllers/tracker.ts index 2ae1cf86c..4f756fc0a 100644 --- a/server/controllers/tracker.ts +++ b/server/controllers/tracker.ts @@ -6,7 +6,6 @@ import * as proxyAddr from 'proxy-addr' import { Server as WebSocketServer } from 'ws' import { TRACKER_RATE_LIMITS } from '../initializers/constants' import { VideoFileModel } from '../models/video/video-file' -import { parse } from 'url' import { VideoStreamingPlaylistModel } from '../models/video/video-streaming-playlist' import { CONFIG } from '../initializers/config' @@ -38,11 +37,11 @@ const trackerServer = new TrackerServer({ const key = ip + '-' + infoHash - peersIps[ ip ] = peersIps[ ip ] ? peersIps[ ip ] + 1 : 1 - peersIpInfoHash[ key ] = peersIpInfoHash[ key ] ? peersIpInfoHash[ key ] + 1 : 1 + peersIps[ip] = peersIps[ip] ? peersIps[ip] + 1 : 1 + peersIpInfoHash[key] = peersIpInfoHash[key] ? peersIpInfoHash[key] + 1 : 1 - if (CONFIG.TRACKER.REJECT_TOO_MANY_ANNOUNCES && peersIpInfoHash[ key ] > TRACKER_RATE_LIMITS.ANNOUNCES_PER_IP_PER_INFOHASH) { - return cb(new Error(`Too many requests (${peersIpInfoHash[ key ]} of ip ${ip} for torrent ${infoHash}`)) + if (CONFIG.TRACKER.REJECT_TOO_MANY_ANNOUNCES && peersIpInfoHash[key] > TRACKER_RATE_LIMITS.ANNOUNCES_PER_IP_PER_INFOHASH) { + return cb(new Error(`Too many requests (${peersIpInfoHash[key]} of ip ${ip} for torrent ${infoHash}`)) } try { @@ -87,10 +86,8 @@ function createWebsocketTrackerServer (app: express.Application) { trackerServer.onWebSocketConnection(ws) }) - server.on('upgrade', (request, socket, head) => { - const pathname = parse(request.url).pathname - - if (pathname === '/tracker/socket') { + server.on('upgrade', (request: express.Request, socket, head) => { + if (request.url === '/tracker/socket') { wss.handleUpgrade(request, socket, head, ws => wss.emit('connection', ws, request)) }