package
0.2501.0
Repository: https://github.com/oasisprotocol/oasis-core.git
Documentation: pkg.go.dev

# Functions

AddStakeClaims adds stake claims for entities and all their registered nodes and runtimes.
NewClient creates a new gRPC registry client.
NewDeregisterEntityTx creates a new deregister entity transaction.
NewProveFreshnessTx creates a new prove freshness transaction.
NewRegisterEntityTx creates a new register entity transaction.
NewRegisterNodeTx creates a new register node transaction.
NewRegisterRuntimeTx creates a new register runtime transaction.
NewUnfreezeNodeTx creates a new unfreeze node transaction.
RegisterService registers a new registry backend service with the given gRPC server.
SanityCheckEntities examines the entities table.
SanityCheckNodes examines the nodes table.
SanityCheckRuntimes examines the runtimes table.
SortNodeList sorts the given node list to ensure a canonical order.
StakeClaimForNode generates a new stake claim identifier for a specific node registration.
StakeClaimForRuntime generates a new stake claim for a specific runtime registration.
StakeThresholdsForNode returns the staking thresholds for the given node.
StakeThresholdsForRuntime returns the staking thresholds for the given runtime.
VerifyAddress verifies a node address.
VerifyNodeRuntimeEnclaveIDs verifies TEE-specific attributes of the node's runtime.
VerifyNodeUpdate verifies changes while updating the node.
VerifyRegisterComputeRuntimeArgs verifies compute runtime-specific arguments for RegisterRuntime.
VerifyRegisterEntityArgs verifies arguments for RegisterEntity.
VerifyRegisterNodeArgs verifies arguments for RegisterNode.
VerifyRuntime verifies the given runtime.
VerifyRuntimeNew verifies a new runtime.
VerifyRuntimeUpdate verifies changes while updating the runtime.

# Constants

FreezeForever is an epoch that can be used to freeze a node for all (practical) time.
GasOpDeregisterEntity is the gas operation identifier for entity deregistration.
GasOpProveFreshness is the gas operation identifier for freshness proofs.
GasOpRegisterEntity is the gas operation identifier for entity registration.
GasOpRegisterNode is the gas operation identifier for entity registration.
GasOpRegisterRuntime is the gas operation identifier for runtime registration.
GasOpRuntimeEpochMaintenance is the gas operation identifier for per-epoch runtime maintenance costs.
GasOpUnfreezeNode is the gas operation identifier for unfreezing nodes.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
KindCompute is a generic compute runtime.
KindInvalid is an invalid runtime and should never be explicitly set.
KindKeyManager is a key manager runtime.
LatestRuntimeDescriptorVersion is the latest entity descriptor version that should be used for all new descriptors.
ModuleName is a unique module name for the registry module.
StakeClaimRegisterEntity is the stake claim identifier used for registering an entity.
StakeClaimRegisterNode is the stake claim template used for registering nodes.
StakeClaimRegisterRuntime is the stake claim template used for registering runtimes.

# Variables

