return unlink(nsgroup);
}
-static int lxc_cgroup_path_get(char **path, const char *name)
+int lxc_cgroup_path_get(char **path, const char *name)
{
char cgroup[MAXPATHLEN];
int lxc_rename_nsgroup(const char *name, struct lxc_handler *handler);
int lxc_link_nsgroup(const char *name, const char *nsgroup);
int lxc_unlink_nsgroup(const char *name);
+int lxc_cgroup_path_get(char **path, const char *name);
#endif
static int freeze_unfreeze(const char *name, int freeze)
{
+ char *nsgroup;
char freezer[MAXPATHLEN], *f;
- int fd, ret = -1;
+ int fd, ret;
- snprintf(freezer, MAXPATHLEN,
- LXCPATH "/%s/nsgroup/freezer.state", name);
+ ret = lxc_cgroup_path_get(&nsgroup, name);
+ if (ret)
+ return -1;
+
+ snprintf(freezer, MAXPATHLEN, "%s/freezer.state", nsgroup);
fd = open(freezer, O_WRONLY);
if (fd < 0) {
if (ret)
SYSERROR("failed to write to '%s'", freezer);
- return 0;
+ return ret;
}
int lxc_freeze(const char *name)