Version: v1.9.22 Latest Latest

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

Go to latest
Published: Sep 23, 2020 License: GPL-3.0 Imports: 6 Imported by: 0



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



This section is empty.


This section is empty.


This section is empty.


type CheckpointOracle

type CheckpointOracle struct {
	// contains filtered or unexported fields

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

func NewCheckpointOracle

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

NewCheckpointOracle binds checkpoint contract and returns a registrar instance.

func (*CheckpointOracle) Contract

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

Contract returns the underlying contract instance.

func (*CheckpointOracle) ContractAddr added in v1.9.20

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

ContractAddr returns the address of contract.

func (*CheckpointOracle) LookupCheckpointEvents

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

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.

Source Files


Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL