aboutsummaryrefslogtreecommitdiff
path: root/sys/sys/jail.h
diff options
context:
space:
mode:
authorJamie Gritton <jamie@FreeBSD.org>2009-06-15 18:59:29 +0000
committerJamie Gritton <jamie@FreeBSD.org>2009-06-15 18:59:29 +0000
commit679e13901cd9ae2a491e6ac63c29c7d60e581deb (patch)
treeda42c35580b92c97206bed1ad724ceb513e4c024 /sys/sys/jail.h
parent31b6da64c7838e4dcd63c6c8c9beebf2d2ca13cf (diff)
downloadsrc-679e13901cd9ae2a491e6ac63c29c7d60e581deb.tar.gz
src-679e13901cd9ae2a491e6ac63c29c7d60e581deb.zip
Manage vnets via the jail system. If a jail is given the boolean
parameter "vnet" when it is created, a new vnet instance will be created along with the jail. Networks interfaces can be moved between prisons with an ioctl similar to the one that moves them between vimages. For now vnets will co-exist under both jails and vimages, but soon struct vimage will be going away. Reviewed by: zec, julian Approved by: bz (mentor)
Notes
Notes: svn path=/head/; revision=194251
Diffstat (limited to 'sys/sys/jail.h')
-rw-r--r--sys/sys/jail.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/sys/jail.h b/sys/sys/jail.h
index 494a677a4369..667ca9cfb4b6 100644
--- a/sys/sys/jail.h
+++ b/sys/sys/jail.h
@@ -171,6 +171,7 @@ struct prison {
char pr_domainname[MAXHOSTNAMELEN]; /* (p) jail domainname */
char pr_hostuuid[HOSTUUIDLEN]; /* (p) jail hostuuid */
unsigned long pr_hostid; /* (p) jail hostid */
+ struct vnet *pr_vnet; /* (c) network stack */
};
#endif /* _KERNEL || _WANT_PRISON */
@@ -180,6 +181,7 @@ struct prison {
#define PR_HOST 0x00000002 /* Virtualize hostname et al */
#define PR_IP4_USER 0x00000004 /* Virtualize IPv4 addresses */
#define PR_IP6_USER 0x00000008 /* Virtualize IPv6 addresses */
+#define PR_VNET 0x00000010 /* Virtual network stack */
/* Internal flag bits */
#define PR_REMOVE 0x01000000 /* In process of being removed */