ComputeRuntimeAllowedRoles are the Node roles that allow compute runtimes.
ConsensusAddressRequiredRoles are the Node roles that require Consensus Address.
DefaultGasCosts are the "default" gas costs for operations.
ErrBadCapabilitiesTEEHardware is the error returned when a node tries to register a runtime with bad Capabilities.TEE.Hardware.
ErrBadEnclaveIdentity is the error returned when a node tries to register runtimes with wrong Enclave IDs.
ErrBadEntityForNode is the error returned when a node registration with an unknown entity is attempted.
ErrBadEntityForRuntime is the error returned when a runtime attempts to register with an unknown entity.
ErrEntityHasNodes is the error returned when an entity cannot be deregistered as it still has nodes.
ErrEntityHasRuntimes is the error returned when an entity cannot be deregistered as it still has runtimes.
ErrForbidden is the error returned when an operation is forbidden by policy.
ErrIncorrectTxSigner is the error returned when the signer of the transaction is not the correct one.
ErrInvalidArgument is the error returned on malformed argument(s).
ErrInvalidSignature is the error returned on an invalid signature.
ErrNodeCannotBeUnfrozen is the error returned when a node cannot yet be unfrozen due to the freeze period not being over yet.
ErrNodeExpired is the error returned when a node is expired.
ErrNodeUpdateNotAllowed is the error returned when trying to update an existing node with disallowed changes.
ErrNoEnclaveForRuntime is the error returned when a TEE runtime registers with no enclave IDs.
ErrNoSuchEntity is the error returned when an entity does not exist.
ErrNoSuchNode is the error returned when an node does not exist.
ErrNoSuchRuntime is the error returned when an runtime does not exist.
ErrRuntimeUpdateNotAllowed is the error returned when trying to update an existing runtime.
ErrTEEHardwareMismatch is the error returned when a node tries to register a runtime and Capabilities.TEE.Hardware mismatches the one in the registry.
ErrUnsupportedRuntimeGovernanceModel is the error returned when the parsed runtime governance model is malformed or unknown.
ErrUnsupportedRuntimeKind is the error returned when the parsed runtime kind is malformed or unknown.
KeyManagerRuntimeAllowedRoles are the Node roles that allow key manager runtimes.
MethodDeregisterEntity is the method name for entity deregistrations.
MethodProveFreshness is the method name for freshness proofs.
MethodRegisterEntity is the method name for entity registrations.
MethodRegisterNode is the method name for node registrations.
MethodRegisterRuntime is the method name for registering runtimes.
Methods is the list of all methods supported by the registry backend.
MethodUnfreezeNode is the method name for unfreezing nodes.
P2PAddressRequiredRoles are the Node roles that require P2P Address.
RegisterEntitySignatureContext is the context used for entity registration.
RegisterGenesisEntitySignatureContext is the context used for entity registration in the genesis document.
RegisterGenesisNodeSignatureContext is the context used for node registration in the genesis document.
RegisterNodeSignatureContext is the context used for node registration.
RuntimesRequiredRoles are the Node roles that require runtimes.

# Structs

AnyNodeRuntimeAdmissionPolicy allows any node to register.
Client is a gRPC registry client.
ConsensusAddressQuery is a registry query by consensus address.
ConsensusParameterChanges are allowed registry consensus parameter changes.
ConsensusParameters are the registry consensus parameters.
DeregisterEntity is a request to deregister an entity.
EntityEvent is the event that is returned via WatchEntities to signify entity registration changes and updates.
EntityWhitelistConfig is a per-entity whitelist configuration.
EntityWhitelistRoleAdmissionPolicy is a per-role entity whitelist policy.
EntityWhitelistRoleConfig is a per-entity whitelist configuration for a given role.
EntityWhitelistRuntimeAdmissionPolicy allows only whitelisted entities' nodes to register.
Event is a registry event returned via GetEvents.
ExecutorParameters are parameters for the executor committee.
Fault is used to track the state of nodes that are experiencing liveness failures.
Genesis is the registry genesis state.
GetRuntimeQuery is a registry query by namespace (Runtime ID).
GetRuntimesQuery is a registry get runtimes query.
IDQuery is a registry query by ID.
MaxNodesConstraint specifies that only the given number of nodes may be eligible per entity.
MinPoolSizeConstraint is the minimum required candidate pool size constraint.
NamespaceQuery is a registry query by namespace (Runtime ID).
NodeEvent is the event that is returned via WatchNodes to signify node registration changes and updates.
NodeList is a per-epoch immutable node list.
NodeListEpochEvent is the per epoch node list event.
NodeStatus is live status of a node.
NodeUnfrozenEvent signifies when node becomes unfrozen.
PerRoleAdmissionPolicy is a per-role admission policy.
Runtime represents a runtime.
RuntimeAdmissionPolicy is a specification of which nodes are allowed to register for a runtime.
RuntimeGenesis is the runtime genesis information that is used to initialize runtime state in the first block.
RuntimeStakingParameters are the stake-related parameters for a runtime.
RuntimeStartedEvent signifies a runtime started event.
RuntimeSuspendedEvent signifies a runtime was suspended.
SchedulingConstraints are the node scheduling constraints.
StorageParameters are parameters for the storage committee.
TxnSchedulerParameters are parameters for the runtime transaction scheduler.
UnfreezeNode is a request to unfreeze a frozen node.
ValidatorSetConstraint specifies that the entity must have a node that is part of the validator set.
VersionInfo is the per-runtime version information.

# Interfaces

Backend is a registry implementation.
NodeLookup interface implements various ways for the verification functions to look-up nodes in the registry's state.
RuntimeDescriptorProvider is an interface that provides access to runtime descriptors.
RuntimeLookup interface implements various ways for the verification functions to look-up runtimes in the registry's state.

# Type aliases

RuntimeGovernanceModel specifies the runtime governance model.
RuntimeKind represents the runtime functionality.