From f85d2385c03eaa1e1a930b1be39674726c48eaae Mon Sep 17 00:00:00 2001 From: Christian Brauner Date: Thu, 25 Feb 2021 10:19:54 +0100 Subject: [PATCH] commands: portlxc_cmd_get_cgroup_path_do() to new helpers Signed-off-by: Christian Brauner --- src/lxc/commands.c | 35 ++++++++++++++--------------------- src/lxc/commands.h | 6 +++--- 2 files changed, 17 insertions(+), 24 deletions(-) diff --git a/src/lxc/commands.c b/src/lxc/commands.c index 3d1fd5ad2..e52d01c52 100644 --- a/src/lxc/commands.c +++ b/src/lxc/commands.c @@ -781,23 +781,16 @@ static int lxc_cmd_get_clone_flags_callback(int fd, struct lxc_cmd_req *req, } static char *lxc_cmd_get_cgroup_path_do(const char *name, const char *lxcpath, - const char *subsystem, + const char *controller, lxc_cmd_t command) { bool stopped = false; - struct lxc_cmd_rr cmd = { - .req = { - .cmd = command, - .data = subsystem, - .datalen = 0, - }, - }; int ret; + struct lxc_cmd_rr cmd; - cmd.req.data = subsystem; - cmd.req.datalen = 0; - if (subsystem) - cmd.req.datalen = strlen(subsystem) + 1; + lxc_cmd_init(&cmd, command); + if (controller) + lxc_cmd_data(&cmd, strlen(controller) + 1, controller); ret = lxc_cmd(name, &cmd, &stopped, lxcpath, NULL); if (ret < 0) @@ -813,7 +806,7 @@ static char *lxc_cmd_get_cgroup_path_do(const char *name, const char *lxcpath, * socket, sending us an EOF. */ return lxc_cmd_get_cgroup_path_do(name, lxcpath, - subsystem, + controller, LXC_CMD_GET_CGROUP); } return NULL; @@ -827,41 +820,41 @@ static char *lxc_cmd_get_cgroup_path_do(const char *name, const char *lxcpath, /* * lxc_cmd_get_cgroup_path: Calculate a container's cgroup path for a - * particular subsystem. This is the cgroup path relative to the root + * particular controller. This is the cgroup path relative to the root * of the cgroup filesystem. * * @name : name of container to connect to * @lxcpath : the lxcpath in which the container is running - * @subsystem : the subsystem being asked about + * @controller : the controller being asked about * * Returns the path on success, NULL on failure. The caller must free() the * returned path. */ char *lxc_cmd_get_cgroup_path(const char *name, const char *lxcpath, - const char *subsystem) + const char *controller) { - return lxc_cmd_get_cgroup_path_do(name, lxcpath, subsystem, + return lxc_cmd_get_cgroup_path_do(name, lxcpath, controller, LXC_CMD_GET_CGROUP); } /* * lxc_cmd_get_limit_cgroup_path: Calculate a container's limit cgroup - * path for a particular subsystem. This is the cgroup path relative to the + * path for a particular controller. This is the cgroup path relative to the * root of the cgroup filesystem. This may be the same as the path returned by * lxc_cmd_get_cgroup_path if the container doesn't have a limit path prefix * set. * * @name : name of container to connect to * @lxcpath : the lxcpath in which the container is running - * @subsystem : the subsystem being asked about + * @controller : the controller being asked about * * Returns the path on success, NULL on failure. The caller must free() the * returned path. */ char *lxc_cmd_get_limit_cgroup_path(const char *name, const char *lxcpath, - const char *subsystem) + const char *controller) { - return lxc_cmd_get_cgroup_path_do(name, lxcpath, subsystem, + return lxc_cmd_get_cgroup_path_do(name, lxcpath, controller, LXC_CMD_GET_LIMIT_CGROUP); } diff --git a/src/lxc/commands.h b/src/lxc/commands.h index 2bcca011a..3c2953f0d 100644 --- a/src/lxc/commands.h +++ b/src/lxc/commands.h @@ -102,10 +102,10 @@ __hidden extern int lxc_cmd_get_tty_fd(const char *name, int *ttynum, int *fd, const char *lxcpath); /* * Get the 'real' cgroup path (as seen in /proc/self/cgroup) for a container - * for a particular subsystem + * for a particular controller */ __hidden extern char *lxc_cmd_get_cgroup_path(const char *name, const char *lxcpath, - const char *subsystem); + const char *controller); __hidden extern int lxc_cmd_get_clone_flags(const char *name, const char *lxcpath); __hidden extern char *lxc_cmd_get_config_item(const char *name, const char *item, const char *lxcpath); @@ -164,7 +164,7 @@ __hidden extern int lxc_cmd_get_cgroup_fd(const char *name, const char *lxcpath, struct cgroup_fd *ret_fd); __hidden extern char *lxc_cmd_get_limit_cgroup_path(const char *name, const char *lxcpath, - const char *subsystem); + const char *controller); __hidden extern int lxc_cmd_get_limit_cgroup2_fd(const char *name, const char *lxcpath); __hidden extern int lxc_cmd_get_limit_cgroup_fd(const char *name, -- 2.47.2