]>
git.ipfire.org Git - thirdparty/systemd.git/blob - src/basic/mkdir.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
6 typedef enum MkdirFlags
{
7 MKDIR_FOLLOW_SYMLINK
= 1 << 0,
8 MKDIR_WARN_MODE
= 1 << 1,
11 int mkdir_errno_wrapper(const char *pathname
, mode_t mode
);
12 int mkdirat_errno_wrapper(int dirfd
, const char *pathname
, mode_t mode
);
13 int mkdir_safe(const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
);
14 int mkdir_parents(const char *path
, mode_t mode
);
15 int mkdir_parents_safe(const char *prefix
, const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
);
16 int mkdir_p(const char *path
, mode_t mode
);
17 int mkdir_p_safe(const char *prefix
, const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
);
19 /* mandatory access control(MAC) versions */
20 int mkdir_safe_label(const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
);
21 int mkdir_parents_label(const char *path
, mode_t mod
);
22 int mkdir_p_label(const char *path
, mode_t mode
);
25 typedef int (*mkdir_func_t
)(const char *pathname
, mode_t mode
);
26 int mkdir_safe_internal(const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
, mkdir_func_t _mkdir
);
27 int mkdir_parents_internal(const char *prefix
, const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
, mkdir_func_t _mkdir
);
28 int mkdir_p_internal(const char *prefix
, const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
, mkdir_func_t _mkdir
);