]> git.proxmox.com Git - mirror_lxcfs.git/blob - cgfs.h
Don't hardcode strings in testsuites
[mirror_lxcfs.git] / cgfs.h
1 #include <stdbool.h>
2
3 bool cgfs_setup_controllers(void);
4 char *find_mounted_controller(const char *controller);
5 char *must_copy_string(const char *str);
6
7 bool cgfs_set_value(const char *controller, const char *cgroup, const char *file,
8 const char *value);
9 int cgfs_create(const char *controller, const char *cg, uid_t uid, gid_t gid);
10 bool cgfs_remove(const char *controller, const char *cg);
11 bool cgfs_chmod_file(const char *controller, const char *file, mode_t mode);
12 int cgfs_chown_file(const char *controller, const char *cg, uid_t uid, gid_t gid);
13 FILE *open_pids_file(const char *controller, const char *cgroup);
14 bool cgfs_list_children(const char *controller, const char *cgroup, char ***list);
15 bool cgfs_get_value(const char *controller, const char *cgroup, const char *file,
16 char **value);
17 bool cgfs_get_value(const char *controller, const char *cgroup, const char *file,
18 char **value);
19
20 /*
21 * hierarchies, i.e. 'cpu,cpuacct'
22 */
23 char **hierarchies;
24 int num_hierarchies;
25
26 struct cgfs_files {
27 char *name;
28 uint32_t uid, gid;
29 uint32_t mode;
30 };
31 void free_key(struct cgfs_files *k);
32 void free_keys(struct cgfs_files **keys);
33
34 struct cgfs_files *cgfs_get_key(const char *controller, const char *cgroup, const char *file);
35 bool cgfs_list_keys(const char *controller, const char *cgroup, struct cgfs_files ***keys);
36 bool is_child_cgroup(const char *controller, const char *cgroup, const char *f);