actions: introduce action group
[lttng-tools.git] / src / common / runas.h
index 82737177485b43c381c3834a2c577c367113f61a..619d3d0b3620fde2d6b3fafdc687dda4cbc3e77a 100644 (file)
@@ -2,27 +2,19 @@
 #define _RUNAS_H
 
 /*
- * Copyright (C) 2011 David Goulet <david.goulet@polymtl.ca>
- *                      Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+ * Copyright (C) 2011 David Goulet <david.goulet@polymtl.ca>
+ * Copyright (C) 2011 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License, version 2 only,
- * as published by the Free Software Foundation.
+ * SPDX-License-Identifier: GPL-2.0-only
  *
- * This program 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 this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
 #include <stdint.h>
 #include <sys/types.h>
 #include <unistd.h>
 
+#include <common/macros.h>
+
 /*
  * The run-as process is launched by forking without an exec*() call. This means
  * that any resource allocated before the run-as worker is launched should be
@@ -51,9 +43,25 @@ int run_as_mkdirat(int dirfd, const char *path, mode_t mode,
 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_openat(int dirfd, const char *filename, 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);
 LTTNG_HIDDEN
-int run_as_rmdir_recursive(const char *path, uid_t uid, gid_t gid);
+int run_as_unlinkat(int dirfd, const char *filename, uid_t uid, gid_t gid);
+LTTNG_HIDDEN
+int run_as_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, int flags);
+LTTNG_HIDDEN
+int run_as_rmdirat(int dirfd, const char *path, uid_t uid, gid_t gid);
+LTTNG_HIDDEN
+int run_as_rmdirat_recursive(int dirfd, const char *path, uid_t uid, gid_t gid, int flags);
+LTTNG_HIDDEN
+int run_as_rename(const char *old, const char *new, uid_t uid, gid_t gid);
+LTTNG_HIDDEN
+int run_as_renameat(int old_dirfd, const char *old,
+               int new_dirfd, const char *new, uid_t uid, gid_t gid);
 LTTNG_HIDDEN
 int run_as_extract_elf_symbol_offset(int fd, const char* function,
                uid_t uid, gid_t gid, uint64_t *offset);
This page took 0.024217 seconds and 5 git commands to generate.