X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Frunas.h;h=ac1143eecf84100f3f3444b288a04ba06860bb33;hp=dc25322ccabd0f4dd7aaf05b69e14ca16f09461b;hb=3446f6068558765c6042778abaa3c43c17859283;hpb=4628484ae860b8cf506427e864c7d1933da32777 diff --git a/src/common/runas.h b/src/common/runas.h index dc25322cc..ac1143eec 100644 --- a/src/common/runas.h +++ b/src/common/runas.h @@ -19,19 +19,30 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ +#include #include #include +LTTNG_HIDDEN int run_as_mkdir_recursive(const char *path, mode_t mode, uid_t uid, gid_t gid); +LTTNG_HIDDEN int run_as_mkdir(const char *path, mode_t mode, uid_t uid, gid_t gid); +LTTNG_HIDDEN int run_as_open(const char *path, int flags, mode_t mode, uid_t uid, gid_t gid); +LTTNG_HIDDEN int run_as_unlink(const char *path, uid_t uid, gid_t gid); -int run_as_recursive_rmdir(const char *path, uid_t uid, gid_t gid); +LTTNG_HIDDEN +int run_as_rmdir_recursive(const char *path, uid_t uid, gid_t gid); -/* - * We need to lock pthread exit, which deadlocks __nptl_setxid in the - * clone. - */ -extern pthread_mutex_t lttng_libc_state_lock; +/* Backward compat. */ +static inline int run_as_recursive_rmdir(const char *path, uid_t uid, gid_t gid) +{ + return run_as_rmdir_recursive(path, uid, gid); +} + +LTTNG_HIDDEN +int run_as_create_worker(char *procname); +LTTNG_HIDDEN +void run_as_destroy_worker(void); #endif /* _RUNAS_H */