Commit Graph

10927 Commits

Author SHA1 Message Date
Christian Brauner
380fcc0863
conf: fix mount option parsing
Fixes: Coverity 1484906
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-19 17:38:20 +02:00
Stéphane Graber
e2e70bd5a2
Merge pull request #3843 from brauner/2021-05-17.idmapped.lxc.mount.entry
conf: support idmapped lxc.mount.entry entries
2021-05-19 09:55:26 -04:00
Christian Brauner
df5e747dc9
confile: free mount data
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-19 14:21:52 +02:00
Christian Brauner
5a782dca99
conf: add sequence when setting up idmapped mounts
Make sure we catch any weird behavior.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-19 14:21:52 +02:00
Christian Brauner
1b82d72144
conf: support idmapped lxc.mount.entry entries
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-19 14:21:51 +02:00
Christian Brauner
966dad2494
Merge pull request #3844 from CecilHarvey/master
Skip rootfs pinning for read-only file system.
2021-05-18 21:37:14 +02:00
Wei Mingzhi
e859a5ee2c Skip rootfs pinning for read-only file system.
Signed-off-by: Wei Mingzhi <weimingzhi@baidu.com>
2021-05-18 20:37:52 +08:00
Christian Brauner
1e4bce2c14
conf: rename struct mount_opt flag member s/flag/legacy_flag/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-17 12:44:20 +02:00
Christian Brauner
d94eb39059
tree-wide: s/parse_mntopts/parse_mntopts_legacy/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-17 12:40:08 +02:00
Stéphane Graber
73936a0d5c
Merge pull request #3842 from brauner/2021-05-14.fixes
start: move idmapped mount setup later
2021-05-14 13:49:18 -04:00
Christian Brauner
e4564b7ef9
start: move idmapped mount setup later
At the prior location we we're placed between sending and receiving
networking information over the data socket causing the startup to fail.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-14 19:00:14 +02:00
Stéphane Graber
5b70f02efc
Merge pull request #3840 from brauner/2021-05-12.fixes.rootfs
conf: fix containers without rootfs
2021-05-12 09:03:33 -04:00
Christian Brauner
c119f0185b
conf: tweak rootfs handling
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-12 10:23:55 +02:00
Christian Brauner
f6c5aab0c0
conf: don't unmount procfs and sysfs
Fixes: #3838
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-12 10:23:51 +02:00
Christian Brauner
89606dfb31
conf: allow xdev when setting up /dev
Fixes: #3838
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-12 10:23:14 +02:00
Stéphane Graber
3bd21f4e39
Merge pull request #3837 from brauner/2021-05-10.fixes.cgroup
cgroups: clean up cgroup_ops on initialization error
2021-05-11 08:51:27 -04:00
Christian Brauner
e3d78fdc8c
cgroups: clean up cgroup_ops on initialization error
Fixes: #3836
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-11 09:05:03 +02:00
Stéphane Graber
fb6991e5e7
Merge pull request #3826 from brauner/2021-05-04.fuzz.cgroup
oss-fuzz: add basic cgroup_init()/cgroup_exit() fuzzing
2021-05-10 12:12:56 -04:00
Stéphane Graber
bff268e79a
Merge pull request #3834 from brauner/2021-05-10.fixes
tests: fix lxc-test-arch-parse for make dist
2021-05-10 11:25:51 -04:00
Christian Brauner
4fb70d07da
tests: fix lxc-test-arch-parse for make dist
Fixes: https://jenkins.linuxcontainers.org/job/lxc-build-tarballs/2762/console
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-10 17:13:10 +02:00
Stéphane Graber
ccd43350da
Merge pull request #3833 from brauner/2021-05-09.fixes
confile: re-add aarch64 architecture
2021-05-09 13:03:17 -04:00
Christian Brauner
90658f1604
tests: add tests for supported architectures
Ensure that we detect all supported architectures and don't regress
recognizing them.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-09 16:26:53 +02:00
Christian Brauner
cae2b16fda
confile: re-add aarch64 architecture
Apparenty we dropped this when we cleaned up architecture handling.

Fixes: #3832
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-09 15:45:42 +02:00
Christian Brauner
1910c22889
Merge pull request #3831 from sjuxax/zfs-fix
Skip rootfs pinning for ZFS roots.
2021-05-09 14:28:23 +02:00
Jeff Cook
0dd4788a84 Reflow ZFS check to follow the style of the overlayfs return.
Per https://github.com/lxc/lxc/pull/3831#discussion_r628865713

