Skip to content

Commit

Permalink
conf: ensure mount tunnel is a dependent mount
Browse files Browse the repository at this point in the history
Signed-off-by: Christian Brauner (Microsoft) <christian.brauner@ubuntu.com>
  • Loading branch information
brauner authored and stgraber committed Dec 16, 2022
1 parent 2ff4474 commit 9e35b3e
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions src/lxc/conf.c
Expand Up @@ -4345,6 +4345,14 @@ static int setup_capabilities(struct lxc_conf *conf)
return 0;
}

static int make_shmount_dependent_mount(const struct lxc_conf *conf)
{
if (!(conf->auto_mounts & LXC_AUTO_SHMOUNTS_MASK))
return 0;

return mount(NULL, conf->shmount.path_cont, NULL, MS_REC | MS_SLAVE, 0);
}

int lxc_setup(struct lxc_handler *handler)
{
int ret;
Expand Down Expand Up @@ -4474,6 +4482,11 @@ int lxc_setup(struct lxc_handler *handler)
if (ret < 0)
return log_error(-1, "Failed to pivot root into rootfs");

ret = make_shmount_dependent_mount(lxc_conf);
if (ret < 0)
return log_error(-1, "Failed to turn mount tunnel \"%s\" into dependent mount",
lxc_conf->shmount.path_cont);

/* Setting the boot-id is best-effort for now. */
if (lxc_conf->autodev > 0)
(void)lxc_setup_boot_id();
Expand Down

0 comments on commit 9e35b3e

Please sign in to comment.