Convert BitTorrent's compact ip:port compact binary format to 'ip:port' string
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
.gitignore
.travis.yml
README.md
index.js
package.json
test.js

README.md

compact2string

Convert bittorrent's compact ip/host binary returned by Trackers to 'hostname:port' string.

Build Status Coverage Status Dependency Status

browser support

Need the reverse of this? Checkout https://github.com/feross/string2compact

Installation

npm install compact2string

Usage

Single compact2string

var compact2string = require("compact2string");
var Buffer = require("buffer").Buffer;
var ipport = compact2string(new Buffer("0A0A0A05FF80", "hex"));
console.log(ipport);

=> "10.10.10.5:65408"

ipport = compact2string(new Buffer("2a03288021109f07faceb00c000000010050", "hex"));
console.log(ipport);

=> "[2a03:2880:2110:9f07:face:b00c::1]:80"

Multiple in same buffer

var hostports = compact2string.multi(new Buffer("0A0A0A05008064383a636f6d", "hex"));
console.log(hostports);

=> [ '10.10.10.5:128', '100.56.58.99:28525' ]

IPv6 version: compact2string.multi6()

Licence

(MIT Licence)