new->lsm_aa_profile = NULL;
new->lsm_se_context = NULL;
new->tmp_umount_proc = false;
+ new->lxc_shmount.path_host = NULL;
+ new->lxc_shmount.path_cont = NULL;
/* if running in a new user namespace, init and COMMAND
* default to running as UID/GID 0 when using lxc-execute */
lxc_clear_procs(conf, "lxc.proc");
free(conf->cgroup_meta.dir);
free(conf->cgroup_meta.controllers);
+ free(conf->lxc_shmount.path_host);
+ free(conf->lxc_shmount.path_cont);
free(conf);
}
LXC_AUTO_CGROUP_FULL_NOSPEC = 0x0E0, /* /sys/fs/cgroup (full mount, r/w or mixed, depending on caps) */
LXC_AUTO_CGROUP_FORCE = 0x100, /* mount cgroups even when cgroup namespaces are supported */
LXC_AUTO_CGROUP_MASK = 0x1F0, /* all known cgroup options, doe not contain LXC_AUTO_CGROUP_FORCE */
+
+ LXC_AUTO_SHMOUNTS = 0x200, /* shared mount point */
+ LXC_AUTO_SHMOUNTS_MASK = 0x200, /* shared mount point mask */
LXC_AUTO_ALL_MASK = 0x1FF, /* all known settings */
};
/* procs */
struct lxc_list procs;
+
+ struct lxc_shmount {
+ /* Absolute path to the shared mount point on the host */
+ char *path_host;
+ /* Absolute path (in the container) to the shared mount point */
+ char *path_cont;
+ } lxc_shmount;
};
extern int write_id_mapping(enum idtype idtype, pid_t pid, const char *buf,
{ "cgroup-full:mixed:force", LXC_AUTO_CGROUP_MASK, LXC_AUTO_CGROUP_FULL_MIXED | LXC_AUTO_CGROUP_FORCE },
{ "cgroup-full:ro:force", LXC_AUTO_CGROUP_MASK, LXC_AUTO_CGROUP_FULL_RO | LXC_AUTO_CGROUP_FORCE },
{ "cgroup-full:rw:force", LXC_AUTO_CGROUP_MASK, LXC_AUTO_CGROUP_FULL_RW | LXC_AUTO_CGROUP_FORCE },
+ { "shmounts:", LXC_AUTO_SHMOUNTS_MASK, LXC_AUTO_SHMOUNTS },
/* For adding anything that is just a single on/off, but has no
* options: keep mask and flag identical and just define the enum
* value as an unused bit so far