Signed-off-by: Jeff Cook <jeff@jeffcook.io>
2021-05-09 05:40:17 -06:00
Jeff Cook
4bc6ecbfb7 Skip rootfs pinning for ZFS roots.
Signed-off-by: Jeff Cook <jeff@jeffcook.io>
2021-05-08 21:18:54 -06:00
Stéphane Graber
5b508c3713
Merge pull request #3829 from brauner/2021-05-07.fixes
doc: document new idmap= option for lxc.rootfs.options
2021-05-07 11:52:05 -04:00
Christian Brauner
1852be9048
doc: document new idmap= option for lxc.rootfs.options
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-07 17:27:06 +02:00
Stéphane Graber
ce86ae557a
Merge pull request #3827 from brauner/2021-05-06.cap_setfcap
conf: handle kernels with CAP_SETFCAP
2021-05-06 12:42:23 -04:00
Christian Brauner
86c780115a
conf: handle kernels with CAP_SETFCAP
LXC is being very clever and sometimes maps the caller's uid into the
child userns. This means that the caller can technically write fscaps
that are valid in the ancestor userns (which can be a security issue in
some scenarios) so newer kernels require CAP_SETFCAP to do this. Until
newuidmap/newgidmap are updated to account for this simply write the
mapping directly in this case.

Cc: stable-4.0
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-06 18:16:45 +02:00
Christian Brauner
7495196098
oss-fuzz: add basic cgroup_init()/cgroup_exit() fuzzing
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 18:47:13 +02:00
Stéphane Graber
78af4d9c90
Merge pull request #3825 from brauner/2021-05-04.fixes
lxc.arch fixes
2021-05-04 10:54:52 -04:00
Christian Brauner
3a88181962
attach: introduce explicit personality macro
Introduce LXC_ATTACH_DETECT_PERSONALITY to make it explicit what is
happening instead of using -1.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 16:16:36 +02:00
Christian Brauner
64a04c848a
conf: add personality_t
Catch errors in personality handling better.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 16:09:48 +02:00
Christian Brauner
7fd384d11b
attach_options: unbreak header
In a moment of idioticity I switch -1 with 0xffffffff in the header
definition but we use -1 to autodetect.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:43:38 +02:00
Christian Brauner
7c43fa56e7
conf: rework lxc_config_parse_arch()
Fix architecture parsing. So far we couldn't really differ between "want
default architecture" and "failed to parse requested architecture"
because the -1 return value means both. Fix this by using the return
value only to indicate success or failure and return the parsed
personality in a return argument.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:28:49 +02:00
Christian Brauner
9c601e1f99
conf: tweak setup_personality()
Use the dedicated LXC_ARCH_UNCHANGED macro everywhere instead of relying
on -1 being correct.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:28:48 +02:00
Christian Brauner
3860899204
tree-wide: make personality codepaths unconditional
Now that we have the infra to make personality handling unconitional
remove the ifndefs everywhere.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:27:44 +02:00
Christian Brauner
3857c4ebf0
syscalls: wrap personality syscall if undefined
There's no need to making personality handling conditional as it has
been around for such a long time that only weird systems wouldn't have
support for it. And especially if the user requested a specific
personality to be set but the system doesn't support the personality
syscall we should loudly fail instead of moving on.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:15:28 +02:00
Christian Brauner
1d74176da2
commands: log at debug not info level when receiving file descriptors
Don't spam the logs because we do receive a lot of file descriptors.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:15:08 +02:00
Christian Brauner
5f2a6ec4e1
confile: make per_name struct static
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:14:09 +02:00
Christian Brauner
13723cb9e5
Merge pull request #3823 from evverx/gcc-11-workaround
string_utils: get around GCC-11 false positives
2021-05-04 05:10:35 +02:00
Stéphane Graber
3176d82e3a
Merge pull request #3824 from evverx/sanitizers-follow-ups
github: remove the dh-* packages
2021-05-03 19:59:44 -04:00
Evgeny Vereshchagin
6d345aa40d string_utils: get around GCC-11 false positives
by getting rid of stpncpy

Tested with gcc (GCC) 11.1.1 20210428 (Red Hat 11.1.1-1)

Closes https://github.com/lxc/lxc/issues/3752

Signed-off-by: Evgeny Vereshchagin <evvers@ya.ru>
2021-05-03 23:07:20 +00:00
Evgeny Vereshchagin
bfb24cf0fd github: also pass the j option to make
Signed-off-by: Evgeny Vereshchagin <evvers@ya.ru>
2021-05-03 22:35:19 +00:00
Evgeny Vereshchagin
72f83931b3 github: remove the dh-* packages
We don't build any packages there so it seems we don't need
those packages any more. Apart from that, it should make the
script work on Ubuntu Hirsute where dh-systemd was merged into
debhelper and is no longer available.

Signed-off-by: Evgeny Vereshchagin <evvers@ya.ru>
2021-05-03 22:33:17 +00:00
Stéphane Graber
705b2c32d1
Merge pull request #3819 from dev-aaront-org/console-mode-messages
conf: fix console chmod error log messages
2021-05-03 08:03:25 -04:00
Christian Brauner
58f5195d67
Merge pull request #3822 from stgraber/master
github: Run apt-get update in sanitizer test
2021-05-03 14:03:14 +02:00
Stéphane Graber
4919245709
Merge pull request #3820 from brauner/2021-05-03.lxc_monitord.log
lxc_monitord: remove monitord log
2021-05-03 08:03:03 -04:00
Stéphane Graber
5687858702
github: Run apt-get update in sanitizer test
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2021-05-03 08:02:14 -04:00