Commit | Line | Data |
---|---|---|
60b6c79c MD |
1 | #ifndef _RUNAS_H |
2 | #define _RUNAS_H | |
3 | ||
4 | /* | |
5 | * Copyright (C) 2011 - David Goulet <david.goulet@polymtl.ca> | |
6 | * Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | |
7 | * | |
d14d33bf AM |
8 | * This program is free software; you can redistribute it and/or modify |
9 | * it under the terms of the GNU General Public License, version 2 only, | |
10 | * as published by the Free Software Foundation. | |
60b6c79c | 11 | * |
d14d33bf AM |
12 | * This program is distributed in the hope that it will be useful, but WITHOUT |
13 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
14 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | |
15 | * more details. | |
60b6c79c | 16 | * |
d14d33bf AM |
17 | * You should have received a copy of the GNU General Public License along |
18 | * with this program; if not, write to the Free Software Foundation, Inc., | |
19 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |
60b6c79c MD |
20 | */ |
21 | ||
3446f606 | 22 | #include <sys/types.h> |
60b6c79c | 23 | #include <unistd.h> |
9ef70f87 | 24 | #include <pthread.h> |
60b6c79c | 25 | |
c18250f2 | 26 | LTTNG_HIDDEN |
e11d277b | 27 | int run_as_mkdir_recursive(const char *path, mode_t mode, uid_t uid, gid_t gid); |
c18250f2 | 28 | LTTNG_HIDDEN |
e11d277b | 29 | int run_as_mkdir(const char *path, mode_t mode, uid_t uid, gid_t gid); |
c18250f2 | 30 | LTTNG_HIDDEN |
e11d277b | 31 | int run_as_open(const char *path, int flags, mode_t mode, uid_t uid, gid_t gid); |
c18250f2 | 32 | LTTNG_HIDDEN |
4628484a | 33 | int run_as_unlink(const char *path, uid_t uid, gid_t gid); |
c18250f2 | 34 | LTTNG_HIDDEN |
7567352f | 35 | int run_as_rmdir_recursive(const char *path, uid_t uid, gid_t gid); |
60b6c79c | 36 | |
7567352f MD |
37 | /* Backward compat. */ |
38 | static inline int run_as_recursive_rmdir(const char *path, uid_t uid, gid_t gid) | |
39 | { | |
40 | return run_as_rmdir_recursive(path, uid, gid); | |
41 | } | |
42 | ||
c18250f2 | 43 | LTTNG_HIDDEN |
7567352f | 44 | int run_as_create_worker(char *procname); |
c18250f2 | 45 | LTTNG_HIDDEN |
7567352f | 46 | void run_as_destroy_worker(void); |
9ef70f87 | 47 | |
60b6c79c | 48 | #endif /* _RUNAS_H */ |