Skip to content

Commit

Permalink
config: Require a new UTS namespace for config.json's hostname
Browse files Browse the repository at this point in the history
The UTS namespace is for hostnames and NIS domain names [1].  Without
a new namespace, the hostname entry would clobber the host
environment's hostname.

Clobbering the host's hostname or a joined-namespace's hostname might
be acceptable for folks who trust their bundles, but it's not allowed
by the "error out if the config specifies anything else related to
that namespace" language that landed in 02b456e (Clarify behavior
around namespaces paths, 2015-09-08, opencontainers#158).

[1]: http://man7.org/linux/man-pages/man7/namespaces.7.html

Signed-off-by: W. Trevor King <wking@tremily.us>
  • Loading branch information
wking committed Oct 6, 2015
1 parent 98e5ff7 commit 66a0543
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion config.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ For Linux-based systems the user structure has the following fields:

## Hostname

* **`hostname`** (string, optional) as it is accessible to processes running inside.
* **`hostname`** (string, optional) as it is accessible to processes running inside. On Linux, you can only set this if your bundle creates a new [UTS namespace][uts-namespace].

*Example*

Expand All @@ -126,3 +126,5 @@ For Linux-based systems the user structure has the following fields:

Interpretation of the platform section of the JSON file is used to find which platform-specific sections may be available in the document.
For example, if `os` is set to `linux`, then a JSON object conforming to the [Linux-specific schema](config-linux.md) SHOULD be found at the key `linux` in the `config.json`.

[uts-namespace]: http://man7.org/linux/man-pages/man7/namespaces.7.html

0 comments on commit 66a0543

Please sign in to comment.