]>
git.proxmox.com Git - mirror_lxc.git/log
Christian Brauner [Thu, 25 Feb 2021 22:52:29 +0000 (23:52 +0100)]
commands: rsp_one_fd_{reap,keep}() and rsp_many_fds_reap()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 22:46:52 +0000 (23:46 +0100)]
commands: cleanup error handling and variable naming
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Stéphane Graber [Thu, 25 Feb 2021 23:24:07 +0000 (18:24 -0500)]
Merge pull request #3697 from brauner/2021-02-25/fixes
commands: improvements and fixes
Christian Brauner [Thu, 25 Feb 2021 22:35:15 +0000 (23:35 +0100)]
commands: port misnamed functions to general style
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 22:29:54 +0000 (23:29 +0100)]
commands: use debug logging
It is fine to fail these commands when a new client talks to an old server or
the kernel doesn't support the necessary features.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 22:29:37 +0000 (23:29 +0100)]
log: add some more log and return helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 19:49:13 +0000 (20:49 +0100)]
tests: add logging to lxc-test-lxc-attach
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 12:50:29 +0000 (13:50 +0100)]
commands: improve lxc_cmd_get_tty_fd()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:48:14 +0000 (10:48 +0100)]
commands: rework lxc_cmd_rsp_recv() to make it more obvious
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 10:18:09 +0000 (11:18 +0100)]
af_unix: allow caller and callee to negotiate expectations and reality
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 12:48:52 +0000 (13:48 +0100)]
macro: add hweight*() helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:27:57 +0000 (10:27 +0100)]
commands: let lxc_cmd() return ssize_t to indicate that it returns not just 0 on success
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:24:14 +0000 (10:24 +0100)]
commands: port lxc_cmd_get_limit_cgroup2_fd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:24:05 +0000 (10:24 +0100)]
commands: port lxc_cmd_get_cgroup2_fd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:23:50 +0000 (10:23 +0100)]
commands: port lxc_cmd_get_limit_cgroup_fd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:23:39 +0000 (10:23 +0100)]
commands: port lxc_cmd_get_cgroup_fd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:23:28 +0000 (10:23 +0100)]
commands: port lxc_cmd_unfreeze() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:23:19 +0000 (10:23 +0100)]
commands: port lxc_cmd_freeze() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:23:08 +0000 (10:23 +0100)]
commands: port lxc_cmd_seccomp_notify_add_listener() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:22:51 +0000 (10:22 +0100)]
commands: port lxc_cmd_serve_state_clients() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:22:18 +0000 (10:22 +0100)]
commands: port lxc_cmd_console_log() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:22:04 +0000 (10:22 +0100)]
commands: port lxc_cmd_add_bpf_device_cgropu() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:21:46 +0000 (10:21 +0100)]
commands: port lxc_cmd_add_state_client() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:21:30 +0000 (10:21 +0100)]
commands: port lxc_cmd_get_lxcpath() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:21:19 +0000 (10:21 +0100)]
commands: port lxc_cmd_get_name() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:21:07 +0000 (10:21 +0100)]
commands: port lxc_get_tty_fd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:20:55 +0000 (10:20 +0100)]
commands: port lxc_cmd_stop() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:20:42 +0000 (10:20 +0100)]
commands: port lxc_cmd_get_state() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:20:33 +0000 (10:20 +0100)]
commands: port lxc_cmd_get_config_item() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:19:54 +0000 (10:19 +0100)]
commands: portlxc_cmd_get_cgroup_path_do() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:19:28 +0000 (10:19 +0100)]
commands: port lxc_cmd_get_clone_flags() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:19:15 +0000 (10:19 +0100)]
commands: port lxc_cmd_get_cgroup_ctx() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:19:02 +0000 (10:19 +0100)]
commands: port lxc_cmd_get_seccomp_notify_fd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:18:43 +0000 (10:18 +0100)]
commands: port lxc_cmd_get_devpts_fd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:17:49 +0000 (10:17 +0100)]
commands: port lxc_cmd_get_init_pidfd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:17:19 +0000 (10:17 +0100)]
commands: port lxc_cmd_get_init_pid() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:16:55 +0000 (10:16 +0100)]
commands: port lxc_try_cmd() to new helpers
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 09:16:03 +0000 (10:16 +0100)]
commands: add lxc_cmd_init() and lxc_cmd_data()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 08:55:22 +0000 (09:55 +0100)]
commands: s/lxc_cmd_init()/lxc_server_init()/g
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 08:32:19 +0000 (09:32 +0100)]
commands: switch to bool
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Thu, 25 Feb 2021 08:23:27 +0000 (09:23 +0100)]
commands: use IN_SET() in lxc_cmd()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Stéphane Graber [Wed, 24 Feb 2021 16:32:07 +0000 (11:32 -0500)]
Merge pull request #3695 from brauner/2021-02-24/fixes_3
commands: array hardening
Christian Brauner [Wed, 24 Feb 2021 15:48:23 +0000 (16:48 +0100)]
commands: ensure that non-NULL and MAX_STATE is always passed
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 15:44:11 +0000 (16:44 +0100)]
commands: annotate array argument
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Stéphane Graber [Wed, 24 Feb 2021 15:36:10 +0000 (10:36 -0500)]
Merge pull request #3694 from brauner/2021-02-24/fixes_2
commands: rework and add LXC_CMD_GET_CGROUP_FD and LXC_CMD_GET_LIMIT_CGROUP_FD
Christian Brauner [Wed, 24 Feb 2021 15:07:23 +0000 (16:07 +0100)]
commands: s/LXC_CMD_CONSOLE/LXC_CMD_GET_TTY_FD/g
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 11:01:27 +0000 (12:01 +0100)]
commands: add LXC_CMD_GET_CGROUP_FD and LXC_CMD_GET_LIMIT_CGROUP_FD
and port cgroup_get() and cgroup_set(). This means no more useless cgroup
driver initialization on ever get or set.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 14:31:12 +0000 (15:31 +0100)]
commands: extend rsp_one_fd() to also handle additional data
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 14:25:19 +0000 (15:25 +0100)]
file_utils: actually open the file for reading
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 10:53:53 +0000 (11:53 +0100)]
commands: set rsp.ret to 0 for lxc_cmd_get_cgroup_ctx_callback()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 10:31:02 +0000 (11:31 +0100)]
cgroups: s/cgroup_layout/layout/g
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 10:11:08 +0000 (11:11 +0100)]
commands: add LXC_CMD_GET_CGROUP_FD and LXC_CMD_GET_LIMIT_CGROUP_FD
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 09:58:43 +0000 (10:58 +0100)]
commands: s/_LIMITING_/_LIMIT_/g and s/_limiting_/_limit_/g
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 08:47:40 +0000 (09:47 +0100)]
commands: simplify lxc_cmd_get_cgroup_ctx()
Instead of allowing individual hierarchy fd retrieval through
lxc_cmd_get_cgroup_ctx() let's add a dedicated method instead.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 08:46:07 +0000 (09:46 +0100)]
commands: fix alignment for lxc_cmd_get_cgroup_ctx()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 08:41:32 +0000 (09:41 +0100)]
cgroups: handle fallback gracefully
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 08:37:13 +0000 (09:37 +0100)]
cgroups: make use of ERRNO_IS_NOT_SUPPORTED()
This will hopefully prevent backwards compatibility fallback errors.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 08:19:12 +0000 (09:19 +0100)]
error_utils: copy over Lennart's IN_SET()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 08:17:03 +0000 (09:17 +0100)]
commands: tweak return values
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 08:16:09 +0000 (09:16 +0100)]
error_utils: move error helper to separate header
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 07:58:56 +0000 (08:58 +0100)]
cgroups: simple variable reordering
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Stéphane Graber [Wed, 24 Feb 2021 01:17:52 +0000 (20:17 -0500)]
Merge pull request #3692 from brauner/2021-02-23/fixes
build fix & cgroup braino
Christian Brauner [Wed, 24 Feb 2021 00:53:05 +0000 (01:53 +0100)]
attach: be paranoid about file descriptors
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 00:26:22 +0000 (01:26 +0100)]
cgroups: fix braino during controller list creation
Co-mounted controllers are conventionally separated by ",".
Fixes: https://jenkins.linuxcontainers.org/job/lxd-github-commit/1905/arch=amd64,backend=dir,compiler=golang-1.15/consoleFull
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Wed, 24 Feb 2021 00:01:17 +0000 (01:01 +0100)]
commands: remove faulty use of access attribute
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Stéphane Graber [Tue, 23 Feb 2021 21:53:23 +0000 (16:53 -0500)]
Merge pull request #3691 from brauner/2021-02-23/fixes
Fix issues reported by Coverity
Christian Brauner [Tue, 23 Feb 2021 21:10:56 +0000 (22:10 +0100)]
cgroups: fix error checking
Fixes: Coverity 1473310
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 21:08:48 +0000 (22:08 +0100)]
af_unix: prevent oob writes
Fixes: Coverity 1473309
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 21:07:11 +0000 (22:07 +0100)]
commands: only deref once
Fixes: Coverity 1473308
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Stéphane Graber [Tue, 23 Feb 2021 20:49:38 +0000 (15:49 -0500)]
Merge pull request #3690 from brauner/2021-02-21/fixes
attach: improve attaching of new clients to old servers
Christian Brauner [Tue, 23 Feb 2021 20:06:56 +0000 (21:06 +0100)]
commands: handle old clients for LXC_CMD_GET_CGROUP_CTX
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 20:04:41 +0000 (21:04 +0100)]
attach: handle new and old clients
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 20:00:22 +0000 (21:00 +0100)]
attach: make fd sending more uniform
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 19:48:53 +0000 (20:48 +0100)]
terminal: dumb logging down
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Stéphane Graber [Tue, 23 Feb 2021 20:08:04 +0000 (15:08 -0500)]
Merge pull request #3689 from brauner/2021-02-21/fixes
cgroups: introduce fd-only cgroup attach via LXC_CMD_GET_CGROUP_CTX
Christian Brauner [Tue, 23 Feb 2021 19:13:29 +0000 (20:13 +0100)]
attach: fix namespace preservation
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 18:31:29 +0000 (19:31 +0100)]
commands: verify expected file descriptors were sent
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 18:10:38 +0000 (19:10 +0100)]
commands: handle older clients gracefully
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 18:05:09 +0000 (19:05 +0100)]
attach: remove additional newline
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 18:00:42 +0000 (19:00 +0100)]
af_unix: add comment about cast
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 17:59:07 +0000 (18:59 +0100)]
attach: fix unsupported namespaces
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 15:21:55 +0000 (16:21 +0100)]
commands: lxc_cmd_add_state_client_callback()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 14:06:33 +0000 (15:06 +0100)]
commands: handle older clients elegantly
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 13:22:22 +0000 (14:22 +0100)]
commands: send ENOSYS response
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 13:01:59 +0000 (14:01 +0100)]
cgroups: introduce fd-only cgroup attach
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 13:00:54 +0000 (14:00 +0100)]
commands: introduce LXC_CMD_GET_CGROUP_CTX
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 12:58:39 +0000 (13:58 +0100)]
utils: add copy_struct_to_client()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 12:58:13 +0000 (13:58 +0100)]
log: add syswarn_set()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 07:45:32 +0000 (08:45 +0100)]
utils: add copy_struct_from_client()
Which is our variant of copy_struct_from_user() that Aleksa and I added to the
kernel.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Tue, 23 Feb 2021 07:45:21 +0000 (08:45 +0100)]
macro: add min() macro
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 21:45:36 +0000 (22:45 +0100)]
cgroups: allow cgroup fd batch retrieval
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 19:00:18 +0000 (20:00 +0100)]
commands: add LXC_CMD_GET_CGROUP_FD
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 20:53:06 +0000 (21:53 +0100)]
commands: introduce rsp_many_fds()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 20:51:19 +0000 (21:51 +0100)]
commands: introduce rsp_one_fd()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 18:01:45 +0000 (19:01 +0100)]
commands: introduce lxc_cmd_rsp_send_reap()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 17:24:49 +0000 (18:24 +0100)]
commands: be more explicit during command processing
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 14:28:07 +0000 (15:28 +0100)]
state: _never_ return NULL from lxc_state2str()
Cc: Thomas Parrott <thomas.parrott@canonical.com>
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 12:00:16 +0000 (13:00 +0100)]
cgroups: add cgroup_fds() helper
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 11:39:13 +0000 (12:39 +0100)]
af_unix: improve SCM_RIGHTS file descriptor retrieval
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Christian Brauner [Mon, 22 Feb 2021 11:25:52 +0000 (12:25 +0100)]
commands: tweak validate_string_request()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>