ref

package module
v0.0.0-...-ba1c585 Latest Latest
Warning

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

Go to latest
Published: Jun 29, 2017 License: BSD-3-Clause Imports: 2 Imported by: 0

README

Vanadium

This repository contains a reference implementation of the Vanadium APIs.

Unlike the APIs in https://github.com/vanadium/go.v23, which promises to provide backward compatibility this repository makes no such promises.

Documentation

Overview

Package ref defines constants used through the Vanadium reference implementation, which is implemented in its subdirectories.

Index

Constants

View Source
const (
	// EnvCredentials is the name of the environment variable pointing to a
	// directory containing all the credentials of a principal (the blessing
	// store, the blessing roots, possibly the private key etc.).
	//
	// Typically only one of EnvCredentials or EnvAgentPath will be set in a
	// process. If both are set, then EnvCredentials takes preference.
	//
	// See v.io/x/ref/lib/security.CreatePersistentPrincipal.
	EnvCredentials = "V23_CREDENTIALS"

	// EnvCredentialsNoAgent is the name of the environment variable
	// indicating whether an agent should be started to serve credentials to
	// be loaded from a directory.  If set to anything but empty string, no
	// attempt is made to load an agent.
	//
	// Typically used in tests or on platforms where launching agents is not
	// desirable.
	//
	// See v.io/x/ref/security/agent/agentlib.LoadPrincipal.
	EnvCredentialsNoAgent = "V23_CREDENTIALS_NO_AGENT"

	// EnvAgentPath is the name of the environment variable pointing to a
	// socket of the agent process containing all the credentials for a
	// principal (the blessing store, the blessing roots, possibly the
	// private key etc.).
	//
	// Typically only one of EnvCredentials or EnvAgentPath will be set in a
	// process. If both are set, then EnvCredentials takes preference.
	EnvAgentPath = "V23_AGENT_PATH"

	// EnvNamespacePrefix is the prefix of all environment variables that
	// define a namespace root.
	EnvNamespacePrefix = "V23_NAMESPACE"

	// EnvI18nCatalogueFiles is the name of the environment variable
	// pointing to a comma-separated list of i18n catalogue files to be
	// loaded at startup.
	EnvI18nCatalogueFiles = "V23_I18N_CATALOGUE"

	// EnvOAuthIdentityProvider is the name of the environment variable
	// pointing to the url of the OAuth identity provider used by the
	// principal seekblessings command.
	EnvOAuthIdentityProvider = "V23_OAUTH_IDENTITY_PROVIDER"

	// When EnvExpectGoogleComputeEngine is set and non-empty, the runtime
	// initialization will fail if the GCE metadata is inaccessible.
	EnvExpectGoogleComputeEngine = "V23_EXPECT_GOOGLE_COMPUTE_ENGINE"

	// A comma-separated list of path names to export disk stats for.
	EnvSysStatsDiskPaths = "V23_SYS_STATS_DISK_PATHS"

	// When set and non-empty, the namespace client will not use caching.
	EnvDisableNamespaceCache = "V23_DISABLE_NS_CACHE"
)

Variables

This section is empty.

Functions

func EnvClearCredentials

func EnvClearCredentials() error

EnvClearCredentials unsets all environment variables that are used by the Runtime to intialize the principal.

func EnvNamespaceRoots

func EnvNamespaceRoots() (map[string]string, []string)

EnvNamespaceRoots returns the set of namespace roots to be used by the process, as specified by environment variables.

It returns both a map of environment variable name to value and the list of values.

Types

This section is empty.

Directories

