{"_id":"rainbowsocks","_rev":"13-070a5edac01a161ca5bb684cd9345282","name":"rainbowsocks","description":"SOCKS4a proxy client","dist-tags":{"latest":"0.1.3"},"versions":{"0.1.0":{"name":"rainbowsocks","version":"0.1.0","description":"SOCKS4a proxy client","main":"index.js","dependencies":{"debug":"~0.7.2"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":"","keywords":["SOCKS","SOCKS4a","proxy","tor","client","tunnel"],"author":{"name":"Ben Evans","email":"ben@bensbit.co.uk","url":"http://bensbit.co.uk"},"license":"MIT","_id":"rainbowsocks@0.1.0","dist":{"shasum":"58c9b2ba16f2d91629211037c31c9c3f2a554936","tarball":"https://registry.npmjs.org/rainbowsocks/-/rainbowsocks-0.1.0.tgz","integrity":"sha512-pfW6XK42i29Cm3Hjh2mdjz+FIgu1GiYWoGBaOFZo6otQmsIhrUGU9SVbucrfxEme5YdptQLl9wHDwNkwm24o5A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDl2WXCaH9foVlRFHx1M4I/UqioOrNOP7RDtb5cU0aMeQIgY7c/Fghmdn+7NKUArrfb2Qjhj7us32xe6S35Iyk+IAU="}]},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"bencevans","email":"ben@bensbit.co.uk"},"maintainers":[{"name":"bencevans","email":"ben@bensbit.co.uk"}]},"0.1.1":{"name":"rainbowsocks","version":"0.1.1","description":"SOCKS4a proxy client","main":"index.js","dependencies":{"debug":"~0.7.2"},"devDependencies":{},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/bencevans/node-rainbowsocks.git"},"keywords":["SOCKS","SOCKS4a","proxy","tor","client","tunnel"],"author":{"name":"Ben Evans","email":"ben@bensbit.co.uk","url":"http://bensbit.co.uk"},"license":"MIT","bugs":{"url":"https://github.com/bencevans/node-rainbowsocks/issues"},"_id":"rainbowsocks@0.1.1","dist":{"shasum":"ca7a460443398c6b87fa7e956b104e73b660444f","tarball":"https://registry.npmjs.org/rainbowsocks/-/rainbowsocks-0.1.1.tgz","integrity":"sha512-pOjVdjtagoGt6j0g0d2jKFyqeW8vq2GHkG/TL25DYbbYL78sZWmDE2mY/OMs30vi1l152FHGg+Gm9F8AWxUsJw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBiE/7elkquLSZ6AJD5yk5DsHP3iobUHgXYDIOcLMik4AiEAtjVX4LlVX88kDSJOpJj3P2bY7Xucyqfg21kfNmsxzUY="}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"bencevans","email":"ben@bensbit.co.uk"},"maintainers":[{"name":"bencevans","email":"ben@bensbit.co.uk"}]},"0.1.2":{"name":"rainbowsocks","version":"0.1.2","description":"SOCKS4a proxy client","main":"index.js","dependencies":{"debug":"~1.0.0"},"devDependencies":{"mocha":"~1.14.0"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/bencevans/node-rainbowsocks.git"},"keywords":["SOCKS","SOCKS4a","proxy","tor","client","tunnel"],"author":{"name":"Ben Evans","email":"ben@bensbit.co.uk","url":"http://bensbit.co.uk"},"license":"MIT","bugs":{"url":"https://github.com/bencevans/node-rainbowsocks/issues"},"_id":"rainbowsocks@0.1.2","dist":{"shasum":"eebddb330eac4f178d79eadb12ff851c84ab97e1","tarball":"https://registry.npmjs.org/rainbowsocks/-/rainbowsocks-0.1.2.tgz","integrity":"sha512-ylW21AEYm/YRXR7S2s7XTBDvz5ObF6RxgooFyZN/aTuUFdTvlC0ZXhsAAieZDdMky/oDIdB64T9vrTv6y9XMgg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICPhGQ6dLE7CR28L/4JmazwDN40PH4LA53mKBr2clt2UAiBRWJgWD2RZCsqPNAUQp4Xqninj4sBDil0XsfcbptSx3Q=="}]},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"bencevans","email":"ben@bensbit.co.uk"},"maintainers":[{"name":"bencevans","email":"ben@bensbit.co.uk"}]},"0.1.3":{"name":"rainbowsocks","version":"0.1.3","description":"SOCKS4a proxy client","main":"index.js","dependencies":{"debug":"~2.2.0"},"devDependencies":{"mocha":"~2.3.3"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git://github.com/bencevans/node-rainbowsocks.git"},"keywords":["SOCKS","SOCKS4a","proxy","tor","client","tunnel"],"author":{"name":"Ben Evans","email":"ben@bensbit.co.uk","url":"http://bensbit.co.uk"},"license":"MIT","gitHead":"024b65a5632c373aafd4c63e0ea228bb80bc754f","bugs":{"url":"https://github.com/bencevans/node-rainbowsocks/issues"},"homepage":"https://github.com/bencevans/node-rainbowsocks#readme","_id":"rainbowsocks@0.1.3","_shasum":"5894705efa5f2299f6e921ce950e4231bd123ad2","_from":".","_npmVersion":"3.3.5","_nodeVersion":"4.0.0","_npmUser":{"name":"bencevans","email":"ben@bensbit.co.uk"},"maintainers":[{"name":"bencevans","email":"ben@bensbit.co.uk"}],"dist":{"shasum":"5894705efa5f2299f6e921ce950e4231bd123ad2","tarball":"https://registry.npmjs.org/rainbowsocks/-/rainbowsocks-0.1.3.tgz","integrity":"sha512-/dfeXfgrecw1gCxmgfASMEYxAGLfztnXIwYoXTk4+I2qJY8oLmhKqlYZP7RTeuFPOQHQPCr0U0TbFG/k2fZgjg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHY+GhcTQcr4KqNh+69ccITr3qSH2DuYz+tQRVEIt2R+AiA4zjWernYLEhu6cz+EBjSW86FycA+A0e0NOzqzO8bgpA=="}]}}},"readme":"# rainbowsocks\n\nSOCKS4a client developed with rainbows\n\n## Install\n\n`npm install rainbowsocks`\n\n## API\n\n### var rainbowsocks = new RainbowSocks(port, [host])\n\n* port - Socks4a Proxy Port\n* host - SOCKS4a Proxy Host || 127.0.0.1\n\n#### rainbowsocks.connect(targetHost, targetPort, callback)\n\nPseudo function of rainbowsocks.request to establish a TCP/IP stream connection\n\n* targetHost - IP/Domain of desired destination\n* targetPort - Port of desired destination\n* callback - Called with signature of (err, socket)\n\n#### rainbowsocks.bind(targetHost, targetPort, callback)\n\nPseudo function of rainbowsocks.request to establish a TCP/IP port binding\n\n* targetHost - IP/Domain of desired destination\n* targetPort - Port of desired destination\n* callback - Called with signature of (err, socket)\n\n#### rainbowsocks.request(cmdBuf, domain, port, callback)\n\nSends a request to proxy to take a specific action\n\n* cmdBuf - 1 Octet Buffer containg SOCKS4a action code\n* targetHost - IP/Domain of desired destination\n* targetPort - Port of desired destination\n* callback - Called with signature of (err, socket)\n\n#### Event: `connect`\n\nConnected to proxy\n\n\n## Example\n\n```javascript\nvar RainbowSocks = require('rainbowsocks');\nvar sock = new RainbowSocks(8080, '192.168.0.45');\n\nsock.on('connect', function() {\n  console.log('Connected to proxy');\n  sock.connect('www.google.com', 80, function(err, socket) {\n    if(err) throw err;\n    console.log('Connected to www.google.com');\n    socket.write('GET / HTTP/1.1\\nHost: www.google.com\\n\\n');\n    socket.pipe(process.stdout);\n  });\n});\n```\n\n## Licence\n\nMIT","maintainers":[{"name":"bencevans","email":"ben@bensbit.co.uk"}],"time":{"modified":"2022-06-25T10:18:01.078Z","created":"2013-05-14T14:45:13.265Z","0.1.0":"2013-05-14T14:45:18.352Z","0.1.1":"2013-10-28T10:54:36.319Z","0.1.2":"2014-06-11T22:01:23.108Z","0.1.3":"2015-10-07T20:27:16.913Z"},"author":{"name":"Ben Evans","email":"ben@bensbit.co.uk","url":"http://bensbit.co.uk"},"repository":{"type":"git","url":"git://github.com/bencevans/node-rainbowsocks.git"},"users":{"undertuga":true},"keywords":["SOCKS","SOCKS4a","proxy","tor","client","tunnel"],"bugs":{"url":"https://github.com/bencevans/node-rainbowsocks/issues"},"license":"MIT","readmeFilename":"README.md","homepage":"https://github.com/bencevans/node-rainbowsocks#readme"}