Documentation
¶
Index ¶
- func NewAPIFetcher(clients map[ids.NodeID]Client) *apiFetcher
- type API
- func (a *API) GetBlockAggregateSignature(ctx context.Context, blockID ids.ID, quorumNum uint64) (signedMessageBytes hexutil.Bytes, err error)
- func (a *API) GetBlockSignature(ctx context.Context, blockID ids.ID) (hexutil.Bytes, error)
- func (a *API) GetMessageAggregateSignature(ctx context.Context, messageID ids.ID, quorumNum uint64) (signedMessageBytes hexutil.Bytes, err error)
- func (a *API) GetMessageSignature(ctx context.Context, messageID ids.ID) (hexutil.Bytes, error)
- type Backend
- type BlockClient
- type Client
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewAPIFetcher ¶ added in v0.5.7
Types ¶
type API ¶ added in v0.5.7
type API struct {
// contains filtered or unexported fields
}
API introduces snowman specific functionality to the evm
func (*API) GetBlockAggregateSignature ¶ added in v0.5.7
func (a *API) GetBlockAggregateSignature(ctx context.Context, blockID ids.ID, quorumNum uint64) (signedMessageBytes hexutil.Bytes, err error)
GetBlockAggregateSignature fetches the aggregate signature for the requested [blockID]
func (*API) GetBlockSignature ¶ added in v0.5.7
GetBlockSignature returns the BLS signature associated with a blockID.
type Backend ¶ added in v0.5.6
type Backend interface {
// AddMessage signs [unsignedMessage] and adds it to the warp backend database
AddMessage(unsignedMessage *avalancheWarp.UnsignedMessage) error
// GetMessageSignature returns the signature of the requested message hash.
GetMessageSignature(messageID ids.ID) ([bls.SignatureLen]byte, error)
// GetBlockSignature returns the signature of the requested message hash.
GetBlockSignature(blockID ids.ID) ([bls.SignatureLen]byte, error)
// GetMessage retrieves the [unsignedMessage] from the warp backend database if available
GetMessage(messageHash ids.ID) (*avalancheWarp.UnsignedMessage, error)
// Clear clears the entire db
Clear() error
}
Backend tracks signature-eligible warp messages and provides an interface to fetch them. The backend is also used to query for warp message signatures by the signature request handler.
func NewBackend ¶ added in v0.5.6
func NewBackend(networkID uint32, sourceChainID ids.ID, warpSigner avalancheWarp.Signer, blockClient BlockClient, db database.Database, cacheSize int) Backend
NewBackend creates a new Backend, and initializes the signature cache and message tracking database.
type BlockClient ¶ added in v0.5.7
type Client ¶ added in v0.5.6
type Client interface {
GetMessageSignature(ctx context.Context, messageID ids.ID) ([]byte, error)
GetMessageAggregateSignature(ctx context.Context, messageID ids.ID, quorumNum uint64) ([]byte, error)
GetBlockSignature(ctx context.Context, blockID ids.ID) ([]byte, error)
GetBlockAggregateSignature(ctx context.Context, blockID ids.ID, quorumNum uint64) ([]byte, error)
}
Directories
¶
| Path | Synopsis |
|---|---|
|
Package aggregator is a generated GoMock package.
|
Package aggregator is a generated GoMock package. |
Click to show internal directories.
Click to hide internal directories.