Skip to content

Commit 6ffddf6

Browse files
committed
mount: Allow relative mount destinations on Linux
We tried to make runc enforce abs dest path several times, and always had to revert it due to some tools not yet doing it. The last occurrence is this one: opencontainers/runc#3944 (comment) I don't see any reason to force abs dst paths on Linux, as far as I know there is no security bug nor anything. Let's just relax the spec wording, matching all the runtimes behavior when the paths is relative, and be done with it. Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
1 parent f329913 commit 6ffddf6

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

config.md

+8-3
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,14 @@ For Linux, the parameters are as documented in [mount(2)][mount.2] system call m
6868
For Solaris, the mount entry corresponds to the 'fs' resource in the [zonecfg(1M)][zonecfg.1m] man page.
6969

7070
* **`destination`** (string, REQUIRED) Destination of mount point: path inside container.
71-
This value MUST be an absolute path.
72-
* Windows: one mount destination MUST NOT be nested within another mount (e.g., c:\\foo and c:\\foo\\bar).
73-
* Solaris: corresponds to "dir" of the fs resource in [zonecfg(1M)][zonecfg.1m].
71+
* Linux: This value SHOULD be an absolute path.
72+
For compatibility with old tools and configurations, it MAY be a relative path, in which case it MUST be interpreted as relative to "/".
73+
Relative paths are **deprecated**.
74+
* Windows: This value MUST be an absolute path.
75+
One mount destination MUST NOT be nested within another mount (e.g., c:\\foo and c:\\foo\\bar).
76+
* Solaris: This value MUST be an absolute path.
77+
Corresponds to "dir" of the fs resource in [zonecfg(1M)][zonecfg.1m].
78+
* For all other platforms: This value MUST be an absolute path.
7479
* **`source`** (string, OPTIONAL) A device name, but can also be a file or directory name for bind mounts or a dummy.
7580
Path values for bind mounts are either absolute or relative to the bundle.
7681
A mount is a bind mount if it has either `bind` or `rbind` in the options.

0 commit comments

Comments
 (0)