fix: mangled scrape infohashes (#486)

This commit is contained in:
Cas 2023-08-02 00:05:46 +02:00 committed by GitHub
parent b487809c85
commit 11cce83ddd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4,7 +4,7 @@ import clone from 'clone'
import Debug from 'debug'
import get from 'simple-get'
import Socks from 'socks'
import { bin2hex, hex2bin, arr2text } from 'uint8-util'
import { bin2hex, hex2bin, arr2text, text2arr, arr2hex } from 'uint8-util'
import common from '../common.js'
import Tracker from './tracker.js'
@ -244,12 +244,14 @@ class HTTPTracker extends Tracker {
return
}
keys.forEach(infoHash => {
keys.forEach(_infoHash => {
// TODO: optionally handle data.flags.min_request_interval
// (separate from announce interval)
const response = Object.assign(data[infoHash], {
const infoHash = _infoHash.length !== 20 ? arr2hex(text2arr(_infoHash)) : bin2hex(_infoHash)
const response = Object.assign(data[_infoHash], {
announce: this.announceUrl,
infoHash: bin2hex(infoHash)
infoHash
})
this.client.emit('scrape', response)
})