v.io: v.io/x

Directories

PathSynopsis
refPackage ref defines constants used through the Vanadium reference implementation, which is implemented in its subdirectories.
ref/cmd/gclogsCommand gclogs safely deletes old log files.
ref/cmd/mounttableCommand mounttable sends commands to Vanadium mounttable services.
ref/cmd/namespaceCommand namespace resolves and manages names in the Vanadium namespace.
ref/cmd/principalCommand principal creates and manages Vanadium principals and blessings.
ref/cmd/uniqueidCommand uniqueid generates unique identifiers.
ref/cmd/vdlCommand vdl manages Vanadium Definition Language source code.
ref/cmd/vomCommand vom helps debug the Vanadium Object Marshaling wire protocol.
ref/cmd/vrpcCommand vrpc sends and receives Vanadium remote procedure calls.
ref/cmd/vrpc/internalnolint:golint
ref/examples/echonolint:golint
ref/examples/echo/echoCommand echo is a client for the Echo service.
ref/examples/echo/echodCommand echo is a server for the Echo service.
ref/examples/fortunePackage fortune defines the Fortune example interface.
ref/examples/fortune/fortuneCommand fortune is a client to the Fortune interface.
ref/examples/fortune/fortunedCommand fortuned runs a daemon that implements the Fortune interface.
ref/examples/fortune/fortuned/internal
ref/examples/noflagsAn example using the 'library' factory which is configured via exported variables rather than by command line flags.
ref/examples/rpsPackage rps defines interfaces for playing the game Rock-Paper-Scissors.
ref/examples/rps/internalPackage internal defines common functions used by both rock paper scissors clients and servers.
ref/examples/rps/rpsbotCommand rpsbot repeatedly runs automated games, implementing all three roles.
ref/examples/rps/rpsplayerCommand rpsplayer implements the Player interface, which enables a human to play the game.
ref/examples/rps/rpsscorekeeperCommand rpsscorekeeper implements the ScoreKeeper interface.
ref/examples/tunnelPackage tunnel defines an interface for creating a network tunnel from client to server.
ref/examples/tunnel/internalPackage internal defines common types and functions used by both tunnel clients and servers.
ref/examples/tunnel/tunneldCommand tunneld runs the tunneld daemon, which implements the Tunnel interface.
ref/examples/tunnel/vshCommand 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.
ref/internal/loggerPackage logger provides access to an implementation of v23/logger.Logging for use within a runtime implementation.
ref/internal/reflectutilPackage reflectutil provides reflection-based utilities.
ref/lib/apilogPackage apilog provides functions to be used in conjunction with logcop.
ref/lib/discoverynolint:golint
ref/lib/discovery/factory
ref/lib/discovery/globalTODO(jhahn): This is an experimental work to see its feasibility and set the long-term goal, and can be changed without notice.
ref/lib/discovery/plugins/mdnsPackage mdns implements mDNS plugin for discovery service.
ref/lib/discovery/plugins/mock
ref/lib/discovery/plugins/testutil
ref/lib/discovery/plugins/vinePackage vine contains a discovery plugin that is using Vine protocol.
ref/lib/discovery/testpackage test contains tests that rely on a fake runtime.
ref/lib/discovery/testutilPackage testutil defines helpers for discovery tests.
ref/lib/dispatcher
ref/lib/execPackage exec implements configuration and secret-sharing between parent and child processes via anoymous pipes.
ref/lib/flagsPackage flags implements utilities to augment the standard Go flag package.
ref/lib/flags/sitedefaults
ref/lib/globPackage glob defines a globbing syntax and implements matching routines.
ref/lib/publisherPackage publisher provides a type to publish names to a mounttable.
ref/lib/pubsubPackage pubsub defines interfaces for accessing dynamically changing process configuration information.
ref/lib/raftnolint:golint
ref/lib/securityPackage security implements utilities for creating and using Vanadium security primitives.
ref/lib/security/auditPackage audit implements a mechanism for writing auditable events to an audit log.
ref/lib/security/bcrypternolint:golint
ref/lib/security/internal
ref/lib/security/internal/lockedfilePackage lockedfile creates and manipulates files whose contents should only change atomically.
ref/lib/security/internal/lockedfile/filelockPackage filelock provides a platform-independent API for advisory file locking.
ref/lib/security/internal/lockedfile/testenv
ref/lib/security/passphrasePackage passphrase contains utilities for reading a passphrase.
ref/lib/security/securityflagPackage securityflag implements utilities for creating security objects based on flags.
ref/lib/security/serializationPackage serialization implements utilities for reading and writing data with signature-based integrity checking.
ref/lib/security/signing
ref/lib/security/signing/internal
ref/lib/security/signing/keyfilePackage keyfile provides a signing service that uses files to store keys.
ref/lib/security/signing/sshagentPackage sshagent provides the ability to use openssh's ssh-agent to carry out key signing operations using keys stored therein.
ref/lib/signalsPackage signals implements utilities for managing process shutdown with support for signal-handling.
ref/lib/statsPackage stats implements a global repository of stats objects.
ref/lib/stats/counterPackage counter implements counters that keeps track of their recent values over different periods of time.
ref/lib/stats/histogramPackage histogram implements a basic histogram to keep track of data distribution.
ref/lib/stats/sysstatsPackage sysstats implements system statistics and updates them periodically.
ref/lib/timekeeperPackage timekeeper defines an interface to allow switching between real time and simulated time.
ref/lib/v23cmdPackage v23cmd implements utilities for running v23 cmdline programs.
ref/lib/vdl/buildPackage build implements utilities to collect VDL build information and run the parser and compiler.
ref/lib/vdl/build/internal/builtinvdlroot
ref/lib/vdl/codegenPackage codegen implements utilities for VDL code generators.
ref/lib/vdl/codegen/golangPackage golang implements Go code generation from compiled VDL packages.
ref/lib/vdl/codegen/javaPackage java implements Java code generation from compiled VDL packages.
ref/lib/vdl/codegen/javascriptPackage javascript implements Javascript code generation from compiled VDL packages.
ref/lib/vdl/codegen/jsonPackage json implements JSON generation for VDL const values.
ref/lib/vdl/codegen/swiftPackage swift implements Swift code generation from compiled VDL packages.
ref/lib/vdl/codegen/vdlgenPackage vdlgen implements VDL code generation from compiled VDL packages.
ref/lib/vdl/compilePackage compile implements the VDL compiler, converting a parse tree into compiled results.
ref/lib/vdl/internal/vdltestutilPackage vdltestutil provides testing utilities for v.io/x/ref/lib/vdl/...
ref/lib/vdl/opconstPackage opconst defines the representation and operations for VDL constants.
ref/lib/vdl/parsePackage parse implements the VDL parser, converting source files into a parse tree.
ref/lib/vdl/vdlutilPackage vdlutil implements utilities used by many VDL components.
ref/runtimePackage runtime and its subdirectories provide implementations of the Vanadium runtime for different runtime environments.
ref/runtime/factories/fakePackage fake implements a fake RuntimeFactory, useful in tests for mocking out certain components.
ref/runtime/factories/genericPackage generic implements a RuntimeFactory that is useful in tests.
ref/runtime/factories/libraryPackage library implements a RuntimeFactory suitable for building a Vanadium library that is linked into other applications.
ref/runtime/factories/roamingPackage roaming implements a RuntimeFactory suitable for a variety of network configurations, including 1-1 NATs, dhcp auto-configuration, Amazon Web Services and Google Compute Engine.
ref/runtime/factories/staticPackage static implements a RuntimeFactory suitable for a variety of network configurations, including 1-1 NATs, Amazon Web Services and Google Compute Engine but hosted on a static IP address with no support for adapting to dhcp changes.
ref/runtime/internal
ref/runtime/internal/cloudvmPackage 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.
ref/runtime/internal/cloudvm/cloudpaths
ref/runtime/internal/cloudvm/cloudvmtest
ref/runtime/internal/flow
ref/runtime/internal/flow/connnolint:golint
ref/runtime/internal/flow/crypto
ref/runtime/internal/flow/flowtest
ref/runtime/internal/flow/manager
ref/runtime/internal/lib/dependencyPackage dependency keeps track of a dependency graph.
ref/runtime/internal/lib/dequePackage deque implements a deque using a circular array.
ref/runtime/internal/lib/syncPackage sync provides synchronization primitives.
ref/runtime/internal/lib/upcqueuePackage upcqueue implements an unbounded producer/consumer queue.
ref/runtime/internal/namingPackage naming provides an implementation of the interfaces in v.io/v23/naming.
ref/runtime/internal/naming/namespace
ref/runtime/internal/platform
ref/runtime/internal/requestid
ref/runtime/internal/rpc
ref/runtime/internal/rpc/benchmarkpackage benchmark provides simple tools to measure the performance of the IPC system.
ref/runtime/internal/rpc/benchmark/benchmarkCommand benchmark runs the benchmark client.
ref/runtime/internal/rpc/benchmark/benchmarkdCommand benchmarkd runs the benchmark server.
ref/runtime/internal/rpc/benchmark/internal
ref/runtime/internal/rpc/stressnolint:golint
ref/runtime/internal/rpc/stress/internal
ref/runtime/internal/rpc/stress/mtstressUsage: mtstress [flags] <command>
ref/runtime/internal/rpc/stress/stressCommand stress is a tool to stress/load test RPC by issuing randomly generated requests.
ref/runtime/internal/rpc/stress/stressdCommand stressd runs the stress-test server.
ref/runtime/internal/rpc/testpackage test contains test for rpc code that do not rely on unexposed rpc declarations.
ref/runtime/internal/rpc/version
ref/runtime/internal/rt
ref/runtime/internal/testing/mocks/naming
ref/runtime/internal/vtracePackage vtrace implements the Trace and Span interfaces in v.io/v23/vtrace.
ref/runtime/protocols/bidinolint:golint
ref/runtime/protocols/debug
ref/runtime/protocols/lib/framernolint:golint
ref/runtime/protocols/lib/tcputilpackage tcputil contains functions commonly used to manipulate TCP connections.
ref/runtime/protocols/lib/websocketnolint:golint
ref/runtime/protocols/local
ref/runtime/protocols/tcp
ref/runtime/protocols/vinePackage vine contains Vanadium's Implementation of Network Emulation (VINE).
ref/runtime/protocols/ws
ref/runtime/protocols/wshPackage wsh registers the websocket 'hybrid' protocol.
ref/runtime/protocols/wsh_naclPackage wsh_nacl registers the websocket 'hybrid' protocol for nacl architectures.
ref/services/benPackage ben defines datastructures to archive microbenchmark results.
ref/services/ben/archivePackage archive defines the RPC interface for archiving benchmark results.
ref/services/ben/benarchdCommand benarchd implements a benchmark archival daemon.
ref/services/ben/benarchd/internalgo:generate ./gen_assets.sh
ref/services/ben/benarchd/internal/assets
ref/services/debug/debugCommand debug supports debugging Vanadium servers.
ref/services/debug/debug/browseserverPackage browseserver provides a web interface that can be used to interact with the vanadium debug interface.
ref/services/debug/debuglibPackage debuglib implements debug server support.
ref/services/dischargerPackage discharger defines an interface for obtaining discharges for third-party caveats.
ref/services/http/http
ref/services/http/httplib
ref/services/identityPackage identity defines interfaces for Vanadium identity providers.
ref/services/identity/identitydCommand identityd runs a daemon HTTP server that uses OAuth to create security.Blessings objects.
ref/services/identity/identitylibPackage identitylib implements a test identityd service registered using the v.io/x/lib/gosh library.
ref/services/identity/internal/auditor
ref/services/identity/internal/blesser
ref/services/identity/internal/caveats
ref/services/identity/internal/dischargerlib
ref/services/identity/internal/handlers
ref/services/identity/internal/oauthPackage oauth implements an http.Handler that has two main purposes listed below:
ref/services/identity/internal/revocationnolint:golint
ref/services/identity/internal/serverHTTP server that uses OAuth to create security.Blessings objects.
ref/services/identity/internal/templates
ref/services/identity/internal/utilPackage util implements miscellaneous utility functions needed by the identity HTTP server.
ref/services/internal/dbutilPackage dbutil implements utilities for opening and configuring connections to MySQL-like databases, with optional TLS support.
ref/services/internal/dirprinterPackage dirprinter contains utilities for dumping the contents and structure of a directory tree.
ref/services/internal/httplib
ref/services/internal/logreaderlibPackage 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.
ref/services/internal/multipartPackage multipart implements an http.File that acts as one logical file backed by several physical files (the 'parts').
ref/services/internal/pathpermsPackage pathperms provides a library to assist servers implementing GetPermissions/SetPermissions functions and authorizers where there are path-specific Permissions stored individually in files.
ref/services/internal/pproflibPackage pproflib defines a client-side proxy and server-side implementation of the v.io/v23/services/pprof interface.
ref/services/internal/restsigner
ref/services/internal/restsigner/rest_signer_test
ref/services/internal/restsigner/signer/v1Package signer provides access to the .
ref/services/internal/servicetestPackage servicetest provides functionality to help write tests for the Vanadium services.
ref/services/internal/statslibPackage statslib implements the Stats interface from v.io/v23/services/stats.
ref/services/internal/vtracelib
ref/services/mounttable/mounttabledCommand mounttabled runs the mount table daemon, which implements the v.io/v23/services/mounttable interfaces.
ref/services/mounttable/mounttablelibPackage mounttablelib implements utilities for mounttable implementations.
ref/services/rolePackage role defines an interface for requesting blessings from a role account server.
ref/services/role/roledCommand roled runs the Role interface daemon.
ref/services/role/roled/internalPackage internal implements the role service defined in v.io/x/ref/services/role
ref/services/statsPackages stats defines the non-native types exported by the stats service.
ref/services/xproxyPackage xproxy enables services to export (proxy) themselves across networks (behind NATs for example).
ref/services/xproxy/xproxyPackage xproxy contains the implementation of the proxy service.
ref/services/xproxy/xproxydCommand proxyd is a daemon that listens for connections from Vanadium services (typically behind NATs) and proxies these services to the outside world.
ref/testPackage test implements initialization for unit and integration tests.
ref/test/basicsPackage basics implements some benchmarks for important basic operations in go.
ref/test/benchmarkPackage benchmark implements utilities to augment the standard Go testing.Benchmark functionality.
ref/test/expectPackage expect implements support for checking expectations against a buffered input stream.
ref/test/goroutines
ref/test/helloPackage hello defines a simple client and server and uses them in a series of regression tests.
ref/test/hello/helloclientCommand helloclient is a simple client mainly used in regression tests.
ref/test/hello/helloserverCommand helloserver is a simple server mainly used in regression tests.
ref/test/testutilPackage testutil implements utilities for unit and integration tests.
ref/test/testutil/testsshagent
ref/test/timekeeperPackage timekeeper implements simulated time against the v.io/x/ref/lib/timekeeper.TimeKeeper interface.
ref/test/v23testPackage v23test defines Shell, a wrapper around gosh.Shell that provides Vanadium-specific functionality such as credentials management, StartRootMountTable, and StartSyncbase.

Updated 2020-12-03. Refresh now. Tools for package owners.