diff options
author | Lennart Poettering <lennart@poettering.net> | 2010-06-21 23:27:18 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2010-06-21 23:27:18 +0200 |
commit | 8c6db8336536916d0476ff8233e0abf40a2f6aab (patch) | |
tree | 66ea4c87f407d9ed24eed9539cf9a5275045add2 /src/cgroup-util.h | |
parent | 96551bae6107936a4576b9b4b391abbc9963bdfe (diff) |
pam: implement systemd PAM module and generelize cgroup API for that a bit
Diffstat (limited to 'src/cgroup-util.h')
-rw-r--r-- | src/cgroup-util.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/cgroup-util.h b/src/cgroup-util.h new file mode 100644 index 0000000000..4ada71bc17 --- /dev/null +++ b/src/cgroup-util.h @@ -0,0 +1,54 @@ +/*-*- Mode: C; c-basic-offset: 8 -*-*/ + +#ifndef foocgrouputilhfoo +#define foocgrouputilhfoo + +/*** + This file is part of systemd. + + Copyright 2010 Lennart Poettering + + systemd is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + systemd is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with systemd; If not, see <http://www.gnu.org/licenses/>. +***/ + +#include <sys/types.h> + +int cg_translate_error(int error, int _errno); + +int cg_kill(const char *controller, const char *path, int sig, bool ignore_self); +int cg_kill_recursive(const char *controller, const char *path, int sig, bool ignore_self); +int cg_kill_recursive_and_wait(const char *controller, const char *path); + +int cg_migrate(const char *controller, const char *from, const char *to, bool ignore_self); +int cg_migrate_recursive(const char *controller, const char *from, const char *to, bool ignore_self); + +int cg_get_path(const char *controller, const char *path, const char *suffix, char **fs); +int cg_get_by_pid(const char *controller, pid_t pid, char **path); + +int cg_trim(const char *controller, const char *path, bool delete_root); +int cg_delete(const char *controller, const char *path); + +int cg_create(const char *controller, const char *path); +int cg_attach(const char *controller, const char *path, pid_t pid); +int cg_create_and_attach(const char *controller, const char *path, pid_t pid); + +int cg_set_group_access(const char *controller, const char *path, mode_t mode, uid_t uid, gid_t gid); +int cg_set_task_access(const char *controller, const char *path, mode_t mode, uid_t uid, gid_t gid); + +int cg_install_release_agent(const char *controller, const char *agent); + +int cg_is_empty(const char *controller, const char *path, bool ignore_self); +int cg_is_empty_recursive(const char *controller, const char *path, bool ignore_self); + +#endif |