UNPKG

socksv5

Version:

SOCKS protocol version 5 server and client implementations for node.js

69 lines (68 loc) 4.2 kB
{ "name": "ipv6", "description": "A browser- and node-compatible library for parsing IPv6 addresses", "keywords": [ "ipv6", "browser", "validation" ], "version": "3.1.1", "author": { "name": "Beau Gunderson", "email": "beau@beaugunderson.com" }, "license": "MIT", "main": "index", "scripts": { "test": "./node_modules/.bin/mocha --reporter spec" }, "bin": { "ipv6": "bin/ipv6.js", "ipv6grep": "bin/ipv6grep.js" }, "engine": { "node": ">= 0.4.1" }, "repository": { "type": "git", "url": "git://github.com/beaugunderson/javascript-ipv6.git" }, "dependencies": { "sprintf": "0.1.x", "cli": "0.4.x", "cliff": "0.1.x" }, "devDependencies": { "mocha": "1.15.x", "chai": "1.8.x" }, "engines": { "node": "*" }, "readme": "javascript-ipv6 [![Build Status](https://secure.travis-ci.org/beaugunderson/javascript-ipv6.png?branch=master)](http://travis-ci.org/beaugunderson/javascript-ipv6)\n===============\n\njavascript-ipv6 is a library for manipulating IPv6 addresses in JavaScript.\n\nExamples\n--------\n\nFor node:\n\n```js\nvar v6 = require('ipv6').v6;\n\nvar address = new v6.Address('2001:0:ce49:7601:e866:efff:62c3:fffe');\n\nconsole.log(address.isValid()); // Prints \"true\"\n\nvar teredo = address.teredo();\n\nconsole.log(teredo.client4); // Prints \"157.60.0.1\"\n```\n\nFor a browser:\n\n```html\n<!DOCTYPE html>\n<html lang=\"en\">\n <head>\n <title>Simple IPv6 test</title>\n\n <script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js\"></script>\n\n <script type=\"text/javascript\" src=\"/lib/jsbn.js\"></script>\n <script type=\"text/javascript\" src=\"/lib/jsbn2.js\"></script>\n\n <script type=\"text/javascript\" src=\"/lib/sprintf.js\"></script>\n\n <script type=\"text/javascript\" src=\"/ipv6/ipv6.js\"></script>\n\n <script type=\"text/javascript\">\n $(function() {\n var address6 = new v6.Address('a::b');\n\n $('#output').text(address6.canonicalForm());\n });\n </script>\n </head>\n\n <body>\n The canonical form of <code>a::b</code> is: <code id=\"output\"></code>\n </body>\n</html>\n```\n\nCurrent functionality\n---------------------\n\n- Parsing of most IPv6 notations\n- Parsing of IPv6 Addresses and Ports from URLs with `v6.Address.fromURL(url)`\n- Validity checking\n- Decoding of the [Teredo information](http://en.wikipedia.org/wiki/Teredo_tunneling#IPv6_addressing) in an address\n- Whether one address is a valid subnet of another\n- What special properties a given address has (multicast prefix, unique local address prefix, etc.)\n- Number of subnets of a certain size in a given address\n- Display methods\n - Hex, binary, and decimal\n - Canonical form\n - Correct form\n - IPv4-compatible (i.e. `::ffff:192.168.0.1`)\n- Works in [node.js](http://nodejs.org/) and the browser\n- Unit tests with [node.js](http://nodejs.org/) and [Mocha](http://visionmedia.github.com/mocha/)\n\nUsed by\n-------\n\n- [Rackspace](http://www.rackspace.com/) in [node-swiz](https://github.com/racker/node-swiz)\n- [node-socksified](https://github.com/vially/node-socksified)\n\nFuture functionality\n--------------------\n\n- Investigate `procstreams` for the CLI tool\n- Base 64/85 encoding?\n- Reverse lookups? (Whether a domain name has IPv6 glue)\n\nTODO\n----\n\n- Documentation\n", "readmeFilename": "README.md", "bugs": { "url": "https://github.com/beaugunderson/javascript-ipv6/issues" }, "homepage": "https://github.com/beaugunderson/javascript-ipv6", "_id": "ipv6@3.1.1", "dist": { "shasum": "46da0e260af36fd9beb41297c987b7c21a2d9e1c", "tarball": "http://registry.npmjs.org/ipv6/-/ipv6-3.1.1.tgz" }, "_from": "ipv6@", "_npmVersion": "1.3.17", "_npmUser": { "name": "beaugunderson", "email": "beau@beaugunderson.com" }, "maintainers": [ { "name": "beaugunderson", "email": "beau@beaugunderson.com" } ], "directories": {}, "_shasum": "46da0e260af36fd9beb41297c987b7c21a2d9e1c", "_resolved": "https://registry.npmjs.org/ipv6/-/ipv6-3.1.1.tgz" }