pen_bsc

package module
v0.0.0-...-c9321c3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 7, 2022 License: BSD-3-Clause Imports: 0 Imported by: 0

README

BSC Penguin Pen

The penguin network and BSC chain

Contributing

Please read the coding guidelines.

Installing

[Install instructions]

License

This library is distributed under the BSD-style license found in the LICENSE file.

Documentation

Overview

Package pen is the root package of Ethereum Penguin node implementation.

Index

Constants

This section is empty.

Variables

View Source
var (
	Version = func() string {
		if commit != "" {
			return version + "-" + commit
		}
		return version + "-dev"
	}()
)

Functions

This section is empty.

Types

This section is empty.

Directories

Path Synopsis
cmd
pen
pkg
accounting
Package accounting provides functionalities needed to do per-peer accounting.
Package accounting provides functionalities needed to do per-peer accounting.
accounting/mock
Package mock provides a mock implementation for the accounting interface.
Package mock provides a mock implementation for the accounting interface.
addressbook
Package addressbook provides persisted mapping between overlay (topology) address and pen.Address address, which contains underlay (physical) address.
Package addressbook provides persisted mapping between overlay (topology) address and pen.Address address, which contains underlay (physical) address.
api
Package api provides the functionality of the Pen client-facing HTTP API.
Package api provides the functionality of the Pen client-facing HTTP API.
bitvector
Package bitvector provides functionality of a simple bit vector implementation.
Package bitvector provides functionality of a simple bit vector implementation.
bmt
Package bmt implements Binary Merkle Tree hash.
Package bmt implements Binary Merkle Tree hash.
bmt/reference
Package reference is a simple nonconcurrent reference implementation for hashsize segment based Binary Merkle tree hash on arbitrary but fixed maximum chunksize n where 0 <= n <= 4096 This implementation does not take advantage of any paralellisms and uses far more memory than necessary, but it is easy to see that it is correct.
Package reference is a simple nonconcurrent reference implementation for hashsize segment based Binary Merkle tree hash on arbitrary but fixed maximum chunksize n where 0 <= n <= 4096 This implementation does not take advantage of any paralellisms and uses far more memory than necessary, but it is easy to see that it is correct.
bmtpool
Package bmtpool provides easy access to binary merkle tree hashers managed in as a resource pool.
Package bmtpool provides easy access to binary merkle tree hashers managed in as a resource pool.
cac
debugapi
Package debugapi exposes the debug API used to control and analyze low-level and runtime features and functionalities of Pen.
Package debugapi exposes the debug API used to control and analyze low-level and runtime features and functionalities of Pen.
discovery
Package discovery exposes the discovery driver interface which is implemented by discovery protocols.
Package discovery exposes the discovery driver interface which is implemented by discovery protocols.
encryption
Package encryption exposes functionalities needed for encryption and decryption operations in Pen.
Package encryption exposes functionalities needed for encryption and decryption operations in Pen.
feeds
Package feeds implements generic interfaces and methods for time-based feeds indexing schemes are implemented in subpackages - epochs - sequence
Package feeds implements generic interfaces and methods for time-based feeds indexing schemes are implemented in subpackages - epochs - sequence
feeds/epochs
Package epochs implements time-based feeds using epochs as index and provide sequential as well as concurrent lookup algorithms
Package epochs implements time-based feeds using epochs as index and provide sequential as well as concurrent lookup algorithms
feeds/sequence
Package sequence provides implementation of sequential indexing for time-based feeds this feed type is best suited for - version updates - followed updates - frequent or regular-interval updates
Package sequence provides implementation of sequential indexing for time-based feeds this feed type is best suited for - version updates - followed updates - frequent or regular-interval updates
feeds/testing
package testing provides tests for update and resolution of time-based feeds
package testing provides tests for update and resolution of time-based feeds
file
Package file provides interfaces for file-oriented operations.
Package file provides interfaces for file-oriented operations.
file/joiner
Package joiner provides implementations of the file.Joiner interface
Package joiner provides implementations of the file.Joiner interface
file/pipeline
Package pipeline provides functionality for hashing pipelines needed to create different flavors of merkelised representations of arbitrary data.
Package pipeline provides functionality for hashing pipelines needed to create different flavors of merkelised representations of arbitrary data.
file/splitter
Package splitter provides implementations of the file.Splitter interface
Package splitter provides implementations of the file.Splitter interface
flipflop
Package flipflop exposes a buffered input functionality that mimicks the behavior of falling edge detection which is done when doing signal processing on digital or analog electric circuitry.
Package flipflop exposes a buffered input functionality that mimicks the behavior of falling edge detection which is done when doing signal processing on digital or analog electric circuitry.
hive
Package hive exposes the hive protocol implementation which is the discovery protocol used to inform and be informed about other peers in the network.
Package hive exposes the hive protocol implementation which is the discovery protocol used to inform and be informed about other peers in the network.
hive/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
intervalstore
Package intervalstore provides a persistence layer for intervals relating to a peer.
Package intervalstore provides a persistence layer for intervals relating to a peer.
jsonhttp
Package jsonhttp contains utility functions that make it easier to create JSON-based HTTP APIs.
Package jsonhttp contains utility functions that make it easier to create JSON-based HTTP APIs.
jsonhttp/jsonhttptest
Package jsonhttptest helps with end-to-end testing of JSON-based HTTP APIs.
Package jsonhttptest helps with end-to-end testing of JSON-based HTTP APIs.
localstore
Package localstore provides disk storage layer for Penguin Chunk persistence.
Package localstore provides disk storage layer for Penguin Chunk persistence.
logging
Package logging provides the logger interface abstraction and implementation for Pen.
Package logging provides the logger interface abstraction and implementation for Pen.
manifest
Package manifest contains the abstractions needed for collection representation in Penguin.
Package manifest contains the abstractions needed for collection representation in Penguin.
netstore
Package netstore provides an abstraction layer over the Penguin local storage layer that leverages connectivity with other peers in order to retrieve chunks from the network that cannot be found locally.
Package netstore provides an abstraction layer over the Penguin local storage layer that leverages connectivity with other peers in order to retrieve chunks from the network that cannot be found locally.
node
Package node defines the concept of a Pen node by bootstrapping and injecting all necessary dependencies.
Package node defines the concept of a Pen node by bootstrapping and injecting all necessary dependencies.
p2p
Package p2p provides the peer-to-peer abstractions used across different protocols in Pen.
Package p2p provides the peer-to-peer abstractions used across different protocols in Pen.
p2p/libp2p/internal/handshake/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
p2p/libp2p/internal/headers/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
p2p/protobuf/internal/pb
Package pb holds only Protocol Buffer definitions and generated code for testing purposes.
Package pb holds only Protocol Buffer definitions and generated code for testing purposes.
pen
Package pen exposes the data structure and operations necessary on the pen.Address type which used in the handshake protocol, address-book and hive protocol.
Package pen exposes the data structure and operations necessary on the pen.Address type which used in the handshake protocol, address-book and hive protocol.
penguin
Package penguin contains most basic and general Penguin concepts.
Package penguin contains most basic and general Penguin concepts.
pingpong
Package pingpong exposes the simple ping-pong protocol which measures round-trip-time with other peers.
Package pingpong exposes the simple ping-pong protocol which measures round-trip-time with other peers.
pingpong/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
pinning
Package pinning provides a simple set of operations for tracking pinned references.
Package pinning provides a simple set of operations for tracking pinned references.
postage/batchstore
Package batchstore implements the reserve the reserve serves to maintain chunks in the area of responsibility it has two components - the batchstore reserve which maintains information about batches, their values, priorities and synchronises with the blockchain - the localstore which stores chunks and manages garbage collection when a new chunk arrives in the localstore, the batchstore reserve is asked to check the batch used in the postage stamp attached to the chunk.
Package batchstore implements the reserve the reserve serves to maintain chunks in the area of responsibility it has two components - the batchstore reserve which maintains information about batches, their values, priorities and synchronises with the blockchain - the localstore which stores chunks and manages garbage collection when a new chunk arrives in the localstore, the batchstore reserve is asked to check the batch used in the postage stamp attached to the chunk.
pss
Package pss exposes functionalities needed to communicate with other peers on the network.
Package pss exposes functionalities needed to communicate with other peers on the network.
puller
Package puller provides protocol-orchestrating functionality over the pullsync protocol.
Package puller provides protocol-orchestrating functionality over the pullsync protocol.
pullsync
Package pullsync contains protocol that is used to ensure that there is correct chunk replication in the neighborhood of the node.
Package pullsync contains protocol that is used to ensure that there is correct chunk replication in the neighborhood of the node.
pusher
Package pusher provides protocol-orchestrating functionality over the pushsync protocol.
Package pusher provides protocol-orchestrating functionality over the pushsync protocol.
pushsync
Package pushsync provides the pushsync protocol implementation.
Package pushsync provides the pushsync protocol implementation.
resolver
Package resolver handles name resolution for the Penguin pen.
Package resolver handles name resolution for the Penguin pen.
retrieval
Package retrieval provides the retrieval protocol implementation.
Package retrieval provides the retrieval protocol implementation.
sctx
Package sctx provides convenience methods for context value injection and extraction.
Package sctx provides convenience methods for context value injection and extraction.
settlement/pseudosettle
Package pseudosettle implements a pretend settlement protocol where nodes send pretend payment messages consisting only of the payment amount.
Package pseudosettle implements a pretend settlement protocol where nodes send pretend payment messages consisting only of the payment amount.
shed
Package shed provides a simple abstraction components to compose more complex operations on storage data organized in fields and indexes.
Package shed provides a simple abstraction components to compose more complex operations on storage data organized in fields and indexes.
soc
Package soc provides the single-owner chunk implementation and validator.
Package soc provides the single-owner chunk implementation and validator.
statestore
Package statestore provides statestore implementation and mock.
Package statestore provides statestore implementation and mock.
steward
Package stewardess provides convenience methods for reseeding content on Penguin.
Package stewardess provides convenience methods for reseeding content on Penguin.
storage
Package storage provides implementation contracts and notions used across storage-aware components in Pen.
Package storage provides implementation contracts and notions used across storage-aware components in Pen.
tags
Package tags provides the implementation for upload progress tracking.
Package tags provides the implementation for upload progress tracking.
topology
Package topology exposes abstractions needed in topology-aware components.
Package topology exposes abstractions needed in topology-aware components.
topology/kademlia
Package kademlia provides an implementation of the topology.Driver interface in a way that a kademlia connectivity is actively maintained by the node.
Package kademlia provides an implementation of the topology.Driver interface in a way that a kademlia connectivity is actively maintained by the node.
topology/kademlia/internal/metrics
Package metrics provides service for collecting various metrics about peers.
Package metrics provides service for collecting various metrics about peers.
topology/kademlia/internal/waitnext
Package metrics provides service for collecting various metrics about peers.
Package metrics provides service for collecting various metrics about peers.
tracing
Package tracing helps with the propagation of the tracing span through context in the system.
Package tracing helps with the propagation of the tracing span through context in the system.
traversal
Package traversal provides abstraction and implementation needed to traverse all chunks below a given root hash.
Package traversal provides abstraction and implementation needed to traverse all chunks below a given root hash.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL