relay

package
v0.2.2 Latest Latest
Warning

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

Go to latest
Published: Aug 24, 2023 License: Apache-2.0 Imports: 33 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidLengthConfig        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowConfig          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupConfig = fmt.Errorf("proto: unexpected end of group")
)
View Source
var ErrLastEnclaveKeyInfoNotFound = errors.New("last enclave key info not found")

Functions

func LCPCmd

func LCPCmd(ctx *config.Context) *cobra.Command

func RegisterInterfaces

func RegisterInterfaces(registry codectypes.InterfaceRegistry)

RegisterInterfaces register the module interfaces to protobuf Any.

Types

type ELCMsgClient

type ELCMsgClient = elc.MsgClient

type ELCQueryClient

type ELCQueryClient = elc.QueryClient

type EnclaveQueryClient

type EnclaveQueryClient = enclave.QueryClient

type LCPQuerier added in v0.1.2

type LCPQuerier struct {
	// contains filtered or unexported fields
}

func NewLCPQuerier added in v0.1.2

func NewLCPQuerier(serviceClient LCPServiceClient, clientID string) LCPQuerier

func (LCPQuerier) ChainID added in v0.1.2

func (q LCPQuerier) ChainID() string

func (LCPQuerier) LatestHeight added in v0.1.2

func (q LCPQuerier) LatestHeight() (ibcexported.Height, error)

LatestHeight returns the latest height of the chain

func (LCPQuerier) QueryClientConsensusState added in v0.1.2

func (q LCPQuerier) QueryClientConsensusState(ctx core.QueryContext, dstClientConsHeight ibcexported.Height) (*clienttypes.QueryConsensusStateResponse, error)

QueryClientConsensusState retrevies the latest consensus state for a client in state at a given height

func (LCPQuerier) QueryClientState added in v0.1.2

QueryClientState returns the client state of dst chain height represents the height of dst chain

type LCPServiceClient

type LCPServiceClient struct {
	ELCMsgClient
	ELCQueryClient
	EnclaveQueryClient
	// contains filtered or unexported fields
}

func NewLCPServiceClient

func NewLCPServiceClient(conn *grpc.ClientConn, codec codec.ProtoCodecMarshaler) LCPServiceClient

type Module

type Module struct{}

func (Module) GetCmd

func (Module) GetCmd(ctx *config.Context) *cobra.Command

GetCmd returns the command

func (Module) Name

func (Module) Name() string

Name returns the name of the module

func (Module) RegisterInterfaces

func (Module) RegisterInterfaces(registry codectypes.InterfaceRegistry)

RegisterInterfaces register the module interfaces to protobuf Any.

type Prover

type Prover struct {
	// contains filtered or unexported fields
}

func NewProver

func NewProver(config ProverConfig, originChain core.Chain, originProver core.Prover) (*Prover, error)

func (*Prover) CreateMsgCreateClient

func (pr *Prover) CreateMsgCreateClient(clientID string, dstHeader core.Header, signer sdk.AccAddress) (*clienttypes.MsgCreateClient, error)

CreateMsgCreateClient creates a CreateClientMsg to this chain

func (*Prover) GetChainID

func (pr *Prover) GetChainID() string

GetChainID returns the chain ID

func (*Prover) GetLatestFinalizedHeader added in v0.1.2

func (pr *Prover) GetLatestFinalizedHeader() (latestFinalizedHeader core.Header, err error)

GetLatestFinalizedHeader returns the latest finalized header on this chain The returned header is expected to be the latest one of headers that can be verified by the light client

func (*Prover) GetOriginProver

func (pr *Prover) GetOriginProver() core.Prover

func (*Prover) Init

func (pr *Prover) Init(homePath string, timeout time.Duration, codec codec.ProtoCodecMarshaler, debug bool) error

Init initializes the chain

func (*Prover) ProveState added in v0.1.6

func (pr *Prover) ProveState(ctx core.QueryContext, path string, value []byte) ([]byte, clienttypes.Height, error)

func (*Prover) SetRelayInfo

func (pr *Prover) SetRelayInfo(path *core.PathEnd, counterparty *core.ProvableChain, counterpartyPath *core.PathEnd) error

SetRelayInfo sets source's path and counterparty's info to the chain

func (*Prover) SetupForRelay

func (pr *Prover) SetupForRelay(ctx context.Context) error

SetupForRelay performs chain-specific setup before starting the relay

func (*Prover) SetupHeadersForUpdate added in v0.1.2

func (pr *Prover) SetupHeadersForUpdate(dstChain core.ChainInfoICS02Querier, latestFinalizedHeader core.Header) ([]core.Header, error)

SetupHeadersForUpdate returns the finalized header and any intermediate headers needed to apply it to the client on the counterpaty chain The order of the returned header slice should be as: [<intermediate headers>..., <update header>] if the header slice's length == nil and err == nil, the relayer should skips the update-client

type ProverConfig

type ProverConfig struct {
	OriginProver *types.Any `protobuf:"bytes,1,opt,name=origin_prover,json=originProver,proto3" json:"origin_prover,omitempty"`
	// hex string
	LcpServiceAddress string `protobuf:"bytes,2,opt,name=lcp_service_address,json=lcpServiceAddress,proto3" json:"lcp_service_address,omitempty"`
	// hex string
	Mrenclave            string   `protobuf:"bytes,3,opt,name=mrenclave,proto3" json:"mrenclave,omitempty"`
	AllowedQuoteStatuses []string `protobuf:"bytes,4,rep,name=allowed_quote_statuses,json=allowedQuoteStatuses,proto3" json:"allowed_quote_statuses,omitempty"`
	AllowedAdvisoryIds   []string `protobuf:"bytes,5,rep,name=allowed_advisory_ids,json=allowedAdvisoryIds,proto3" json:"allowed_advisory_ids,omitempty"`
	// unit: seconds
	KeyExpiration uint64 `protobuf:"varint,6,opt,name=key_expiration,json=keyExpiration,proto3" json:"key_expiration,omitempty"`
	ElcClientId   string `protobuf:"bytes,7,opt,name=elc_client_id,json=elcClientId,proto3" json:"elc_client_id,omitempty"`
}

func (ProverConfig) Build

func (pc ProverConfig) Build(chain core.Chain) (core.Prover, error)

func (*ProverConfig) Descriptor

func (*ProverConfig) Descriptor() ([]byte, []int)

func (ProverConfig) GetMrenclave

func (pc ProverConfig) GetMrenclave() []byte

func (*ProverConfig) Marshal

func (m *ProverConfig) Marshal() (dAtA []byte, err error)

func (*ProverConfig) MarshalTo

func (m *ProverConfig) MarshalTo(dAtA []byte) (int, error)

func (*ProverConfig) MarshalToSizedBuffer

func (m *ProverConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProverConfig) ProtoMessage

func (*ProverConfig) ProtoMessage()

func (*ProverConfig) Reset

func (m *ProverConfig) Reset()

func (*ProverConfig) Size

func (m *ProverConfig) Size() (n int)

func (*ProverConfig) String

func (m *ProverConfig) String() string

func (*ProverConfig) Unmarshal

func (m *ProverConfig) Unmarshal(dAtA []byte) error

func (*ProverConfig) UnpackInterfaces

func (cfg *ProverConfig) UnpackInterfaces(unpacker codectypes.AnyUnpacker) error

func (ProverConfig) Validate

func (pc ProverConfig) Validate() error

func (*ProverConfig) XXX_DiscardUnknown

func (m *ProverConfig) XXX_DiscardUnknown()

func (*ProverConfig) XXX_Marshal

func (m *ProverConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProverConfig) XXX_Merge

func (m *ProverConfig) XXX_Merge(src proto.Message)

func (*ProverConfig) XXX_Size

func (m *ProverConfig) XXX_Size() int

func (*ProverConfig) XXX_Unmarshal

func (m *ProverConfig) XXX_Unmarshal(b []byte) error

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

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