Publish docs
This commit is contained in:
parent
7d4d2b8bd0
commit
034f611a98
|
@ -27,10 +27,23 @@
|
|||
<section>
|
||||
<article>
|
||||
<pre class="prettyprint source linenums"><code>/**
|
||||
* Working with Bitmessage addresses.
|
||||
* Working with Bitmessage addresses.
|
||||
* **NOTE**: `Address` is exported as a module.
|
||||
* @example
|
||||
* var Address = require("bitmessage").Address;
|
||||
* // Or: var Address = require("bitmessage/address");
|
||||
*
|
||||
* // Generate a new random Bitmessage identity.
|
||||
* var addr1 = Address.fromRandom();
|
||||
* console.log("New random Bitmessage address:", addr1.encode());
|
||||
*
|
||||
* // Or create it from passphrase.
|
||||
* var addr2 = Address.fromPassphrase("test");
|
||||
* console.log("Deterministic Bitmessage address:", addr2.encode());
|
||||
* @see {@link https://bitmessage.org/wiki/Address}
|
||||
* @module bitmessage/address
|
||||
*/
|
||||
// TODO(Kagami): Document getters/setters.
|
||||
|
||||
"use strict";
|
||||
|
||||
|
@ -45,7 +58,16 @@ var popkey = require("./_util").popkey;
|
|||
|
||||
/**
|
||||
* Create a new Bitmessage address object.
|
||||
* @param {?Object} opts - Address options
|
||||
* @param {Object=} opts - Address options
|
||||
* @param {number} opts.version - Version number (4 by default)
|
||||
* @param {number} opts.stream - Stream number (1 by default)
|
||||
* @param {Object} opts.behavior - [Pubkey features]{@link
|
||||
* module:bitmessage/structs.PubkeyBitfield} (`DOES_ACK` by default)
|
||||
* @param {Buffer} opts.signPrivateKey - Signing private key
|
||||
* @param {Buffer} opts.signPublicKey - Signing public key
|
||||
* @param {Buffer} opts.encPrivateKey - Encryption private key
|
||||
* @param {Buffer} opts.encPublicKey - Encryption public key
|
||||
* @param {Buffer} opts.ripe - Keys RIPEMD hash
|
||||
* @constructor
|
||||
* @static
|
||||
*/
|
||||
|
@ -75,7 +97,7 @@ Address.prototype.clone = function() {
|
|||
};
|
||||
|
||||
/**
|
||||
* Test if given object is an Address instance.
|
||||
* Test if the given object is an Address instance.
|
||||
* NOTE: Implementation is just simple `instanceof` but it improves
|
||||
* readability and consistent with `isArray`, `isBuffer`, etc.
|
||||
* @param {Object} obj - Given object
|
||||
|
@ -126,8 +148,8 @@ function getaddrchecksum(data) {
|
|||
}
|
||||
|
||||
/**
|
||||
* Get the ripe hash of the address without prefix zeroes.
|
||||
* @return {Buffer} A short ripe hash.
|
||||
* Get the RIPEMD hash of the address keys without prefix nulls.
|
||||
* @return {Buffer} A short RIPEMD hash.
|
||||
*/
|
||||
Address.prototype.getShortRipe = function() {
|
||||
var ripe = this.ripe;
|
||||
|
@ -253,10 +275,15 @@ Address.prototype.encode = function() {
|
|||
};
|
||||
|
||||
/**
|
||||
* Create new Bitmessage address from random encryption and signing
|
||||
* Create a new Bitmessage address with random encryption and signing
|
||||
* private keys.
|
||||
* @param {?Object} opts - Address options
|
||||
* @return {Address} Generated address object.
|
||||
* @param {Object=} opts - Address options
|
||||
* @param {number} opts.ripeLength - Required length of the short RIPEMD
|
||||
* hash (19 by default)
|
||||
* @param {number} opts.version - Version number (4 by default)
|
||||
* @param {number} opts.stream - Stream number (1 by default)
|
||||
* @param {Object} opts.behavior - [Pubkey features]{@link module:bitmessage/structs.PubkeyBitfield} (`DOES_ACK` by default)
|
||||
* @return {Address} New address object.
|
||||
*/
|
||||
Address.fromRandom = function(opts) {
|
||||
opts = objectAssign({}, opts);
|
||||
|
@ -286,9 +313,15 @@ Address.fromRandom = function(opts) {
|
|||
};
|
||||
|
||||
/**
|
||||
* Create new Bitmessage address from passphrase.
|
||||
* @param {?Object} opts - Address options
|
||||
* @return {Address} Generated address object.
|
||||
* Create a new Bitmessage address from passphrase.
|
||||
* @param {(string|Object)} opts - Passphrase or address options
|
||||
* @param {string} opts.passphrase - Passphrase to generate address from
|
||||
* @param {number=} opts.ripeLength - Required length of the short
|
||||
* RIPEMD hash (19 by default)
|
||||
* @param {number=} opts.version - Version number (4 by default)
|
||||
* @param {number=} opts.stream - Stream number (1 by default)
|
||||
* @param {Object=} opts.behavior - [Pubkey features]{@link module:bitmessage/structs.PubkeyBitfield} (`DOES_ACK` by default)
|
||||
* @return {Address} New address object.
|
||||
*/
|
||||
Address.fromPassphrase = function(opts) {
|
||||
if (typeof opts === "string") {
|
||||
|
@ -423,13 +456,13 @@ module.exports = Address;
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -38,7 +38,7 @@ var eccrypto = require("eccrypto");
|
|||
var assert = require("./_util").assert;
|
||||
var platform = require("./platform");
|
||||
|
||||
var promise = platform.promise;
|
||||
var PPromise = platform.Promise;
|
||||
|
||||
/**
|
||||
* Calculate SHA-1 hash.
|
||||
|
@ -82,7 +82,7 @@ exports.ripemd160 = platform.ripemd160;
|
|||
exports.randomBytes = platform.randomBytes;
|
||||
|
||||
/**
|
||||
* Generate new random private key.
|
||||
* Generate a new random private key.
|
||||
* @return {Buffer} New private key.
|
||||
*/
|
||||
exports.getPrivate = function() {
|
||||
|
@ -114,8 +114,8 @@ exports.sign = function(privateKey, msg) {
|
|||
* @param {Buffer} publicKey - A 65-byte public key
|
||||
* @param {Buffer} msg - The message being verified
|
||||
* @param {Buffer} sig - The signature in DER format
|
||||
* @return {Promise.<undefined>} A promise that resolves on correct
|
||||
* signature and rejects on bad key or signature.
|
||||
* @return {Promise.<null>} A promise that resolves on correct signature
|
||||
* and rejects on bad key or signature.
|
||||
*/
|
||||
exports.verify = function(publicKey, msg, sig) {
|
||||
var hash = sha1(msg);
|
||||
|
@ -174,15 +174,14 @@ var encrypted = exports.encrypted = {
|
|||
* Encrypt message for given recepient's public key.
|
||||
* @param {Buffer} publicKeyTo - Recipient's public key (65 bytes)
|
||||
* @param {Buffer} msg - The message being encrypted
|
||||
* @param {?{?iv: Buffer, ?ephemPrivateKey: Buffer}} opts - You may also
|
||||
* specify initialization vector (16 bytes) and ephemeral private key
|
||||
* (32 bytes) to get deterministic results.
|
||||
* @return {Promise.<Buffer>} - A promise that resolves with the buffer
|
||||
* in `encrypted` format successful encryption and rejects on failure.
|
||||
* @param {Object=} opts - You may also specify initialization vector
|
||||
* and ephemeral private key to get deterministic results
|
||||
* @param {Buffer} opts.iv - Initialization vector (16 bytes)
|
||||
* @param {Buffer} opts.ephemPrivateKey - Ephemeral private key (32
|
||||
* bytes)
|
||||
* @return {Promise.<Buffer>} A promise that resolves with the buffer in
|
||||
* `encrypted` format successful encryption and rejects on failure.
|
||||
*/
|
||||
// TODO(Kagami): Properly document `opts`. Documenting multiple
|
||||
// function arguments with options object at the end for now gives
|
||||
// strange results (probably a bug in jsdoc).
|
||||
exports.encrypt = function(publicKeyTo, msg, opts) {
|
||||
return eccrypto.encrypt(publicKeyTo, msg, opts).then(function(encObj) {
|
||||
return encrypted.encode(encObj);
|
||||
|
@ -194,11 +193,11 @@ exports.encrypt = function(publicKeyTo, msg, opts) {
|
|||
* @param {Buffer} privateKey - A 32-byte private key of recepient of
|
||||
* the mesage
|
||||
* @param {Buffer} buf - Encrypted data
|
||||
* @return {Promise.<Buffer>} - A promise that resolves with the
|
||||
* plaintext on successful decryption and rejects on failure.
|
||||
* @return {Promise.<Buffer>} A promise that resolves with the plaintext
|
||||
* on successful decryption and rejects on failure.
|
||||
*/
|
||||
exports.decrypt = function(privateKey, buf) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
var encObj = encrypted.decode(buf);
|
||||
resolve(eccrypto.decrypt(privateKey, encObj));
|
||||
});
|
||||
|
@ -213,13 +212,13 @@ exports.decrypt = function(privateKey, buf) {
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -52,19 +52,16 @@
|
|||
<li><a href="https://bitmessage.org/wiki/Protocol_specification">Protocol specification</a></li>
|
||||
<li><a href="https://bitmessage.org/bitmessage.pdf">Whitepaper</a></li>
|
||||
</ul>
|
||||
<h2>Feature matrix (both Browser and Node)</h2><ul>
|
||||
<h2>Feature matrix</h2><ul>
|
||||
<li>[x] Crypto<ul>
|
||||
<li>[x] SHA-1</li>
|
||||
<li>[x] SHA-256</li>
|
||||
<li>[x] SHA-512</li>
|
||||
<li>[x] RIPEMD-160</li>
|
||||
<li>[x] PRNG</li>
|
||||
<li>[x] ECC keys manipulation</li>
|
||||
<li>[x] ECC keys handling</li>
|
||||
<li>[x] ECDSA</li>
|
||||
<li>[x] ECDH</li>
|
||||
<li>[x] ECIES</li>
|
||||
<li>[x] AES-256-CBC</li>
|
||||
<li>[x] HMAC-SHA-256</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>[x] Common structures<ul>
|
||||
|
@ -82,7 +79,6 @@
|
|||
</li>
|
||||
<li>[x] Message types<ul>
|
||||
<li>[x] version</li>
|
||||
<li>[x] verack</li>
|
||||
<li>[x] addr</li>
|
||||
<li>[x] inv</li>
|
||||
<li>[x] getdata</li>
|
||||
|
@ -103,18 +99,19 @@
|
|||
<li>[x] UserAgent</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>[ ] Parse PyBitmessage configs<ul>
|
||||
<li>[ ] Network transports<ul>
|
||||
<li>[x] TCP (Node.js only)</li>
|
||||
<li>[x] WebSocket</li>
|
||||
<li>[ ] WebRTC</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>[ ] PyBitmessage configs parsing<ul>
|
||||
<li>[ ] keys.dat</li>
|
||||
<li>[ ] knownnodes.dat</li>
|
||||
<li>[ ] messages.dat</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2>Network feature matrix (Node.js only)</h2><ul>
|
||||
<li>[ ] Bootstrap</li>
|
||||
<li>[ ] Connect to the network</li>
|
||||
<li>[ ] Accept connections</li>
|
||||
</ul>
|
||||
<h2>Usage</h2><h3>Address</h3><pre class="prettyprint source lang-js"><code>var Address = require("bitmessage").Address;
|
||||
|
||||
// Generate a new random Bitmessage identity.
|
||||
|
@ -123,8 +120,73 @@ console.log("New random Bitmessage address:", addr1.encode());
|
|||
|
||||
// Or create it from passphrase.
|
||||
var addr2 = Address.fromPassphrase("test");
|
||||
console.log("Deterministic Bitmessage address:", addr2.encode());</code></pre><h2>License</h2><p>bitmessage - JavaScript Bitmessage library</p>
|
||||
<p>Written in 2014 by Kagami Hiiragi <a href="mailto:kagami@genshiken.org">kagami@genshiken.org</a></p>
|
||||
console.log("Deterministic Bitmessage address:", addr2.encode());</code></pre><h3>Structures</h3><pre class="prettyprint source lang-js"><code>var structs = require("bitmessage").structs;
|
||||
|
||||
var encoded = Buffer.concat([
|
||||
structs.var_int.encode(4),
|
||||
Buffer("test"),
|
||||
structs.var_str.encode("test2"),
|
||||
structs.var_int_list.encode([1, 2, 3]),
|
||||
]);
|
||||
|
||||
var decoded1 = structs.var_str.decode(encoded);
|
||||
console.log(decoded1.str); // test
|
||||
var decoded2 = structs.var_str.decode(decoded1.rest);
|
||||
console.log(decoded2.str); // test2
|
||||
var decoded3 = structs.var_int.decode(decoded2.rest);
|
||||
console.log(decoded3.value); // 3
|
||||
var decoded4 = structs.var_int_list.decode(decoded2.rest);
|
||||
console.log(decoded4.list); // [1, 2, 3]</code></pre><h3>Messages</h3><pre class="prettyprint source lang-js"><code>var structs = require("bitmessage").structs;
|
||||
var messages = require("bitmessage").messages;
|
||||
|
||||
// Simple encoding and decoding:
|
||||
var vermsg = messages.version.encode({
|
||||
nonce: Buffer(8), // Hack detection connection to self
|
||||
remoteHost: "1.1.1.1",
|
||||
remotePort: 8444,
|
||||
});
|
||||
console.log(messages.version.decode(vermsg).remoteHost); // 1.1.1.1
|
||||
|
||||
// Low-level encoding and decoding:
|
||||
var addrPayload = messages.addr.encodePayload([
|
||||
{host: "2.2.2.2", port: 28444},
|
||||
]);
|
||||
var addrmsg = structs.message.encode("addr", addrPayload);
|
||||
var decoded = structs.message.decode(addrmsg);
|
||||
console.log(decoded.command); // addr
|
||||
var payload = decoded.payload;
|
||||
var decodedPayload = messages.addr.decodePayload(payload);
|
||||
console.log(decodedPayload.addrs[0].host); // 2.2.2.2
|
||||
|
||||
// Encode with empty payload:
|
||||
var verackmsg = structs.message.encode("verack");
|
||||
console.log(structs.message.decode(verackmsg).command); // verack</code></pre><h3>Network</h3><pre class="prettyprint source lang-js"><code>var messages = require("bitmessage").messages;
|
||||
var TcpTransport = require("bitmessage/net/tcp");
|
||||
|
||||
var tcp = new TcpTransport({
|
||||
dnsSeeds: [["bootstrap8444.bitmessage.org", 8444]],
|
||||
});
|
||||
|
||||
tcp.bootstrap().then(function(nodes) {
|
||||
var remoteHost = nodes[0][0];
|
||||
var remotePort = nodes[0][1];
|
||||
console.log("Connecting to", nodes[0]);
|
||||
tcp.connect(remotePort, remoteHost);
|
||||
});
|
||||
|
||||
tcp.on("established", function() {
|
||||
console.log("Connection established");
|
||||
|
||||
tcp.on("message", function(command, payload) {
|
||||
console.log("Got new", command, "message");
|
||||
var decoded;
|
||||
if (command === "addr") {
|
||||
decoded = messages.addr.decodePayload(payload);
|
||||
console.log("Got", decoded.addrs.length, "node addresses");
|
||||
}
|
||||
});
|
||||
});</code></pre><h2>License</h2><p>bitmessage - JavaScript Bitmessage library</p>
|
||||
<p>Written in 2014-2015 by Kagami Hiiragi <a href="mailto:kagami@genshiken.org">kagami@genshiken.org</a></p>
|
||||
<p>To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty.</p>
|
||||
<p>You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.</p></article>
|
||||
</section>
|
||||
|
@ -137,13 +199,13 @@ console.log("Deterministic Bitmessage address:", addr2.encode());</cod
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -65,13 +65,13 @@ exports.UserAgent = require("./user-agent");
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -32,14 +32,41 @@
|
|||
* @see {@link https://bitmessage.org/wiki/Protocol_specification_v3#Message_types}
|
||||
* @see {@link https://bitmessage.org/Bitmessage%20Technical%20Paper.pdf}
|
||||
* @module bitmessage/messages
|
||||
* @example
|
||||
* var structs = require("bitmessage").structs;
|
||||
* var messages = require("bitmessage").messages;
|
||||
*
|
||||
* // Simple encoding and decoding:
|
||||
* var vermsg = messages.version.encode({
|
||||
* nonce: Buffer(8), // Hack detection connection to self
|
||||
* remoteHost: "1.1.1.1",
|
||||
* remotePort: 8444,
|
||||
* });
|
||||
* console.log(messages.version.decode(vermsg).remoteHost); // 1.1.1.1
|
||||
*
|
||||
* // Low-level encoding and decoding:
|
||||
* var addrPayload = messages.addr.encodePayload([
|
||||
* {host: "2.2.2.2", port: 28444},
|
||||
* ]);
|
||||
* var addrmsg = structs.message.encode("addr", addrPayload);
|
||||
* var decoded = structs.message.decode(addrmsg);
|
||||
* console.log(decoded.command); // addr
|
||||
* var payload = decoded.payload;
|
||||
* var decodedPayload = messages.addr.decodePayload(payload);
|
||||
* console.log(decodedPayload.addrs[0].host); // 2.2.2.2
|
||||
*
|
||||
* // Encode with empty payload:
|
||||
* var verackmsg = structs.message.encode("verack");
|
||||
* console.log(structs.message.decode(verackmsg).command); // verack
|
||||
*/
|
||||
// TODO(Kagami): Document object-like params.
|
||||
|
||||
"use strict";
|
||||
|
||||
var objectAssign = Object.assign || require("object-assign");
|
||||
var bufferEqual = require("buffer-equal");
|
||||
var assert = require("./_util").assert;
|
||||
var structs = require("./structs");
|
||||
var bmcrypto = require("./crypto");
|
||||
var UserAgent = require("./user-agent");
|
||||
var util = require("./_util");
|
||||
|
||||
|
@ -51,8 +78,7 @@ var ServicesBitfield = structs.ServicesBitfield;
|
|||
* Note that this function doesn't do any validation because it is
|
||||
* already provided by
|
||||
* [message.decode]{@link module:bitmessage/structs.message.decode}
|
||||
* routine. Normally you call this for each incoming message and then
|
||||
* call decode function of the appropriate message handler.
|
||||
* routine.
|
||||
* @param {Buffer} buf - Buffer that starts with encoded message
|
||||
* @return {?string} Message's command if any.
|
||||
*/
|
||||
|
@ -71,24 +97,45 @@ exports.getCommand = function(buf) {
|
|||
return command.slice(0, firstNonNull).toString("ascii");
|
||||
};
|
||||
|
||||
// Random nonce used to detect connections to self.
|
||||
var randomNonce = bmcrypto.randomBytes(8);
|
||||
|
||||
/**
|
||||
* `version` message.
|
||||
* @see {@link https://bitmessage.org/wiki/Protocol_specification#version}
|
||||
* @namespace
|
||||
* @static
|
||||
*/
|
||||
// TODO(Kagami): User agent and stream numbers size limits per
|
||||
// <https://github.com/Bitmessage/PyBitmessage/issues/767>.
|
||||
var version = exports.version = {
|
||||
/**
|
||||
* Random nonce used to detect connections to self.
|
||||
* @const {Buffer}
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Object} services -
|
||||
* [Service]{@link module:bitmessage/structs.ServicesBitfield}
|
||||
* features to be enabled for this connection
|
||||
* @property {Date} time - Node time
|
||||
* @property {string} remoteHost - IPv4/IPv6 address of the node
|
||||
* receiving this message
|
||||
* @property {number} remotePort - Port of the node receiving this
|
||||
* message
|
||||
* @property {number} port - Incoming port of the node sending this
|
||||
* message
|
||||
* @property {Buffer} nonce - Random nonce used to detect connection
|
||||
* to self
|
||||
* @property {(Array|string|Buffer)} userAgent -
|
||||
* [User agent]{@link module:bitmessage/user-agent} of the node
|
||||
* @property {number[]} streamNumbers - Streams accepted by the node
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/messages.version
|
||||
*/
|
||||
NONCE: new Buffer("20bde0a3355dad78", "hex"),
|
||||
|
||||
/**
|
||||
* Decode `version` message.
|
||||
* Decode `version` message.
|
||||
* NOTE: `nonce` is copied.
|
||||
* @param {Buffer} buf - Message
|
||||
* @return {Object} Decoded `version` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `version` structure.]{@link module:bitmessage/messages.version.DecodeResult}
|
||||
*/
|
||||
decode: function(buf) {
|
||||
var decoded = message.decode(buf);
|
||||
|
@ -98,9 +145,7 @@ var version = exports.version = {
|
|||
|
||||
/**
|
||||
* Decode `version` message payload.
|
||||
* NOTE: `nonce` is copied.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @return {Object} Decoded `version` structure.
|
||||
* The same as [decode]{@link module:bitmessage/messages.version.decode}.
|
||||
*/
|
||||
decodePayload: function(buf) {
|
||||
// 4 + 8 + 8 + 26 + 26 + 8 + (1+) + (1+)
|
||||
|
@ -113,6 +158,7 @@ var version = exports.version = {
|
|||
var addrFrom = structs.net_addr.decode(buf.slice(46, 72), short);
|
||||
var nonce = new Buffer(8);
|
||||
buf.copy(nonce, 0, 72, 80);
|
||||
assert(!bufferEqual(nonce, randomNonce), "Connection to self");
|
||||
var decodedUa = UserAgent.decode(buf.slice(80));
|
||||
var decodedStreamNumbers = structs.var_int_list.decode(decodedUa.rest);
|
||||
return {
|
||||
|
@ -136,6 +182,24 @@ var version = exports.version = {
|
|||
/**
|
||||
* Encode `version` message.
|
||||
* @param {Object} opts - Version options
|
||||
* @param {Object=} opts.services -
|
||||
* [Service]{@link module:bitmessage/structs.ServicesBitfield}
|
||||
* features to be enabled for this connection (`NODE_NETWORK` by
|
||||
* default)
|
||||
* @param {Date=} opts.time - Node time (current time by default)
|
||||
* @param {string} opts.remoteHost - IPv4/IPv6 address of the node
|
||||
* receiving this message
|
||||
* @param {number} opts.remotePort - Port of the node receiving this
|
||||
* message
|
||||
* @param {number=} opts.port - Incoming port of the node (8444 by
|
||||
* default)
|
||||
* @param {Buffer=} opts.nonce - Random nonce used to detect connection
|
||||
* to self (unique per node.js process by default)
|
||||
* @param {(Array|string|Buffer)=} opts.userAgent -
|
||||
* [User agent]{@link module:bitmessage/user-agent} of the node
|
||||
* (bitmessage's by default)
|
||||
* @param {Array<number>=} opts.streamNumbers - Streams accepted by the
|
||||
* node (1 by default)
|
||||
* @return {Buffer} Encoded message.
|
||||
*/
|
||||
encode: function(opts) {
|
||||
|
@ -145,16 +209,16 @@ var version = exports.version = {
|
|||
|
||||
/**
|
||||
* Encode `version` message payload.
|
||||
* @param {Object} opts - Version options
|
||||
* @return {Buffer} Encoded payload.
|
||||
* The same as [encode]{@link module:bitmessage/messages.version.encode}.
|
||||
*/
|
||||
encodePayload: function(opts) {
|
||||
// Deal with default options.
|
||||
var services = opts.services ||
|
||||
ServicesBitfield().set(ServicesBitfield.NODE_NETWORK);
|
||||
var time = opts.time || new Date();
|
||||
var nonce = opts.nonce || version.NONCE;
|
||||
var nonce = opts.nonce || randomNonce;
|
||||
assert(nonce.length === 8, "Bad nonce");
|
||||
var port = opts.port || 8444;
|
||||
var userAgent = opts.userAgent || UserAgent.SELF;
|
||||
var streamNumbers = opts.streamNumbers || [1];
|
||||
// Start encoding.
|
||||
|
@ -169,7 +233,7 @@ var version = exports.version = {
|
|||
var addrFrom = structs.net_addr.encode({
|
||||
services: services,
|
||||
host: "127.0.0.1",
|
||||
port: opts.port,
|
||||
port: port,
|
||||
short: true,
|
||||
});
|
||||
return Buffer.concat([
|
||||
|
@ -192,10 +256,19 @@ var version = exports.version = {
|
|||
* @static
|
||||
*/
|
||||
var addr = exports.addr = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Object[]} addrs - List of
|
||||
* [decoded `net_addr` structures]{@link module:bitmessage/structs.net_addr.DecodeResult}
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/messages.addr
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `addr` message.
|
||||
* @param {Buffer} buf - Message
|
||||
* @return {Object} Decoded `addr` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `addr` structure.]{@link module:bitmessage/messages.addr.DecodeResult}
|
||||
*/
|
||||
decode: function(buf) {
|
||||
var decoded = message.decode(buf);
|
||||
|
@ -205,8 +278,7 @@ var addr = exports.addr = {
|
|||
|
||||
/**
|
||||
* Decode `addr` message payload.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @return {Object} Decoded `addr` structure.
|
||||
* The same as [decode]{@link module:bitmessage/messages.addr.decode}.
|
||||
*/
|
||||
decodePayload: function(buf) {
|
||||
var decoded = structs.var_int.decode(buf);
|
||||
|
@ -228,7 +300,8 @@ var addr = exports.addr = {
|
|||
|
||||
/**
|
||||
* Encode `addr` message.
|
||||
* @param {Object[]} addrs - Network addresses
|
||||
* @param {Object[]} addrs - List of
|
||||
* [net_addr encode options]{@link module:bitmessage/structs.net_addr.encode}
|
||||
* @return {Buffer} Encoded message.
|
||||
*/
|
||||
encode: function(addrs) {
|
||||
|
@ -238,13 +311,13 @@ var addr = exports.addr = {
|
|||
|
||||
/**
|
||||
* Encode `addr` message payload.
|
||||
* @param {Object[]} addrs - Network addresses
|
||||
* @return {Buffer} Encoded payload.
|
||||
* The same as [encode]{@link module:bitmessage/messages.addr.encode}.
|
||||
*/
|
||||
encodePayload: function(addrs) {
|
||||
assert(addrs.length <= 1000, "Too many address entires");
|
||||
var addrsBuf = Buffer.concat(addrs.map(structs.net_addr.encode));
|
||||
return Buffer.concat([structs.var_int.encode(addrs.length), addrsBuf]);
|
||||
var addrBufs = addrs.map(structs.net_addr.encode);
|
||||
var bufs = [structs.var_int.encode(addrs.length)].concat(addrBufs);
|
||||
return Buffer.concat(bufs);
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -256,10 +329,19 @@ var addr = exports.addr = {
|
|||
* @static
|
||||
*/
|
||||
var inv = exports.inv = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Buffer[]} inventory - List of
|
||||
* [inventory vectors]{@link module:bitmessage/structs.inv_vect}
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/messages.inv
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `inv` message.
|
||||
* @param {Buffer} buf - Message
|
||||
* @return {Object} Decoded `inv` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `inv` structure.]{@link module:bitmessage/messages.inv.DecodeResult}
|
||||
*/
|
||||
decode: function(buf) {
|
||||
var decoded = message.decode(buf);
|
||||
|
@ -269,8 +351,7 @@ var inv = exports.inv = {
|
|||
|
||||
/**
|
||||
* Decode `inv` message payload.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @return {Object} Decoded `inv` structure.
|
||||
* The same as [decode]{@link module:bitmessage/messages.inv.decode}.
|
||||
*/
|
||||
decodePayload: function(buf) {
|
||||
var decoded = structs.var_int.decode(buf);
|
||||
|
@ -292,7 +373,8 @@ var inv = exports.inv = {
|
|||
|
||||
/**
|
||||
* Encode `inv` message.
|
||||
* @param {Buffer[]} inventory - Inventory vector list
|
||||
* @param {Buffer[]} inventory -
|
||||
* [Inventory vector]{@link module:bitmessage/structs.inv_vect} list
|
||||
* @return {Buffer} Encoded message.
|
||||
*/
|
||||
encode: function(inventory) {
|
||||
|
@ -302,13 +384,13 @@ var inv = exports.inv = {
|
|||
|
||||
/**
|
||||
* Encode `inv` message payload.
|
||||
* @param {Buffer[]} inventory - Inventory vector list
|
||||
* @return {Buffer} Encoded payload.
|
||||
* The same as [encode]{@link module:bitmessage/messages.inv.encode}.
|
||||
*/
|
||||
encodePayload: function(inventory) {
|
||||
assert(inventory.length <= 50000, "Too many inventory entires");
|
||||
var invBuf = Buffer.concat(inventory);
|
||||
return Buffer.concat([structs.var_int.encode(inventory.length), invBuf]);
|
||||
// TODO(Kagami): Validate vectors length.
|
||||
var bufs = [structs.var_int.encode(inventory.length)].concat(inventory);
|
||||
return Buffer.concat(bufs);
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -320,10 +402,19 @@ var inv = exports.inv = {
|
|||
* @namespace
|
||||
*/
|
||||
exports.getdata = objectAssign({}, inv, {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Buffer[]} inventory - List of
|
||||
* [inventory vectors]{@link module:bitmessage/structs.inv_vect}
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/messages.getdata
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `getdata` message.
|
||||
* @param {Buffer} buf - Message
|
||||
* @return {Object} Decoded `getdata` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `getdata` structure.]{@link module:bitmessage/messages.getdata.DecodeResult}
|
||||
* @memberof module:bitmessage/messages.getdata
|
||||
*/
|
||||
decode: function(buf) {
|
||||
|
@ -331,9 +422,18 @@ exports.getdata = objectAssign({}, inv, {
|
|||
assert(decoded.command === "getdata", "Bad command");
|
||||
return inv.decodePayload(decoded.payload);
|
||||
},
|
||||
|
||||
/**
|
||||
* Decode `getdata` message payload.
|
||||
* The same as [decode]{@link module:bitmessage/messages.getdata.decode}.
|
||||
* @function decodePayload
|
||||
* @memberof module:bitmessage/messages.getdata
|
||||
*/
|
||||
|
||||
/**
|
||||
* Encode `getdata` message.
|
||||
* @param {Buffer[]} inventory - Inventory vector list
|
||||
* @param {Buffer[]} inventory -
|
||||
* [Inventory vector]{@link module:bitmessage/structs.inv_vect} list
|
||||
* @return {Buffer} Encoded message.
|
||||
* @memberof module:bitmessage/messages.getdata
|
||||
*/
|
||||
|
@ -341,17 +441,10 @@ exports.getdata = objectAssign({}, inv, {
|
|||
var payload = inv.encodePayload(inventory);
|
||||
return message.encode("getdata", payload);
|
||||
},
|
||||
/**
|
||||
* Decode `getdata` message payload.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @return {Object} Decoded `inv` structure.
|
||||
* @function decodePayload
|
||||
* @memberof module:bitmessage/messages.getdata
|
||||
*/
|
||||
|
||||
/**
|
||||
* Encode `getdata` message payload.
|
||||
* @param {Buffer[]} inventory - Inventory vector list
|
||||
* @return {Buffer} Encoded payload.
|
||||
* The same as [encode]{@link module:bitmessage/messages.getdata.encode}.
|
||||
* @function encodePayload
|
||||
* @memberof module:bitmessage/messages.getdata
|
||||
*/
|
||||
|
@ -383,10 +476,24 @@ var error = exports.error = {
|
|||
*/
|
||||
FATAL: 2,
|
||||
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {number} fatal - Type of the error
|
||||
* @property {number} banTime - The other node informs that it will
|
||||
* not accept further connections for this number of seconds
|
||||
* @property {?Buffer} vector -
|
||||
* [Inventory vector]{@link module:bitmessage/structs.inv_vect}
|
||||
* related to the error
|
||||
* @property {string} errorText - A human-readable error description
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/messages.error
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `error` message.
|
||||
* @param {Buffer} buf - Message
|
||||
* @return {Object} Decoded `error` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `error` structure.]{@link module:bitmessage/messages.error.DecodeResult}
|
||||
*/
|
||||
decode: function(buf) {
|
||||
var decoded = message.decode(buf);
|
||||
|
@ -396,25 +503,37 @@ var error = exports.error = {
|
|||
|
||||
/**
|
||||
* Decode `error` message payload.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @return {Object} Decoded `error` structure.
|
||||
* The same as [decode]{@link module:bitmessage/messages.error.decode}.
|
||||
*/
|
||||
decodePayload: function(buf) {
|
||||
assert(buf.length >= 4, "Buffer is too small");
|
||||
var decodedFatal = structs.var_int.decode(buf);
|
||||
var decodedBanTime = structs.var_int.decode(decodedFatal.rest);
|
||||
var decodedVector = structs.var_str.decode(decodedBanTime.rest);
|
||||
var decodedErrorText = structs.var_str.decode(decodedVector.rest);
|
||||
|
||||
var decodedVectorLength = structs.var_int.decode(decodedBanTime.rest);
|
||||
// NOTE(Kagami): Inventory vector should be only 32-byte in size but
|
||||
// currently we don't ensure it.
|
||||
var vectorLength = decodedVectorLength.value;
|
||||
var rest = decodedVectorLength.rest;
|
||||
assert(rest.length >= vectorLength, "Buffer is too small");
|
||||
var vector = null;
|
||||
if (vectorLength) {
|
||||
vector = new Buffer(vectorLength);
|
||||
rest.copy(vector);
|
||||
rest = rest.slice(vectorLength);
|
||||
}
|
||||
|
||||
var decodedErrorText = structs.var_str.decode(rest);
|
||||
var length = (
|
||||
decodedFatal.length +
|
||||
decodedBanTime.length +
|
||||
decodedVector.length +
|
||||
decodedVectorLength.length + vectorLength +
|
||||
decodedErrorText.length
|
||||
);
|
||||
return {
|
||||
fatal: decodedFatal.value,
|
||||
banTime: decodedBanTime.value,
|
||||
vector: decodedVector.str,
|
||||
vector: vector,
|
||||
errorText: decodedErrorText.str,
|
||||
// Real data length.
|
||||
length: length,
|
||||
|
@ -424,6 +543,16 @@ var error = exports.error = {
|
|||
/**
|
||||
* Encode `error` message.
|
||||
* @param {Object} opts - Error options
|
||||
* @param {number=} opts.fatal - Type of the error
|
||||
* ([warning]{@link module:bitmessage/messages.error.WARNING} by
|
||||
* default)
|
||||
* @param {number=} opts.banTime - Inform the other node, that you
|
||||
* will not accept further connections for this number of seconds (0
|
||||
* by default)
|
||||
* @param {Buffer=} opts.vector - A 32-byte
|
||||
* [inventory vector]{@link module:bitmessage/structs.inv_vect}
|
||||
* related to the error (empty by default)
|
||||
* @param {string} opts.errorText - A human-readable error description
|
||||
* @return {Buffer} Encoded message.
|
||||
*/
|
||||
encode: function(opts) {
|
||||
|
@ -433,19 +562,19 @@ var error = exports.error = {
|
|||
|
||||
/**
|
||||
* Encode `error` message payload.
|
||||
* @param {Object} opts - Error options
|
||||
* @return {Buffer} Encoded payload.
|
||||
* The same as [encode]{@link module:bitmessage/messages.error.encode}.
|
||||
*/
|
||||
encodePayload: function(opts) {
|
||||
var fatal = opts.fatal || error.WARNING;
|
||||
var banTime = opts.banTime || 0;
|
||||
var vector = opts.vector || "";
|
||||
var errorText = opts.errorText || "";
|
||||
// TODO(Kagami): Validate vector length.
|
||||
var vector = opts.vector || new Buffer(0);
|
||||
return Buffer.concat([
|
||||
structs.var_int.encode(fatal),
|
||||
structs.var_int.encode(banTime),
|
||||
structs.var_str.encode(vector),
|
||||
structs.var_str.encode(errorText),
|
||||
structs.var_int.encode(vector.length),
|
||||
vector,
|
||||
structs.var_str.encode(opts.errorText),
|
||||
]);
|
||||
},
|
||||
};
|
||||
|
@ -459,13 +588,13 @@ var error = exports.error = {
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -654,13 +654,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id="Address"><span class="type-signature"></span>new Address<span class="signature">(opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"></span></h4>
|
||||
<h4 class="name" id="Address"><span class="type-signature"></span>new Address<span class="signature">(opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -104,9 +104,9 @@
|
|||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
<optional><br>
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -115,7 +115,217 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Address options</p></td>
|
||||
<td class="description last"><p>Address options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Version number (4 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Stream number (1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>behavior</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.PubkeyBitfield.html">Pubkey features</a> (<code>DOES_ACK</code> by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>signPrivateKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Signing private key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>signPublicKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Signing public key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encPrivateKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Encryption private key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encPublicKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Encryption public key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ripe</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Keys RIPEMD hash</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -156,7 +366,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line24">line 24</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line46">line 46</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -305,7 +515,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line65">line 65</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line87">line 87</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -358,14 +568,14 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".fromPassphrase"><span class="type-signature">(static) </span>fromPassphrase<span class="signature">(opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Address}</span></h4>
|
||||
<h4 class="name" id=".fromPassphrase"><span class="type-signature">(static) </span>fromPassphrase<span class="signature">(opts)</span><span class="type-signature"> → {Address}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Create new Bitmessage address from passphrase.</p>
|
||||
<p>Create a new Bitmessage address from passphrase.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -389,6 +599,51 @@
|
|||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Passphrase or address options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
@ -403,7 +658,138 @@
|
|||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
<td class="name"><code>passphrase</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Passphrase to generate address from</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ripeLength</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Required length of the short
|
||||
RIPEMD hash (19 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Version number (4 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Stream number (1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>behavior</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
@ -418,9 +804,9 @@
|
|||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
<optional><br>
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -429,7 +815,14 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Address options</p></td>
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.PubkeyBitfield.html">Pubkey features</a> (<code>DOES_ACK</code> by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -470,7 +863,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line265">line 265</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line298">line 298</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -497,7 +890,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Generated address object.</p>
|
||||
<p>New address object.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -523,14 +916,14 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".fromRandom"><span class="type-signature">(static) </span>fromRandom<span class="signature">(opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Address}</span></h4>
|
||||
<h4 class="name" id=".fromRandom"><span class="type-signature">(static) </span>fromRandom<span class="signature">(opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Address}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Create new Bitmessage address from random encryption and signing
|
||||
<p>Create a new Bitmessage address with random encryption and signing
|
||||
private keys.</p>
|
||||
</div>
|
||||
|
||||
|
@ -584,9 +977,9 @@ private keys.</p>
|
|||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
<optional><br>
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -595,7 +988,126 @@ private keys.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Address options</p></td>
|
||||
<td class="description last"><p>Address options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ripeLength</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Required length of the short RIPEMD
|
||||
hash (19 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Version number (4 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Stream number (1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>behavior</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.PubkeyBitfield.html">Pubkey features</a> (<code>DOES_ACK</code> by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -636,7 +1148,7 @@ private keys.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line233">line 233</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line260">line 260</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -663,7 +1175,7 @@ private keys.</p>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Generated address object.</p>
|
||||
<p>New address object.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -696,7 +1208,7 @@ private keys.</p>
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Test if given object is an Address instance.<br>NOTE: Implementation is just simple <code>instanceof</code> but it improves
|
||||
<p>Test if the given object is an Address instance.<br>NOTE: Implementation is just simple <code>instanceof</code> but it improves
|
||||
readability and consistent with <code>isArray</code>, <code>isBuffer</code>, etc.</p>
|
||||
</div>
|
||||
|
||||
|
@ -790,7 +1302,7 @@ readability and consistent with <code>isArray</code>, <code>isBuffer</code>, etc
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line56">line 56</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line78">line 78</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -890,7 +1402,7 @@ readability and consistent with <code>isArray</code>, <code>isBuffer</code>, etc
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line45">line 45</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line67">line 67</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -994,7 +1506,7 @@ readability and consistent with <code>isArray</code>, <code>isBuffer</code>, etc
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line217">line 217</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line239">line 239</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -1099,7 +1611,7 @@ readability and consistent with <code>isArray</code>, <code>isBuffer</code>, etc
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line142">line 142</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line164">line 164</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -1205,7 +1717,7 @@ encrypt/decrypt
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line156">line 156</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line178">line 178</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -1310,7 +1822,7 @@ encrypt/decrypt
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line123">line 123</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line145">line 145</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -1416,7 +1928,7 @@ encrypt/decrypt
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line133">line 133</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line155">line 155</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -1476,7 +1988,7 @@ encrypt/decrypt
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Get the ripe hash of the address without prefix zeroes.</p>
|
||||
<p>Get the RIPEMD hash of the address keys without prefix nulls.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -1520,7 +2032,7 @@ encrypt/decrypt
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line104">line 104</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line126">line 126</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -1547,7 +2059,7 @@ encrypt/decrypt
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A short ripe hash.</p>
|
||||
<p>A short RIPEMD hash.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -1624,7 +2136,7 @@ encrypt/decrypt
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line164">line 164</a>
|
||||
<a href="address.js.html">address.js</a>, <a href="address.js.html#line186">line 186</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -1688,13 +2200,13 @@ encrypt/decrypt
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
<div class="container-overview">
|
||||
|
||||
|
||||
<div class="description"><p>Working with Bitmessage addresses.</p></div>
|
||||
<div class="description"><p>Working with Bitmessage addresses.<br><strong>NOTE</strong>: <code>Address</code> is exported as a module.</p></div>
|
||||
|
||||
|
||||
|
||||
|
@ -119,6 +119,20 @@
|
|||
|
||||
|
||||
|
||||
<h5>Example</h5>
|
||||
|
||||
<pre class="prettyprint"><code>var Address = require("bitmessage").Address;
|
||||
// Or: var Address = require("bitmessage/address");
|
||||
|
||||
// Generate a new random Bitmessage identity.
|
||||
var addr1 = Address.fromRandom();
|
||||
console.log("New random Bitmessage address:", addr1.encode());
|
||||
|
||||
// Or create it from passphrase.
|
||||
var addr2 = Address.fromPassphrase("test");
|
||||
console.log("Deterministic Bitmessage address:", addr2.encode());</code></pre>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -158,13 +172,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -262,7 +262,7 @@ the mesage</p></td>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="crypto.js.html">crypto.js</a>, <a href="crypto.js.html#line172">line 172</a>
|
||||
<a href="crypto.js.html">crypto.js</a>, <a href="crypto.js.html#line171">line 171</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -289,10 +289,8 @@ the mesage</p></td>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<ul>
|
||||
<li>A promise that resolves with the
|
||||
plaintext on successful decryption and rejects on failure.</li>
|
||||
</ul>
|
||||
<p>A promise that resolves with the plaintext
|
||||
on successful decryption and rejects on failure.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -318,7 +316,7 @@ plaintext on successful decryption and rejects on failure.</li>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encrypt"><span class="type-signature">(static) </span>encrypt<span class="signature">(publicKeyTo, msg, opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
<h4 class="name" id=".encrypt"><span class="type-signature">(static) </span>encrypt<span class="signature">(publicKeyTo, msg, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -440,9 +438,9 @@ plaintext on successful decryption and rejects on failure.</li>
|
|||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
<optional><br>
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -451,9 +449,81 @@ plaintext on successful decryption and rejects on failure.</li>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>You may also
|
||||
specify initialization vector (16 bytes) and ephemeral private key
|
||||
(32 bytes) to get deterministic results.</p></td>
|
||||
<td class="description last"><p>You may also specify initialization vector
|
||||
and ephemeral private key to get deterministic results</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>iv</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Initialization vector (16 bytes)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ephemPrivateKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Ephemeral private key (32
|
||||
bytes)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -494,7 +564,7 @@ specify initialization vector (16 bytes) and ephemeral private key
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="crypto.js.html">crypto.js</a>, <a href="crypto.js.html#line158">line 158</a>
|
||||
<a href="crypto.js.html">crypto.js</a>, <a href="crypto.js.html#line157">line 157</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -521,10 +591,8 @@ specify initialization vector (16 bytes) and ephemeral private key
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<ul>
|
||||
<li>A promise that resolves with the buffer
|
||||
in <code>encrypted</code> format successful encryption and rejects on failure.</li>
|
||||
</ul>
|
||||
<p>A promise that resolves with the buffer in
|
||||
<code>encrypted</code> format successful encryption and rejects on failure.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -557,7 +625,7 @@ in <code>encrypted</code> format successful encryption and rejects on failure.</
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Generate new random private key.</p>
|
||||
<p>Generate a new random private key.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -1749,7 +1817,7 @@ format when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".verify"><span class="type-signature">(static) </span>verify<span class="signature">(publicKey, msg, sig)</span><span class="type-signature"> → {Promise.<undefined>}</span></h4>
|
||||
<h4 class="name" id=".verify"><span class="type-signature">(static) </span>verify<span class="signature">(publicKey, msg, sig)</span><span class="type-signature"> → {Promise.<null>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -1922,8 +1990,8 @@ format when fulfilled.</p>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that resolves on correct
|
||||
signature and rejects on bad key or signature.</p>
|
||||
<p>A promise that resolves on correct signature
|
||||
and rejects on bad key or signature.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -1934,7 +2002,7 @@ signature and rejects on bad key or signature.</p>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<undefined></span>
|
||||
<span class="param-type">Promise.<null></span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -1960,13 +2028,13 @@ signature and rejects on bad key or signature.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line166">line 166</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line230">line 230</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -219,7 +219,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line172">line 172</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line245">line 245</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -246,7 +246,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>addr</code> structure.</p>
|
||||
<p><a href="module-bitmessage_messages.addr.html#.DecodeResult">Decoded <code>addr</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -257,7 +257,7 @@
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -272,14 +272,15 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>addr</code> message payload.</p>
|
||||
<p>Decode <code>addr</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.addr.html#.decode">decode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -290,55 +291,6 @@
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -372,7 +324,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line183">line 183</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line255">line 255</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -395,28 +347,6 @@
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>addr</code> structure.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -484,7 +414,8 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Network addresses</p></td>
|
||||
<td class="description last"><p>List of
|
||||
<a href="module-bitmessage_structs.net_addr.html#.encode">net_addr encode options</a></p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -525,7 +456,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line206">line 206</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line279">line 279</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -578,14 +509,15 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">(addrs)</span><span class="type-signature"> → {Buffer}</span></h4>
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>addr</code> message payload.</p>
|
||||
<p>Encode <code>addr</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.addr.html#.encode">encode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -596,10 +528,99 @@
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
<table class="params">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line288">line 288</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
|
@ -637,7 +658,31 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Network addresses</p></td>
|
||||
<td class="description last"><p>List of
|
||||
<a href="module-bitmessage_structs.net_addr.html#.DecodeResult">decoded <code>net_addr</code> structures</a></p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -647,8 +692,6 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
@ -678,7 +721,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line216">line 216</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line231">line 231</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -694,41 +737,7 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -742,13 +751,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line338">line 338</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line431">line 431</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -168,7 +168,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line349">line 349</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line442">line 442</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -241,7 +241,7 @@ maybe ban you for some time.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line356">line 356</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line449">line 449</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -313,7 +313,7 @@ maybe ban you for some time.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line343">line 343</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line436">line 436</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -340,7 +340,7 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -440,7 +440,7 @@ maybe ban you for some time.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line363">line 363</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line470">line 470</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -467,7 +467,7 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>error</code> structure.</p>
|
||||
<p><a href="module-bitmessage_messages.error.html#.DecodeResult">Decoded <code>error</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -478,7 +478,7 @@ maybe ban you for some time.</p>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -493,14 +493,15 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>error</code> message payload.</p>
|
||||
<p>Decode <code>error</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.error.html#.decode">decode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -511,55 +512,6 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -593,7 +545,7 @@ maybe ban you for some time.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line374">line 374</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line480">line 480</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -616,28 +568,6 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>error</code> structure.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -705,7 +635,171 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Error options</p></td>
|
||||
<td class="description last"><p>Error options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>fatal</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Type of the error
|
||||
(<a href="module-bitmessage_messages.error.html#.WARNING">warning</a> by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>banTime</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Inform the other node, that you
|
||||
will not accept further connections for this number of seconds (0
|
||||
by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>vector</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 32-byte
|
||||
<a href="module-bitmessage_structs.inv_vect.html">inventory vector</a>
|
||||
related to the error (empty by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>errorText</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A human-readable error description</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -746,7 +840,7 @@ maybe ban you for some time.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line401">line 401</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line530">line 530</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -799,14 +893,15 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">(opts)</span><span class="type-signature"> → {Buffer}</span></h4>
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>error</code> message payload.</p>
|
||||
<p>Encode <code>error</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.error.html#.encode">encode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -817,55 +912,6 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Error options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -899,7 +945,7 @@ maybe ban you for some time.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line411">line 411</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line539">line 539</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -922,34 +968,264 @@ maybe ban you for some time.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>fatal</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Type of the error</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>banTime</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The other node informs that it will
|
||||
not accept further connections for this number of seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>vector</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
<nullable><br>
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.inv_vect.html">Inventory vector</a>
|
||||
related to the error</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>errorText</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A human-readable error description</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line451">line 451</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -963,13 +1239,13 @@ maybe ban you for some time.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -78,7 +78,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line294">line 294</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line376">line 376</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -121,7 +121,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -221,7 +221,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line301">line 301</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line392">line 392</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -248,7 +248,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>getdata</code> structure.</p>
|
||||
<p><a href="module-bitmessage_messages.getdata.html#.DecodeResult">Decoded <code>getdata</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -259,7 +259,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -274,14 +274,15 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>getdata</code> message payload.</p>
|
||||
<p>Decode <code>getdata</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.getdata.html#.decode">decode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -292,55 +293,6 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -374,7 +326,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line316">line 316</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line398">line 398</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -397,28 +349,6 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>inv</code> structure.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -486,7 +416,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Inventory vector list</p></td>
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.inv_vect.html">Inventory vector</a> list</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -527,7 +457,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line312">line 312</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line412">line 412</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -580,14 +510,15 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">(inventory)</span><span class="type-signature"> → {Buffer}</span></h4>
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>getdata</code> message payload.</p>
|
||||
<p>Encode <code>getdata</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.getdata.html#.encode">encode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -598,10 +529,99 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
<table class="params">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line417">line 417</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
|
@ -639,7 +659,31 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Inventory vector list</p></td>
|
||||
<td class="description last"><p>List of
|
||||
<a href="module-bitmessage_structs.inv_vect.html">inventory vectors</a></p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -649,8 +693,6 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
@ -680,7 +722,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line323">line 323</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line377">line 377</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -696,41 +738,7 @@ content of a specific object after filtering known elements.</p></div>
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -744,13 +752,13 @@ content of a specific object after filtering known elements.</p></div>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -123,6 +123,35 @@
|
|||
|
||||
|
||||
|
||||
<h5>Example</h5>
|
||||
|
||||
<pre class="prettyprint"><code>var structs = require("bitmessage").structs;
|
||||
var messages = require("bitmessage").messages;
|
||||
|
||||
// Simple encoding and decoding:
|
||||
var vermsg = messages.version.encode({
|
||||
nonce: Buffer(8), // Hack detection connection to self
|
||||
remoteHost: "1.1.1.1",
|
||||
remotePort: 8444,
|
||||
});
|
||||
console.log(messages.version.decode(vermsg).remoteHost); // 1.1.1.1
|
||||
|
||||
// Low-level encoding and decoding:
|
||||
var addrPayload = messages.addr.encodePayload([
|
||||
{host: "2.2.2.2", port: 28444},
|
||||
]);
|
||||
var addrmsg = structs.message.encode("addr", addrPayload);
|
||||
var decoded = structs.message.decode(addrmsg);
|
||||
console.log(decoded.command); // addr
|
||||
var payload = decoded.payload;
|
||||
var decodedPayload = messages.addr.decodePayload(payload);
|
||||
console.log(decodedPayload.addrs[0].host); // 2.2.2.2
|
||||
|
||||
// Encode with empty payload:
|
||||
var verackmsg = structs.message.encode("verack");
|
||||
console.log(structs.message.decode(verackmsg).command); // verack</code></pre>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -178,8 +207,7 @@
|
|||
Note that this function doesn't do any validation because it is
|
||||
already provided by
|
||||
<a href="module-bitmessage_structs.message.html#.decode">message.decode</a>
|
||||
routine. Normally you call this for each incoming message and then
|
||||
call decode function of the appropriate message handler.</p>
|
||||
routine.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -272,7 +300,7 @@ call decode function of the appropriate message handler.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line31">line 31</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line57">line 57</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -336,13 +364,13 @@ call decode function of the appropriate message handler.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -77,7 +77,7 @@ more objects.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line230">line 230</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line303">line 303</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -120,7 +120,7 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -220,7 +220,7 @@ more objects.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line236">line 236</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line318">line 318</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -247,7 +247,7 @@ more objects.</p></div>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>inv</code> structure.</p>
|
||||
<p><a href="module-bitmessage_messages.inv.html#.DecodeResult">Decoded <code>inv</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -258,7 +258,7 @@ more objects.</p></div>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -273,14 +273,15 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>inv</code> message payload.</p>
|
||||
<p>Decode <code>inv</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.inv.html#.decode">decode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -291,55 +292,6 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -373,7 +325,7 @@ more objects.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line247">line 247</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line328">line 328</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -396,28 +348,6 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>inv</code> structure.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -485,7 +415,7 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Inventory vector list</p></td>
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.inv_vect.html">Inventory vector</a> list</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -526,7 +456,7 @@ more objects.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line270">line 270</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line352">line 352</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -579,14 +509,15 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">(inventory)</span><span class="type-signature"> → {Buffer}</span></h4>
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>inv</code> message payload.</p>
|
||||
<p>Encode <code>inv</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.inv.html#.encode">encode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -597,10 +528,99 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
<table class="params">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line361">line 361</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
|
@ -638,7 +658,31 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Inventory vector list</p></td>
|
||||
<td class="description last"><p>List of
|
||||
<a href="module-bitmessage_structs.inv_vect.html">inventory vectors</a></p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -648,8 +692,6 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
@ -679,7 +721,7 @@ more objects.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line280">line 280</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line304">line 304</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -695,41 +737,7 @@ more objects.</p></div>
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -743,13 +751,13 @@ more objects.</p></div>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line52">line 52</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line83">line 83</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -110,82 +110,6 @@
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Members</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".NONCE"><span class="type-signature">(static, constant) </span>NONCE<span class="type-signature"> :Buffer</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Random nonce used to detect connections to self.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line57">line 57</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Methods</h3>
|
||||
|
@ -195,15 +119,14 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>version</code> message.
|
||||
NOTE: <code>nonce</code> is copied.</p>
|
||||
<p>Decode <code>version</code> message.<br>NOTE: <code>nonce</code> is copied.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -296,7 +219,7 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line65">line 65</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line112">line 112</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -323,7 +246,7 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>version</code> structure.</p>
|
||||
<p><a href="module-bitmessage_messages.version.html#.DecodeResult">Decoded <code>version</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -334,7 +257,7 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -349,7 +272,7 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -357,7 +280,7 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
<div class="description">
|
||||
<p>Decode <code>version</code> message payload.
|
||||
NOTE: <code>nonce</code> is copied.</p>
|
||||
The same as <a href="module-bitmessage_messages.version.html#.decode">decode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -368,55 +291,6 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -450,7 +324,7 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line77">line 77</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line122">line 122</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -473,28 +347,6 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>version</code> structure.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -562,7 +414,309 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Version options</p></td>
|
||||
<td class="description last"><p>Version options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>services</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.ServicesBitfield.html">Service</a>
|
||||
features to be enabled for this connection (<code>NODE_NETWORK</code> by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>time</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Date</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Node time (current time by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>remoteHost</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>IPv4/IPv6 address of the node
|
||||
receiving this message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>remotePort</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Port of the node receiving this
|
||||
message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>port</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Incoming port of the node (8444 by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Random nonce used to detect connection
|
||||
to self (unique per node.js process by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>userAgent</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array</span>
|
||||
|
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_user-agent.html">User agent</a> of the node
|
||||
(bitmessage's by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>streamNumbers</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array.<number></span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Streams accepted by the
|
||||
node (1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -603,7 +757,7 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line113">line 113</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line177">line 177</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -656,14 +810,15 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">(opts)</span><span class="type-signature"> → {Buffer}</span></h4>
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>version</code> message payload.</p>
|
||||
<p>Encode <code>version</code> message payload.
|
||||
The same as <a href="module-bitmessage_messages.version.html#.encode">encode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -674,55 +829,6 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Version options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -756,7 +862,7 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line123">line 123</a>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line186">line 186</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -779,34 +885,331 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>services</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.ServicesBitfield.html">Service</a>
|
||||
features to be enabled for this connection</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>time</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Date</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Node time</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>remoteHost</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>IPv4/IPv6 address of the node
|
||||
receiving this message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>remotePort</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Port of the node receiving this
|
||||
message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>port</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Incoming port of the node sending this
|
||||
message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Random nonce used to detect connection
|
||||
to self</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>userAgent</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array</span>
|
||||
|
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_user-agent.html">User agent</a> of the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>streamNumbers</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array.<number></span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Streams accepted by the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="messages.js.html">messages.js</a>, <a href="messages.js.html#line84">line 84</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -820,13 +1223,13 @@ NOTE: <code>nonce</code> is copied.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
881
docs/module-bitmessage_net_base.BaseTransport.html
Normal file
881
docs/module-bitmessage_net_base.BaseTransport.html
Normal file
|
@ -0,0 +1,881 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Class: BaseTransport</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Class: BaseTransport</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
|
||||
<header>
|
||||
|
||||
<h2>
|
||||
<span class="ancestors"><a href="module-bitmessage_net_base.html">bitmessage/net/base</a>.</span>
|
||||
|
||||
BaseTransport
|
||||
</h2>
|
||||
|
||||
|
||||
</header>
|
||||
|
||||
<article>
|
||||
<div class="container-overview">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="BaseTransport"><span class="type-signature"></span>new BaseTransport<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Base transport class. Allows to use single class for both client and
|
||||
server modes (as separate instances).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_base.js.html">net/base.js</a>, <a href="net_base.js.html#line24">line 24</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Methods</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="bootstrap"><span class="type-signature">(abstract) </span>bootstrap<span class="signature">()</span><span class="type-signature"> → {Promise.<Array>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Do the transport-specific bootstrap process and return promise that
|
||||
contains discovered nodes when fulfilled (both modes).<br>NOTE: Do not use nodes received by this method in <code>addr</code> messages!
|
||||
This is meaningless.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_base.js.html">net/base.js</a>, <a href="net_base.js.html#line38">line 38</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Array></span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="broadcast"><span class="type-signature">(abstract) </span>broadcast<span class="signature">(msg, payload<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Send <a href="module-bitmessage_structs.message.html">message</a> to all
|
||||
connected clients (server mode only).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>msg</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Encoded message or command string</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload (used if the first
|
||||
argument is a string)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_base.js.html">net/base.js</a>, <a href="net_base.js.html#line82">line 82</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="close"><span class="type-signature">(abstract) </span>close<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Close connection(s) and/or stop listening (both modes).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_base.js.html">net/base.js</a>, <a href="net_base.js.html#line90">line 90</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="connect"><span class="type-signature">(abstract) </span>connect<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Connect to the transport-specific address. Enters client mode. Should
|
||||
emit <code>open</code> event after successful connect and <code>established</code> event
|
||||
after <code>verack</code> messages exchange.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_base.js.html">net/base.js</a>, <a href="net_base.js.html#line48">line 48</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="listen"><span class="type-signature">(abstract) </span>listen<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Listen for the transport-specific incoming connections. Enters server
|
||||
mode. Should emit <code>connection</code> event with a transport instance for
|
||||
each new connection.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_base.js.html">net/base.js</a>, <a href="net_base.js.html#line58">line 58</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="send"><span class="type-signature">(abstract) </span>send<span class="signature">(msg, payload<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Send <a href="module-bitmessage_structs.message.html">message</a> over the
|
||||
wire (client mode only).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>msg</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Encoded message or command string</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload (used if the first
|
||||
argument is a string)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_base.js.html">net/base.js</a>, <a href="net_base.js.html#line70">line 70</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
173
docs/module-bitmessage_net_base.html
Normal file
173
docs/module-bitmessage_net_base.html
Normal file
|
@ -0,0 +1,173 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Module: bitmessage/net/base</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Module: bitmessage/net/base</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
|
||||
<header>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</header>
|
||||
|
||||
<article>
|
||||
<div class="container-overview">
|
||||
|
||||
|
||||
<div class="description"><p>Networking base module. Defines base transport interface, useful for
|
||||
implementing new transports. End-users should import some transport
|
||||
instead in order to connect/accept connections to/from other nodes.<br><strong>NOTE</strong>: <code>BaseTransport</code> is exported as a module.</p></div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_base.js.html">net/base.js</a>, <a href="net_base.js.html#line1">line 1</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Example</h5>
|
||||
|
||||
<pre class="prettyprint"><code>var BaseTransport = require("bitmessage/net/base");</code></pre>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Classes</h3>
|
||||
|
||||
<dl>
|
||||
<dt><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
573
docs/module-bitmessage_net_tcp.TcpTransport.html
Normal file
573
docs/module-bitmessage_net_tcp.TcpTransport.html
Normal file
|
@ -0,0 +1,573 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Class: TcpTransport</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Class: TcpTransport</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
|
||||
<header>
|
||||
|
||||
<h2>
|
||||
<span class="ancestors"><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a>.</span>
|
||||
|
||||
TcpTransport
|
||||
</h2>
|
||||
|
||||
|
||||
</header>
|
||||
|
||||
<article>
|
||||
<div class="container-overview">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="TcpTransport"><span class="type-signature"></span>new TcpTransport<span class="signature">(opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>TCP transport class. Implements
|
||||
<a href="module-bitmessage_net_base.BaseTransport.html">base transport interface</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Transport options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>seeds</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Bootstrap nodes (none by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>dnsSeeds</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Bootstrap DNS nodes (none by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>services</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.ServicesBitfield.html">Service features</a>
|
||||
provided by this node (<code>NODE_NETWORK</code> by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>userAgent</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array</span>
|
||||
|
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_user-agent.html">User agent</a> of this node
|
||||
(bitmessage's by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>streamNumbers</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array.<number></span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Streams accepted by this node
|
||||
(1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>port</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Incoming port of this node (8444 by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_tcp.js.html">net/tcp.js</a>, <a href="net_tcp.js.html#line69">line 69</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Methods</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="connect"><span class="type-signature"></span>connect<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Connect to a TCP node. Connection arguments are the same as for
|
||||
<a href="http://nodejs.org/api/net.html#net_net_connect_port_host_connectlistener">net.connect</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_tcp.js.html">net/tcp.js</a>, <a href="net_tcp.js.html#line240">line 240</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="listen"><span class="type-signature"></span>listen<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Listen for incoming TCP connections. Listen arguments are the same as
|
||||
for
|
||||
<a href="http://nodejs.org/api/net.html#net_server_listen_port_host_backlog_callback">server.listen</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_tcp.js.html">net/tcp.js</a>, <a href="net_tcp.js.html#line251">line 251</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
197
docs/module-bitmessage_net_tcp.html
Normal file
197
docs/module-bitmessage_net_tcp.html
Normal file
|
@ -0,0 +1,197 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Module: bitmessage/net/tcp</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Module: bitmessage/net/tcp</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
|
||||
<header>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</header>
|
||||
|
||||
<article>
|
||||
<div class="container-overview">
|
||||
|
||||
|
||||
<div class="description"><p>TCP transport compatible with PyBitmessage. Available only for Node
|
||||
platform.<br><strong>NOTE</strong>: <code>TcpTransport</code> is exported as a module.</p></div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_tcp.js.html">net/tcp.js</a>, <a href="net_tcp.js.html#line1">line 1</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Example</h5>
|
||||
|
||||
<pre class="prettyprint"><code>var messages = require("bitmessage").messages;
|
||||
var TcpTransport = require("bitmessage/net/tcp");
|
||||
|
||||
var tcp = new TcpTransport({
|
||||
dnsSeeds: [["bootstrap8444.bitmessage.org", 8444]],
|
||||
});
|
||||
|
||||
tcp.bootstrap().then(function(nodes) {
|
||||
var remoteHost = nodes[0][0];
|
||||
var remotePort = nodes[0][1];
|
||||
console.log("Connecting to", nodes[0]);
|
||||
tcp.connect(remotePort, remoteHost);
|
||||
});
|
||||
|
||||
tcp.on("established", function() {
|
||||
console.log("Connection established");
|
||||
|
||||
tcp.on("message", function(command, payload) {
|
||||
console.log("Got new", command, "message");
|
||||
var decoded;
|
||||
if (command === "addr") {
|
||||
decoded = messages.addr.decodePayload(payload);
|
||||
console.log("Got", decoded.addrs.length, "node addresses");
|
||||
}
|
||||
});
|
||||
});</code></pre>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Classes</h3>
|
||||
|
||||
<dl>
|
||||
<dt><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
551
docs/module-bitmessage_net_ws.WsTransport.html
Normal file
551
docs/module-bitmessage_net_ws.WsTransport.html
Normal file
|
@ -0,0 +1,551 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Class: WsTransport</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Class: WsTransport</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
|
||||
<header>
|
||||
|
||||
<h2>
|
||||
<span class="ancestors"><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a>.</span>
|
||||
|
||||
WsTransport
|
||||
</h2>
|
||||
|
||||
|
||||
</header>
|
||||
|
||||
<article>
|
||||
<div class="container-overview">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="WsTransport"><span class="type-signature"></span>new WsTransport<span class="signature">(opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>WebSocket transport class. Implements
|
||||
<a href="module-bitmessage_net_base.BaseTransport.html">base transport interface</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Transport options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>seeds</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Bootstrap nodes (none by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>services</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.ServicesBitfield.html">Service features</a>
|
||||
provided by this node (<code>NODE_NETWORK</code> by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>userAgent</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array</span>
|
||||
|
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_user-agent.html">User agent</a> of this node
|
||||
(bitmessage's by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>streamNumbers</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Array.<number></span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Streams accepted by this node
|
||||
(1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>port</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Incoming port of this node (8444 by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_ws.js.html">net/ws.js</a>, <a href="net_ws.js.html#line43">line 43</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Methods</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="connect"><span class="type-signature"></span>connect<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Connect to a WebSocket node. Connection arguments are the same as for
|
||||
<a href="https://developer.mozilla.org/en-US/docs/Web/API/WebSocket">WebSocket</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_ws.js.html">net/ws.js</a>, <a href="net_ws.js.html#line165">line 165</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="listen"><span class="type-signature"></span>listen<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Listen for incoming WebSocket connections. Listen arguments are the
|
||||
same as for
|
||||
<a href="https://github.com/websockets/ws#server-example">WebSocketServer</a>.
|
||||
Available only for Node platform.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_ws.js.html">net/ws.js</a>, <a href="net_ws.js.html#line179">line 179</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
173
docs/module-bitmessage_net_ws.html
Normal file
173
docs/module-bitmessage_net_ws.html
Normal file
|
@ -0,0 +1,173 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Module: bitmessage/net/ws</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Module: bitmessage/net/ws</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
|
||||
<header>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</header>
|
||||
|
||||
<article>
|
||||
<div class="container-overview">
|
||||
|
||||
|
||||
<div class="description"><p>WebSocket transport. Needed because browsers can't handle TCP sockets
|
||||
so we use separate WebSocket server to proxy messages into TCP data
|
||||
packets. Available for both Node.js and Browser platforms.<br><strong>NOTE</strong>: <code>WsTransport</code> is exported as a module.</p></div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="net_ws.js.html">net/ws.js</a>, <a href="net_ws.js.html#line1">line 1</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Example</h5>
|
||||
|
||||
<pre class="prettyprint"><code>var WsTransport = require("bitmessage/net/ws");</code></pre>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Classes</h3>
|
||||
|
||||
<dl>
|
||||
<dt><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line784">line 784</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line875">line 875</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodeAsync"><span class="type-signature">(static) </span>decodeAsync<span class="signature">(buf, opts)</span><span class="type-signature"> → {Promise.<Object>}</span></h4>
|
||||
<h4 class="name" id=".decodeAsync"><span class="type-signature">(static) </span>decodeAsync<span class="signature">(buf, opts)</span><span class="type-signature"> → {Promise.<DecodeResult>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -201,121 +201,9 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line792">line 792</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains decoded
|
||||
<code>broadcast</code> object structure when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Object></span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayloadAsync"><span class="type-signature">(static) </span>decodePayloadAsync<span class="signature">(buf, opts)</span><span class="type-signature"> → {Promise.<Object>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>broadcast</code> object message payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
<td class="description last"><p>Any of <a href="module-bitmessage_structs.object.html#.decode">object.decode</a> options and:</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
|
@ -339,35 +227,18 @@
|
|||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
<td class="name"><code>subscriptions</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
<span class="param-type">Array.<Address></span>
|
||||
|
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
@ -378,7 +249,18 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
<td class="description last"><p>Address
|
||||
objects which represent broadcast subscriptions. It is either
|
||||
addresses array or single address or Object
|
||||
addr-by-tag/addr-by-ripe. Time to match the key is O(n), O(1), O(1)
|
||||
respectfully.</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -419,7 +301,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line807">line 807</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line923">line 923</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -446,8 +328,8 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains decoded <code>pubkey</code>
|
||||
object structure when fulfilled.</p>
|
||||
<p>A promise that contains
|
||||
<a href="module-bitmessage_objects.broadcast.html#.DecodeResult">decoded <code>broadcast</code> structure</a> when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -458,7 +340,7 @@ object structure when fulfilled.</p>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Object></span>
|
||||
<span class="param-type">Promise.<DecodeResult></span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -472,6 +354,89 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayloadAsync"><span class="type-signature">(static) </span>decodePayloadAsync<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>broadcast</code> object message payload.
|
||||
The same as <a href="module-bitmessage_objects.broadcast.html#.decodeAsync">decodeAsync</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line936">line 936</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodeAsync"><span class="type-signature">(static) </span>encodeAsync<span class="signature">(opts)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
|
||||
|
@ -532,7 +497,235 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p><code>broadcast</code> object options</p></td>
|
||||
<td class="description last"><p><code>broadcast</code> object options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>from</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Originator of the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>message</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>subject</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Subject for <a href="module-bitmessage_objects.msg.html#.SIMPLE">SIMPLE</a> encoding</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encoding</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Encoding of the message
|
||||
(<a href="module-bitmessage_objects.msg.html#.TRIVIAL">TRIVIAL</a> by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>skipPow</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Do not compute POW (false by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -573,7 +766,7 @@ object structure when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line935">line 935</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line1073">line 1073</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -627,14 +820,15 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayloadAsync"><span class="type-signature">(static) </span>encodePayloadAsync<span class="signature">(opts)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
<h4 class="name" id=".encodePayloadAsync"><span class="type-signature">(static) </span>encodePayloadAsync<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>broadcast</code> object message payload.</p>
|
||||
<p>Encode <code>broadcast</code> object message payload.
|
||||
The same as <a href="module-bitmessage_objects.broadcast.html#.encodeAsync">encodeAsync</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -645,55 +839,6 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><code>broadcast</code> object options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -727,7 +872,7 @@ when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line947">line 947</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line1084">line 1084</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -750,35 +895,678 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains encoded message
|
||||
payload when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Buffer></span>
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 8-byte object nonce</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>type</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object type</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object stream</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>headerLength</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Length of the object header</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>tag</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Tag derived from the address object used
|
||||
to send this <code>broadcast</code> (present only for object version >= 5)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>senderVersion</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's address version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>senderStream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's stream</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>behavior</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's <a href="module-bitmessage_structs.PubkeyBitfield.html">pubkey features</a> that can be expected from
|
||||
the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>signPublicKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's signing public key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encPublicKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's encryption public key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonceTrialsPerByte</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Difficulty parameter of the
|
||||
sender (present only if sender's address version >= 3)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payloadLengthExtraBytes</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Difficulty parameter
|
||||
of the sender (present only if sender's address version >= 3)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encoding</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message encoding</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>message</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message string for
|
||||
<a href="module-bitmessage_objects.msg.html#.TRIVIAL">TRIVIAL</a> and
|
||||
<a href="module-bitmessage_objects.msg.html#.SIMPLE">SIMPLE</a> encodings or
|
||||
unparsed buffer data for other encodings</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>subject</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Subject string for <a href="module-bitmessage_objects.msg.html#.SIMPLE">SIMPLE</a> encoding</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>signature</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Signature of the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line876">line 876</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -792,13 +1580,13 @@ payload when fulfilled.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -78,7 +78,7 @@ for the public key.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line103">line 103</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line92">line 92</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -121,7 +121,7 @@ for the public key.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodeAsync"><span class="type-signature">(static) </span>decodeAsync<span class="signature">(buf, opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Promise.<Object>}</span></h4>
|
||||
<h4 class="name" id=".decodeAsync"><span class="type-signature">(static) </span>decodeAsync<span class="signature">(buf, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<DecodeResult>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -212,9 +212,9 @@ for the public key.</p></div>
|
|||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
<optional><br>
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -223,7 +223,7 @@ for the public key.</p></div>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
<td class="description last"><p>Any of <a href="module-bitmessage_structs.object.html#.decode">object.decode</a> options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -264,7 +264,7 @@ for the public key.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line111">line 111</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line118">line 118</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -291,8 +291,8 @@ for the public key.</p></div>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains decoded
|
||||
<code>getpubkey</code> object structure when fulfilled.</p>
|
||||
<p>A promise that contains
|
||||
<a href="module-bitmessage_objects.getpubkey.html#.DecodeResult">decoded <code>getpubkey</code> structure</a> when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -303,7 +303,7 @@ for the public key.</p></div>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Object></span>
|
||||
<span class="param-type">Promise.<DecodeResult></span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -318,14 +318,15 @@ for the public key.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayloadAsync"><span class="type-signature">(static) </span>decodePayloadAsync<span class="signature">(buf, opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Promise.<Object>}</span></h4>
|
||||
<h4 class="name" id=".decodePayloadAsync"><span class="type-signature">(static) </span>decodePayloadAsync<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>getpubkey</code> object message payload.</p>
|
||||
<p>Decode <code>getpubkey</code> object message payload.
|
||||
The same as <a href="module-bitmessage_objects.getpubkey.html#.decodeAsync">decodeAsync</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -336,98 +337,6 @@ for the public key.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -461,7 +370,7 @@ for the public key.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line126">line 126</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line131">line 131</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -484,29 +393,6 @@ for the public key.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains decoded
|
||||
<code>getpubkey</code> object structure when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Object></span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -574,7 +460,131 @@ for the public key.</p></div>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p><code>getpubkey</code> object options</p></td>
|
||||
<td class="description last"><p><code>getpubkey</code> object options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>to</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Receiver of the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>skipPow</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Do not compute POW (false by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -615,7 +625,7 @@ for the public key.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line152">line 152</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line161">line 161</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -669,14 +679,16 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayloadAsync"><span class="type-signature">(static) </span>encodePayloadAsync<span class="signature">(opts)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
<h4 class="name" id=".encodePayloadAsync"><span class="type-signature">(static) </span>encodePayloadAsync<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>getpubkey</code> object message payload.</p>
|
||||
<p>Encode <code>getpubkey</code> object message payload.
|
||||
The same as
|
||||
<a href="module-bitmessage_objects.getpubkey.html#.encodeAsync">encodeAsync</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -687,55 +699,6 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><code>getpubkey</code> object options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -769,7 +732,7 @@ when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line164">line 164</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line172">line 172</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -792,35 +755,322 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains encoded message
|
||||
payload when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Buffer></span>
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 8-byte object nonce</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>type</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object type</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object stream</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>headerLength</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Length of the object header</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ripe</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The RIPEMD hash of the requested public
|
||||
keys for address version <= 3</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>tag</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>...or tag derived from the address object
|
||||
for address version >= 4</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line93">line 93</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -834,13 +1084,13 @@ payload when fulfilled.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -38,8 +38,8 @@
|
|||
<div class="container-overview">
|
||||
|
||||
|
||||
<div class="description"><p>Working with objects.<br>NOTE: Most operations with objects in this module are asynchronous
|
||||
and return promises.</p></div>
|
||||
<div class="description"><p>Working with objects.<br>NOTE: Most operations with objects are asynchronous and return
|
||||
promises.</p></div>
|
||||
|
||||
|
||||
|
||||
|
@ -161,7 +161,7 @@ and return promises.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".getPayloadType"><span class="type-signature">(static) </span>getPayloadType<span class="signature">(buf)</span><span class="type-signature"> → (nullable) {number}</span></h4>
|
||||
<h4 class="name" id=".getPayloadType"><span class="type-signature">(static) </span>getPayloadType<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -169,12 +169,7 @@ and return promises.</p></div>
|
|||
|
||||
<div class="description">
|
||||
<p>Try to get type of the given object message payload.
|
||||
Note that this function doesn't do any validation because it is
|
||||
already provided by
|
||||
<a href="module-bitmessage_structs.object.html#.decodePayload">object.decodePayload</a>
|
||||
routine. Normally you call this for each incoming object message
|
||||
payload and then call decode function of the appropriate object
|
||||
handler.</p>
|
||||
The same as <a href="module-bitmessage_objects.html#.getType">getType</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -185,55 +180,6 @@ handler.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Buffer that starts with object message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -267,7 +213,7 @@ handler.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line60">line 60</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line49">line 49</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -290,28 +236,6 @@ handler.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Object's type if any.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -425,7 +349,7 @@ then call decode function of the appropriate object handler.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line40">line 40</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line36">line 36</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -489,13 +413,13 @@ then call decode function of the appropriate object handler.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line523">line 523</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line567">line 567</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -169,7 +169,7 @@ simply be sharing its public key with you.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line529">line 529</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line573">line 573</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -241,7 +241,7 @@ simply be sharing its public key with you.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line540">line 540</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line584">line 584</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -314,7 +314,7 @@ of data, like URIs or magnet links.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line535">line 535</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line579">line 579</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -341,7 +341,7 @@ of data, like URIs or magnet links.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodeAsync"><span class="type-signature">(static) </span>decodeAsync<span class="signature">(buf, opts)</span><span class="type-signature"> → {Promise.<Object>}</span></h4>
|
||||
<h4 class="name" id=".decodeAsync"><span class="type-signature">(static) </span>decodeAsync<span class="signature">(buf, opts)</span><span class="type-signature"> → {Promise.<DecodeResult>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -423,121 +423,9 @@ of data, like URIs or magnet links.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line549">line 549</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains decoded <code>msg</code>
|
||||
object structure when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Object></span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayloadAsync"><span class="type-signature">(static) </span>decodePayloadAsync<span class="signature">(buf, opts)</span><span class="type-signature"> → {Promise.<Object>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>msg</code> object message payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
<td class="description last"><p>Any of <a href="module-bitmessage_structs.object.html#.decode">object.decode</a> options and:</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
|
@ -561,13 +449,16 @@ object structure when fulfilled.</p>
|
|||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
<td class="name"><code>identities</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
<span class="param-type">Array.<Address></span>
|
||||
|
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
||||
|
||||
|
||||
|
@ -577,30 +468,15 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
<td class="description last"><p>Address objects used
|
||||
to decrypt the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -641,7 +517,7 @@ object structure when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line564">line 564</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line630">line 630</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -668,8 +544,9 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains decoded <code>msg</code>
|
||||
object structure when fulfilled.</p>
|
||||
<p>A promise that contains [decoded
|
||||
<code>msg</code> structure]<a href="module-bitmessage_objects.msg.html#.DecodeResult">module:bitmessage/objects.msg.DecodeResult</a>
|
||||
when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -680,7 +557,7 @@ object structure when fulfilled.</p>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Object></span>
|
||||
<span class="param-type">Promise.<DecodeResult></span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -694,6 +571,89 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayloadAsync"><span class="type-signature">(static) </span>decodePayloadAsync<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>msg</code> object message payload.
|
||||
The same as <a href="module-bitmessage_objects.msg.html#.decodeAsync">decodeAsync</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line643">line 643</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodeAsync"><span class="type-signature">(static) </span>encodeAsync<span class="signature">(opts)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
|
||||
|
@ -754,7 +714,300 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p><code>msg</code> object options</p></td>
|
||||
<td class="description last"><p><code>msg</code> object options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>from</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Originator of the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>to</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Receiver of the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>message</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>subject</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Subject for <a href="module-bitmessage_objects.msg.html#.SIMPLE">SIMPLE</a> encoding</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encoding</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Encoding of the message
|
||||
(<a href="module-bitmessage_objects.msg.html#.TRIVIAL">TRIVIAL</a> by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>friend</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Whether the receiver is friend and
|
||||
should have minimal POW difficulty (false by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>skipPow</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Do not compute POW (false by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -795,7 +1048,7 @@ object structure when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line663">line 663</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line754">line 754</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -849,14 +1102,15 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayloadAsync"><span class="type-signature">(static) </span>encodePayloadAsync<span class="signature">(opts)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
<h4 class="name" id=".encodePayloadAsync"><span class="type-signature">(static) </span>encodePayloadAsync<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>msg</code> object message payload.</p>
|
||||
<p>Encode <code>msg</code> object message payload.
|
||||
The same as <a href="module-bitmessage_objects.msg.html#.encodeAsync">encodeAsync</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -867,55 +1121,6 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><code>msg</code> object options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -949,7 +1154,7 @@ when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line675">line 675</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line765">line 765</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -972,35 +1177,706 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains encoded message
|
||||
payload when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Buffer></span>
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 8-byte object nonce</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>type</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object type</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object stream</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>headerLength</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Length of the object header</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>senderVersion</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's address version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>senderStream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's stream</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>behavior</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's <a href="module-bitmessage_structs.PubkeyBitfield.html">pubkey features</a> that can be expected from
|
||||
the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>signPublicKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's signing public key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encPublicKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Sender's encryption public key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonceTrialsPerByte</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Difficulty parameter of the
|
||||
sender (present only if sender's address version >= 3)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payloadLengthExtraBytes</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Difficulty parameter
|
||||
of the sender (present only if sender's address version >= 3)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ripe</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The RIPEMD hash of the receiver's keys</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encoding</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message encoding</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>message</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message string for
|
||||
<a href="module-bitmessage_objects.msg.html#.TRIVIAL">TRIVIAL</a> and
|
||||
<a href="module-bitmessage_objects.msg.html#.SIMPLE">SIMPLE</a> encodings or
|
||||
unparsed buffer data for other encodings</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>subject</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Subject string for <a href="module-bitmessage_objects.msg.html#.SIMPLE">SIMPLE</a> encoding</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ack</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message acknowledgement</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>signature</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Signature of the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line586">line 586</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1014,13 +1890,13 @@ payload when fulfilled.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line244">line 244</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line252">line 252</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodeAsync"><span class="type-signature">(static) </span>decodeAsync<span class="signature">(buf, opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Promise.<Object>}</span></h4>
|
||||
<h4 class="name" id=".decodeAsync"><span class="type-signature">(static) </span>decodeAsync<span class="signature">(buf, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Promise.<DecodeResult>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -210,9 +210,9 @@
|
|||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
<optional><br>
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -221,121 +221,9 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line252">line 252</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains decoded <code>pubkey</code>
|
||||
object structure when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Object></span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayloadAsync"><span class="type-signature">(static) </span>decodePayloadAsync<span class="signature">(buf, opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Promise.<Object>}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>pubkey</code> object message payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
<td class="description last"><p>Any of <a href="module-bitmessage_structs.object.html#.decode">object.decode</a> options and:</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
|
@ -347,8 +235,6 @@ object structure when fulfilled.</p>
|
|||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -361,43 +247,18 @@ object structure when fulfilled.</p>
|
|||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
<td class="name"><code>needed</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
<span class="param-type">Array.<Address></span>
|
||||
|
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
@ -405,20 +266,21 @@ object structure when fulfilled.</p>
|
|||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
<td class="description last"><p>Address objects
|
||||
which represent pubkeys that we are interested in (used only for
|
||||
pubkeys v4). It is either addresses array or single address or
|
||||
Object addr-by-tag. Time to match the key is O(n), O(1), O(1)
|
||||
respectfully.</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -459,7 +321,7 @@ object structure when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line267">line 267</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line293">line 293</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -486,8 +348,9 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains decoded <code>pubkey</code>
|
||||
object structure when fulfilled.</p>
|
||||
<p>A promise that contains
|
||||
<a href="module-bitmessage_objects.pubkey.html#.DecodeResult">decoded <code>pubkey</code> structure</a>
|
||||
when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -498,7 +361,7 @@ object structure when fulfilled.</p>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Object></span>
|
||||
<span class="param-type">Promise.<DecodeResult></span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -512,6 +375,89 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayloadAsync"><span class="type-signature">(static) </span>decodePayloadAsync<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>pubkey</code> object message payload.
|
||||
The same as <a href="module-bitmessage_objects.pubkey.html#.decodeAsync">decodeAsync</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line306">line 306</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodeAsync"><span class="type-signature">(static) </span>encodeAsync<span class="signature">(opts)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
|
||||
|
@ -572,7 +518,162 @@ object structure when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p><code>pubkey</code> object options</p></td>
|
||||
<td class="description last"><p><code>pubkey</code> object options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>from</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Originator of the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>to</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Address</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Receiver of the message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>skipPow</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Do not compute POW (false by
|
||||
default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -613,7 +714,7 @@ object structure when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line347">line 347</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line391">line 391</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -667,14 +768,15 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayloadAsync"><span class="type-signature">(static) </span>encodePayloadAsync<span class="signature">(opts)</span><span class="type-signature"> → {Promise.<Buffer>}</span></h4>
|
||||
<h4 class="name" id=".encodePayloadAsync"><span class="type-signature">(static) </span>encodePayloadAsync<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>pubkey</code> object message payload.</p>
|
||||
<p>Encode <code>pubkey</code> object message payload.
|
||||
The same as <a href="module-bitmessage_objects.pubkey.html#.encodeAsync">encodeAsync</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -685,55 +787,6 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><code>pubkey</code> object options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -767,7 +820,7 @@ when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line359">line 359</a>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line402">line 402</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -790,35 +843,440 @@ when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>A promise that contains encoded message
|
||||
payload when fulfilled.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Promise.<Buffer></span>
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 8-byte object nonce</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>type</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object type</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object stream</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>headerLength</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Length of the object header</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>tag</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Tag derived from the address object
|
||||
(present only if object version is 4)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>behavior</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.PubkeyBitfield.html">Pubkey features</a> that can be expected from
|
||||
the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>signPublicKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Signing public key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>encPublicKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Encryption public key</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonceTrialsPerByte</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Difficulty parameter of the
|
||||
node (present only for <code>pubkey</code> version >= 3)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payloadLengthExtraBytes</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Difficulty parameter
|
||||
of the node (present only for <code>pubkey</code> version >= 3)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>signature</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Signature of the message (present
|
||||
only for <code>pubkey</code> version >= 3)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Real data length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="objects.js.html">objects.js</a>, <a href="objects.js.html#line253">line 253</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -832,13 +1290,13 @@ payload when fulfilled.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -203,7 +203,130 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Proof of work options</p></td>
|
||||
<td class="description last"><p>Proof of work options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>target</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Proof of work target or pass
|
||||
<a href="module-bitmessage_pow.html#.getTarget">getTarget</a> options to <code>opts</code>
|
||||
to compute it</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload (with nonce)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>...or already derived nonce</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>initialHash</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>...and initial hash</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -244,7 +367,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="pow.js.html">pow.js</a>, <a href="pow.js.html#line38">line 38</a>
|
||||
<a href="pow.js.html">pow.js</a>, <a href="pow.js.html#line55">line 55</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -401,8 +524,6 @@
|
|||
|
||||
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
@ -435,8 +556,6 @@ get the initial hash from</p></td>
|
|||
|
||||
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
@ -444,7 +563,8 @@ get the initial hash from</p></td>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Or already computed initial hash</p></td>
|
||||
<td class="description last"><p>...or already computed initial
|
||||
hash</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -479,6 +599,40 @@ get the initial hash from</p></td>
|
|||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>poolSize</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>POW calculation pool size (by
|
||||
default equals to number of cores)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
@ -523,7 +677,7 @@ get the initial hash from</p></td>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="pow.js.html">pow.js</a>, <a href="pow.js.html#line85">line 85</a>
|
||||
<a href="pow.js.html">pow.js</a>, <a href="pow.js.html#line105">line 105</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -636,7 +790,201 @@ the given target when fulfilled.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Target options</p></td>
|
||||
<td class="description last"><p>Target options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live of the message in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payloadLength</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Length of the message payload
|
||||
(with nonce)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>...or payload itself</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonceTrialsPerByte</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>This number is the average
|
||||
number of nonce trials a node will have to perform to meet the Proof
|
||||
of Work requirement. 1000 is the network minimum so any lower values
|
||||
will be automatically raised to 1000.</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payloadLengthExtraBytes</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>This number is added
|
||||
to the data length to make sending small messages more difficult.
|
||||
1000 is the network minimum so any lower values will be automatically
|
||||
raised to 1000.</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -677,7 +1025,7 @@ the given target when fulfilled.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="pow.js.html">pow.js</a>, <a href="pow.js.html#line23">line 23</a>
|
||||
<a href="pow.js.html">pow.js</a>, <a href="pow.js.html#line34">line 34</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -741,13 +1089,13 @@ the given target when fulfilled.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Namespace: PubkeyBitfield</title>
|
||||
<title>JSDoc: Class: PubkeyBitfield</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
|
@ -17,7 +17,7 @@
|
|||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Namespace: PubkeyBitfield</h1>
|
||||
<h1 class="page-title">Class: PubkeyBitfield</h1>
|
||||
|
||||
|
||||
|
||||
|
@ -41,11 +41,125 @@
|
|||
<div class="container-overview">
|
||||
|
||||
|
||||
<div class="description"><p>Pubkey bitfield features.</p></div>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="PubkeyBitfield"><span class="type-signature"></span>new PubkeyBitfield<span class="signature">(buf<span class="signature-attributes">opt</span>, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Pubkey features bitfield (MSB 0).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 4-byte bitfield buffer (will be created if
|
||||
not provided or will be copied if <code>opts.copy</code> is <code>true</code>)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
@ -76,7 +190,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line688">line 688</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line1013">line 1013</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -95,7 +209,31 @@
|
|||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Example</h5>
|
||||
|
||||
<pre class="prettyprint"><code>var PubkeyBitfield = require("bitmessage").structs.PubkeyBitfield;
|
||||
var behavior = PubkeyBitfield().set([
|
||||
PubkeyBitfield.INCLUDE_DESTINATION,
|
||||
PubkeyBitfield.DOES_ACK,
|
||||
]).set(1);
|
||||
console.log(behavior.get(PubkeyBitfield.DOES_ACK)); // true
|
||||
console.log(behavior.get(15)); // false</code></pre>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
@ -120,7 +258,8 @@
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>If true, the receiving node does send acknowledgements (rather than
|
||||
<p>Bit index.
|
||||
If set, the receiving node does send acknowledgements (rather than
|
||||
dropping them).</p>
|
||||
</div>
|
||||
|
||||
|
@ -169,7 +308,7 @@ dropping them).</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line703">line 703</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line1054">line 1054</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -193,9 +332,10 @@ dropping them).</p>
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Receiving node expects that the RIPE hash encoded in their address
|
||||
preceedes the encrypted message data of msg messages bound for
|
||||
them.</p>
|
||||
<p>Bit index.
|
||||
If set, the receiving node expects that the RIPEMD hash encoded in
|
||||
their address preceedes the encrypted message data of msg messages
|
||||
bound for them.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -243,7 +383,79 @@ them.</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line696">line 696</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line1046">line 1046</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="buffer"><span class="type-signature"></span>buffer<span class="type-signature"> :Buffer</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>The contents of the bitfield.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line1030">line 1030</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -263,6 +475,315 @@ them.</p>
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Methods</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="get"><span class="type-signature"></span>get<span class="signature">(index)</span><span class="type-signature"> → {boolean}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Returns a boolean indicating whether the bit is set.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>index</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Bit index (MSB 0)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line1014">line 1014</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="set"><span class="type-signature"></span>set<span class="signature">(index)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Set the given bit(s) to <code>1</code>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>index</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Array.<number></span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Bit(s) index (MSB 0)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line1022">line 1022</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Returns self so methods can be chained.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -277,13 +798,13 @@ them.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Namespace: ServicesBitfield</title>
|
||||
<title>JSDoc: Class: ServicesBitfield</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
|
@ -17,7 +17,7 @@
|
|||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Namespace: ServicesBitfield</h1>
|
||||
<h1 class="page-title">Class: ServicesBitfield</h1>
|
||||
|
||||
|
||||
|
||||
|
@ -41,11 +41,125 @@
|
|||
<div class="container-overview">
|
||||
|
||||
|
||||
<div class="description"><p>Services bitfield features.</p></div>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="ServicesBitfield"><span class="type-signature"></span>new ServicesBitfield<span class="signature">(buf<span class="signature-attributes">opt</span>, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Service features bitfield (MSB 0).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 8-byte bitfield buffer (will be created if
|
||||
not provided or will be copied if <code>opts.copy</code> is <code>true</code>)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
@ -76,7 +190,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line673">line 673</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line964">line 964</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -95,7 +209,28 @@
|
|||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Example</h5>
|
||||
|
||||
<pre class="prettyprint"><code>var ServicesBitfield = require("bitmessage").structs.ServicesBitfield;
|
||||
var services = ServicesBitfield().set(ServicesBitfield.NODE_NETWORK);
|
||||
console.log(services.get(ServicesBitfield.NODE_NETWORK)); // true
|
||||
console.log(services.get(15)); // false</code></pre>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
@ -120,7 +255,7 @@
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>This is a normal network node.</p>
|
||||
<p>Bit index indicating normal network node.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -168,7 +303,79 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line679">line 679</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line994">line 994</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="buffer"><span class="type-signature"></span>buffer<span class="type-signature"> :Buffer</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>The contents of the bitfield.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line981">line 981</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -188,6 +395,315 @@
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Methods</h3>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="get"><span class="type-signature"></span>get<span class="signature">(index)</span><span class="type-signature"> → {boolean}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Returns a boolean indicating whether the bit is set.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>index</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Bit index (MSB 0)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line965">line 965</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id="set"><span class="type-signature"></span>set<span class="signature">(index)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Set the given bit(s) to <code>1</code>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>index</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Array.<number></span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Bit(s) index (MSB 0)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line973">line 973</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Returns self so methods can be chained.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -202,13 +718,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line582">line 582</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line850">line 850</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -219,7 +219,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line588">line 588</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line865">line 865</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -246,7 +246,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded encrypted structure.</p>
|
||||
<p><a href="module-bitmessage_structs.encrypted.html#.DecodeResult">Decoded <code>encrypted</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -257,7 +257,7 @@
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -331,7 +331,127 @@
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Encode options</p></td>
|
||||
<td class="description last"><p>Encoding options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>iv</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Initialization vector (16 bytes)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ephemPrivateKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Ephemeral private key (32
|
||||
bytes)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ciphertext</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The result of encryption (variable
|
||||
size)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>mac</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message authentication code (32 bytes)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -372,7 +492,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line596">line 596</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line874">line 874</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -399,7 +519,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded encrypted payload.</p>
|
||||
<p>Encoded <code>encrypted</code> payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -424,6 +544,200 @@
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>iv</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Initialization vector (16 bytes)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ephemPrivateKey</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Ephemeral private key (32 bytes)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ciphertext</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The result of encryption (variable
|
||||
size)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>mac</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message authentication code (32 bytes)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line856">line 856</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
@ -436,13 +750,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -119,6 +119,27 @@
|
|||
|
||||
|
||||
|
||||
<h5>Example</h5>
|
||||
|
||||
<pre class="prettyprint"><code>var structs = require("bitmessage").structs;
|
||||
|
||||
var encoded = Buffer.concat([
|
||||
structs.var_int.encode(4),
|
||||
Buffer("test"),
|
||||
structs.var_str.encode("test2"),
|
||||
structs.var_int_list.encode([1, 2, 3]),
|
||||
]);
|
||||
|
||||
var decoded1 = structs.var_str.decode(encoded);
|
||||
console.log(decoded1.str); // test
|
||||
var decoded2 = structs.var_str.decode(decoded1.rest);
|
||||
console.log(decoded2.str); // test2
|
||||
var decoded3 = structs.var_int.decode(decoded2.rest);
|
||||
console.log(decoded3.value); // 3
|
||||
var decoded4 = structs.var_int_list.decode(decoded2.rest);
|
||||
console.log(decoded4.list); // [1, 2, 3]</code></pre>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -129,6 +150,16 @@
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Classes</h3>
|
||||
|
||||
<dl>
|
||||
<dt><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></dt>
|
||||
<dd></dd>
|
||||
|
||||
<dt><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -151,12 +182,6 @@
|
|||
<dt><a href="module-bitmessage_structs.object.html">object</a></dt>
|
||||
<dd></dd>
|
||||
|
||||
<dt><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></dt>
|
||||
<dd></dd>
|
||||
|
||||
<dt><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></dt>
|
||||
<dd></dd>
|
||||
|
||||
<dt><a href="module-bitmessage_structs.var_int.html">var_int</a></dt>
|
||||
<dd></dd>
|
||||
|
||||
|
@ -185,13 +210,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line571">line 571</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line836">line 836</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -219,7 +219,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line577">line 577</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line845">line 845</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -246,7 +246,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded <code>inv_vect</code>.</p>
|
||||
<p>A 32-byte encoded <code>inv_vect</code>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -283,13 +283,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line37">line 37</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line97">line 97</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -168,7 +168,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line42">line 42</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line102">line 102</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -195,14 +195,14 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode message structure.<br>NOTE: <code>payload</code> is copied, <code>rest</code> references input buffer.</p>
|
||||
<p>Decode message.<br>NOTE: <code>payload</code> is copied, <code>rest</code> references input buffer.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -295,7 +295,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line51">line 51</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line218">line 218</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -322,7 +322,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded message structure.</p>
|
||||
<p><a href="module-bitmessage_structs.message.html#.DecodeResult">Decoded message structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -333,7 +333,7 @@
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -355,7 +355,7 @@
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode message structure.</p>
|
||||
<p>Encode message.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -471,7 +471,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line86">line 86</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line254">line 254</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -520,8 +520,616 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".tryDecode"><span class="type-signature">(static) </span>tryDecode<span class="signature">(buf)</span><span class="type-signature"> → (nullable) {TryDecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode message in "stream" mode.<br>NOTE: message payload and <code>rest</code> are copied (so the runtime can GC
|
||||
processed buffer data).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Data buffer</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line124">line 124</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p><a href="module-bitmessage_structs.message.html#.TryDecodeResult">Decoded result.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">TryDecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>command</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message command</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Full message length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>rest</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The rest of the input buffer</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line202">line 202</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".TryDecodeResult">TryDecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>message</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoded message</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>command</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message command</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>payload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Full message length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>error</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Error</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>...or decoding error</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>rest</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The rest of the input buffer after
|
||||
processing message</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line104">line 104</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -535,13 +1143,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line498">line 498</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line739">line 739</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf, opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -210,9 +210,9 @@
|
|||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
<optional><br>
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -264,7 +264,7 @@ decode <code>net_addr</code> from
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line507">line 507</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line763">line 763</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -291,7 +291,7 @@ decode <code>net_addr</code> from
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>net_addr</code> structure.</p>
|
||||
<p><a href="module-bitmessage_structs.net_addr.html#.DecodeResult">Decoded <code>net_addr</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -302,7 +302,7 @@ decode <code>net_addr</code> from
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -376,9 +376,234 @@ decode <code>net_addr</code> from
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Encode options; use <code>short</code> option to encode
|
||||
<code>net_addr</code> for
|
||||
<a href="module-bitmessage_messages.version.html">version message</a></p></td>
|
||||
<td class="description last"><p>Encoding options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>short</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Encode <code>net_addr</code> for
|
||||
<a href="module-bitmessage_messages.version.html">version message</a>
|
||||
(false by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>time</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Date</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time the node was last active, not
|
||||
included in short mode (current time by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Stream number of the node, not
|
||||
included in short mode (1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>services</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.ServicesBitfield.html">Services</a>
|
||||
provided by the node (<code>NODE_NETWORK</code> by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>host</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>IPv4/IPv6 address of the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>port</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Incoming port of the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -419,7 +644,7 @@ decode <code>net_addr</code> from
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line538">line 538</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line804">line 804</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -471,6 +696,225 @@ decode <code>net_addr</code> from
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>time</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Date</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time the node was last active, not included
|
||||
in short mode</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Stream number of the node, not included
|
||||
in short mode</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>services</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><a href="module-bitmessage_structs.ServicesBitfield.html">Services</a>
|
||||
provided by the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>host</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>IPv4/IPv6 address of the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>port</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Incoming port of the node</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line740">line 740</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
@ -483,13 +927,13 @@ decode <code>net_addr</code> from
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -78,7 +78,7 @@ nodes.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line108">line 108</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line278">line 278</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -112,6 +112,298 @@ nodes.</p></div>
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Members</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".BROADCAST"><span class="type-signature">(static, constant) </span>BROADCAST<span class="type-signature"> :number</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p><a href="module-bitmessage_objects.broadcast.html">broadcast</a> object type.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line298">line 298</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".GETPUBKEY"><span class="type-signature">(static, constant) </span>GETPUBKEY<span class="type-signature"> :number</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a> object type.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line283">line 283</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".MSG"><span class="type-signature">(static, constant) </span>MSG<span class="type-signature"> :number</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p><a href="module-bitmessage_objects.msg.html">msg</a> object type.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line293">line 293</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".PUBKEY"><span class="type-signature">(static, constant) </span>PUBKEY<span class="type-signature"> :number</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p><a href="module-bitmessage_objects.pubkey.html">pubkey</a> object type.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line288">line 288</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Methods</h3>
|
||||
|
@ -121,7 +413,7 @@ nodes.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf, opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf, opts<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -212,9 +504,9 @@ nodes.</p></div>
|
|||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
<optional><br>
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -223,120 +515,9 @@ nodes.</p></div>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line122">line 122</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>object</code> structure.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">(buf, opts<span class="signature-attributes">nullable</span>)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>object</code> message payload.<br>NOTE: <code>nonce</code> and <code>objectPayload</code> are copied.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
<td class="description last"><p>Decoding options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
|
@ -348,8 +529,6 @@ nodes.</p></div>
|
|||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -362,64 +541,53 @@ nodes.</p></div>
|
|||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>buf</code></td>
|
||||
<td class="name"><code>allowExpired</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Message payload</p></td>
|
||||
<td class="description last"><p>Allow expired objects</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
<td class="name"><code>skipPow</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">boolean</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
<nullable><br>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Decoding options</p></td>
|
||||
<td class="description last"><p>Do not validate object POW</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -460,7 +628,7 @@ nodes.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line135">line 135</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line322">line 322</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -487,7 +655,7 @@ nodes.</p></div>
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>object</code> structure.</p>
|
||||
<p><a href="module-bitmessage_structs.object.html#.DecodeResult">Decoded <code>object</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -498,7 +666,7 @@ nodes.</p></div>
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -512,6 +680,89 @@ nodes.</p></div>
|
|||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".decodePayload"><span class="type-signature">(static) </span>decodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode <code>object</code> message payload.
|
||||
The same as <a href="module-bitmessage_structs.object.html#.decode">decode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line332">line 332</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".encode"><span class="type-signature">(static) </span>encode<span class="signature">(opts)</span><span class="type-signature"> → {Buffer}</span></h4>
|
||||
|
||||
|
@ -572,7 +823,223 @@ nodes.</p></div>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Object options</p></td>
|
||||
<td class="description last"><p>Object options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 8-byte object nonce</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>type</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object type</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object stream (1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>objectPayload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -613,7 +1080,7 @@ nodes.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line183">line 183</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line386">line 386</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -666,14 +1133,15 @@ nodes.</p></div>
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">(opts)</span><span class="type-signature"> → {Buffer}</span></h4>
|
||||
<h4 class="name" id=".encodePayload"><span class="type-signature">(static) </span>encodePayload<span class="signature">()</span><span class="type-signature"></span></h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode <code>object</code> message payload.</p>
|
||||
<p>Encode <code>object</code> message payload.
|
||||
The same as <a href="module-bitmessage_structs.object.html#.encode">encode</a>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -684,55 +1152,6 @@ nodes.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Parameters:</h5>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>opts</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object options</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -766,7 +1185,7 @@ nodes.</p></div>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line193">line 193</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line395">line 395</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -789,28 +1208,6 @@ nodes.</p></div>
|
|||
|
||||
|
||||
|
||||
<h5>Returns:</h5>
|
||||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded payload.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
Type
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -879,7 +1276,192 @@ useful if you are going to calculate it later).</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>Object options</p></td>
|
||||
<td class="description last"><p>Object options</p>
|
||||
<h6>Properties</h6>
|
||||
|
||||
|
||||
<table class="params">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
<th>Attributes</th>
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>type</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object type</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
<optional><br>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object stream (1 by default)</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>objectPayload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
<td class="attributes">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -920,7 +1502,7 @@ useful if you are going to calculate it later).</p>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line217">line 217</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line424">line 424</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -972,6 +1554,268 @@ useful if you are going to calculate it later).</p>
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>nonce</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>A 8-byte object nonce</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>ttl</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Time to live in seconds</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>type</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object type</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>version</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object version</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>stream</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object stream</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>headerLength</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Length of the object header</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>objectPayload</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Object payload</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line300">line 300</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
@ -984,13 +1828,13 @@ useful if you are going to calculate it later).</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line242">line 242</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line449">line 449</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -219,7 +219,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line250">line 250</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line465">line 465</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -246,7 +246,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>var_int</code> structure.</p>
|
||||
<p><a href="module-bitmessage_structs.var_int.html#.DecodeResult">Decoded <code>var_int</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -257,7 +257,7 @@
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -375,7 +375,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line295">line 295</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line510">line 510</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -427,6 +427,176 @@
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>value</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Stored value</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><code>var_int</code> full length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>rest</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The rest of the input buffer</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line450">line 450</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
@ -439,13 +609,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line371">line 371</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line594">line 594</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -220,7 +220,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line380">line 380</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line611">line 611</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -247,7 +247,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>var_int_list</code> structure.</p>
|
||||
<p><a href="module-bitmessage_structs.var_int_list.html#.DecodeResult">Decoded <code>var_int_list</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -258,7 +258,7 @@
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -373,7 +373,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line400">line 400</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line631">line 631</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -425,6 +425,176 @@
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>list</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>Stored numbers</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><code>var_int_list</code> full length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>rest</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The rest of the input buffer</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line595">line 595</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
@ -437,13 +607,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line335">line 335</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line550">line 550</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
|
||||
|
||||
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {Object}</span></h4>
|
||||
<h4 class="name" id=".decode"><span class="type-signature">(static) </span>decode<span class="signature">(buf)</span><span class="type-signature"> → {DecodeResult}</span></h4>
|
||||
|
||||
|
||||
|
||||
|
@ -219,7 +219,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line343">line 343</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line566">line 566</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -246,7 +246,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Decoded <code>var_str</code> structure.</p>
|
||||
<p><a href="module-bitmessage_structs.var_str.html#.DecodeResult">Decoded <code>var_str</code> structure.</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -257,7 +257,7 @@
|
|||
</dt>
|
||||
<dd>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
<span class="param-type">DecodeResult</span>
|
||||
|
||||
|
||||
</dd>
|
||||
|
@ -372,7 +372,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line359">line 359</a>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line582">line 582</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -424,6 +424,176 @@
|
|||
|
||||
|
||||
|
||||
<h3 class="subsection-title">Type Definitions</h3>
|
||||
|
||||
|
||||
|
||||
<h4 class="name" id=".DecodeResult">DecodeResult</h4>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5>Type:</h5>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<span class="param-type">Object</span>
|
||||
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h5 class="subsection-title">Properties:</h5>
|
||||
|
||||
|
||||
|
||||
<table class="props">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
<th>Name</th>
|
||||
|
||||
|
||||
<th>Type</th>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<th class="last">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>str</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The string itself</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>length</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">number</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p><code>var_str</code> full length</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="name"><code>rest</code></td>
|
||||
|
||||
|
||||
<td class="type">
|
||||
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<td class="description last"><p>The rest of the input buffer</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<dl class="details">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="structs.js.html">structs.js</a>, <a href="structs.js.html#line551">line 551</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
@ -436,13 +606,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -360,6 +360,9 @@ comes first.</p>
|
|||
|
|
||||
|
||||
<span class="param-type">string</span>
|
||||
|
|
||||
|
||||
<span class="param-type">Buffer</span>
|
||||
|
||||
|
||||
|
||||
|
@ -369,8 +372,8 @@ comes first.</p>
|
|||
|
||||
|
||||
|
||||
<td class="description last"><p>List of software to
|
||||
encode or just raw user agent string</p></td>
|
||||
<td class="description last"><p>List of
|
||||
software to encode or just raw user agent string/Buffer</p></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
@ -471,7 +474,7 @@ encode or just raw user agent string</p></td>
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode bitmessage's user agent.</p>
|
||||
<p>Encode bitmessage's library user agent.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -515,7 +518,7 @@ encode or just raw user agent string</p></td>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="user-agent.js.html">user-agent.js</a>, <a href="user-agent.js.html#line96">line 96</a>
|
||||
<a href="user-agent.js.html">user-agent.js</a>, <a href="user-agent.js.html#line98">line 98</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -575,8 +578,8 @@ encode or just raw user agent string</p></td>
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Encode user agent with bitmessage's user agent underneath. Most
|
||||
underlying software comes first.</p>
|
||||
<p>Encode user agent with bitmessage's library user agent underneath.
|
||||
Most underlying software comes first.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -679,7 +682,7 @@ software to encode</p></td>
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="user-agent.js.html">user-agent.js</a>, <a href="user-agent.js.html#line107">line 107</a>
|
||||
<a href="user-agent.js.html">user-agent.js</a>, <a href="user-agent.js.html#line109">line 109</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -898,13 +901,13 @@ format because it's not that important.</p>
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -151,7 +151,8 @@
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Decode WIF encoded private key.</p>
|
||||
<p>Decode WIF-encoded private key (corresponded to a uncompressed public
|
||||
key).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -244,7 +245,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="wif.js.html">wif.js</a>, <a href="wif.js.html#line24">line 24</a>
|
||||
<a href="wif.js.html">wif.js</a>, <a href="wif.js.html#line25">line 25</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -304,7 +305,8 @@
|
|||
|
||||
|
||||
<div class="description">
|
||||
<p>Convert private key to a WIF.</p>
|
||||
<p>Convert private key to a WIF (corresponded to a uncompressed public
|
||||
key).</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -397,7 +399,7 @@
|
|||
|
||||
<dt class="tag-source">Source:</dt>
|
||||
<dd class="tag-source"><ul class="dummy"><li>
|
||||
<a href="wif.js.html">wif.js</a>, <a href="wif.js.html#line38">line 38</a>
|
||||
<a href="wif.js.html">wif.js</a>, <a href="wif.js.html#line40">line 40</a>
|
||||
</li></ul></dd>
|
||||
|
||||
|
||||
|
@ -424,7 +426,7 @@
|
|||
|
||||
|
||||
<div class="param-desc">
|
||||
<p>Encoded private key.</p>
|
||||
<p>WIF-encoded private key.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
@ -461,13 +463,13 @@
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:22 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
164
docs/net_base.js.html
Normal file
164
docs/net_base.js.html
Normal file
|
@ -0,0 +1,164 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Source: net/base.js</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Source: net/base.js</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<article>
|
||||
<pre class="prettyprint source linenums"><code>/**
|
||||
* Networking base module. Defines base transport interface, useful for
|
||||
* implementing new transports. End-users should import some transport
|
||||
* instead in order to connect/accept connections to/from other nodes.
|
||||
* **NOTE**: `BaseTransport` is exported as a module.
|
||||
* @example var BaseTransport = require("bitmessage/net/base");
|
||||
* @module bitmessage/net/base
|
||||
*/
|
||||
// TODO(Kagami): Write some sort of tutorial.
|
||||
|
||||
"use strict";
|
||||
|
||||
var inherits = require("inherits");
|
||||
var EventEmitter = require("events").EventEmitter;
|
||||
var PPromise = require("../platform").Promise;
|
||||
var structs = require("../structs");
|
||||
|
||||
/**
|
||||
* Base transport class. Allows to use single class for both client and
|
||||
* server modes (as separate instances).
|
||||
* @constructor
|
||||
* @static
|
||||
*/
|
||||
function BaseTransport() {
|
||||
BaseTransport.super_.call(this);
|
||||
}
|
||||
|
||||
inherits(BaseTransport, EventEmitter);
|
||||
|
||||
/**
|
||||
* Do the transport-specific bootstrap process and return promise that
|
||||
* contains discovered nodes when fulfilled (both modes).
|
||||
* NOTE: Do not use nodes received by this method in `addr` messages!
|
||||
* This is meaningless.
|
||||
* @return {Promise.<Array>}
|
||||
* @abstract
|
||||
*/
|
||||
BaseTransport.prototype.bootstrap = function() {
|
||||
return PPromise.reject(new Error("Not implemented"));
|
||||
};
|
||||
|
||||
/**
|
||||
* Connect to the transport-specific address. Enters client mode. Should
|
||||
* emit `open` event after successful connect and `established` event
|
||||
* after `verack` messages exchange.
|
||||
* @abstract
|
||||
*/
|
||||
BaseTransport.prototype.connect = function() {
|
||||
throw new Error("Not implemented");
|
||||
};
|
||||
|
||||
/**
|
||||
* Listen for the transport-specific incoming connections. Enters server
|
||||
* mode. Should emit `connection` event with a transport instance for
|
||||
* each new connection.
|
||||
* @abstract
|
||||
*/
|
||||
BaseTransport.prototype.listen = function() {
|
||||
throw new Error("Not implemented");
|
||||
};
|
||||
|
||||
/**
|
||||
* Send [message]{@link module:bitmessage/structs.message} over the
|
||||
* wire (client mode only).
|
||||
* @param {(Buffer|string)} msg - Encoded message or command string
|
||||
* @param {Buffer=} payload - Message payload (used if the first
|
||||
* argument is a string)
|
||||
* @abstract
|
||||
*/
|
||||
BaseTransport.prototype.send = function() {
|
||||
throw new Error("Not implemented");
|
||||
};
|
||||
|
||||
/**
|
||||
* Send [message]{@link module:bitmessage/structs.message} to all
|
||||
* connected clients (server mode only).
|
||||
* @param {(Buffer|string)} msg - Encoded message or command string
|
||||
* @param {Buffer=} payload - Message payload (used if the first
|
||||
* argument is a string)
|
||||
* @abstract
|
||||
*/
|
||||
BaseTransport.prototype.broadcast = function() {
|
||||
throw new Error("Not implemented");
|
||||
};
|
||||
|
||||
/**
|
||||
* Close connection(s) and/or stop listening (both modes).
|
||||
* @abstract
|
||||
*/
|
||||
BaseTransport.prototype.close = function() {
|
||||
throw new Error("Not implemented");
|
||||
};
|
||||
|
||||
// Static private helpers.
|
||||
|
||||
BaseTransport._getmsg = function(args) {
|
||||
if (typeof args[0] === "string") {
|
||||
return structs.message.encode(args[0], args[1]);
|
||||
} else {
|
||||
return args[0];
|
||||
}
|
||||
};
|
||||
|
||||
// Unmap IPv4-mapped IPv6 address.
|
||||
BaseTransport._unmap = function(addr) {
|
||||
if (addr.slice(0, 7) === "::ffff:") {
|
||||
return addr.slice(7);
|
||||
} else {
|
||||
return addr;
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = BaseTransport;
|
||||
</code></pre>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
377
docs/net_tcp.js.html
Normal file
377
docs/net_tcp.js.html
Normal file
|
@ -0,0 +1,377 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Source: net/tcp.js</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Source: net/tcp.js</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<article>
|
||||
<pre class="prettyprint source linenums"><code>/**
|
||||
* TCP transport compatible with PyBitmessage. Available only for Node
|
||||
* platform.
|
||||
* **NOTE**: `TcpTransport` is exported as a module.
|
||||
* @module bitmessage/net/tcp
|
||||
* @example
|
||||
* var messages = require("bitmessage").messages;
|
||||
* var TcpTransport = require("bitmessage/net/tcp");
|
||||
*
|
||||
* var tcp = new TcpTransport({
|
||||
* dnsSeeds: [["bootstrap8444.bitmessage.org", 8444]],
|
||||
* });
|
||||
*
|
||||
* tcp.bootstrap().then(function(nodes) {
|
||||
* var remoteHost = nodes[0][0];
|
||||
* var remotePort = nodes[0][1];
|
||||
* console.log("Connecting to", nodes[0]);
|
||||
* tcp.connect(remotePort, remoteHost);
|
||||
* });
|
||||
*
|
||||
* tcp.on("established", function() {
|
||||
* console.log("Connection established");
|
||||
*
|
||||
* tcp.on("message", function(command, payload) {
|
||||
* console.log("Got new", command, "message");
|
||||
* var decoded;
|
||||
* if (command === "addr") {
|
||||
* decoded = messages.addr.decodePayload(payload);
|
||||
* console.log("Got", decoded.addrs.length, "node addresses");
|
||||
* }
|
||||
* });
|
||||
* });
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
||||
var objectAssign = Object.assign || require("object-assign");
|
||||
var inherits = require("inherits");
|
||||
var net = require("net");
|
||||
var dns = require("dns");
|
||||
var assert = require("../_util").assert;
|
||||
var PPromise = require("../platform").Promise;
|
||||
var structs = require("../structs");
|
||||
var messages = require("../messages");
|
||||
var BaseTransport = require("./base");
|
||||
|
||||
var getmsg = BaseTransport._getmsg;
|
||||
var unmap = BaseTransport._unmap;
|
||||
|
||||
/**
|
||||
* TCP transport class. Implements
|
||||
* [base transport interface]{@link module:bitmessage/net/base.BaseTransport}.
|
||||
* @param {Object=} opts - Transport options
|
||||
* @param {Array} opts.seeds - Bootstrap nodes (none by default)
|
||||
* @param {Array} opts.dnsSeeds - Bootstrap DNS nodes (none by default)
|
||||
* @param {Object} opts.services -
|
||||
* [Service features]{@link module:bitmessage/structs.ServicesBitfield}
|
||||
* provided by this node (`NODE_NETWORK` by default)
|
||||
* @param {(Array|string|Buffer)} opts.userAgent -
|
||||
* [User agent]{@link module:bitmessage/user-agent} of this node
|
||||
* (bitmessage's by default)
|
||||
* @param {number[]} opts.streamNumbers - Streams accepted by this node
|
||||
* (1 by default)
|
||||
* @param {number} opts.port - Incoming port of this node (8444 by
|
||||
* default)
|
||||
* @constructor
|
||||
* @static
|
||||
*/
|
||||
function TcpTransport(opts) {
|
||||
TcpTransport.super_.call(this);
|
||||
objectAssign(this, opts);
|
||||
this.seeds = this.seeds || [];
|
||||
this.dnsSeeds = this.dnsSeeds || [];
|
||||
this._clients = {};
|
||||
}
|
||||
|
||||
inherits(TcpTransport, BaseTransport);
|
||||
|
||||
function getfrom(client) {
|
||||
return unmap(client.remoteAddress) + ":" + client.remotePort;
|
||||
}
|
||||
|
||||
TcpTransport.prototype._sendVersion = function() {
|
||||
return this.send(messages.version.encode({
|
||||
services: this.services,
|
||||
userAgent: this.userAgent,
|
||||
streamNumbers: this.streamNumbers,
|
||||
port: this.port,
|
||||
remoteHost: this._client.remoteAddress,
|
||||
remotePort: this._client.remotePort,
|
||||
}));
|
||||
};
|
||||
|
||||
TcpTransport.prototype._setupClient = function(client, accepted) {
|
||||
var self = this;
|
||||
self._client = client;
|
||||
var cache = Buffer(0);
|
||||
var decoded;
|
||||
var verackSent = false;
|
||||
var verackReceived = false;
|
||||
var established = false;
|
||||
|
||||
// Set default transport timeout per spec.
|
||||
// TODO(Kagami): We may also want to close connection if it wasn't
|
||||
// established within minute.
|
||||
client.setTimeout(20000);
|
||||
|
||||
client.on("connect", function() {
|
||||
// NOTE(Kagami): This handler shouldn't be called at all for
|
||||
// accepted sockets but let's be sure.
|
||||
if (!accepted) {
|
||||
self.emit("open");
|
||||
self._sendVersion();
|
||||
}
|
||||
});
|
||||
|
||||
client.on("data", function(data) {
|
||||
// TODO(Kagami): We may want to preallocate 1.6M buffer for each
|
||||
// client instead (max size of the message) to not constantly
|
||||
// allocate new buffers. Though this may lead to another issues: too
|
||||
// many memory per client.
|
||||
cache = Buffer.concat([cache, data]);
|
||||
while (true) {
|
||||
decoded = structs.message.tryDecode(cache);
|
||||
if (!decoded) {
|
||||
break;
|
||||
}
|
||||
cache = decoded.rest;
|
||||
if (decoded.message) {
|
||||
self.emit(
|
||||
"message",
|
||||
decoded.message.command,
|
||||
decoded.message.payload,
|
||||
decoded.message);
|
||||
} else if (decoded.error) {
|
||||
// TODO(Kagami): Wrap it in custom error class?
|
||||
// TODO(Kagami): Send `error` message and ban node for some time
|
||||
// if there were too many errors?
|
||||
self.emit("warning", new Error(
|
||||
"Message decoding error from " + getfrom(client) + ": " +
|
||||
decoded.error
|
||||
));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// High-level message processing.
|
||||
self.on("message", function(command) {
|
||||
if (!established) {
|
||||
// TODO: Process version data.
|
||||
// TODO: Disconnect if proto version < 3.
|
||||
if (command === "version") {
|
||||
if (verackSent) {
|
||||
return;
|
||||
}
|
||||
self.send("verack");
|
||||
verackSent = true;
|
||||
if (accepted) {
|
||||
self._sendVersion();
|
||||
} else if (verackReceived) {
|
||||
self.emit("established");
|
||||
}
|
||||
} else if (command === "verack") {
|
||||
verackReceived = true;
|
||||
if (verackSent) {
|
||||
self.emit("established");
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
self.on("established", function() {
|
||||
established = true;
|
||||
// Raise timeout up to 10 minutes per spec.
|
||||
// TODO(Kagami): Send pong messages every 5 minutes as PyBitmessage.
|
||||
client.setTimeout(600000);
|
||||
});
|
||||
|
||||
client.on("timeout", function() {
|
||||
client.end();
|
||||
});
|
||||
|
||||
client.on("error", function(err) {
|
||||
self.emit("error", err);
|
||||
});
|
||||
|
||||
client.on("close", function() {
|
||||
self.emit("close");
|
||||
delete self._client;
|
||||
});
|
||||
};
|
||||
|
||||
function resolveDnsSeed(seed) {
|
||||
var host = seed[0];
|
||||
var port = seed[1];
|
||||
var nodes = [];
|
||||
// NOTE(Kagami):
|
||||
// 1) Node's `getaddrinfo` (`dns.lookup`) returns only one address so
|
||||
// we can't use it.
|
||||
// 2) Node's `dig host any` (`dns.resolve`) doesn't return type of the
|
||||
// record! So we resolve twice for A and AAAA.
|
||||
// 3) We ignore any errors here, promise's result is always a list.
|
||||
return new PPromise(function(resolve) {
|
||||
dns.resolve4(host, function(err, nodes4) {
|
||||
if (!err) {
|
||||
nodes4.forEach(function(n) {
|
||||
nodes.push([n, port]);
|
||||
});
|
||||
}
|
||||
dns.resolve6(host, function(err, nodes6) {
|
||||
if (!err) {
|
||||
nodes6.forEach(function(n) {
|
||||
nodes.push([n, port]);
|
||||
});
|
||||
}
|
||||
resolve(nodes);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
TcpTransport.prototype.bootstrap = function() {
|
||||
var promises = this.dnsSeeds.map(resolveDnsSeed);
|
||||
var hardcodedNodes = this.seeds;
|
||||
// FIXME(Kagami): Filter incorrect/private IP range nodes?
|
||||
// See also: <https://github.com/Bitmessage/PyBitmessage/issues/768>.
|
||||
return PPromise.all(promises).then(function(dnsNodes) {
|
||||
// Flatten array of arrays.
|
||||
dnsNodes = Array.prototype.concat.apply([], dnsNodes);
|
||||
// Add hardcoded nodes to the end of list because DNS nodes should
|
||||
// be more up-to-date.
|
||||
return dnsNodes.concat(hardcodedNodes);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Connect to a TCP node. Connection arguments are the same as for
|
||||
* [net.connect](http://nodejs.org/api/net.html#net_net_connect_port_host_connectlistener).
|
||||
*/
|
||||
TcpTransport.prototype.connect = function() {
|
||||
assert(!this._client, "Already connected");
|
||||
assert(!this._server, "Already listening");
|
||||
this._setupClient(net.connect.apply(null, arguments));
|
||||
};
|
||||
|
||||
/**
|
||||
* Listen for incoming TCP connections. Listen arguments are the same as
|
||||
* for
|
||||
* [server.listen](http://nodejs.org/api/net.html#net_server_listen_port_host_backlog_callback).
|
||||
*/
|
||||
TcpTransport.prototype.listen = function() {
|
||||
assert(!this._client, "Already connected");
|
||||
assert(!this._server, "Already listening");
|
||||
|
||||
var self = this;
|
||||
var server = self._server = net.createServer();
|
||||
server.listen.apply(server, arguments);
|
||||
|
||||
// TODO(Kagami): We may want to specify some limits for number of
|
||||
// connected users.
|
||||
server.on("connection", function(client) {
|
||||
var addr = client.remoteAddress;
|
||||
var port = client.remotePort;
|
||||
if (self._clients[addr]) {
|
||||
// NOTE(Kagami): Doesn't allow more than one connection per IP.
|
||||
// This may obstruct people behind NAT but we copy PyBitmessage's
|
||||
// behavior here.
|
||||
client.end();
|
||||
return self.emit("warning", new Error(
|
||||
unmap(addr) + " was tried to create second connection"
|
||||
));
|
||||
}
|
||||
self._clients[addr] = client;
|
||||
client.on("close", function() {
|
||||
delete self._clients[addr];
|
||||
});
|
||||
var transport = new self.constructor(self);
|
||||
var accepted = true;
|
||||
transport._setupClient(client, accepted);
|
||||
self.emit("connection", transport, unmap(addr), port);
|
||||
// Emit "open" manually because "connect" for this socket won't be
|
||||
// fired.
|
||||
transport.emit("open");
|
||||
});
|
||||
|
||||
server.on("error", function(err) {
|
||||
self.emit("error", err);
|
||||
});
|
||||
|
||||
server.on("close", function() {
|
||||
self.emit("close");
|
||||
delete self._server;
|
||||
});
|
||||
};
|
||||
|
||||
TcpTransport.prototype.send = function() {
|
||||
if (this._client) {
|
||||
this._client.write(getmsg(arguments));
|
||||
} else {
|
||||
throw new Error("Not connected");
|
||||
}
|
||||
};
|
||||
|
||||
TcpTransport.prototype.broadcast = function() {
|
||||
var data = getmsg(arguments);
|
||||
if (this._server) {
|
||||
Object.keys(this._clients).forEach(function(ip) {
|
||||
this._clients[ip].write(data);
|
||||
}, this);
|
||||
} else {
|
||||
throw new Error("Not listening");
|
||||
}
|
||||
};
|
||||
|
||||
TcpTransport.prototype.close = function() {
|
||||
if (this._client) {
|
||||
this._client.end();
|
||||
} else if (this._server) {
|
||||
Object.keys(this._clients).forEach(function(ip) {
|
||||
this._clients[ip].end();
|
||||
}, this);
|
||||
this._server.close();
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = TcpTransport;
|
||||
</code></pre>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
307
docs/net_ws.js.html
Normal file
307
docs/net_ws.js.html
Normal file
|
@ -0,0 +1,307 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>JSDoc: Source: net/ws.js</title>
|
||||
|
||||
<script src="scripts/prettify/prettify.js"> </script>
|
||||
<script src="scripts/prettify/lang-css.js"> </script>
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
|
||||
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1 class="page-title">Source: net/ws.js</h1>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<section>
|
||||
<article>
|
||||
<pre class="prettyprint source linenums"><code>/**
|
||||
* WebSocket transport. Needed because browsers can't handle TCP sockets
|
||||
* so we use separate WebSocket server to proxy messages into TCP data
|
||||
* packets. Available for both Node.js and Browser platforms.
|
||||
* **NOTE**: `WsTransport` is exported as a module.
|
||||
* @example var WsTransport = require("bitmessage/net/ws");
|
||||
* @module bitmessage/net/ws
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
||||
var objectAssign = Object.assign || require("object-assign");
|
||||
var inherits = require("inherits");
|
||||
var WebSocket = require("ws"); // jshint ignore:line
|
||||
var assert = require("../_util").assert;
|
||||
var PPromise = require("../platform").Promise;
|
||||
var structs = require("../structs");
|
||||
var messages = require("../messages");
|
||||
var BaseTransport = require("./base");
|
||||
|
||||
var WebSocketServer = WebSocket.Server;
|
||||
var getmsg = BaseTransport._getmsg;
|
||||
var unmap = BaseTransport._unmap;
|
||||
|
||||
/**
|
||||
* WebSocket transport class. Implements
|
||||
* [base transport interface]{@link module:bitmessage/net/base.BaseTransport}.
|
||||
* @param {Object=} opts - Transport options
|
||||
* @param {Array} opts.seeds - Bootstrap nodes (none by default)
|
||||
* @param {Object} opts.services -
|
||||
* [Service features]{@link module:bitmessage/structs.ServicesBitfield}
|
||||
* provided by this node (`NODE_NETWORK` by default)
|
||||
* @param {(Array|string|Buffer)} opts.userAgent -
|
||||
* [User agent]{@link module:bitmessage/user-agent} of this node
|
||||
* (bitmessage's by default)
|
||||
* @param {number[]} opts.streamNumbers - Streams accepted by this node
|
||||
* (1 by default)
|
||||
* @param {number} opts.port - Incoming port of this node (8444 by
|
||||
* default)
|
||||
* @constructor
|
||||
* @static
|
||||
*/
|
||||
function WsTransport(opts) {
|
||||
WsTransport.super_.call(this);
|
||||
objectAssign(this, opts);
|
||||
this.seeds = this.seeds || [];
|
||||
}
|
||||
|
||||
inherits(WsTransport, BaseTransport);
|
||||
|
||||
function getfrom(client) {
|
||||
return unmap(client._socket.remoteAddress) + ":" + client._socket.remotePort;
|
||||
}
|
||||
|
||||
WsTransport.prototype._sendVersion = function() {
|
||||
return this.send(messages.version.encode({
|
||||
services: this.services,
|
||||
userAgent: this.userAgent,
|
||||
streamNumbers: this.streamNumbers,
|
||||
port: this.port,
|
||||
remoteHost: this._client._socket.remoteAddress,
|
||||
remotePort: this._client._socket.remotePort,
|
||||
}));
|
||||
};
|
||||
|
||||
WsTransport.prototype._handleTimeout = function() {
|
||||
var client = this._client;
|
||||
// TODO(Kagami): We may also want to close connection if it wasn't
|
||||
// established within minute.
|
||||
client._socket.setTimeout(20000);
|
||||
client._socket.on("timeout", function() {
|
||||
client.close();
|
||||
});
|
||||
this.on("established", function() {
|
||||
// Raise timeout up to 10 minutes per spec.
|
||||
// TODO(Kagami): Send ping frame every 5 minutes as PyBitmessage.
|
||||
client._socket.setTimeout(600000);
|
||||
});
|
||||
};
|
||||
|
||||
WsTransport.prototype._setupClient = function(client, accepted) {
|
||||
var self = this;
|
||||
self._client = client;
|
||||
var verackSent = false;
|
||||
var verackReceived = false;
|
||||
var established = false;
|
||||
|
||||
client.on("open", function() {
|
||||
// NOTE(Kagami): This handler shouldn't be called at all for
|
||||
// accepted sockets but let's be sure.
|
||||
if (!accepted) {
|
||||
// NOTE(Kagami): We may set timeout only after connection was
|
||||
// opened because socket may not yet be available when
|
||||
// `_setupClient` is called.
|
||||
self._handleTimeout();
|
||||
self.emit("open");
|
||||
self._sendVersion();
|
||||
}
|
||||
});
|
||||
|
||||
client.on("message", function(data, flags) {
|
||||
var decoded;
|
||||
if (!flags.binary) {
|
||||
// TODO(Kagami): Send `error` message and ban node for some time
|
||||
// if there were too many errors?
|
||||
return self.emit("warning", new Error(
|
||||
"Peer " + getfrom(client) + " sent non-binary data"
|
||||
));
|
||||
}
|
||||
try {
|
||||
decoded = structs.message.decode(data);
|
||||
} catch (err) {
|
||||
return self.emit("warning", new Error(
|
||||
"Message decoding error from " + getfrom(client) + ": " + err
|
||||
));
|
||||
}
|
||||
self.emit("message", decoded.command, decoded.payload, decoded);
|
||||
});
|
||||
|
||||
// High-level message processing.
|
||||
self.on("message", function(command) {
|
||||
if (!established) {
|
||||
// TODO: Process version data.
|
||||
// TODO: Disconnect if proto version < 3.
|
||||
if (command === "version") {
|
||||
if (verackSent) {
|
||||
return;
|
||||
}
|
||||
self.send("verack");
|
||||
verackSent = true;
|
||||
if (accepted) {
|
||||
self._sendVersion();
|
||||
} else if (verackReceived) {
|
||||
established = true;
|
||||
self.emit("established");
|
||||
}
|
||||
} else if (command === "verack") {
|
||||
verackReceived = true;
|
||||
if (verackSent) {
|
||||
established = true;
|
||||
self.emit("established");
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
client.on("error", function(err) {
|
||||
self.emit("error", err);
|
||||
});
|
||||
|
||||
client.on("close", function() {
|
||||
self.emit("close");
|
||||
delete self._client;
|
||||
});
|
||||
};
|
||||
|
||||
WsTransport.prototype.bootstrap = function() {
|
||||
return PPromise.resolve([].concat(this.seeds));
|
||||
};
|
||||
|
||||
/**
|
||||
* Connect to a WebSocket node. Connection arguments are the same as for
|
||||
* [WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket).
|
||||
*/
|
||||
WsTransport.prototype.connect = function(address, protocols, options) {
|
||||
assert(!this._client, "Already connected");
|
||||
assert(!this._server, "Already listening");
|
||||
// `new` doesn't work with `apply`, so passing all possible arguments
|
||||
// manually.
|
||||
this._setupClient(new WebSocket(address, protocols, options));
|
||||
};
|
||||
|
||||
/**
|
||||
* Listen for incoming WebSocket connections. Listen arguments are the
|
||||
* same as for
|
||||
* [WebSocketServer](https://github.com/websockets/ws#server-example).
|
||||
* Available only for Node platform.
|
||||
*/
|
||||
WsTransport.prototype.listen = function(options, callback) {
|
||||
assert(!this._client, "Already connected");
|
||||
assert(!this._server, "Already listening");
|
||||
|
||||
var self = this;
|
||||
var server = self._server = new WebSocketServer(options, callback);
|
||||
|
||||
// TODO(Kagami): We may want to specify some limits for number of
|
||||
// connected users.
|
||||
server.on("connection", function(client) {
|
||||
var addr = client._socket.remoteAddress;
|
||||
var port = client._remotePort;
|
||||
var i;
|
||||
|
||||
// NOTE(Kagami): O(n) search because `clients` array is already
|
||||
// provided by `ws` library. We may want to optmize it though and
|
||||
// also disable `clientTracking` option.
|
||||
for (i = 0; i < server.clients.length; i++) {
|
||||
if (server.clients[i] !== client &&
|
||||
server.clients[i]._socket.remoteAddress === addr) {
|
||||
// NOTE(Kagami): Doesn't allow more than one connection per IP.
|
||||
// This may obstruct people behind NAT but we copy
|
||||
// PyBitmessage's behavior here.
|
||||
client.close();
|
||||
return self.emit("warning", new Error(
|
||||
unmap(addr) + " was tried to create second connection"
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
var transport = new self.constructor(self);
|
||||
var accepted = true;
|
||||
transport._setupClient(client, accepted);
|
||||
transport._handleTimeout();
|
||||
self.emit("connection", transport, unmap(addr), port);
|
||||
// Emit "open" manually because it won't be fired for already opened
|
||||
// socket.
|
||||
transport.emit("open");
|
||||
});
|
||||
|
||||
server.on("error", function(err) {
|
||||
self.emit("error", err);
|
||||
});
|
||||
};
|
||||
|
||||
WsTransport.prototype.send = function() {
|
||||
if (this._client) {
|
||||
// TODO(Kagami): `mask: true` doesn't work with Chromium 40. File a
|
||||
// bug to ws bugtracker.
|
||||
this._client.send(getmsg(arguments), {binary: true});
|
||||
} else {
|
||||
throw new Error("Not connected");
|
||||
}
|
||||
};
|
||||
|
||||
WsTransport.prototype.broadcast = function() {
|
||||
var data = getmsg(arguments);
|
||||
if (this._server) {
|
||||
this._server.clients.forEach(function(client) {
|
||||
client.send(data, {binary: true});
|
||||
});
|
||||
} else {
|
||||
throw new Error("Not listening");
|
||||
}
|
||||
};
|
||||
|
||||
WsTransport.prototype.close = function() {
|
||||
if (this._client) {
|
||||
this._client.close();
|
||||
} else if (this._server) {
|
||||
// `ws` server terminates immediately without any events.
|
||||
this._server.close();
|
||||
this.emit("close");
|
||||
delete this._server;
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = WsTransport;
|
||||
</code></pre>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
<script src="scripts/linenumber.js"> </script>
|
||||
</body>
|
||||
</html>
|
|
@ -28,22 +28,18 @@
|
|||
<article>
|
||||
<pre class="prettyprint source linenums"><code>/**
|
||||
* Working with objects.
|
||||
* NOTE: Most operations with objects in this module are asynchronous
|
||||
* and return promises.
|
||||
* NOTE: Most operations with objects are asynchronous and return
|
||||
* promises.
|
||||
* @see {@link https://bitmessage.org/wiki/Protocol_specification#Object_types}
|
||||
* @module bitmessage/objects
|
||||
*/
|
||||
// TODO(Kagami): Document object-like params.
|
||||
// FIXME(Kagami): Think through the API, we may want to get decoded
|
||||
// structure even if it contains unsupported version. Also error
|
||||
// handling may need some refactoring.
|
||||
|
||||
"use strict";
|
||||
|
||||
var objectAssign = Object.assign || require("object-assign");
|
||||
var bufferEqual = require("buffer-equal");
|
||||
var assert = require("./_util").assert;
|
||||
var promise = require("./platform").promise;
|
||||
var PPromise = require("./platform").Promise;
|
||||
var bmcrypto = require("./crypto");
|
||||
var Address = require("./address");
|
||||
var structs = require("./structs");
|
||||
|
@ -76,14 +72,7 @@ exports.getType = function(buf) {
|
|||
|
||||
/**
|
||||
* Try to get type of the given object message payload.
|
||||
* Note that this function doesn't do any validation because it is
|
||||
* already provided by
|
||||
* [object.decodePayload]{@link module:bitmessage/structs.object.decodePayload}
|
||||
* routine. Normally you call this for each incoming object message
|
||||
* payload and then call decode function of the appropriate object
|
||||
* handler.
|
||||
* @param {Buffer} buf - Buffer that starts with object message payload
|
||||
* @return {?number} Object's type if any.
|
||||
* The same as [getType]{@link module:bitmessage/objects.getType}.
|
||||
*/
|
||||
exports.getPayloadType = function(buf) {
|
||||
// Object header: 8 + 8 + 4
|
||||
|
@ -95,7 +84,7 @@ exports.getPayloadType = function(buf) {
|
|||
|
||||
// Prepend nonce to a given object without nonce.
|
||||
function prependNonce(obj, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
assert(obj.length <= 262136, "object message payload is too big");
|
||||
opts = objectAssign({}, opts);
|
||||
var nonce, target, powp;
|
||||
|
@ -129,15 +118,33 @@ function prependNonce(obj, opts) {
|
|||
* @static
|
||||
*/
|
||||
var getpubkey = exports.getpubkey = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Buffer} nonce - A 8-byte object nonce
|
||||
* @property {number} ttl - Time to live in seconds
|
||||
* @property {number} type - Object type
|
||||
* @property {number} version - Object version
|
||||
* @property {number} stream - Object stream
|
||||
* @property {number} headerLength - Length of the object header
|
||||
* @property {Buffer} ripe - The RIPEMD hash of the requested public
|
||||
* keys for address version <= 3
|
||||
* @property {Buffer} tag - ...or tag derived from the address object
|
||||
* for address version >= 4
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/objects.getpubkey
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `getpubkey` object message.
|
||||
* @param {Buffer} buf - Message
|
||||
* @param {?Object} opts - Decoding options
|
||||
* @return {Promise.<Object>} A promise that contains decoded
|
||||
* `getpubkey` object structure when fulfilled.
|
||||
* @param {Object=} opts - Any of [object.decode]{@link
|
||||
* module:bitmessage/structs.object.decode} options
|
||||
* @return {Promise.<DecodeResult>} A promise that contains
|
||||
* [decoded `getpubkey` structure]{@link
|
||||
* module:bitmessage/objects.getpubkey.DecodeResult} when fulfilled.
|
||||
*/
|
||||
decodeAsync: function(buf, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
var decoded = message.decode(buf);
|
||||
assert(decoded.command === "object", "Bad command");
|
||||
resolve(getpubkey.decodePayloadAsync(decoded.payload, opts));
|
||||
|
@ -146,13 +153,11 @@ var getpubkey = exports.getpubkey = {
|
|||
|
||||
/**
|
||||
* Decode `getpubkey` object message payload.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @param {?Object} opts - Decoding options
|
||||
* @return {Promise.<Object>} A promise that contains decoded
|
||||
* `getpubkey` object structure when fulfilled.
|
||||
* The same as [decodeAsync]{@link
|
||||
* module:bitmessage/objects.getpubkey.decodeAsync}.
|
||||
*/
|
||||
decodePayloadAsync: function(buf, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
var decoded = object.decodePayload(buf, opts);
|
||||
assert(decoded.type === object.GETPUBKEY, "Wrong object type");
|
||||
assert(decoded.version >= 2, "getpubkey version is too low");
|
||||
|
@ -174,6 +179,10 @@ var getpubkey = exports.getpubkey = {
|
|||
/**
|
||||
* Encode `getpubkey` object message.
|
||||
* @param {Object} opts - `getpubkey` object options
|
||||
* @param {number} opts.ttl - Time to live in seconds
|
||||
* @param {Address} opts.to - Receiver of the message
|
||||
* @param {boolean=} opts.skipPow - Do not compute POW (false by
|
||||
* default)
|
||||
* @return {Promise.<Buffer>} A promise that contains encoded message
|
||||
* when fulfilled.
|
||||
*/
|
||||
|
@ -185,12 +194,11 @@ var getpubkey = exports.getpubkey = {
|
|||
|
||||
/**
|
||||
* Encode `getpubkey` object message payload.
|
||||
* @param {Object} opts - `getpubkey` object options
|
||||
* @return {Promise.<Buffer>} A promise that contains encoded message
|
||||
* payload when fulfilled.
|
||||
* The same as
|
||||
* [encodeAsync]{@link module:bitmessage/objects.getpubkey.encodeAsync}.
|
||||
*/
|
||||
encodePayloadAsync: function(opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
opts = objectAssign({}, opts);
|
||||
opts.type = object.GETPUBKEY;
|
||||
// Bitmessage address of recepeint of `getpubkey` message.
|
||||
|
@ -270,15 +278,48 @@ function findAddrByTag(addrs, tag) {
|
|||
* @static
|
||||
*/
|
||||
var pubkey = exports.pubkey = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Buffer} nonce - A 8-byte object nonce
|
||||
* @property {number} ttl - Time to live in seconds
|
||||
* @property {number} type - Object type
|
||||
* @property {number} version - Object version
|
||||
* @property {number} stream - Object stream
|
||||
* @property {number} headerLength - Length of the object header
|
||||
* @property {Buffer} tag - Tag derived from the address object
|
||||
* (present only if object version is 4)
|
||||
* @property {Object} behavior - [Pubkey features]{@link
|
||||
* module:bitmessage/structs.PubkeyBitfield} that can be expected from
|
||||
* the node
|
||||
* @property {Buffer} signPublicKey - Signing public key
|
||||
* @property {Buffer} encPublicKey - Encryption public key
|
||||
* @property {number} nonceTrialsPerByte - Difficulty parameter of the
|
||||
* node (present only for `pubkey` version >= 3)
|
||||
* @property {number} payloadLengthExtraBytes - Difficulty parameter
|
||||
* of the node (present only for `pubkey` version >= 3)
|
||||
* @property {Buffer} signature - Signature of the message (present
|
||||
* only for `pubkey` version >= 3)
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/objects.pubkey
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `pubkey` object message.
|
||||
* @param {Buffer} buf - Message
|
||||
* @param {?Object} opts - Decoding options
|
||||
* @return {Promise.<Object>} A promise that contains decoded `pubkey`
|
||||
* object structure when fulfilled.
|
||||
* @param {Object=} opts - Any of [object.decode]{@link
|
||||
* module:bitmessage/structs.object.decode} options and:
|
||||
* @param {(Address[]|Address|Object)} opts.needed - Address objects
|
||||
* which represent pubkeys that we are interested in (used only for
|
||||
* pubkeys v4). It is either addresses array or single address or
|
||||
* Object addr-by-tag. Time to match the key is O(n), O(1), O(1)
|
||||
* respectfully.
|
||||
* @return {Promise.<DecodeResult>} A promise that contains
|
||||
* [decoded `pubkey` structure]{@link
|
||||
* module:bitmessage/objects.pubkey.DecodeResult}
|
||||
* when fulfilled.
|
||||
*/
|
||||
decodeAsync: function(buf, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
var decoded = message.decode(buf);
|
||||
assert(decoded.command === "object", "Bad command");
|
||||
resolve(pubkey.decodePayloadAsync(decoded.payload, opts));
|
||||
|
@ -287,13 +328,11 @@ var pubkey = exports.pubkey = {
|
|||
|
||||
/**
|
||||
* Decode `pubkey` object message payload.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @param {?Object} opts - Decoding options
|
||||
* @return {Promise.<Object>} A promise that contains decoded `pubkey`
|
||||
* object structure when fulfilled.
|
||||
* The same as [decodeAsync]{@link
|
||||
* module:bitmessage/objects.pubkey.decodeAsync}.
|
||||
*/
|
||||
decodePayloadAsync: function(buf, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
opts = opts || {};
|
||||
var decoded = object.decodePayload(buf, opts);
|
||||
assert(decoded.type === object.PUBKEY, "Wrong object type");
|
||||
|
@ -369,6 +408,11 @@ var pubkey = exports.pubkey = {
|
|||
/**
|
||||
* Encode `pubkey` object message.
|
||||
* @param {Object} opts - `pubkey` object options
|
||||
* @param {number} opts.ttl - Time to live in seconds
|
||||
* @param {Address} opts.from - Originator of the message
|
||||
* @param {Address} opts.to - Receiver of the message
|
||||
* @param {boolean=} opts.skipPow - Do not compute POW (false by
|
||||
* default)
|
||||
* @return {Promise.<Buffer>} A promise that contains encoded message
|
||||
* when fulfilled.
|
||||
*/
|
||||
|
@ -380,12 +424,11 @@ var pubkey = exports.pubkey = {
|
|||
|
||||
/**
|
||||
* Encode `pubkey` object message payload.
|
||||
* @param {Object} opts - `pubkey` object options
|
||||
* @return {Promise.<Buffer>} A promise that contains encoded message
|
||||
* payload when fulfilled.
|
||||
* The same as [encodeAsync]{@link
|
||||
* module:bitmessage/objects.pubkey.encodeAsync}.
|
||||
*/
|
||||
encodePayloadAsync: function(opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
opts = objectAssign({}, opts);
|
||||
opts.type = object.PUBKEY;
|
||||
// Originator of `pubkey` message.
|
||||
|
@ -465,8 +508,9 @@ var pubkey = exports.pubkey = {
|
|||
function tryDecryptMsg(identities, buf) {
|
||||
function inner(i) {
|
||||
if (i > last) {
|
||||
var err = new Error("Failed to decrypt msg with given identities");
|
||||
return promise.reject(err);
|
||||
return PPromise.reject(
|
||||
new Error("Failed to decrypt msg with given identities")
|
||||
);
|
||||
}
|
||||
return bmcrypto
|
||||
.decrypt(identities[i].encPrivateKey, buf)
|
||||
|
@ -567,15 +611,52 @@ var msg = exports.msg = {
|
|||
*/
|
||||
SIMPLE: 2,
|
||||
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Buffer} nonce - A 8-byte object nonce
|
||||
* @property {number} ttl - Time to live in seconds
|
||||
* @property {number} type - Object type
|
||||
* @property {number} version - Object version
|
||||
* @property {number} stream - Object stream
|
||||
* @property {number} headerLength - Length of the object header
|
||||
* @property {number} senderVersion - Sender's address version
|
||||
* @property {number} senderStream - Sender's stream
|
||||
* @property {Object} behavior - Sender's [pubkey features]{@link
|
||||
* module:bitmessage/structs.PubkeyBitfield} that can be expected from
|
||||
* the node
|
||||
* @property {Buffer} signPublicKey - Sender's signing public key
|
||||
* @property {Buffer} encPublicKey - Sender's encryption public key
|
||||
* @property {number} nonceTrialsPerByte - Difficulty parameter of the
|
||||
* sender (present only if sender's address version >= 3)
|
||||
* @property {number} payloadLengthExtraBytes - Difficulty parameter
|
||||
* of the sender (present only if sender's address version >= 3)
|
||||
* @property {Buffer} ripe - The RIPEMD hash of the receiver's keys
|
||||
* @property {number} encoding - Message encoding
|
||||
* @property {(string|Buffer)} message - Message string for
|
||||
* [TRIVIAL]{@link module:bitmessage/objects.msg.TRIVIAL} and
|
||||
* [SIMPLE]{@link module:bitmessage/objects.msg.SIMPLE} encodings or
|
||||
* unparsed buffer data for other encodings
|
||||
* @property {string=} subject - Subject string for [SIMPLE]{@link
|
||||
* module:bitmessage/objects.msg.SIMPLE} encoding
|
||||
* @property {Buffer} ack - Message acknowledgement
|
||||
* @property {Buffer} signature - Signature of the message
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/objects.msg
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `msg` object message.
|
||||
* @param {Buffer} buf - Message
|
||||
* @param {Object} opts - Decoding options
|
||||
* @return {Promise.<Object>} A promise that contains decoded `msg`
|
||||
* object structure when fulfilled.
|
||||
* @param {Object} opts - Any of [object.decode]{@link
|
||||
* module:bitmessage/structs.object.decode} options and:
|
||||
* @param {(Address[]|Address)} opts.identities - Address objects used
|
||||
* to decrypt the message
|
||||
* @return {Promise.<DecodeResult>} A promise that contains [decoded
|
||||
* `msg` structure]{@link module:bitmessage/objects.msg.DecodeResult}
|
||||
* when fulfilled.
|
||||
*/
|
||||
decodeAsync: function(buf, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
var decoded = message.decode(buf);
|
||||
assert(decoded.command === "object", "Bad command");
|
||||
resolve(msg.decodePayloadAsync(decoded.payload, opts));
|
||||
|
@ -584,13 +665,11 @@ var msg = exports.msg = {
|
|||
|
||||
/**
|
||||
* Decode `msg` object message payload.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @param {Object} opts - Decoding options
|
||||
* @return {Promise.<Object>} A promise that contains decoded `msg`
|
||||
* object structure when fulfilled.
|
||||
* The same as [decodeAsync]{@link
|
||||
* module:bitmessage/objects.msg.decodeAsync}.
|
||||
*/
|
||||
decodePayloadAsync: function(buf, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
var decoded = object.decodePayload(buf, opts);
|
||||
assert(decoded.type === object.MSG, "Bad object type");
|
||||
assert(decoded.version === 1, "Bad msg version");
|
||||
|
@ -617,7 +696,7 @@ var msg = exports.msg = {
|
|||
var rest = decrypted.slice(decoded.length);
|
||||
|
||||
// Pow extra.
|
||||
if (decoded.senderVersion >= 3) {
|
||||
if (senderVersion >= 3) {
|
||||
var decodedTrials = var_int.decode(rest);
|
||||
decoded.nonceTrialsPerByte = decodedTrials.value;
|
||||
decoded.length += decodedTrials.length;
|
||||
|
@ -685,6 +764,18 @@ var msg = exports.msg = {
|
|||
/**
|
||||
* Encode `msg` object message.
|
||||
* @param {Object} opts - `msg` object options
|
||||
* @param {number} opts.ttl - Time to live in seconds
|
||||
* @param {Address} opts.from - Originator of the message
|
||||
* @param {Address} opts.to - Receiver of the message
|
||||
* @param {(string|Buffer)} opts.message - Message
|
||||
* @param {(string|Buffer)=} opts.subject - Subject for [SIMPLE]{@link
|
||||
* module:bitmessage/objects.msg.SIMPLE} encoding
|
||||
* @param {number=} opts.encoding - Encoding of the message
|
||||
* ([TRIVIAL]{@link module:bitmessage/objects.msg.TRIVIAL} by default)
|
||||
* @param {boolean=} opts.friend - Whether the receiver is friend and
|
||||
* should have minimal POW difficulty (false by default)
|
||||
* @param {boolean=} opts.skipPow - Do not compute POW (false by
|
||||
* default)
|
||||
* @return {Promise.<Buffer>} A promise that contains encoded message
|
||||
* when fulfilled.
|
||||
*/
|
||||
|
@ -696,12 +787,11 @@ var msg = exports.msg = {
|
|||
|
||||
/**
|
||||
* Encode `msg` object message payload.
|
||||
* @param {Object} opts - `msg` object options
|
||||
* @return {Promise.<Buffer>} A promise that contains encoded message
|
||||
* payload when fulfilled.
|
||||
* The same as [encodeAsync]{@link
|
||||
* module:bitmessage/objects.msg.encodeAsync}.
|
||||
*/
|
||||
encodePayloadAsync: function(opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
// Deal with options.
|
||||
opts = objectAssign({}, opts);
|
||||
opts.type = object.MSG;
|
||||
|
@ -776,8 +866,9 @@ var DEFAULT_ENCODING = msg.TRIVIAL;
|
|||
function tryDecryptBroadcastV4(subscriptions, buf) {
|
||||
function inner(i) {
|
||||
if (i > last) {
|
||||
var err = new Error("Failed to decrypt broadcast with given identities");
|
||||
return promise.reject(err);
|
||||
return PPromise.reject(
|
||||
new Error("Failed to decrypt broadcast with given identities")
|
||||
);
|
||||
}
|
||||
return bmcrypto
|
||||
.decrypt(subscriptions[i].getBroadcastPrivateKey(), buf)
|
||||
|
@ -810,15 +901,55 @@ function tryDecryptBroadcastV4(subscriptions, buf) {
|
|||
* @static
|
||||
*/
|
||||
var broadcast = exports.broadcast = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Buffer} nonce - A 8-byte object nonce
|
||||
* @property {number} ttl - Time to live in seconds
|
||||
* @property {number} type - Object type
|
||||
* @property {number} version - Object version
|
||||
* @property {number} stream - Object stream
|
||||
* @property {number} headerLength - Length of the object header
|
||||
* @property {Buffer} tag - Tag derived from the address object used
|
||||
* to send this `broadcast` (present only for object version >= 5)
|
||||
* @property {number} senderVersion - Sender's address version
|
||||
* @property {number} senderStream - Sender's stream
|
||||
* @property {Object} behavior - Sender's [pubkey features]{@link
|
||||
* module:bitmessage/structs.PubkeyBitfield} that can be expected from
|
||||
* the node
|
||||
* @property {Buffer} signPublicKey - Sender's signing public key
|
||||
* @property {Buffer} encPublicKey - Sender's encryption public key
|
||||
* @property {number} nonceTrialsPerByte - Difficulty parameter of the
|
||||
* sender (present only if sender's address version >= 3)
|
||||
* @property {number} payloadLengthExtraBytes - Difficulty parameter
|
||||
* of the sender (present only if sender's address version >= 3)
|
||||
* @property {number} encoding - Message encoding
|
||||
* @property {(string|Buffer)} message - Message string for
|
||||
* [TRIVIAL]{@link module:bitmessage/objects.msg.TRIVIAL} and
|
||||
* [SIMPLE]{@link module:bitmessage/objects.msg.SIMPLE} encodings or
|
||||
* unparsed buffer data for other encodings
|
||||
* @property {string=} subject - Subject string for [SIMPLE]{@link
|
||||
* module:bitmessage/objects.msg.SIMPLE} encoding
|
||||
* @property {Buffer} signature - Signature of the message
|
||||
* @property {number} length - Real data length
|
||||
* @memberof module:bitmessage/objects.broadcast
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `broadcast` object message.
|
||||
* @param {Buffer} buf - Message
|
||||
* @param {Object} opts - Decoding options
|
||||
* @return {Promise.<Object>} A promise that contains decoded
|
||||
* `broadcast` object structure when fulfilled.
|
||||
* @param {Object} opts - Any of [object.decode]{@link
|
||||
* module:bitmessage/structs.object.decode} options and:
|
||||
* @param {(Address[]|Address|Object)} opts.subscriptions - Address
|
||||
* objects which represent broadcast subscriptions. It is either
|
||||
* addresses array or single address or Object
|
||||
* addr-by-tag/addr-by-ripe. Time to match the key is O(n), O(1), O(1)
|
||||
* respectfully.
|
||||
* @return {Promise.<DecodeResult>} A promise that contains
|
||||
* [decoded `broadcast` structure]{@link
|
||||
* module:bitmessage/objects.broadcast.DecodeResult} when fulfilled.
|
||||
*/
|
||||
decodeAsync: function(buf, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
var decoded = message.decode(buf);
|
||||
assert(decoded.command === "object", "Bad command");
|
||||
resolve(broadcast.decodePayloadAsync(decoded.payload, opts));
|
||||
|
@ -827,13 +958,11 @@ var broadcast = exports.broadcast = {
|
|||
|
||||
/**
|
||||
* Decode `broadcast` object message payload.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @param {Object} opts - Decoding options
|
||||
* @return {Promise.<Object>} A promise that contains decoded `pubkey`
|
||||
* object structure when fulfilled.
|
||||
* The same as [decodeAsync]{@link
|
||||
* module:bitmessage/objects.broadcast.decodeAsync}.
|
||||
*/
|
||||
decodePayloadAsync: function(buf, opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
var decoded = object.decodePayload(buf, opts);
|
||||
assert(decoded.type === object.BROADCAST, "Bad object type");
|
||||
var version = decoded.version;
|
||||
|
@ -957,6 +1086,15 @@ var broadcast = exports.broadcast = {
|
|||
/**
|
||||
* Encode `broadcast` object message.
|
||||
* @param {Object} opts - `broadcast` object options
|
||||
* @param {number} opts.ttl - Time to live in seconds
|
||||
* @param {Address} opts.from - Originator of the message
|
||||
* @param {(string|Buffer)} opts.message - Message
|
||||
* @param {(string|Buffer)=} opts.subject - Subject for [SIMPLE]{@link
|
||||
* module:bitmessage/objects.msg.SIMPLE} encoding
|
||||
* @param {number=} opts.encoding - Encoding of the message
|
||||
* ([TRIVIAL]{@link module:bitmessage/objects.msg.TRIVIAL} by default)
|
||||
* @param {boolean=} opts.skipPow - Do not compute POW (false by
|
||||
* default)
|
||||
* @return {Promise.<Buffer>} A promise that contains encoded message
|
||||
* when fulfilled.
|
||||
*/
|
||||
|
@ -968,12 +1106,11 @@ var broadcast = exports.broadcast = {
|
|||
|
||||
/**
|
||||
* Encode `broadcast` object message payload.
|
||||
* @param {Object} opts - `broadcast` object options
|
||||
* @return {Promise.<Buffer>} A promise that contains encoded message
|
||||
* payload when fulfilled.
|
||||
* The same as [encodeAsync]{@link
|
||||
* module:bitmessage/objects.broadcast.encodeAsync}.
|
||||
*/
|
||||
encodePayloadAsync: function(opts) {
|
||||
return new promise(function(resolve) {
|
||||
return new PPromise(function(resolve) {
|
||||
// Deal with options.
|
||||
opts = objectAssign({}, opts);
|
||||
opts.type = object.BROADCAST;
|
||||
|
@ -1033,13 +1170,13 @@ var broadcast = exports.broadcast = {
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -31,7 +31,6 @@
|
|||
* @see {@link https://bitmessage.org/wiki/Proof_of_work}
|
||||
* @module bitmessage/pow
|
||||
*/
|
||||
// TODO(Kagami): Find a way how to document object params properly.
|
||||
|
||||
"use strict";
|
||||
|
||||
|
@ -43,6 +42,18 @@ var util = require("./_util");
|
|||
/**
|
||||
* Calculate target.
|
||||
* @param {Object} opts - Target options
|
||||
* @param {number} opts.ttl - Time to live of the message in seconds
|
||||
* @param {number} opts.payloadLength - Length of the message payload
|
||||
* (with nonce)
|
||||
* @param {Buffer} opts.payload - ...or payload itself
|
||||
* @param {number=} opts.nonceTrialsPerByte - This number is the average
|
||||
* number of nonce trials a node will have to perform to meet the Proof
|
||||
* of Work requirement. 1000 is the network minimum so any lower values
|
||||
* will be automatically raised to 1000.
|
||||
* @param {number=} opts.payloadLengthExtraBytes - This number is added
|
||||
* to the data length to make sending small messages more difficult.
|
||||
* 1000 is the network minimum so any lower values will be automatically
|
||||
* raised to 1000.
|
||||
* @return {number} Target.
|
||||
* @function
|
||||
* @static
|
||||
|
@ -61,6 +72,12 @@ var getTarget = exports.getTarget = function(opts) {
|
|||
/**
|
||||
* Check a POW.
|
||||
* @param {Object} opts - Proof of work options
|
||||
* @param {number} opts.target - Proof of work target or pass
|
||||
* [getTarget]{@link module:bitmessage/pow.getTarget} options to `opts`
|
||||
* to compute it
|
||||
* @param {Buffer} opts.payload - Message payload (with nonce)
|
||||
* @param {(number|Buffer)} opts.nonce - ...or already derived nonce
|
||||
* @param {Buffer} opts.initialHash - ...and initial hash
|
||||
* @return {boolean} Is the proof of work sufficient.
|
||||
*/
|
||||
exports.check = function(opts) {
|
||||
|
@ -103,10 +120,13 @@ exports.check = function(opts) {
|
|||
/**
|
||||
* Do a POW.
|
||||
* @param {Object} opts - Proof of work options
|
||||
* @param {?Buffer} opts.data - Object message payload without nonce to
|
||||
* @param {Buffer} opts.data - Object message payload without nonce to
|
||||
* get the initial hash from
|
||||
* @param {?Buffer} opts.initialHash - Or already computed initial hash
|
||||
* @param {Buffer} opts.initialHash - ...or already computed initial
|
||||
* hash
|
||||
* @param {number} opts.target - POW target
|
||||
* @param {number=} opts.poolSize - POW calculation pool size (by
|
||||
* default equals to number of cores)
|
||||
* @return {Promise.<number>} A promise that contains computed nonce for
|
||||
* the given target when fulfilled.
|
||||
*/
|
||||
|
@ -130,13 +150,13 @@ exports.doAsync = function(opts) {
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -28,10 +28,28 @@
|
|||
<article>
|
||||
<pre class="prettyprint source linenums"><code>/**
|
||||
* Implements common structures.
|
||||
* @see {@link https://bitmessage.org/wiki/Protocol_specification#Common_structures}
|
||||
* @see {@link
|
||||
* https://bitmessage.org/wiki/Protocol_specification#Common_structures}
|
||||
* @module bitmessage/structs
|
||||
* @example
|
||||
* var structs = require("bitmessage").structs;
|
||||
*
|
||||
* var encoded = Buffer.concat([
|
||||
* structs.var_int.encode(4),
|
||||
* Buffer("test"),
|
||||
* structs.var_str.encode("test2"),
|
||||
* structs.var_int_list.encode([1, 2, 3]),
|
||||
* ]);
|
||||
*
|
||||
* var decoded1 = structs.var_str.decode(encoded);
|
||||
* console.log(decoded1.str); // test
|
||||
* var decoded2 = structs.var_str.decode(decoded1.rest);
|
||||
* console.log(decoded2.str); // test2
|
||||
* var decoded3 = structs.var_int.decode(decoded2.rest);
|
||||
* console.log(decoded3.value); // 3
|
||||
* var decoded4 = structs.var_int_list.decode(decoded2.rest);
|
||||
* console.log(decoded4.list); // [1, 2, 3]
|
||||
*/
|
||||
// TODO(Kagami): Document object-like params.
|
||||
|
||||
"use strict";
|
||||
|
||||
|
@ -56,6 +74,48 @@ function getmsgchecksum(data) {
|
|||
return bmcrypto.sha512(data).slice(0, 4);
|
||||
}
|
||||
|
||||
// \ :3 /
|
||||
function findMagic(buf) {
|
||||
var i;
|
||||
var len = buf.length;
|
||||
var firstb = false;
|
||||
var secondb = false;
|
||||
var thirdb = false;
|
||||
for (i = 0; i < len; ++i) {
|
||||
switch (buf[i]) {
|
||||
case 0xE9:
|
||||
firstb = true;
|
||||
break;
|
||||
case 0xBE:
|
||||
if (firstb) { secondb = true; }
|
||||
break;
|
||||
case 0xB4:
|
||||
if (firstb && secondb) { thirdb = true; }
|
||||
break;
|
||||
case 0xD9:
|
||||
if (firstb && secondb && thirdb) { return i - 3; }
|
||||
break;
|
||||
default:
|
||||
firstb = false;
|
||||
secondb = false;
|
||||
thirdb = false;
|
||||
}
|
||||
}
|
||||
// If we reached the end of the buffer but part of the magic matches
|
||||
// we'll still return index of the magic's start position.
|
||||
if (firstb) {
|
||||
if (secondb) {
|
||||
--i;
|
||||
}
|
||||
if (thirdb) {
|
||||
--i;
|
||||
}
|
||||
return i - 1; // Compensate for last i's increment
|
||||
} else {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Message structure.
|
||||
* @see {@link https://bitmessage.org/wiki/Protocol_specification#Message_structure}
|
||||
|
@ -70,11 +130,118 @@ var message = exports.message = {
|
|||
MAGIC: 0xE9BEB4D9,
|
||||
|
||||
/**
|
||||
* Decode message structure.
|
||||
* @typedef {Object} TryDecodeResult
|
||||
* @property {Object} message - Decoded message
|
||||
* @property {string} message.command - Message command
|
||||
* @property {Buffer} message.payload - Message payload
|
||||
* @property {number} message.length - Full message length
|
||||
* @property {Error} error - ...or decoding error
|
||||
* @property {Buffer} rest - The rest of the input buffer after
|
||||
* processing message
|
||||
* @memberof module:bitmessage/structs.message
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode message in "stream" mode.
|
||||
* NOTE: message payload and `rest` are copied (so the runtime can GC
|
||||
* processed buffer data).
|
||||
* @param {Buffer} buf - Data buffer
|
||||
* @return {?TryDecodeResult}
|
||||
* [Decoded result.]{@link module:bitmessage/structs.message.TryDecodeResult}
|
||||
*/
|
||||
tryDecode: function(buf) {
|
||||
if (buf.length < 24) {
|
||||
// Message is not yet fully received, just skip to next process
|
||||
// cycle.
|
||||
return;
|
||||
}
|
||||
var res = {};
|
||||
|
||||
// Magic.
|
||||
var mindex = findMagic(buf);
|
||||
if (mindex !== 0) {
|
||||
if (mindex === -1) {
|
||||
res.error = new Error("Magic not found, skipping buffer data");
|
||||
res.rest = new Buffer(0);
|
||||
} else {
|
||||
res.error = new Error(
|
||||
"Magic in the middle of buffer, skipping some data at start"
|
||||
);
|
||||
res.rest = new Buffer(buf.length - mindex);
|
||||
buf.copy(res.rest, 0, mindex);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
// Payload length.
|
||||
var payloadLength = buf.readUInt32BE(16, true);
|
||||
var msgLength = 24 + payloadLength;
|
||||
// See: <https://github.com/Bitmessage/PyBitmessage/issues/767>.
|
||||
if (payloadLength > 1600003) {
|
||||
res.error = new Error("Message is too large, skipping it");
|
||||
if (buf.length > msgLength) {
|
||||
res.rest = new Buffer(buf.length - msgLength);
|
||||
buf.copy(res.rest, 0, msgLength);
|
||||
} else {
|
||||
res.rest = new Buffer(0);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
if (buf.length < msgLength) {
|
||||
// Message is not yet fully received, just skip to next process
|
||||
// cycle.
|
||||
return;
|
||||
}
|
||||
|
||||
// Now we can set `rest` value.
|
||||
res.rest = new Buffer(buf.length - msgLength);
|
||||
buf.copy(res.rest, 0, msgLength);
|
||||
|
||||
// Command.
|
||||
var command = buf.slice(4, 16);
|
||||
var firstNonNull = 0;
|
||||
var i;
|
||||
for (i = 11; i >=0; i--) {
|
||||
if (command[i] > 127) {
|
||||
res.error = new Error(
|
||||
"Non-ASCII characters in command, skipping message"
|
||||
);
|
||||
return res;
|
||||
}
|
||||
if (!firstNonNull && command[i] !== 0) {
|
||||
firstNonNull = i + 1;
|
||||
}
|
||||
}
|
||||
command = command.slice(0, firstNonNull).toString("ascii");
|
||||
|
||||
// Payload.
|
||||
var payload = new Buffer(payloadLength);
|
||||
buf.copy(payload, 0, 24, msgLength);
|
||||
var checksum = buf.slice(20, 24);
|
||||
if (!bufferEqual(checksum, getmsgchecksum(payload))) {
|
||||
res.error = new Error("Bad checksum, skipping message");
|
||||
return res;
|
||||
}
|
||||
|
||||
res.message = {command: command, payload: payload, length: msgLength};
|
||||
return res;
|
||||
},
|
||||
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {string} command - Message command
|
||||
* @property {Buffer} payload - Message payload
|
||||
* @property {number} length - Full message length
|
||||
* @property {Buffer} rest - The rest of the input buffer
|
||||
* @memberof module:bitmessage/structs.message
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode message.
|
||||
* NOTE: `payload` is copied, `rest` references input buffer.
|
||||
* @param {Buffer} buf - Buffer that starts with encoded message
|
||||
* @return {{command: string, payload: Buffer, length: number, rest: Buffer}}
|
||||
* Decoded message structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded message structure.]{@link module:bitmessage/structs.message.DecodeResult}
|
||||
*/
|
||||
decode: function(buf) {
|
||||
assert(buf.length >= 24, "Buffer is too small");
|
||||
|
@ -93,6 +260,7 @@ var message = exports.message = {
|
|||
// than default "utf-8" encoding.
|
||||
command = command.slice(0, firstNonNull).toString("ascii");
|
||||
var payloadLength = buf.readUInt32BE(16, true);
|
||||
assert(payloadLength <= 1600003, "Message payload is too big");
|
||||
var length = 24 + payloadLength;
|
||||
assert(buf.length >= length, "Truncated payload");
|
||||
var checksum = buf.slice(20, 24);
|
||||
|
@ -106,7 +274,7 @@ var message = exports.message = {
|
|||
},
|
||||
|
||||
/**
|
||||
* Encode message structure.
|
||||
* Encode message.
|
||||
* @param {string} command - Message command
|
||||
* @param {Bufer} payload - Message payload
|
||||
* @return {Buffer} Encoded message structure.
|
||||
|
@ -114,6 +282,8 @@ var message = exports.message = {
|
|||
encode: function(command, payload) {
|
||||
assert(command.length <= 12, "Command is too long");
|
||||
assert(isAscii(command), "Non-ASCII characters in command");
|
||||
payload = payload || new Buffer(0);
|
||||
assert(payload.length <= 1600003, "Message payload is too big");
|
||||
var buf = new Buffer(24 + payload.length);
|
||||
buf.fill(0);
|
||||
buf.writeUInt32BE(message.MAGIC, 0, true);
|
||||
|
@ -134,18 +304,48 @@ var message = exports.message = {
|
|||
* @static
|
||||
*/
|
||||
var object = exports.object = {
|
||||
// Known types.
|
||||
/**
|
||||
* [getpubkey]{@link module:bitmessage/objects.getpubkey} object type.
|
||||
* @constant {number}
|
||||
*/
|
||||
GETPUBKEY: 0,
|
||||
/**
|
||||
* [pubkey]{@link module:bitmessage/objects.pubkey} object type.
|
||||
* @constant {number}
|
||||
*/
|
||||
PUBKEY: 1,
|
||||
/**
|
||||
* [msg]{@link module:bitmessage/objects.msg} object type.
|
||||
* @constant {number}
|
||||
*/
|
||||
MSG: 2,
|
||||
/**
|
||||
* [broadcast]{@link module:bitmessage/objects.broadcast} object type.
|
||||
* @constant {number}
|
||||
*/
|
||||
BROADCAST: 3,
|
||||
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Buffer} nonce - A 8-byte object nonce
|
||||
* @property {number} ttl - Time to live in seconds
|
||||
* @property {number} type - Object type
|
||||
* @property {number} version - Object version
|
||||
* @property {number} stream - Object stream
|
||||
* @property {number} headerLength - Length of the object header
|
||||
* @property {Buffer} objectPayload - Object payload
|
||||
* @memberof module:bitmessage/structs.object
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `object` message.
|
||||
* NOTE: `nonce` and `objectPayload` are copied.
|
||||
* @param {Buffer} buf - Message
|
||||
* @param {?Object} opts - Decoding options
|
||||
* @return {Object} Decoded `object` structure.
|
||||
* @param {Object=} opts - Decoding options
|
||||
* @param {boolean} opts.allowExpired - Allow expired objects
|
||||
* @param {boolean} opts.skipPow - Do not validate object POW
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `object` structure.]{@link module:bitmessage/structs.object.DecodeResult}
|
||||
*/
|
||||
decode: function(buf, opts) {
|
||||
var decoded = message.decode(buf);
|
||||
|
@ -154,11 +354,8 @@ var object = exports.object = {
|
|||
},
|
||||
|
||||
/**
|
||||
* Decode `object` message payload.
|
||||
* NOTE: `nonce` and `objectPayload` are copied.
|
||||
* @param {Buffer} buf - Message payload
|
||||
* @param {?Object} opts - Decoding options
|
||||
* @return {Object} Decoded `object` structure.
|
||||
* Decode `object` message payload.
|
||||
* The same as [decode]{@link module:bitmessage/structs.object.decode}.
|
||||
*/
|
||||
decodePayload: function(buf, opts) {
|
||||
opts = opts || {};
|
||||
|
@ -206,6 +403,12 @@ var object = exports.object = {
|
|||
/**
|
||||
* Encode `object` message.
|
||||
* @param {Object} opts - Object options
|
||||
* @param {Object} opts.nonce - A 8-byte object nonce
|
||||
* @param {number} opts.ttl - Time to live in seconds
|
||||
* @param {number} opts.type - Object type
|
||||
* @param {number} opts.version - Object version
|
||||
* @param {number=} opts.stream - Object stream (1 by default)
|
||||
* @param {Buffer} opts.objectPayload - Object payload
|
||||
* @return {Buffer} Encoded message.
|
||||
*/
|
||||
encode: function(opts) {
|
||||
|
@ -215,8 +418,7 @@ var object = exports.object = {
|
|||
|
||||
/**
|
||||
* Encode `object` message payload.
|
||||
* @param {Object} opts - Object options
|
||||
* @return {Buffer} Encoded payload.
|
||||
* The same as [encode]{@link module:bitmessage/structs.object.encode}.
|
||||
*/
|
||||
encodePayload: function(opts) {
|
||||
// NOTE(Kagami): We do not try to calculate nonce here if it is not
|
||||
|
@ -240,6 +442,11 @@ var object = exports.object = {
|
|||
* Encode `object` message payload without leading nonce field (may be
|
||||
* useful if you are going to calculate it later).
|
||||
* @param {Object} opts - Object options
|
||||
* @param {number} opts.ttl - Time to live in seconds
|
||||
* @param {number} opts.type - Object type
|
||||
* @param {number} opts.version - Object version
|
||||
* @param {number=} opts.stream - Object stream (1 by default)
|
||||
* @param {Buffer} opts.objectPayload - Object payload
|
||||
* @return {Buffer} Encoded payload.
|
||||
*/
|
||||
encodePayloadWithoutNonce: function(opts) {
|
||||
|
@ -268,12 +475,20 @@ var object = exports.object = {
|
|||
* @static
|
||||
*/
|
||||
var var_int = exports.var_int = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {number} value - Stored value
|
||||
* @property {number} length - `var_int` full length
|
||||
* @property {Buffer} rest - The rest of the input buffer
|
||||
* @memberof module:bitmessage/structs.var_int
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `var_int`.
|
||||
* NOTE: `rest` references input buffer.
|
||||
* @param {Buffer} buf - A buffer that starts with encoded `var_int`
|
||||
* @return {{value: number, length: number, rest: Buffer}}
|
||||
* Decoded `var_int` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `var_int` structure.]{@link module:bitmessage/structs.var_int.DecodeResult}
|
||||
*/
|
||||
decode: function(buf) {
|
||||
var value, length;
|
||||
|
@ -361,12 +576,20 @@ var var_int = exports.var_int = {
|
|||
* @namespace
|
||||
*/
|
||||
exports.var_str = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {number} str - The string itself
|
||||
* @property {number} length - `var_str` full length
|
||||
* @property {Buffer} rest - The rest of the input buffer
|
||||
* @memberof module:bitmessage/structs.var_str
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `var_str`.
|
||||
* NOTE: `rest` references input buffer.
|
||||
* @param {Buffer} buf - A buffer that starts with encoded `var_str`
|
||||
* @return {{str: string, length: number, rest: Buffer}}
|
||||
* Decoded `var_str` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `var_str` structure.]{@link module:bitmessage/structs.var_str.DecodeResult}
|
||||
*/
|
||||
decode: function(buf) {
|
||||
var decoded = var_int.decode(buf);
|
||||
|
@ -397,13 +620,21 @@ exports.var_str = {
|
|||
* @namespace
|
||||
*/
|
||||
exports.var_int_list = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {number} list - Stored numbers
|
||||
* @property {number} length - `var_int_list` full length
|
||||
* @property {Buffer} rest - The rest of the input buffer
|
||||
* @memberof module:bitmessage/structs.var_int_list
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `var_int_list`.
|
||||
* NOTE: `rest` references input buffer.
|
||||
* @param {Buffer} buf - A buffer that starts with encoded
|
||||
* `var_int_list`
|
||||
* @return {{list: number[], length: number, rest: Buffer}}
|
||||
* Decoded `var_int_list` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `var_int_list` structure.]{@link module:bitmessage/structs.var_int_list.DecodeResult}
|
||||
*/
|
||||
decode: function(buf) {
|
||||
var decoded = var_int.decode(buf);
|
||||
|
@ -426,8 +657,9 @@ exports.var_int_list = {
|
|||
* @return {Buffer} Encoded `var_int_list`.
|
||||
*/
|
||||
encode: function(list) {
|
||||
var listBuf = Buffer.concat(list.map(var_int.encode));
|
||||
return Buffer.concat([var_int.encode(list.length), listBuf]);
|
||||
var var_ints = list.map(var_int.encode);
|
||||
var bufs = [var_int.encode(list.length)].concat(var_ints);
|
||||
return Buffer.concat(bufs);
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -454,10 +686,17 @@ function inet_ntop(buf) {
|
|||
function inet_pton(str) {
|
||||
var buf = new Buffer(16);
|
||||
buf.fill(0);
|
||||
// IPv4-mapped IPv6.
|
||||
if (str.slice(0, 7) === "::ffff:") {
|
||||
str = str.slice(7);
|
||||
}
|
||||
// IPv4.
|
||||
if (str.indexOf(":") === -1) {
|
||||
IPv4_MAPPING.copy(buf);
|
||||
var octets = str.split(/\./g).map(function(s) {return parseInt(s, 10);});
|
||||
var octets = str.split(/\./g).map(function(o) {
|
||||
assert(/^\d+$/.test(o), "Bad octet");
|
||||
return parseInt(o, 10);
|
||||
});
|
||||
// Support short form from inet_aton(3) man page.
|
||||
if (octets.length === 1) {
|
||||
buf.writeUInt32BE(octets[0], 12);
|
||||
|
@ -512,6 +751,8 @@ function inet_pton(str) {
|
|||
assert(groups.length === 8, "Bad IPv6 address");
|
||||
}
|
||||
for (i = 0; i < Math.min(groups.length, 8); i++) {
|
||||
// Check against parseInt("127.0.0.1", 16) -> 295
|
||||
assert(/^[0-9a-f]+$/.test(groups[i]), "Bad group");
|
||||
buf.writeUInt16BE(parseInt(groups[i], 16), i * 2);
|
||||
}
|
||||
}
|
||||
|
@ -524,13 +765,28 @@ function inet_pton(str) {
|
|||
* @namespace
|
||||
*/
|
||||
exports.net_addr = {
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Date} time - Time the node was last active, not included
|
||||
* in short mode
|
||||
* @property {number} stream - Stream number of the node, not included
|
||||
* in short mode
|
||||
* @property {Object} services -
|
||||
* [Services]{@link module:bitmessage/structs.ServicesBitfield}
|
||||
* provided by the node
|
||||
* @property {string} host - IPv4/IPv6 address of the node
|
||||
* @property {number} port - Incoming port of the node
|
||||
* @memberof module:bitmessage/structs.net_addr
|
||||
*/
|
||||
|
||||
/**
|
||||
* Decode `net_addr`.
|
||||
* @param {Buffer} buf - A buffer that contains encoded `net_addr`
|
||||
* @param {?Object} opts - Decoding options; use `short` option to
|
||||
* @param {Object=} opts - Decoding options; use `short` option to
|
||||
* decode `net_addr` from
|
||||
* [version message]{@link module:bitmessage/messages.version}
|
||||
* @return {Object} Decoded `net_addr` structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `net_addr` structure.]{@link module:bitmessage/structs.net_addr.DecodeResult}
|
||||
*/
|
||||
decode: function(buf, opts) {
|
||||
var short = !!(opts || {}).short;
|
||||
|
@ -558,9 +814,19 @@ exports.net_addr = {
|
|||
|
||||
/**
|
||||
* Encode `net_addr`.
|
||||
* @param {Object} opts - Encode options; use `short` option to encode
|
||||
* `net_addr` for
|
||||
* @param {Object} opts - Encoding options
|
||||
* @param {boolean=} opts.short - Encode `net_addr` for
|
||||
* [version message]{@link module:bitmessage/messages.version}
|
||||
* (false by default)
|
||||
* @param {Date=} opts.time - Time the node was last active, not
|
||||
* included in short mode (current time by default)
|
||||
* @param {number=} opts.stream - Stream number of the node, not
|
||||
* included in short mode (1 by default)
|
||||
* @param {Object=} opts.services -
|
||||
* [Services]{@link module:bitmessage/structs.ServicesBitfield}
|
||||
* provided by the node (`NODE_NETWORK` by default)
|
||||
* @param {string} opts.host - IPv4/IPv6 address of the node
|
||||
* @param {number} opts.port - Incoming port of the node
|
||||
* @return {Buffer} Encoded `net_addr`.
|
||||
*/
|
||||
encode: function(opts) {
|
||||
|
@ -595,12 +861,14 @@ exports.net_addr = {
|
|||
* @see {@link https://bitmessage.org/wiki/Protocol_specification#Inventory_Vectors}
|
||||
* @namespace
|
||||
*/
|
||||
// Only encode operation is defined because decode is impossible.
|
||||
exports.inv_vect = {
|
||||
// NOTE(Kagami): Only encode operation is defined because decoding of
|
||||
// the encoded vector is impossible.
|
||||
|
||||
/**
|
||||
* Encode inventory vector.
|
||||
* @param {Buffer} buf - Payload to calculate the inventory vector for
|
||||
* @return {Buffer} Encoded `inv_vect`.
|
||||
* @return {Buffer} A 32-byte encoded `inv_vect`.
|
||||
*/
|
||||
encode: function(buf) {
|
||||
return bmcrypto.sha512(bmcrypto.sha512(buf)).slice(0, 32);
|
||||
|
@ -613,18 +881,34 @@ exports.inv_vect = {
|
|||
* @namespace encrypted
|
||||
* @static
|
||||
*/
|
||||
/**
|
||||
* @typedef {Object} DecodeResult
|
||||
* @property {Buffer} iv - Initialization vector (16 bytes)
|
||||
* @property {Buffer} ephemPrivateKey - Ephemeral private key (32 bytes)
|
||||
* @property {Buffer} ciphertext - The result of encryption (variable
|
||||
* size)
|
||||
* @property {Buffer} mac - Message authentication code (32 bytes)
|
||||
* @memberof module:bitmessage/structs.encrypted
|
||||
*/
|
||||
/**
|
||||
* Decode encrypted payload.
|
||||
* NOTE: all structure members are copied.
|
||||
* @param {Buffer} buf - A buffer that contains encrypted payload
|
||||
* @return {Object} Decoded encrypted structure.
|
||||
* @return {DecodeResult}
|
||||
* [Decoded `encrypted` structure.]{@link module:bitmessage/structs.encrypted.DecodeResult}
|
||||
* @function decode
|
||||
* @memberof module:bitmessage/structs.encrypted
|
||||
*/
|
||||
/**
|
||||
* Encode `encrypted`.
|
||||
* @param {Object} opts - Encode options
|
||||
* @return {Buffer} Encoded encrypted payload.
|
||||
* @param {Object} opts - Encoding options
|
||||
* @param {Buffer} opts.iv - Initialization vector (16 bytes)
|
||||
* @param {Buffer} opts.ephemPrivateKey - Ephemeral private key (32
|
||||
* bytes)
|
||||
* @param {Buffer} opts.ciphertext - The result of encryption (variable
|
||||
* size)
|
||||
* @param {Buffer} opts.mac - Message authentication code (32 bytes)
|
||||
* @return {Buffer} Encoded `encrypted` payload.
|
||||
* @function encode
|
||||
* @memberof module:bitmessage/structs.encrypted
|
||||
*/
|
||||
|
@ -689,18 +973,49 @@ var Bitfield = function(size) {
|
|||
};
|
||||
|
||||
/**
|
||||
* Services bitfield features.
|
||||
* Service features bitfield (MSB 0).
|
||||
* @see {@link https://bitmessage.org/wiki/Protocol_specification#version}
|
||||
* @namespace
|
||||
* @param {Buffer=} buf - A 8-byte bitfield buffer (will be created if
|
||||
* not provided or will be copied if `opts.copy` is `true`)
|
||||
* @param {Object=} opts - Options
|
||||
* @constructor
|
||||
* @static
|
||||
* @example
|
||||
* var ServicesBitfield = require("bitmessage").structs.ServicesBitfield;
|
||||
* var services = ServicesBitfield().set(ServicesBitfield.NODE_NETWORK);
|
||||
* console.log(services.get(ServicesBitfield.NODE_NETWORK)); // true
|
||||
* console.log(services.get(15)); // false
|
||||
*/
|
||||
// TODO(Kagami): Document methods.
|
||||
// NOTE(Kagami): Since pubkey bitfield uses MSB 0, we use it here too.
|
||||
// See <https://github.com/Bitmessage/PyBitmessage/issues/769> for
|
||||
// details.
|
||||
var ServicesBitfield = exports.ServicesBitfield = objectAssign(Bitfield(64), {
|
||||
/**
|
||||
* This is a normal network node.
|
||||
* Returns a boolean indicating whether the bit is set.
|
||||
* @param {number} index - Bit index (MSB 0)
|
||||
* @function get
|
||||
* @instance
|
||||
* @return {boolean}
|
||||
* @memberof module:bitmessage/structs.ServicesBitfield
|
||||
*/
|
||||
/**
|
||||
* Set the given bit(s) to `1`.
|
||||
* @param {(number|number[])} index - Bit(s) index (MSB 0)
|
||||
* @function set
|
||||
* @instance
|
||||
* @return {Object} Returns self so methods can be chained.
|
||||
* @memberof module:bitmessage/structs.ServicesBitfield
|
||||
*/
|
||||
/**
|
||||
* The contents of the bitfield.
|
||||
* @type {Buffer}
|
||||
* @var buffer
|
||||
* @instance
|
||||
* @memberof module:bitmessage/structs.ServicesBitfield
|
||||
*/
|
||||
|
||||
/**
|
||||
* Bit index indicating normal network node.
|
||||
* @memberof module:bitmessage/structs.ServicesBitfield
|
||||
* @constant {number}
|
||||
*/
|
||||
|
@ -708,22 +1023,58 @@ var ServicesBitfield = exports.ServicesBitfield = objectAssign(Bitfield(64), {
|
|||
});
|
||||
|
||||
/**
|
||||
* Pubkey bitfield features.
|
||||
* Pubkey features bitfield (MSB 0).
|
||||
* @see {@link https://bitmessage.org/wiki/Protocol_specification#Pubkey_bitfield_features}
|
||||
* @namespace
|
||||
* @param {Buffer=} buf - A 4-byte bitfield buffer (will be created if
|
||||
* not provided or will be copied if `opts.copy` is `true`)
|
||||
* @param {Object=} opts - Options
|
||||
* @constructor
|
||||
* @example
|
||||
* var PubkeyBitfield = require("bitmessage").structs.PubkeyBitfield;
|
||||
* var behavior = PubkeyBitfield().set([
|
||||
* PubkeyBitfield.INCLUDE_DESTINATION,
|
||||
* PubkeyBitfield.DOES_ACK,
|
||||
* ]).set(1);
|
||||
* console.log(behavior.get(PubkeyBitfield.DOES_ACK)); // true
|
||||
* console.log(behavior.get(15)); // false
|
||||
*/
|
||||
// TODO(Kagami): Document methods.
|
||||
exports.PubkeyBitfield = objectAssign(Bitfield(32), {
|
||||
/**
|
||||
* Receiving node expects that the RIPE hash encoded in their address
|
||||
* preceedes the encrypted message data of msg messages bound for
|
||||
* them.
|
||||
* Returns a boolean indicating whether the bit is set.
|
||||
* @param {number} index - Bit index (MSB 0)
|
||||
* @function get
|
||||
* @instance
|
||||
* @return {boolean}
|
||||
* @memberof module:bitmessage/structs.PubkeyBitfield
|
||||
*/
|
||||
/**
|
||||
* Set the given bit(s) to `1`.
|
||||
* @param {(number|number[])} index - Bit(s) index (MSB 0)
|
||||
* @function set
|
||||
* @instance
|
||||
* @return {Object} Returns self so methods can be chained.
|
||||
* @memberof module:bitmessage/structs.PubkeyBitfield
|
||||
*/
|
||||
/**
|
||||
* The contents of the bitfield.
|
||||
* @type {Buffer}
|
||||
* @var buffer
|
||||
* @instance
|
||||
* @memberof module:bitmessage/structs.PubkeyBitfield
|
||||
*/
|
||||
|
||||
/**
|
||||
* Bit index.
|
||||
* If set, the receiving node expects that the RIPEMD hash encoded in
|
||||
* their address preceedes the encrypted message data of msg messages
|
||||
* bound for them.
|
||||
* @memberof module:bitmessage/structs.PubkeyBitfield
|
||||
* @constant {number}
|
||||
*/
|
||||
INCLUDE_DESTINATION: 30,
|
||||
/**
|
||||
* If true, the receiving node does send acknowledgements (rather than
|
||||
* Bit index.
|
||||
* If set, the receiving node does send acknowledgements (rather than
|
||||
* dropping them).
|
||||
* @memberof module:bitmessage/structs.PubkeyBitfield
|
||||
* @constant {number}
|
||||
|
@ -740,13 +1091,13 @@ exports.PubkeyBitfield = objectAssign(Bitfield(32), {
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -334,13 +334,15 @@ h6
|
|||
.params th, .props th { border-right: 1px solid #aaa; }
|
||||
.params thead .last, .props thead .last { border-right: 1px solid #ddd; }
|
||||
|
||||
.params td.description > p:first-child
|
||||
.params td.description > p:first-child,
|
||||
.props td.description > p:first-child
|
||||
{
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
.params td.description > p:last-child
|
||||
.params td.description > p:last-child,
|
||||
.props td.description > p:last-child
|
||||
{
|
||||
margin-bottom: 0;
|
||||
padding-bottom: 0;
|
||||
|
|
|
@ -90,8 +90,8 @@ exports.parse = function(str) {
|
|||
/**
|
||||
* Encode user agent into `var_str` Buffer. Most underlying software
|
||||
* comes first.
|
||||
* @param {(Object[]|string[]|string)} software - List of software to
|
||||
* encode or just raw user agent string
|
||||
* @param {(Object[]|string[]|string|Buffer)} software - List of
|
||||
* software to encode or just raw user agent string/Buffer
|
||||
* @return {Buffer} Encoded user agent.
|
||||
* @function
|
||||
* @static
|
||||
|
@ -111,6 +111,8 @@ var encode = exports.encode = function(software) {
|
|||
return str;
|
||||
}).join("/");
|
||||
ua = "/" + ua + "/";
|
||||
} else if (Buffer.isBuffer(software)) {
|
||||
return software;
|
||||
} else {
|
||||
ua = software;
|
||||
}
|
||||
|
@ -118,7 +120,7 @@ var encode = exports.encode = function(software) {
|
|||
};
|
||||
|
||||
/**
|
||||
* Encode bitmessage's user agent.
|
||||
* Encode bitmessage's library user agent.
|
||||
* @return {Buffer} Encoded user agent.
|
||||
*/
|
||||
exports.encodeSelf = function() {
|
||||
|
@ -126,8 +128,8 @@ exports.encodeSelf = function() {
|
|||
};
|
||||
|
||||
/**
|
||||
* Encode user agent with bitmessage's user agent underneath. Most
|
||||
* underlying software comes first.
|
||||
* Encode user agent with bitmessage's library user agent underneath.
|
||||
* Most underlying software comes first.
|
||||
* @param {(Object[]|string[]|Object|string)} software - List of
|
||||
* software to encode
|
||||
* @return {Buffer} Encoded user agent.
|
||||
|
@ -146,13 +148,13 @@ exports.encodeSelfWith = function(software) {
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
@ -45,7 +45,8 @@ function getwifchecksum(data) {
|
|||
}
|
||||
|
||||
/**
|
||||
* Decode WIF encoded private key.
|
||||
* Decode WIF-encoded private key (corresponded to a uncompressed public
|
||||
* key).
|
||||
* @param {string} wif - Encoded key
|
||||
* @return {Buffer} Private key.
|
||||
*/
|
||||
|
@ -59,9 +60,10 @@ exports.decode = function(wif) {
|
|||
};
|
||||
|
||||
/**
|
||||
* Convert private key to a WIF.
|
||||
* Convert private key to a WIF (corresponded to a uncompressed public
|
||||
* key).
|
||||
* @param {Buffer} privateKey - A private key to encode
|
||||
* @return {string} Encoded private key.
|
||||
* @return {string} WIF-encoded private key.
|
||||
*/
|
||||
exports.encode = function(privateKey) {
|
||||
var data = Buffer.concat([new Buffer([0x80]), privateKey]);
|
||||
|
@ -79,13 +81,13 @@ exports.encode = function(privateKey) {
|
|||
</div>
|
||||
|
||||
<nav>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-bitmessage.html">bitmessage</a></li><li><a href="module-bitmessage_address.html">bitmessage/address</a></li><li><a href="module-bitmessage_crypto.html">bitmessage/crypto</a></li><li><a href="module-bitmessage_messages.html">bitmessage/messages</a></li><li><a href="module-bitmessage_net_base.html">bitmessage/net/base</a></li><li><a href="module-bitmessage_net_tcp.html">bitmessage/net/tcp</a></li><li><a href="module-bitmessage_net_ws.html">bitmessage/net/ws</a></li><li><a href="module-bitmessage_objects.html">bitmessage/objects</a></li><li><a href="module-bitmessage_pow.html">bitmessage/pow</a></li><li><a href="module-bitmessage_structs.html">bitmessage/structs</a></li><li><a href="module-bitmessage_user-agent.html">bitmessage/user-agent</a></li><li><a href="module-bitmessage_wif.html">bitmessage/wif</a></li></ul><h3>Classes</h3><ul><li><a href="module-bitmessage_address.Address.html">Address</a></li><li><a href="module-bitmessage_net_base.BaseTransport.html">BaseTransport</a></li><li><a href="module-bitmessage_net_tcp.TcpTransport.html">TcpTransport</a></li><li><a href="module-bitmessage_net_ws.WsTransport.html">WsTransport</a></li><li><a href="module-bitmessage_structs.PubkeyBitfield.html">PubkeyBitfield</a></li><li><a href="module-bitmessage_structs.ServicesBitfield.html">ServicesBitfield</a></li></ul><h3>Namespaces</h3><ul><li><a href="module-bitmessage_messages.addr.html">addr</a></li><li><a href="module-bitmessage_messages.error.html">error</a></li><li><a href="module-bitmessage_messages.getdata.html">getdata</a></li><li><a href="module-bitmessage_messages.inv.html">inv</a></li><li><a href="module-bitmessage_messages.version.html">version</a></li><li><a href="module-bitmessage_objects.broadcast.html">broadcast</a></li><li><a href="module-bitmessage_objects.getpubkey.html">getpubkey</a></li><li><a href="module-bitmessage_objects.msg.html">msg</a></li><li><a href="module-bitmessage_objects.pubkey.html">pubkey</a></li><li><a href="module-bitmessage_structs.encrypted.html">encrypted</a></li><li><a href="module-bitmessage_structs.inv_vect.html">inv_vect</a></li><li><a href="module-bitmessage_structs.message.html">message</a></li><li><a href="module-bitmessage_structs.net_addr.html">net_addr</a></li><li><a href="module-bitmessage_structs.object.html">object</a></li><li><a href="module-bitmessage_structs.var_int.html">var_int</a></li><li><a href="module-bitmessage_structs.var_int_list.html">var_int_list</a></li><li><a href="module-bitmessage_structs.var_str.html">var_str</a></li></ul>
|
||||
</nav>
|
||||
|
||||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-beta1</a> on Sat Jan 31 2015 14:53:21 GMT+0300 (MSK)
|
||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0-dev</a> on Thu Feb 12 2015 13:43:38 GMT+0300 (MSK)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
Loading…
Reference in New Issue
Block a user