parent
c514fbccc0
commit
8f8774cf6d
@ -241,7 +241,7 @@ func startNode(ctx *cli.Context, stack *node.Node) {
|
|||||||
stack.AccountManager().Subscribe(events)
|
stack.AccountManager().Subscribe(events)
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
// Create an chain state reader for self-derivation
|
// Create a chain state reader for self-derivation
|
||||||
rpcClient, err := stack.Attach()
|
rpcClient, err := stack.Attach()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
utils.Fatalf("Failed to attach to self: %v", err)
|
utils.Fatalf("Failed to attach to self: %v", err)
|
||||||
|
@ -683,7 +683,7 @@ func deployDashboard(client *sshClient, network string, conf *config, config *da
|
|||||||
return nil, client.Stream(fmt.Sprintf("cd %s && docker-compose -p %s up -d --build --force-recreate", workdir, network))
|
return nil, client.Stream(fmt.Sprintf("cd %s && docker-compose -p %s up -d --build --force-recreate", workdir, network))
|
||||||
}
|
}
|
||||||
|
|
||||||
// dashboardInfos is returned from an dashboard status check to allow reporting
|
// dashboardInfos is returned from a dashboard status check to allow reporting
|
||||||
// various configuration parameters.
|
// various configuration parameters.
|
||||||
type dashboardInfos struct {
|
type dashboardInfos struct {
|
||||||
host string
|
host string
|
||||||
|
@ -168,7 +168,7 @@ func (info *explorerInfos) Report() map[string]string {
|
|||||||
return report
|
return report
|
||||||
}
|
}
|
||||||
|
|
||||||
// checkExplorer does a health-check against an block explorer server to verify
|
// checkExplorer does a health-check against a block explorer server to verify
|
||||||
// whether it's running, and if yes, whether it's responsive.
|
// whether it's running, and if yes, whether it's responsive.
|
||||||
func checkExplorer(client *sshClient, network string) (*explorerInfos, error) {
|
func checkExplorer(client *sshClient, network string) (*explorerInfos, error) {
|
||||||
// Inspect a possible block explorer container on the host
|
// Inspect a possible block explorer container on the host
|
||||||
|
@ -30,7 +30,7 @@ import (
|
|||||||
"github.com/ethereum/go-ethereum/log"
|
"github.com/ethereum/go-ethereum/log"
|
||||||
)
|
)
|
||||||
|
|
||||||
// faucetDockerfile is the Dockerfile required to build an faucet container to
|
// faucetDockerfile is the Dockerfile required to build a faucet container to
|
||||||
// grant crypto tokens based on GitHub authentications.
|
// grant crypto tokens based on GitHub authentications.
|
||||||
var faucetDockerfile = `
|
var faucetDockerfile = `
|
||||||
FROM ethereum/client-go:alltools-latest
|
FROM ethereum/client-go:alltools-latest
|
||||||
@ -138,7 +138,7 @@ func deployFaucet(client *sshClient, network string, bootnodes []string, config
|
|||||||
return nil, client.Stream(fmt.Sprintf("cd %s && docker-compose -p %s up -d --build --force-recreate", workdir, network))
|
return nil, client.Stream(fmt.Sprintf("cd %s && docker-compose -p %s up -d --build --force-recreate", workdir, network))
|
||||||
}
|
}
|
||||||
|
|
||||||
// faucetInfos is returned from an faucet status check to allow reporting various
|
// faucetInfos is returned from a faucet status check to allow reporting various
|
||||||
// configuration parameters.
|
// configuration parameters.
|
||||||
type faucetInfos struct {
|
type faucetInfos struct {
|
||||||
node *nodeInfos
|
node *nodeInfos
|
||||||
@ -181,7 +181,7 @@ func (info *faucetInfos) Report() map[string]string {
|
|||||||
return report
|
return report
|
||||||
}
|
}
|
||||||
|
|
||||||
// checkFaucet does a health-check against an faucet server to verify whether
|
// checkFaucet does a health-check against a faucet server to verify whether
|
||||||
// it's running, and if yes, gathering a collection of useful infos about it.
|
// it's running, and if yes, gathering a collection of useful infos about it.
|
||||||
func checkFaucet(client *sshClient, network string) (*faucetInfos, error) {
|
func checkFaucet(client *sshClient, network string) (*faucetInfos, error) {
|
||||||
// Inspect a possible faucet container on the host
|
// Inspect a possible faucet container on the host
|
||||||
|
@ -198,7 +198,7 @@ func (info *nodeInfos) Report() map[string]string {
|
|||||||
return report
|
return report
|
||||||
}
|
}
|
||||||
|
|
||||||
// checkNode does a health-check against an boot or seal node server to verify
|
// checkNode does a health-check against a boot or seal node server to verify
|
||||||
// whether it's running, and if yes, whether it's responsive.
|
// whether it's running, and if yes, whether it's responsive.
|
||||||
func checkNode(client *sshClient, network string, boot bool) (*nodeInfos, error) {
|
func checkNode(client *sshClient, network string, boot bool) (*nodeInfos, error) {
|
||||||
kind := "bootnode"
|
kind := "bootnode"
|
||||||
|
@ -87,7 +87,7 @@ func (b *bridge) NewAccount(call otto.FunctionCall) (response otto.Value) {
|
|||||||
// OpenWallet is a wrapper around personal.openWallet which can interpret and
|
// OpenWallet is a wrapper around personal.openWallet which can interpret and
|
||||||
// react to certain error messages, such as the Trezor PIN matrix request.
|
// react to certain error messages, such as the Trezor PIN matrix request.
|
||||||
func (b *bridge) OpenWallet(call otto.FunctionCall) (response otto.Value) {
|
func (b *bridge) OpenWallet(call otto.FunctionCall) (response otto.Value) {
|
||||||
// Make sure we have an wallet specified to open
|
// Make sure we have a wallet specified to open
|
||||||
if !call.Argument(0).IsString() {
|
if !call.Argument(0).IsString() {
|
||||||
throwJSException("first argument must be the wallet URL to open")
|
throwJSException("first argument must be the wallet URL to open")
|
||||||
}
|
}
|
||||||
|
@ -392,7 +392,7 @@ func (m *Matcher) distributor(dist chan *request, session *MatcherSession) {
|
|||||||
shutdown = session.quit // Shutdown request channel, will gracefully wait for pending requests
|
shutdown = session.quit // Shutdown request channel, will gracefully wait for pending requests
|
||||||
)
|
)
|
||||||
|
|
||||||
// assign is a helper method fo try to assign a pending bit an an actively
|
// assign is a helper method fo try to assign a pending bit an actively
|
||||||
// listening servicer, or schedule it up for later when one arrives.
|
// listening servicer, or schedule it up for later when one arrives.
|
||||||
assign := func(bit uint) {
|
assign := func(bit uint) {
|
||||||
select {
|
select {
|
||||||
|
@ -51,7 +51,7 @@ func NewPublicDownloaderAPI(d *Downloader, m *event.TypeMux) *PublicDownloaderAP
|
|||||||
return api
|
return api
|
||||||
}
|
}
|
||||||
|
|
||||||
// eventLoop runs an loop until the event mux closes. It will install and uninstall new
|
// eventLoop runs a loop until the event mux closes. It will install and uninstall new
|
||||||
// sync subscriptions and broadcasts sync status updates to the installed sync subscriptions.
|
// sync subscriptions and broadcasts sync status updates to the installed sync subscriptions.
|
||||||
func (api *PublicDownloaderAPI) eventLoop() {
|
func (api *PublicDownloaderAPI) eventLoop() {
|
||||||
var (
|
var (
|
||||||
|
@ -198,7 +198,7 @@ func (f *fetcherTester) makeBodyFetcher(peer string, blocks map[common.Hash]*typ
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// verifyFetchingEvent verifies that one single event arrive on an fetching channel.
|
// verifyFetchingEvent verifies that one single event arrive on a fetching channel.
|
||||||
func verifyFetchingEvent(t *testing.T, fetching chan []common.Hash, arrive bool) {
|
func verifyFetchingEvent(t *testing.T, fetching chan []common.Hash, arrive bool) {
|
||||||
if arrive {
|
if arrive {
|
||||||
select {
|
select {
|
||||||
|
@ -2193,7 +2193,7 @@ var toWei = function(number, unit) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Takes an input and transforms it into an bignumber
|
* Takes an input and transforms it into a bignumber
|
||||||
*
|
*
|
||||||
* @method toBigNumber
|
* @method toBigNumber
|
||||||
* @param {Number|String|BigNumber} a number, string, HEX string or BigNumber
|
* @param {Number|String|BigNumber} a number, string, HEX string or BigNumber
|
||||||
|
@ -80,7 +80,7 @@ func (h *Header) EncodeRLP() ([]byte, error) {
|
|||||||
return rlp.EncodeToBytes(h.header)
|
return rlp.EncodeToBytes(h.header)
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewHeaderFromJSON parses a header from an JSON data dump.
|
// NewHeaderFromJSON parses a header from a JSON data dump.
|
||||||
func NewHeaderFromJSON(data string) (*Header, error) {
|
func NewHeaderFromJSON(data string) (*Header, error) {
|
||||||
h := &Header{
|
h := &Header{
|
||||||
header: new(types.Header),
|
header: new(types.Header),
|
||||||
@ -91,7 +91,7 @@ func NewHeaderFromJSON(data string) (*Header, error) {
|
|||||||
return h, nil
|
return h, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// EncodeJSON encodes a header into an JSON data dump.
|
// EncodeJSON encodes a header into a JSON data dump.
|
||||||
func (h *Header) EncodeJSON() (string, error) {
|
func (h *Header) EncodeJSON() (string, error) {
|
||||||
data, err := json.Marshal(h.header)
|
data, err := json.Marshal(h.header)
|
||||||
return string(data), err
|
return string(data), err
|
||||||
@ -151,7 +151,7 @@ func (b *Block) EncodeRLP() ([]byte, error) {
|
|||||||
return rlp.EncodeToBytes(b.block)
|
return rlp.EncodeToBytes(b.block)
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewBlockFromJSON parses a block from an JSON data dump.
|
// NewBlockFromJSON parses a block from a JSON data dump.
|
||||||
func NewBlockFromJSON(data string) (*Block, error) {
|
func NewBlockFromJSON(data string) (*Block, error) {
|
||||||
b := &Block{
|
b := &Block{
|
||||||
block: new(types.Block),
|
block: new(types.Block),
|
||||||
@ -162,7 +162,7 @@ func NewBlockFromJSON(data string) (*Block, error) {
|
|||||||
return b, nil
|
return b, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// EncodeJSON encodes a block into an JSON data dump.
|
// EncodeJSON encodes a block into a JSON data dump.
|
||||||
func (b *Block) EncodeJSON() (string, error) {
|
func (b *Block) EncodeJSON() (string, error) {
|
||||||
data, err := json.Marshal(b.block)
|
data, err := json.Marshal(b.block)
|
||||||
return string(data), err
|
return string(data), err
|
||||||
@ -220,7 +220,7 @@ func (tx *Transaction) EncodeRLP() ([]byte, error) {
|
|||||||
return rlp.EncodeToBytes(tx.tx)
|
return rlp.EncodeToBytes(tx.tx)
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewTransactionFromJSON parses a transaction from an JSON data dump.
|
// NewTransactionFromJSON parses a transaction from a JSON data dump.
|
||||||
func NewTransactionFromJSON(data string) (*Transaction, error) {
|
func NewTransactionFromJSON(data string) (*Transaction, error) {
|
||||||
tx := &Transaction{
|
tx := &Transaction{
|
||||||
tx: new(types.Transaction),
|
tx: new(types.Transaction),
|
||||||
@ -231,7 +231,7 @@ func NewTransactionFromJSON(data string) (*Transaction, error) {
|
|||||||
return tx, nil
|
return tx, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// EncodeJSON encodes a transaction into an JSON data dump.
|
// EncodeJSON encodes a transaction into a JSON data dump.
|
||||||
func (tx *Transaction) EncodeJSON() (string, error) {
|
func (tx *Transaction) EncodeJSON() (string, error) {
|
||||||
data, err := json.Marshal(tx.tx)
|
data, err := json.Marshal(tx.tx)
|
||||||
return string(data), err
|
return string(data), err
|
||||||
@ -312,7 +312,7 @@ func (r *Receipt) EncodeRLP() ([]byte, error) {
|
|||||||
return rlp.EncodeToBytes(r.receipt)
|
return rlp.EncodeToBytes(r.receipt)
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewReceiptFromJSON parses a transaction receipt from an JSON data dump.
|
// NewReceiptFromJSON parses a transaction receipt from a JSON data dump.
|
||||||
func NewReceiptFromJSON(data string) (*Receipt, error) {
|
func NewReceiptFromJSON(data string) (*Receipt, error) {
|
||||||
r := &Receipt{
|
r := &Receipt{
|
||||||
receipt: new(types.Receipt),
|
receipt: new(types.Receipt),
|
||||||
@ -323,7 +323,7 @@ func NewReceiptFromJSON(data string) (*Receipt, error) {
|
|||||||
return r, nil
|
return r, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// EncodeJSON encodes a transaction receipt into an JSON data dump.
|
// EncodeJSON encodes a transaction receipt into a JSON data dump.
|
||||||
func (r *Receipt) EncodeJSON() (string, error) {
|
func (r *Receipt) EncodeJSON() (string, error) {
|
||||||
data, err := rlp.EncodeToBytes(r.receipt)
|
data, err := rlp.EncodeToBytes(r.receipt)
|
||||||
return string(data), err
|
return string(data), err
|
||||||
|
@ -209,7 +209,7 @@ func DefaultHTTPEndpoint() string {
|
|||||||
return config.HTTPEndpoint()
|
return config.HTTPEndpoint()
|
||||||
}
|
}
|
||||||
|
|
||||||
// WSEndpoint resolves an websocket endpoint based on the configured host interface
|
// WSEndpoint resolves a websocket endpoint based on the configured host interface
|
||||||
// and port parameters.
|
// and port parameters.
|
||||||
func (c *Config) WSEndpoint() string {
|
func (c *Config) WSEndpoint() string {
|
||||||
if c.WSHost == "" {
|
if c.WSHost == "" {
|
||||||
|
@ -92,7 +92,7 @@ An example method:
|
|||||||
Subscriptions are deleted when:
|
Subscriptions are deleted when:
|
||||||
- the user sends an unsubscribe request
|
- the user sends an unsubscribe request
|
||||||
- the connection which was used to create the subscription is closed. This can be initiated
|
- the connection which was used to create the subscription is closed. This can be initiated
|
||||||
by the client and server. The server will close the connection on an write error or when
|
by the client and server. The server will close the connection on a write error or when
|
||||||
the queue of buffered notifications gets too big.
|
the queue of buffered notifications gets too big.
|
||||||
*/
|
*/
|
||||||
package rpc
|
package rpc
|
||||||
|
@ -51,7 +51,7 @@ func (a Address) Bin() string {
|
|||||||
/*
|
/*
|
||||||
Proximity(x, y) returns the proximity order of the MSB distance between x and y
|
Proximity(x, y) returns the proximity order of the MSB distance between x and y
|
||||||
|
|
||||||
The distance metric MSB(x, y) of two equal length byte sequences x an y is the
|
The distance metric MSB(x, y) of two equal length byte sequences x and y is the
|
||||||
value of the binary integer cast of the x^y, ie., x and y bitwise xor-ed.
|
value of the binary integer cast of the x^y, ie., x and y bitwise xor-ed.
|
||||||
the binary cast is big endian: most significant bit first (=MSB).
|
the binary cast is big endian: most significant bit first (=MSB).
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user