Path Synopsis
cmd
gclogs
Command gclogs safely deletes old log files.
Command gclogs safely deletes old log files.
mounttable
Command mounttable sends commands to Vanadium mounttable services.
Command mounttable sends commands to Vanadium mounttable services.
namespace
Command namespace resolves and manages names in the Vanadium namespace.
Command namespace resolves and manages names in the Vanadium namespace.
principal
Command principal creates and manages Vanadium principals and blessings.
Command principal creates and manages Vanadium principals and blessings.
sb
Syncbase general-purpose client and management utility.
Syncbase general-purpose client and management utility.
sb/internal/demodb
Package demodb supports loading an example database into syncbase for experimentation and testing purposes.
Package demodb supports loading an example database into syncbase for experimentation and testing purposes.
sb/internal/reader
Package reader provides an object that reads queries from various input sources (e.g.
Package reader provides an object that reads queries from various input sources (e.g.
sb/internal/writer
Package writer provides functions for formatting query results.
Package writer provides functions for formatting query results.
uniqueid
Command uniqueid generates unique identifiers.
Command uniqueid generates unique identifiers.
vdl
Command vdl manages Vanadium Definition Language source code.
Command vdl manages Vanadium Definition Language source code.
vom
Command vom helps debug the Vanadium Object Marshaling wire protocol.
Command vom helps debug the Vanadium Object Marshaling wire protocol.
vrpc
Command vrpc sends and receives Vanadium remote procedure calls.
Command vrpc sends and receives Vanadium remote procedure calls.
examples
fortune
Package fortune defines the Fortune example interface.
Package fortune defines the Fortune example interface.
fortune/fortune
Command fortune is a client to the Fortune interface.
Command fortune is a client to the Fortune interface.
fortune/fortuned
Command fortuned runs a daemon that implements the Fortune interface.
Command fortuned runs a daemon that implements the Fortune interface.
rps
Package rps defines interfaces for playing the game Rock-Paper-Scissors.
Package rps defines interfaces for playing the game Rock-Paper-Scissors.
rps/internal
Package internal defines common functions used by both rock paper scissors clients and servers.
Package internal defines common functions used by both rock paper scissors clients and servers.
rps/rpsbot
Command rpsbot repeatedly runs automated games, implementing all three roles.
Command rpsbot repeatedly runs automated games, implementing all three roles.
rps/rpsplayer
Command rpsplayer implements the Player interface, which enables a human to play the game.
Command rpsplayer implements the Player interface, which enables a human to play the game.
rps/rpsscorekeeper
Command rpsscorekeeper implements the ScoreKeeper interface.
Command rpsscorekeeper implements the ScoreKeeper interface.
tunnel
Package tunnel defines an interface for creating a network tunnel from client to server.
Package tunnel defines an interface for creating a network tunnel from client to server.
tunnel/internal
Package internal defines common types and functions used by both tunnel clients and servers.
Package internal defines common types and functions used by both tunnel clients and servers.
tunnel/tunneld
Command tunneld runs the tunneld daemon, which implements the Tunnel interface.
Command tunneld runs the tunneld daemon, which implements the Tunnel interface.
tunnel/vsh
Command vsh runs the Vanadium shell, a Tunnel client that can be used to run shell commands or start an interactive shell on a remote tunneld server.
Command vsh runs the Vanadium shell, a Tunnel client that can be used to run shell commands or start an interactive shell on a remote tunneld server.
internal
logger
Package logger provides access to an implementation of v23/logger.Logging for use within a runtime implementation.
Package logger provides access to an implementation of v23/logger.Logging for use within a runtime implementation.
reflectutil
Package reflectutil provides reflection-based utilities.
Package reflectutil provides reflection-based utilities.
lib
apilog
Package apilog provides functions to be used in conjunction with logcop.
Package apilog provides functions to be used in conjunction with logcop.
discovery/global
TODO(jhahn): This is an experimental work to see its feasibility and set the long-term goal, and can be changed without notice.
TODO(jhahn): This is an experimental work to see its feasibility and set the long-term goal, and can be changed without notice.
discovery/plugins/ble/corebluetooth
Package corebluetooth provides an implementation of ble.Driver using the CoreBluetooth Objective-C API The bridge rules between the two are as follows: THREADS: Everything in obj-c runs single threaded on a dedicated Grand Central Dispatch queue (read: thread).
Package corebluetooth provides an implementation of ble.Driver using the CoreBluetooth Objective-C API The bridge rules between the two are as follows: THREADS: Everything in obj-c runs single threaded on a dedicated Grand Central Dispatch queue (read: thread).
discovery/plugins/loopback
Package loopback implements loopback plugin for discovery service.
Package loopback implements loopback plugin for discovery service.
discovery/plugins/mdns
Package mdns implements mDNS plugin for discovery service.
Package mdns implements mDNS plugin for discovery service.
discovery/plugins/vine
Package vine contains a discovery plugin that is using Vine protocol.
Package vine contains a discovery plugin that is using Vine protocol.
discovery/test
package test contains tests that rely on a fake runtime.
package test contains tests that rely on a fake runtime.
discovery/testutil
Package testutil defines helpers for discovery tests.
Package testutil defines helpers for discovery tests.
exec
Package exec implements configuration and secret-sharing between parent and child processes via anoymous pipes.
Package exec implements configuration and secret-sharing between parent and child processes via anoymous pipes.
flags
Package flags implements utilities to augment the standard Go flag package.
Package flags implements utilities to augment the standard Go flag package.
glob
Package glob defines a globbing syntax and implements matching routines.
Package glob defines a globbing syntax and implements matching routines.
mgmt
Package mgmt defines constants used by the management tools and daemons.
Package mgmt defines constants used by the management tools and daemons.
publisher
Package publisher provides a type to publish names to a mounttable.
Package publisher provides a type to publish names to a mounttable.
pubsub
Package pubsub defines interfaces for accessing dynamically changing process configuration information.
Package pubsub defines interfaces for accessing dynamically changing process configuration information.
security
Package security implements utilities for creating and using Vanadium security primitives.
Package security implements utilities for creating and using Vanadium security primitives.
security/audit
Package audit implements a mechanism for writing auditable events to an audit log.
Package audit implements a mechanism for writing auditable events to an audit log.
security/bcrypter
Package bcrypter defines the mechanisms for blessings based encryption and decryption.
Package bcrypter defines the mechanisms for blessings based encryption and decryption.
security/passphrase
Package passphrase contains utilities for reading a passphrase.
Package passphrase contains utilities for reading a passphrase.
security/securityflag
Package securityflag implements utilities for creating security objects based on flags.
Package securityflag implements utilities for creating security objects based on flags.
security/serialization
Package serialization implements utilities for reading and writing data with signature-based integrity checking.
Package serialization implements utilities for reading and writing data with signature-based integrity checking.
signals
Package signals implements utilities for managing process shutdown with support for signal-handling.
Package signals implements utilities for managing process shutdown with support for signal-handling.
stats
Package stats implements a global repository of stats objects.
Package stats implements a global repository of stats objects.
stats/counter
Package counter implements counters that keeps track of their recent values over different periods of time.
Package counter implements counters that keeps track of their recent values over different periods of time.
stats/histogram
Package histogram implements a basic histogram to keep track of data distribution.
Package histogram implements a basic histogram to keep track of data distribution.
stats/sysstats
Package sysstats implements system statistics and updates them periodically.
Package sysstats implements system statistics and updates them periodically.
timekeeper
Package timekeeper defines an interface to allow switching between real time and simulated time.
Package timekeeper defines an interface to allow switching between real time and simulated time.
v23cmd
Package v23cmd implements utilities for running v23 cmdline programs.
Package v23cmd implements utilities for running v23 cmdline programs.
vdl/build
Package build implements utilities to collect VDL build information and run the parser and compiler.
Package build implements utilities to collect VDL build information and run the parser and compiler.
vdl/codegen
Package codegen implements utilities for VDL code generators.
Package codegen implements utilities for VDL code generators.
vdl/codegen/golang
Package golang implements Go code generation from compiled VDL packages.
Package golang implements Go code generation from compiled VDL packages.
vdl/codegen/java
Package java implements Java code generation from compiled VDL packages.
Package java implements Java code generation from compiled VDL packages.
vdl/codegen/javascript
Package javascript implements Javascript code generation from compiled VDL packages.
Package javascript implements Javascript code generation from compiled VDL packages.
vdl/codegen/swift
Package swift implements Swift code generation from compiled VDL packages.
Package swift implements Swift code generation from compiled VDL packages.
vdl/codegen/vdlgen
Package vdlgen implements VDL code generation from compiled VDL packages.
Package vdlgen implements VDL code generation from compiled VDL packages.
vdl/compile
Package compile implements the VDL compiler, converting a parse tree into compiled results.
Package compile implements the VDL compiler, converting a parse tree into compiled results.
vdl/internal/vdltestutil
Package vdltestutil provides testing utilities for v.io/x/ref/lib/vdl/...
Package vdltestutil provides testing utilities for v.io/x/ref/lib/vdl/...
vdl/opconst
Package opconst defines the representation and operations for VDL constants.
Package opconst defines the representation and operations for VDL constants.
vdl/parse
Package parse implements the VDL parser, converting source files into a parse tree.
Package parse implements the VDL parser, converting source files into a parse tree.
vdl/vdlutil
Package vdlutil implements utilities used by many VDL components.
Package vdlutil implements utilities used by many VDL components.
Package runtime and its subdirectories provide implementations of the Vanadium runtime for different runtime environments.
Package runtime and its subdirectories provide implementations of the Vanadium runtime for different runtime environments.
factories/chrome
Package chrome implements a RuntimeFactory for use within Chrome, in particular for use by Chrome extensions.
Package chrome implements a RuntimeFactory for use within Chrome, in particular for use by Chrome extensions.
factories/fake
Package fake implements a fake RuntimeFactory, useful in tests for mocking out certain components.
Package fake implements a fake RuntimeFactory, useful in tests for mocking out certain components.
factories/generic
Package generic implements a RuntimeFactory that is useful in tests.
Package generic implements a RuntimeFactory that is useful in tests.
factories/roaming
Package roaming implements a RuntimeFactory suitable for a variety of network configurations, including 1-1 NATs, dhcp auto-configuration, and Google Compute Engine.
Package roaming implements a RuntimeFactory suitable for a variety of network configurations, including 1-1 NATs, dhcp auto-configuration, and Google Compute Engine.
internal/cloudvm
Package cloudvm provides functions to test whether the current process is running on Google Compute Engine or Amazon Web Services, and to extract settings from this environment.
Package cloudvm provides functions to test whether the current process is running on Google Compute Engine or Amazon Web Services, and to extract settings from this environment.
internal/lib/bqueue
Package bqueue implements several kinds of buffer queues, as a N-writer, 1-reader queue.
Package bqueue implements several kinds of buffer queues, as a N-writer, 1-reader queue.
internal/lib/bqueue/drrqueue
Package drrqueue implements a deficit round-robin buffer queue.
Package drrqueue implements a deficit round-robin buffer queue.
internal/lib/dependency
Package dependency keeps track of a dependency graph.
Package dependency keeps track of a dependency graph.
internal/lib/deque
Package deque implements a deque using a circular array.
Package deque implements a deque using a circular array.
internal/lib/iobuf
Package iobuf performs explicit memory management for data buffers used to perform network IO.
Package iobuf performs explicit memory management for data buffers used to perform network IO.
internal/lib/pcqueue
A producer/consumer queue is a concurrent bounded buffer supporting multiple concurrent producers and consumers, with timeouts.
A producer/consumer queue is a concurrent bounded buffer supporting multiple concurrent producers and consumers, with timeouts.
internal/lib/sync
Package sync provides synchronization primitives.
Package sync provides synchronization primitives.
internal/lib/upcqueue
Package upcqueue implements an unbounded producer/consumer queue.
Package upcqueue implements an unbounded producer/consumer queue.
internal/naming
Package naming provides an implementation of the interfaces in v.io/v23/naming.
Package naming provides an implementation of the interfaces in v.io/v23/naming.
internal/rpc/benchmark
package benchmark provides simple tools to measure the performance of the IPC system.
package benchmark provides simple tools to measure the performance of the IPC system.
internal/rpc/benchmark/benchmark
Command benchmark runs the benchmark client.
Command benchmark runs the benchmark client.
internal/rpc/benchmark/benchmarkd
Command benchmarkd runs the benchmark server.
Command benchmarkd runs the benchmark server.
internal/rpc/stress/mtstress
Usage: mtstress [flags] <command> The mtstress commands are: mount Measure latency of the Mount RPC at a fixed request rate resolve Measure latency of the Resolve RPC at a fixed request rate help Display help for commands or topics The global flags are: -duration=10s Duration for sending test traffic and measuring latency -rate=1 Rate, in RPCs per second, to send to the test server -reauthenticate=false If true, establish a new authenticated connection for each RPC, simulating load from a distinct process -alsologtostderr=true log to standard error as well as files -log_backtrace_at=:0 when logging hits line file:N, emit a stack trace -log_dir= if non-empty, write log files to this directory -logtostderr=false log to standard error instead of files -max_stack_buf_size=4292608 max size in bytes of the buffer to use for logging stack traces -metadata=<just specify -metadata to activate> Displays metadata for the program and exits.
Usage: mtstress [flags] <command> The mtstress commands are: mount Measure latency of the Mount RPC at a fixed request rate resolve Measure latency of the Resolve RPC at a fixed request rate help Display help for commands or topics The global flags are: -duration=10s Duration for sending test traffic and measuring latency -rate=1 Rate, in RPCs per second, to send to the test server -reauthenticate=false If true, establish a new authenticated connection for each RPC, simulating load from a distinct process -alsologtostderr=true log to standard error as well as files -log_backtrace_at=:0 when logging hits line file:N, emit a stack trace -log_dir= if non-empty, write log files to this directory -logtostderr=false log to standard error instead of files -max_stack_buf_size=4292608 max size in bytes of the buffer to use for logging stack traces -metadata=<just specify -metadata to activate> Displays metadata for the program and exits.
internal/rpc/stress/stress
Command stress is a tool to stress/load test RPC by issuing randomly generated requests.
Command stress is a tool to stress/load test RPC by issuing randomly generated requests.
internal/rpc/stress/stressd
Command stressd runs the stress-test server.
Command stressd runs the stress-test server.
internal/rpc/test
package test contains test for rpc code that do not rely on unexposed rpc declarations.
package test contains test for rpc code that do not rely on unexposed rpc declarations.
internal/vtrace
Package vtrace implements the Trace and Span interfaces in v.io/v23/vtrace.
Package vtrace implements the Trace and Span interfaces in v.io/v23/vtrace.
protocols/lib/tcputil
package tcputil contains functions commonly used to manipulate TCP connections.
package tcputil contains functions commonly used to manipulate TCP connections.
protocols/vine
Package vine contains Vanadium's Implementation of Network Emulation (VINE).
Package vine contains Vanadium's Implementation of Network Emulation (VINE).
protocols/wsh
Package wsh registers the websocket 'hybrid' protocol.
Package wsh registers the websocket 'hybrid' protocol.
protocols/wsh_nacl
Package wsh_nacl registers the websocket 'hybrid' protocol for nacl architectures.
Package wsh_nacl registers the websocket 'hybrid' protocol for nacl architectures.
services
agent
Package agent defines an interface to keep a private key in memory, and for clients to have access to the private key.
Package agent defines an interface to keep a private key in memory, and for clients to have access to the private key.
agent/agentlib
Package agentlib provides ways to create Principals that are backed by the security agent.
Package agentlib provides ways to create Principals that are backed by the security agent.
agent/gcreds
Command gcreds runs a command with Google Cloud Blessings.
Command gcreds runs a command with Google Cloud Blessings.
agent/internal/constants
Package constants holds constants shared by client and server.
Package constants holds constants shared by client and server.
agent/internal/ipc
Package ipc implements a simple IPC system based on VOM.
Package ipc implements a simple IPC system based on VOM.
agent/internal/launcher
Package launcher contains utilities to launch v23agentd.
Package launcher contains utilities to launch v23agentd.
agent/internal/lock
Package lock provides a lock object to synchronize access to a directory among multiple processes.
Package lock provides a lock object to synchronize access to a directory among multiple processes.
agent/internal/lockfile
Package lockfile provides methods to associate process ids (PIDs) with a file.
Package lockfile provides methods to associate process ids (PIDs) with a file.
agent/internal/lockutil
Package lockutil contains utilities for building file locks.
Package lockutil contains utilities for building file locks.
agent/internal/lru
Package lru implements a Least-Recently-Used (LRU) cache of objects keyed by a string.
Package lru implements a Least-Recently-Used (LRU) cache of objects keyed by a string.
agent/internal/pingpong
Command pingpong runs a pingpong client or server.
Command pingpong runs a pingpong client or server.
agent/internal/test_principal
Command test_principal runs tests against a principal.
Command test_principal runs tests against a principal.
agent/internal/version
Package version provides versioning for the agent.
Package version provides versioning for the agent.
agent/pod_agentd
Command pod_agentd runs a security agent daemon, which holds a private key in memory and makes it available to the kubernetes pod in which it is running.
Command pod_agentd runs a security agent daemon, which holds a private key in memory and makes it available to the kubernetes pod in which it is running.
agent/server
Package server contains utilities for serving a principal using a socket-based IPC system.
Package server contains utilities for serving a principal using a socket-based IPC system.
agent/v23agentd
Command v23agentd manages the security agent daemon, which holds the private key, blessings and recognized roots of a principal in memory and makes the principal available to other processes.
Command v23agentd manages the security agent daemon, which holds the private key, blessings and recognized roots of a principal in memory and makes the principal available to other processes.
agent/vbecome
Command vbecome executes commands with a derived Vanadium principal.
Command vbecome executes commands with a derived Vanadium principal.
allocator/allocator
Command allocator interacts with the allocator service.
Command allocator interacts with the allocator service.
allocator/allocatord
Runs the allocator service Usage: allocatord [flags] The allocatord flags are: -assets= If set, the directory containing assets (template definitions, css, javascript files etc.) to use in the web interface.
Runs the allocator service Usage: allocatord [flags] The allocatord flags are: -assets= If set, the directory containing assets (template definitions, css, javascript files etc.) to use in the web interface.
application/application
Command application manages the Vanadium application repository.
Command application manages the Vanadium application repository.
application/applicationd
Command applicationd runs the application daemon, which implements the v.io/x/ref/services/repository.Application interface.
Command applicationd runs the application daemon, which implements the v.io/x/ref/services/repository.Application interface.
ben
Package ben defines datastructures to archive microbenchmark results.
Package ben defines datastructures to archive microbenchmark results.
ben/archive
Package archive defines the RPC interface for archiving benchmark results.
Package archive defines the RPC interface for archiving benchmark results.
ben/benarchd
Command benarchd implements a benchmark archival daemon.
Command benarchd implements a benchmark archival daemon.
ben/benup
Command benup extracts microbenchmark results from the provided input (standard input for file) and uploads them to an archival service.
Command benup extracts microbenchmark results from the provided input (standard input for file) and uploads them to an archival service.
binary/binary
Command binary manages the Vanadium binary repository.
Command binary manages the Vanadium binary repository.
binary/binaryd
Command binaryd runs the binary daemon, which implements the v.io/v23/services/repository.Binary interface.
Command binaryd runs the binary daemon, which implements the v.io/v23/services/repository.Binary interface.
binary/tidy
Tidy tidies the Vanadium repository by removing unused envelopes and binaries.
Tidy tidies the Vanadium repository by removing unused envelopes and binaries.
build/build
Command build sends commands to a Vanadium build server.
Command build sends commands to a Vanadium build server.
build/buildd
Command buildd runs the builder daemon, which implements the v.io/v23/services/build.Builder interface.
Command buildd runs the builder daemon, which implements the v.io/v23/services/build.Builder interface.
cluster/cluster_agent
Command cluster_agent supports interactions with a cluster agent.
Command cluster_agent supports interactions with a cluster agent.
cluster/cluster_agentd
The Cluster Agent keeps a list of Secret Keys and Blessings associated with them.
The Cluster Agent keeps a list of Secret Keys and Blessings associated with them.
cluster/vkube
Manages Vanadium applications on kubernetes Usage: vkube [flags] <command> The vkube commands are: start Starts an application.
Manages Vanadium applications on kubernetes Usage: vkube [flags] <command> The vkube commands are: start Starts an application.
debug/debug
Command debug supports debugging Vanadium servers.
Command debug supports debugging Vanadium servers.
debug/debug/browseserver
Package browseserver provides a web interface that can be used to interact with the vanadium debug interface.
Package browseserver provides a web interface that can be used to interact with the vanadium debug interface.
debug/debug/browseserver/sbtree
Package sbtree provides data structures used by HTML templates to build the web pages for the Syncbase debug viewer.
Package sbtree provides data structures used by HTML templates to build the web pages for the Syncbase debug viewer.
debug/debuglib
Package debuglib implements debug server support.
Package debuglib implements debug server support.
device
Package device defines interfaces for configuration of the Vanadium device manager.
Package device defines interfaces for configuration of the Vanadium device manager.
device/claimable
Claimable is a server that implements the Claimable interface from v.io/v23/services/device.
Claimable is a server that implements the Claimable interface from v.io/v23/services/device.
device/device
Command device facilitates interaction with the Vanadium device manager.
Command device facilitates interaction with the Vanadium device manager.
device/deviced
Command deviced is used to launch, configure and manage the deviced daemon, which implements the v.io/v23/services/device interfaces.
Command deviced is used to launch, configure and manage the deviced daemon, which implements the v.io/v23/services/device interfaces.
device/deviced/internal/installer
Package installer contains logic responsible for managing the device manager server, including setting it up / tearing it down, and starting / stopping it.
Package installer contains logic responsible for managing the device manager server, including setting it up / tearing it down, and starting / stopping it.
device/deviced/internal/starter
Package starter provides a single function that starts up servers for a mounttable and a device manager that is mounted on it.
Package starter provides a single function that starts up servers for a mounttable and a device manager that is mounted on it.
device/deviced/internal/versioning
Package versioning handles device manager versioning.
Package versioning handles device manager versioning.
device/inithelper
Command inithelper manages services for a variety of platforms and init systems, such as upstart, systemd etc.
Command inithelper manages services for a variety of platforms and init systems, such as upstart, systemd etc.
device/internal/config
Package config handles configuration state passed across instances of the device manager.
Package config handles configuration state passed across instances of the device manager.
device/internal/errors
Package errors defines the error ids that are shared between server and client-side.
Package errors defines the error ids that are shared between server and client-side.
device/internal/sysinit
Package sysinit provides config generation for a variety of platforms and "init" systems such as upstart, systemd etc.
Package sysinit provides config generation for a variety of platforms and "init" systems such as upstart, systemd etc.
device/restarter
Command restarter runs a child command and optionally restarts it depending on the setting of the --restart-exit-code flag.
Command restarter runs a child command and optionally restarts it depending on the setting of the --restart-exit-code flag.
device/suidhelper
Command suidhelper runs the provided command as the specified user identity.
Command suidhelper runs the provided command as the specified user identity.
discharger
Package discharger defines an interface for obtaining discharges for third-party caveats.
Package discharger defines an interface for obtaining discharges for third-party caveats.
groups/groups
Command groups creates and manages Vanadium groups of blessing patterns.
Command groups creates and manages Vanadium groups of blessing patterns.
groups/groupsd
Daemon groupsd implements the v.io/v23/services/groups interfaces for managing access control groups.
Daemon groupsd implements the v.io/v23/services/groups interfaces for managing access control groups.
groups/internal/server
Package server provides an implementation of the groups.Group RPC interface.
Package server provides an implementation of the groups.Group RPC interface.
groups/internal/store/leveldb
Package leveldb provides an implementation of the groups server Store interface that uses the levelDB-based syncbase storage layer.
Package leveldb provides an implementation of the groups server Store interface that uses the levelDB-based syncbase storage layer.
groups/internal/store/mem
Package mem provides a simple, in-memory implementation of server.Store.
Package mem provides a simple, in-memory implementation of server.Store.
iberoot
Package iberoot defines an interface for requesting private keys for specific blessings in a blessings-based encryption scheme.
Package iberoot defines an interface for requesting private keys for specific blessings in a blessings-based encryption scheme.
identity
Package identity defines interfaces for Vanadium identity providers.
Package identity defines interfaces for Vanadium identity providers.
identity/identityd
Command identityd runs a daemon HTTP server that uses OAuth to create security.Blessings objects.
Command identityd runs a daemon HTTP server that uses OAuth to create security.Blessings objects.
identity/identitylib
Package identitylib implements a test identityd service registered using the v.io/x/lib/gosh library.
Package identitylib implements a test identityd service registered using the v.io/x/lib/gosh library.
identity/internal/identityd_test
Command identityd_test runs a daemon HTTP server that uses OAuth to create security.Blessings objects.
Command identityd_test runs a daemon HTTP server that uses OAuth to create security.Blessings objects.
identity/internal/revocation
Package revocation provides tools to create and manage revocation caveats.
Package revocation provides tools to create and manage revocation caveats.
identity/internal/server
HTTP server that uses OAuth to create security.Blessings objects.
HTTP server that uses OAuth to create security.Blessings objects.
identity/internal/util
Package util implements miscellaneous utility functions needed by the identity HTTP server.
Package util implements miscellaneous utility functions needed by the identity HTTP server.
internal/binarylib
The implementation of the binary repository interface stores objects identified by object name suffixes using the local file system.
The implementation of the binary repository interface stores objects identified by object name suffixes using the local file system.
internal/dirprinter
Package dirprinter contains utilities for dumping the contents and structure of a directory tree.
Package dirprinter contains utilities for dumping the contents and structure of a directory tree.
internal/fs
Implements a map-based store substitute that implements the legacy store API.
Implements a map-based store substitute that implements the legacy store API.
internal/logreaderlib
Package logreaderlib implements the LogFile interface from v.io/v23/services/logreader, which can be used to allow remote access to log files, and the ChildrenGlobber interface from v.io/v23/rpc to find the files in a logs directory.
Package logreaderlib implements the LogFile interface from v.io/v23/services/logreader, which can be used to allow remote access to log files, and the ChildrenGlobber interface from v.io/v23/rpc to find the files in a logs directory.
internal/multipart
Package multipart implements an http.File that acts as one logical file backed by several physical files (the 'parts').
Package multipart implements an http.File that acts as one logical file backed by several physical files (the 'parts').
internal/packages
Package packages provides functionality to install ZIP and TAR packages.
Package packages provides functionality to install ZIP and TAR packages.
internal/pathperms
Package pathperms provides a library to assist servers implementing GetPermissions/SetPermissions functions and authorizers where there are path-specific Permissions stored individually in files.
Package pathperms provides a library to assist servers implementing GetPermissions/SetPermissions functions and authorizers where there are path-specific Permissions stored individually in files.
internal/pproflib
Package pproflib defines a client-side proxy and server-side implementation of the v.io/v23/services/pprof interface.
Package pproflib defines a client-side proxy and server-side implementation of the v.io/v23/services/pprof interface.
internal/restsigner/v1
Package signer provides access to the .
Package signer provides access to the .
internal/servicetest
Package servicetest provides functionality to help write tests for the Vanadium services.
Package servicetest provides functionality to help write tests for the Vanadium services.
internal/statslib
Package statslib implements the Stats interface from v.io/v23/services/stats.
Package statslib implements the Stats interface from v.io/v23/services/stats.
mounttable/btmtd
Runs the mounttable service.
Runs the mounttable service.
mounttable/mounttabled
Command mounttabled runs the mount table daemon, which implements the v.io/v23/services/mounttable interfaces.
Command mounttabled runs the mount table daemon, which implements the v.io/v23/services/mounttable interfaces.
mounttable/mounttablelib
Package mounttablelib implements utilities for mounttable implementations.
Package mounttablelib implements utilities for mounttable implementations.
profile
Package profile defines types for the implementation of Vanadium profiles.
Package profile defines types for the implementation of Vanadium profiles.
profile/profile
Command profile manages the Vanadium profile repository.
Command profile manages the Vanadium profile repository.
profile/profiled
Command profiled runs the profile daemon, which implements the v.io/x/ref/services/repository.Profile interface.
Command profiled runs the profile daemon, which implements the v.io/x/ref/services/repository.Profile interface.
repository
Package repository augments the v.io/v23/services/repository interfaces with implementation-specific configuration methods.
Package repository augments the v.io/v23/services/repository interfaces with implementation-specific configuration methods.
role
Package role defines an interface for requesting blessings from a role account server.
Package role defines an interface for requesting blessings from a role account server.
role/roled
Command roled runs the Role interface daemon.
Command roled runs the Role interface daemon.
role/roled/internal
Package internal implements the role service defined in v.io/x/ref/services/role
Package internal implements the role service defined in v.io/x/ref/services/role
stats
Packages stats defines the non-native types exported by the stats service.
Packages stats defines the non-native types exported by the stats service.
syncbase/fake
Package fake provides a fake version of syncbase API for testing with error conditions.
Package fake provides a fake version of syncbase API for testing with error conditions.
syncbase/localblobstore
Package localblobstore is the interface to a local blob store.
Package localblobstore is the interface to a local blob store.
syncbase/localblobstore/blobmap
Package blobmap implements a persistent map from blob identifiers to blob meta-data and vice versa.
Package blobmap implements a persistent map from blob identifiers to blob meta-data and vice versa.
syncbase/localblobstore/chunker
Package chunker breaks a stream of bytes into context-defined chunks whose boundaries are chosen based on content checksums of a window that slides over the data.
Package chunker breaks a stream of bytes into context-defined chunks whose boundaries are chosen based on content checksums of a window that slides over the data.
syncbase/localblobstore/crc64window
Package crc64window provides CRCs over fixed-sized, rolling windows of bytes.
Package crc64window provides CRCs over fixed-sized, rolling windows of bytes.
syncbase/localblobstore/fs_cablobstore
Package fs_cablobstore implements a content addressable blob store on top of a file system.
Package fs_cablobstore implements a content addressable blob store on top of a file system.
syncbase/localblobstore/localblobstore_testlib
A test library for localblobstores.
A test library for localblobstores.
syncbase/longevity_tests/checker
Package checker defines checkers for syncbase longevity tests.
Package checker defines checkers for syncbase longevity tests.
syncbase/longevity_tests/client
Package client defines an interface that syncbase clients must implement.
Package client defines an interface that syncbase clients must implement.
syncbase/longevity_tests/model
Package model defines functions for generating random sets of model databases, devices, and users that will be simulated in a syncbase longevity test.
Package model defines functions for generating random sets of model databases, devices, and users that will be simulated in a syncbase longevity test.
syncbase/longevity_tests/mounttabled
Package mounttabled wraps the mounttable so that it can be called by gosh.CmdFunc.
Package mounttabled wraps the mounttable so that it can be called by gosh.CmdFunc.
syncbase/longevity_tests/syncbased_vine
Package syncbased_vine implements syncbased, the Syncbase daemon, with a VINE server to enable test-specific network configuration.
Package syncbased_vine implements syncbased, the Syncbase daemon, with a VINE server to enable test-specific network configuration.
syncbase/ping
Package ping provides a mechanism for pinging a set of servers in parallel to identify responsive ones.
Package ping provides a mechanism for pinging a set of servers in parallel to identify responsive ones.
syncbase/server/filter
Package filter contains filter implementations for matching collections and rows within them.
Package filter contains filter implementations for matching collections and rows within them.
syncbase/server/interfaces
Package interfaces defines internal interfaces for various objects in the Syncbase server implementation.
Package interfaces defines internal interfaces for various objects in the Syncbase server implementation.
syncbase/signing
Package signing signs syncbase updates using public key signatures, and allows these signatures to be checked on other nodes.
Package signing signs syncbase updates using public key signatures, and allows these signatures to be checked on other nodes.
syncbase/signing/hashcache
Package hashcache implements a simple cache intended to be indexed by hash values.
Package hashcache implements a simple cache intended to be indexed by hash values.
syncbase/signing/krl
Package krl implements a trivial, in-memory key revocation list.
Package krl implements a trivial, in-memory key revocation list.
syncbase/store
Package store defines the API for the syncbase storage engine.
Package store defines the API for the syncbase storage engine.
syncbase/store/leveldb
Package leveldb provides a LevelDB-based implementation of store.Store.
Package leveldb provides a LevelDB-based implementation of store.Store.
syncbase/store/leveldb_fsck
Package leveldb_fsck performs consistency checking of a leveldb-based syncbase store.
Package leveldb_fsck performs consistency checking of a leveldb-based syncbase store.
syncbase/store/leveldb_fsck/leveldb_fsck
Binary leveldb_fsck performs consistency checking of a leveldb-based syncbase store.
Binary leveldb_fsck performs consistency checking of a leveldb-based syncbase store.
syncbase/store/memstore
Package memstore provides a simple, in-memory implementation of store.Store.
Package memstore provides a simple, in-memory implementation of store.Store.
syncbase/store/ptrie
Package ptrie provides a ptrie to store a mapping from bit strings to arbitrary values.
Package ptrie provides a ptrie to store a mapping from bit strings to arbitrary values.
syncbase/store/watchable
Package watchable provides a Syncbase-specific store.Store wrapper that provides versioned storage for specified prefixes and maintains a watchable log of operations performed on versioned records.
Package watchable provides a Syncbase-specific store.Store wrapper that provides versioned storage for specified prefixes and maintains a watchable log of operations performed on versioned records.
syncbase/syncbased
Command syncbased runs the Syncbase daemon, which implements the v.io/v23/services/syncbase interfaces.
Command syncbased runs the Syncbase daemon, which implements the v.io/v23/services/syncbase interfaces.
syncbase/syncbaselib
Package syncbaselib defines a Main function that takes syncbased flags as arguments, for use in syncbased/v23_main.go as well as gosh.
Package syncbaselib defines a Main function that takes syncbased flags as arguments, for use in syncbased/v23_main.go as well as gosh.
syncbase/testutil
Package testutil defines helpers for Syncbase tests.
Package testutil defines helpers for Syncbase tests.
syncbase/vclock
Package vclock implements the Syncbase virtual clock, or vclock for short.
Package vclock implements the Syncbase virtual clock, or vclock for short.
syncbase/watchable
Package watchable contains helper functions for the Syncbase-specific operations.
Package watchable contains helper functions for the Syncbase-specific operations.
wakeup/gcm
Package gcm defines functions for waking up remote services using Google Cloud Messaging (GCM).
Package gcm defines functions for waking up remote services using Google Cloud Messaging (GCM).
wakeup/wakeupd
Command wakeupd runs the wake-up daemon, which implements the v.io/v23/services/wakeup interfaces.
Command wakeupd runs the wake-up daemon, which implements the v.io/v23/services/wakeup interfaces.
wakeup/wakeuplib
Package wakeuplib implements utilities for wakeup server implementation.
Package wakeuplib implements utilities for wakeup server implementation.
xproxy
Package xproxy enables services to export (proxy) themselves across networks (behind NATs for example).
Package xproxy enables services to export (proxy) themselves across networks (behind NATs for example).
xproxy/xproxy
Package xproxy contains the implementation of the proxy service.
Package xproxy contains the implementation of the proxy service.
xproxy/xproxyd
Command proxyd is a daemon that listens for connections from Vanadium services (typically behind NATs) and proxies these services to the outside world.
Command proxyd is a daemon that listens for connections from Vanadium services (typically behind NATs) and proxies these services to the outside world.
basics
Package basics implements some benchmarks for important basic operations in go.
Package basics implements some benchmarks for important basic operations in go.
benchmark
Package benchmark implements utilities to augment the standard Go testing.Benchmark functionality.
Package benchmark implements utilities to augment the standard Go testing.Benchmark functionality.
expect
Package expect implements support for checking expectations against a buffered input stream.
Package expect implements support for checking expectations against a buffered input stream.
hello
Package hello defines a simple client and server and uses them in a series of regression tests.
Package hello defines a simple client and server and uses them in a series of regression tests.
hello/helloclient
Command helloclient is a simple client mainly used in regression tests.
Command helloclient is a simple client mainly used in regression tests.
hello/helloserver
Command helloserver is a simple server mainly used in regression tests.
Command helloserver is a simple server mainly used in regression tests.
testutil
Package testutil implements utilities for unit and integration tests.
Package testutil implements utilities for unit and integration tests.
timekeeper
Package timekeeper implements simulated time against the v.io/x/ref/lib/timekeeper.TimeKeeper interface.
Package timekeeper implements simulated time against the v.io/x/ref/lib/timekeeper.TimeKeeper interface.
v23test
Package v23test defines Shell, a wrapper around gosh.Shell that provides Vanadium-specific functionality such as credentials management, StartRootMountTable, and StartSyncbase.
Package v23test defines Shell, a wrapper around gosh.Shell that provides Vanadium-specific functionality such as credentials management, StartRootMountTable, and StartSyncbase.

Jump to

Keyboard shortcuts

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