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

# Packages

Package accessctl implements access control for an Oasis node.
Package backoff contains helpers for dealing with backoffs.
Package badger contains convenience helpers for integrating BadgerDB.
No description provided by the author
Package cbor provides helpers for encoding and decoding canonical CBOR.
Package crash provides a framework for adding probabilistic crash points.
No description provided by the author
Package ctxsync contains some synchronization primitvies that are aware of a context becoming done and can bail on waits in that case.
Package diff implements helpers for comparing objects.
Package dynlib provides routines for interacting with the glibc ld.so dynamic linker/loader.
No description provided by the author
Package entity implements common entity routines.
Package errors implements errors that can be easily sent across the wire and reconstructed at the other end.
Package grpc implements common gRPC related services and utilities.
Package identity encapsulates the node identity.
No description provided by the author
Package logging implements support for structured logging.
Package node implements common node identity routines.
Package pem provides handy wrappers for dealing with PEM files.
Package persistent provides a wrapper around a key-value database for use as general node-wide storage.
No description provided by the author
Package pubsub implements a generic publish-subscribe interface.
No description provided by the author
Package random provides a concurrency safe https://golang.org/pkg/math/rand/#Rand object.
Package scheduling provides tools for scheduling tasks.
Package service provides service primitives.
Package sgx provides common Intel SGX datatypes and utilities.
Package sync provides sync primitives.
Package syscall defines OS-specific syscall parameters.
Package version implements Oasis protocol and runtime versioning.
Package workerpool implements a simple goroutine-based workerpool with a configurable number of workers.

# Functions

AtMostOneTrue returns true iff at most one of the passed conditions is true.
CopyDir recursively copies a directory tree, attempting to preserve permissions.
CopyFile copies the contents of the file named src to the file named by dst.
ExactlyOneTrue returns true iff exactly one of the passed conditions is true.
FindAllAddresses returns all addresses found by examining all up interfaces (skipping loopback).
GetHostPort makes a normalized "host:port" string from the given raw URL.
GuessExternalAddress returns a best guess of the external address, or nil if the process fails.
IsAddrPort validates that the provided string is an address + port.
IsFQDN validates that the provided string is a well-formed FQDN.
IsProbablyGloballyReachable returns true if the provided IP address is likely to be globally reachable.
Mkdir creates a directory iff it does not exist, and otherwise ensures that the filesystem permissions are sufficiently restrictive.
NewNamespace returns a new namespace from it's component ID and flags.
NewTestNamespaceFromSeed returns a test namespace from a seed and flags.
NormalizeFQDN normalizes the provided string as a FQDN.
TrimArgs removes all arguments in the argument list occurring before the "--" separator.

# Constants

NamespaceHexSize is the size of the chain namespace identifier in string format.
NamespaceIDSize is the size of the identifier component of a namespace.
No description provided by the author
NamespaceSize is the size of a chain namespace identifier in bytes.
No description provided by the author

# Variables

ErrMalformedNamespace is the error returned when a namespace identifier is malformed.

# Type aliases

Namespace is a chain namespace identifier.
NamespaceFlag is a namespace flag.