go-ethereum: github.com/ethereum/go-ethereum/contracts/checkpointoracle Index | Files | Directories

package checkpointoracle

import "github.com/ethereum/go-ethereum/contracts/checkpointoracle"

Package checkpointoracle is a an on-chain light client checkpoint oracle.


Package Files


type CheckpointOracle Uses

type CheckpointOracle struct {
    // contains filtered or unexported fields

CheckpointOracle is a Go wrapper around an on-chain checkpoint oracle contract.

func NewCheckpointOracle Uses

func NewCheckpointOracle(contractAddr common.Address, backend bind.ContractBackend) (*CheckpointOracle, error)

NewCheckpointOracle binds checkpoint contract and returns a registrar instance.

func (*CheckpointOracle) Contract Uses

func (oracle *CheckpointOracle) Contract() *contract.CheckpointOracle

Contract returns the underlying contract instance.

func (*CheckpointOracle) ContractAddr Uses

func (oracle *CheckpointOracle) ContractAddr() common.Address

ContractAddr returns the address of contract.

func (*CheckpointOracle) LookupCheckpointEvents Uses

func (oracle *CheckpointOracle) LookupCheckpointEvents(blockLogs [][]*types.Log, section uint64, hash common.Hash) []*contract.CheckpointOracleNewCheckpointVote

LookupCheckpointEvents searches checkpoint event for specific section in the given log batches.

func (*CheckpointOracle) RegisterCheckpoint Uses

func (oracle *CheckpointOracle) RegisterCheckpoint(opts *bind.TransactOpts, index uint64, hash []byte, rnum *big.Int, rhash [32]byte, sigs [][]byte) (*types.Transaction, error)

RegisterCheckpoint registers the checkpoint with a batch of associated signatures that are collected off-chain and sorted by lexicographical order.

Notably all signatures given should be transformed to "ethereum style" which transforms v from 0/1 to 27/28 according to the yellow paper.



Package checkpointoracle imports 6 packages (graph) and is imported by 32 packages. Updated 2021-01-27. Refresh now. Tools for package owners.