File tree Expand file tree Collapse file tree 2 files changed +7
-18
lines changed
Expand file tree Collapse file tree 2 files changed +7
-18
lines changed Original file line number Diff line number Diff line change 11var debug = require ( 'debug' ) ( 'bittorrent-tracker' )
2- var string2compact = require ( 'string2compact' )
32
43module . exports = Swarm
54
@@ -85,9 +84,7 @@ Swarm.prototype.announce = function (params, cb) {
8584 if ( params . left === 0 && peer ) peer . complete = true
8685
8786 // send peers
88- var peers = params . compact === 1
89- ? self . _getPeersCompact ( params . numwant )
90- : self . _getPeers ( params . numwant )
87+ var peers = self . _getPeers ( params . numwant )
9188
9289 cb ( null , {
9390 complete : this . complete ,
@@ -111,20 +108,6 @@ Swarm.prototype._getPeers = function (numwant) {
111108 return peers
112109}
113110
114- Swarm . prototype . _getPeersCompact = function ( numwant ) {
115- var peers = [ ]
116-
117- for ( var peerId in this . peers ) {
118- if ( peers . length >= numwant ) break
119- var peer = this . peers [ peerId ]
120- if ( ! peer ) continue // ignore null values
121- peers . push ( peer . ip + ':' + peer . port )
122- }
123-
124- return string2compact ( peers )
125- }
126-
127-
128111Swarm . prototype . scrape = function ( infoHash , params , cb ) {
129112 cb ( null , {
130113 complete : this . complete ,
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ var inherits = require('inherits')
99var ipLib = require ( 'ip' )
1010var portfinder = require ( 'portfinder' )
1111var series = require ( 'run-series' )
12+ var string2compact = require ( 'string2compact' )
1213
1314var common = require ( './lib/common' )
1415var Swarm = require ( './lib/swarm' )
@@ -216,6 +217,11 @@ Server.prototype._onAnnounce = function (params, cb) {
216217 if ( response ) {
217218 if ( ! response . action ) response . action = common . ACTIONS . ANNOUNCE
218219 if ( ! response . intervalMs ) response . intervalMs = self . _intervalMs
220+ if ( params . compact === 1 ) {
221+ response . peers = string2compact ( response . peers . map ( function ( peer ) {
222+ return peer . ip + ':' + peer . port // TODO: ipv6 brackets
223+ } ) )
224+ }
219225 }
220226 cb ( err , response )
221227 } )
You can’t perform that action at this time.
0 commit comments