blob: 327c5b93642fc8ace886b765cd4760e7800ef7be [file] [log] [blame]
Jiri Simsad7616c92015-03-24 23:44:30 -07001// Copyright 2015 The Vanadium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
Todd Wang8c4e5cc2015-04-09 11:30:52 -07005// Package profiles and its subdirectories provide implementations of the
6// Vanadium runtime for different runtime environments. Each subdirectory is a
7// package that implements the v23.Profile function.
Cosmos Nicolaou6c6fa112014-08-19 13:22:33 -07008//
Todd Wang8c4e5cc2015-04-09 11:30:52 -07009// Profiles register themselves by calling v.io/v23/rt.RegisterProfile in an
10// init function. Users choose a particular profile implementation by importing
11// the appropriate package in their main package. It is an error to import more
12// than one profile, and the registration mechanism will panic if this is
13// attempted. Commonly used functionality and pre-canned profiles are in
14// profiles/internal.
Cosmos Nicolaou6c6fa112014-08-19 13:22:33 -070015//
16// This top level directory contains a 'generic' Profile and utility routines
Cosmos Nicolaou39e3ae52014-11-14 13:30:01 -080017// used by other Profiles. It should be imported whenever possible and
18// particularly by tests.
Cosmos Nicolaou6c6fa112014-08-19 13:22:33 -070019//
Cosmos Nicolaou39e3ae52014-11-14 13:30:01 -080020// The 'roaming' Profile adds operating system support for varied network
Cosmos Nicolaou6c6fa112014-08-19 13:22:33 -070021// configurations and in particular dhcp. It should be used by any application
Cosmos Nicolaou39e3ae52014-11-14 13:30:01 -080022// that may 'roam' or any may be behind a 1-1 NAT. The 'static' profile
23// does not provide dhcp support, but is otherwise like the roaming profile.
Cosmos Nicolaou6c6fa112014-08-19 13:22:33 -070024package profiles