{"_id":"portscanner","_rev":"241998","name":"portscanner","description":"Asynchronous port scanner for Node.js","dist-tags":{"latest":"2.2.0"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"time":{"modified":"2021-06-03T15:58:53.000Z","created":"2011-08-30T02:29:59.233Z","2.2.0":"2018-05-14T05:55:47.286Z","2.1.1":"2016-11-24T07:35:22.163Z","2.1.0":"2016-11-22T09:57:16.691Z","1.2.0":"2016-11-22T00:41:33.752Z","1.1.1":"2016-11-21T21:49:19.630Z","1.1.0":"2016-11-19T20:39:19.599Z","1.0.0":"2014-06-22T01:59:41.428Z","0.2.3":"2014-04-10T19:57:52.758Z","0.2.2":"2014-02-06T02:58:59.225Z","0.2.1":"2014-02-05T21:32:09.910Z","0.2.0":"2014-01-07T15:46:01.582Z","0.1.3":"2012-06-20T04:24:23.853Z","0.1.2":"2011-11-30T03:47:07.051Z","0.1.1":"2011-11-18T00:18:16.963Z","0.1.0":"2011-08-30T02:29:59.233Z"},"users":{"zhangyaochun":true,"mr1024":true,"matteo.collina":true,"anhulife":true,"potnox":true,"arnoldstoba":true,"jasonwang1888":true,"aprilchen":true,"temasm":true,"tsrisudh":true,"craigpatten":true,"abdihaikal":true,"jeremyscalpello":true,"dburdese":true,"nithincspnr":true,"yehudag":true,"yuch4n":true},"author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"versions":{"2.2.0":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","scripts":{"coverage":"nyc npm run test","test":"ava","lint":"standard"},"keywords":["portscanner","port","scanner","checker","status"],"version":"2.2.0","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"^2.6.0","is-number-like":"^1.0.3"},"devDependencies":{"ava":"^0.4.2","nyc":"^11.3.0","eslint":"^3.10.2","eslint-config-standard":"^6.2.1","standard":"^8.5.0"},"engines":{"node":">=0.4","npm":">=1.0.0"},"license":"MIT","gitHead":"692d7c9b9b9e68cadc9b72ac49d66d00e769e7e0","_id":"portscanner@2.2.0","_npmVersion":"6.0.0","_nodeVersion":"10.0.0","_npmUser":{"name":"laggingreflex","email":"laggingreflex@gmail.com"},"dist":{"shasum":"6059189b3efa0965c9d96a56b958eb9508411cf1","size":6824,"noattachment":false,"key":"/portscanner/-/portscanner-2.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-2.2.0.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/portscanner_2.2.0_1526277347094_0.4116538007015289"},"_hasShrinkwrap":false,"publish_time":1526277347286,"_cnpm_publish_time":1526277347286},"2.1.1":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","scripts":{"test":"ava","lint":"standard"},"keywords":["portscanner","port","scanner","checker","status"],"version":"2.1.1","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"1.5.2","is-number-like":"^1.0.3"},"devDependencies":{"ava":"^0.4.2","eslint":"^3.10.2","eslint-config-standard":"^6.2.1","standard":"^8.5.0"},"engines":{"node":">=0.4","npm":">=1.0.0"},"license":"MIT","gitHead":"47889e0c6a4ef449420e90eb59a5100a11eab6db","_id":"portscanner@2.1.1","_shasum":"eabb409e4de24950f5a2a516d35ae769343fbb96","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.0.0","_npmUser":{"name":"laggingreflex","email":"laggingreflex@gmail.com"},"dist":{"shasum":"eabb409e4de24950f5a2a516d35ae769343fbb96","size":6363,"noattachment":false,"key":"/portscanner/-/portscanner-2.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-2.1.1.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/portscanner-2.1.1.tgz_1479972921921_0.4666651152074337"},"publish_time":1479972922163,"_cnpm_publish_time":1479972922163,"_hasShrinkwrap":false},"2.1.0":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","scripts":{"test":"ava","lint":"standard"},"keywords":["portscanner","port","scanner","checker","status"],"version":"2.1.0","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"1.5.2","is-number-like":"^1.0.3"},"devDependencies":{"ava":"^0.4.2","eslint":"^3.10.2","eslint-config-standard":"^6.2.1","standard":"^8.5.0"},"engines":{"node":">=0.4","npm":">=1.0.0"},"license":"MIT","gitHead":"99177da93a21e576db8b4706af415a9c041d32a0","_id":"portscanner@2.1.0","_shasum":"0b4de61e033c3a830976813040c5b234d394e026","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.0.0","_npmUser":{"name":"laggingreflex","email":"laggingreflex@gmail.com"},"dist":{"shasum":"0b4de61e033c3a830976813040c5b234d394e026","size":6363,"noattachment":false,"key":"/portscanner/-/portscanner-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-2.1.0.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/portscanner-2.1.0.tgz_1479808634835_0.5544112997595221"},"publish_time":1479808636691,"_cnpm_publish_time":1479808636691,"_hasShrinkwrap":false},"1.2.0":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","scripts":{"test":"ava"},"keywords":["portscanner","port","scanner","checker","status"],"version":"1.2.0","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"1.5.2"},"devDependencies":{"ava":"^0.4.2"},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"gitHead":"3f6190551f88ad90be3c9edfab1152965db6eb12","_id":"portscanner@1.2.0","_shasum":"b14bbda257d14c310fa9cc09682af02d40961802","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.0.0","_npmUser":{"name":"laggingreflex","email":"laggingreflex@gmail.com"},"dist":{"shasum":"b14bbda257d14c310fa9cc09682af02d40961802","size":3715,"noattachment":false,"key":"/portscanner/-/portscanner-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-1.2.0.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/portscanner-1.2.0.tgz_1479775292093_0.7143314110580832"},"publish_time":1479775293752,"_cnpm_publish_time":1479775293752,"_hasShrinkwrap":false},"1.1.1":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"1.1.1","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"gitHead":"62d330a097cd3de4ea7b2d867d77666208c447a7","_id":"portscanner@1.1.1","scripts":{},"_shasum":"9f8bf97f42619cf0567159212a1d1ab31b7f925a","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.0.0","_npmUser":{"name":"laggingreflex","email":"laggingreflex@gmail.com"},"dist":{"shasum":"9f8bf97f42619cf0567159212a1d1ab31b7f925a","size":3163,"noattachment":false,"key":"/portscanner/-/portscanner-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-1.1.1.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/portscanner-1.1.1.tgz_1479764959400_0.9059051466174424"},"publish_time":1479764959630,"_cnpm_publish_time":1479764959630,"_hasShrinkwrap":false},"1.1.0":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","scripts":{"test":"ava","lint":"standard"},"keywords":["portscanner","port","scanner","checker","status"],"version":"1.1.0","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"1.5.2"},"devDependencies":{"ava":"^0.4.2","eslint":"^3.10.2","eslint-config-standard":"^6.2.1","standard":"^8.5.0"},"engines":{"node":">=0.4","npm":">=1.0.0"},"license":"MIT","gitHead":"7edb0c9a95fcad1c09bc80a6ecd82f5251fa1485","_id":"portscanner@1.1.0","_shasum":"1c1d96bc1363666475dea77280197588b67c8274","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.0.0","_npmUser":{"name":"laggingreflex","email":"laggingreflex@gmail.com"},"dist":{"shasum":"1c1d96bc1363666475dea77280197588b67c8274","size":4161,"noattachment":false,"key":"/portscanner/-/portscanner-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-1.1.0.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/portscanner-1.1.0.tgz_1479587959366_0.15539867780171335"},"publish_time":1479587959599,"_cnpm_publish_time":1479587959599,"deprecated":"Breaks","_hasShrinkwrap":false},"1.0.0":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"1.0.0","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_id":"portscanner@1.0.0","dist":{"shasum":"3b5cfe393828b5160abc600e6270ebc2f1590558","size":3180,"noattachment":false,"key":"/portscanner/-/portscanner-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-1.0.0.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"smassa","email":"endangeredmassa@gmail.com"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1403402381428,"_cnpm_publish_time":1403402381428,"_hasShrinkwrap":false},"0.2.3":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"0.2.3","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_id":"portscanner@0.2.3","dist":{"shasum":"40d8adc92e01b205ab020aa16f0e386ac5ed1978","size":3179,"noattachment":false,"key":"/portscanner/-/portscanner-0.2.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-0.2.3.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"smassa","email":"endangeredmassa@gmail.com"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1397159872758,"_hasShrinkwrap":false,"_cnpm_publish_time":1397159872758},"0.2.2":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"0.2.2","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_id":"portscanner@0.2.2","dist":{"shasum":"8393ee1284e6e1af3fd7d5f606a2fd378ce37438","size":3195,"noattachment":false,"key":"/portscanner/-/portscanner-0.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-0.2.2.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"smassa","email":"endangeredmassa@gmail.com"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1391655539225,"_hasShrinkwrap":false,"_cnpm_publish_time":1391655539225},"0.2.1":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"0.2.1","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_id":"portscanner@0.2.1","dist":{"shasum":"894f0b7573ab7b3fb53ad78163eba7cbfe95960b","size":3205,"noattachment":false,"key":"/portscanner/-/portscanner-0.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-0.2.1.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"smassa","email":"endangeredmassa@gmail.com"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1391635929910,"_hasShrinkwrap":false,"_cnpm_publish_time":1391635929910},"0.2.0":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"0.2.0","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":"","repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_id":"portscanner@0.2.0","dist":{"shasum":"1fc59eac28393a486a0ab297a3295b64c118c558","size":3463,"noattachment":false,"key":"/portscanner/-/portscanner-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-0.2.0.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"smassa","email":"endangeredmassa@gmail.com"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1389109561582,"_hasShrinkwrap":false,"_cnpm_publish_time":1389109561582},"0.1.3":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"0.1.3","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":{"name":"Brandon Alexander","email":"baalexander@gmail.com","url":"https://github.com/baalexander"},"repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_npmUser":{"name":"baalexander","email":"baalexander@gmail.com"},"_id":"portscanner@0.1.3","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.0-3","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"cf0c38a0d12fcd716a11c6e59963abaca6af29b1","size":3018,"noattachment":false,"key":"/portscanner/-/portscanner-0.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-0.1.3.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1340166263853,"_hasShrinkwrap":false,"_cnpm_publish_time":1340166263853},"0.1.2":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"0.1.2","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":{"name":"Brandon Alexander","email":"baalexander@gmail.com","url":"https://github.com/baalexander"},"repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_npmUser":{"name":"baalexander","email":"baalexander@gmail.com"},"_id":"portscanner@0.1.2","_engineSupported":true,"_npmVersion":"1.0.103","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"ea6bda53476132905e7b900854d4fc8bc1e67d78","size":2980,"noattachment":false,"key":"/portscanner/-/portscanner-0.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-0.1.2.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1322624827051,"_hasShrinkwrap":false,"_cnpm_publish_time":1322624827051},"0.1.1":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"0.1.1","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":{"name":"Brandon Alexander","email":"baalexander@gmail.com","url":"https://github.com/baalexander"},"repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{"async":"0.1.15"},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_npmUser":{"name":"baalexander","email":"baalexander@gmail.com"},"_id":"portscanner@0.1.1","_engineSupported":true,"_npmVersion":"1.0.103","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"9d758140e971e07e16104170018a884129b7fc6c","size":2989,"noattachment":false,"key":"/portscanner/-/portscanner-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-0.1.1.tgz"},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1321575496963,"_hasShrinkwrap":false,"_cnpm_publish_time":1321575496963},"0.1.0":{"name":"portscanner","description":"Asynchronous port scanner for Node.js","keywords":["portscanner","port","scanner","checker","status"],"version":"0.1.0","preferGlobal":false,"homepage":"https://github.com/baalexander/node-portscanner","author":{"name":"Brandon Alexander","email":"baalexander@gmail.com","url":"https://github.com/baalexander"},"repository":{"type":"git","url":"git://github.com/baalexander/node-portscanner.git"},"bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"directories":{"lib":"./lib"},"main":"./lib/portscanner.js","dependencies":{},"devDependencies":{},"engines":{"node":">=0.4","npm":">=1.0.0"},"licenses":[{"type":"MIT","url":"https://github.com/baalexander/node-portscanner/raw/master/LICENSE"}],"_id":"portscanner@0.1.0","_engineSupported":true,"_npmVersion":"1.0.5","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"95bee742a13a5c7b158f8995e28832715ae18fa4","size":2869,"noattachment":false,"key":"/portscanner/-/portscanner-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/portscanner/download/portscanner-0.1.0.tgz"},"scripts":{},"maintainers":[{"name":"baalexander","email":"baalexander@gmail.com"},{"name":"endangeredmassa","email":"endangeredmassa@gmail.com"},{"name":"laggingreflex","email":"laggingreflex@gmail.com"},{"name":"shinnn","email":"snnskwtnb@gmail.com"}],"publish_time":1314671399233,"_hasShrinkwrap":false,"_cnpm_publish_time":1314671399233}},"readme":"# portscanner\n\n[![npm](https://img.shields.io/npm/v/portscanner.svg)](https://www.npmjs.com/package/portscanner)\n[![JavaScript Style Guide](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/)\n\nThe portscanner module is\nan asynchronous JavaScript port scanner for Node.js.\n\nPortscanner can check a port,\nor range of ports,\nfor 'open' or 'closed' statuses.\n\n[Looking for maintainer](https://github.com/baalexander/node-portscanner/issues/25)!\n\n## Install\n\n```bash\nnpm install portscanner\n```\n\n## Usage\n\nA brief example:\n\n```javascript\nvar portscanner = require('portscanner')\n\n// Checks the status of a single port\nportscanner.checkPortStatus(3000, '127.0.0.1', function(error, status) {\n  // Status is 'open' if currently in use or 'closed' if available\n  console.log(status)\n})\n\n// Find the first available port. Asynchronously checks, so first port\n// determined as available is returned.\nportscanner.findAPortNotInUse(3000, 3010, '127.0.0.1', function(error, port) {\n  console.log('AVAILABLE PORT AT: ' + port)\n})\n\n// Find the first port in use or blocked. Asynchronously checks, so first port\n// to respond is returned.\nportscanner.findAPortInUse(3000, 3010, '127.0.0.1', function(error, port) {\n  console.log('PORT IN USE AT: ' + port)\n})\n\n// You can also pass array of ports to check\nportscanner.findAPortInUse([3000, 3005, 3006], '127.0.0.1', function(error, port) {\n  console.log('PORT IN USE AT: ' + port)\n})\n\n// And skip host param. Default is '127.0.0.1'\nportscanner.findAPortNotInUse(3000, 4000, function(error, port) {\n  console.log('PORT IN USE AT: ' + port)\n})\n\n// And use promises\nportscanner.findAPortNotInUse(3000, 4000).then(function(port) {\n  console.log('PORT IN USE AT: ' + port)\n})\n```\n\nThe example directory contains a more detailed example.\n\n## Test\n\n```sh\nnpm test\n```\n\n## Future\n\nPlease create issues or pull requests\nfor port scanning related features\nyou'd like to see included.\n\n## License (MIT)\n\n[MIT](LICENSE)\n\n","_attachments":{},"homepage":"https://github.com/baalexander/node-portscanner","bugs":{"url":"https://github.com/baalexander/node-portscanner/issues"},"license":"MIT"}