]>
git.ipfire.org Git - thirdparty/systemd.git/blob - src/basic/mkdir.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
5 Copyright © 2013 Kay Sievers
10 typedef enum MkdirFlags
{
11 MKDIR_FOLLOW_SYMLINK
= 1 << 0,
12 MKDIR_WARN_MODE
= 1 << 1,
15 int mkdir_errno_wrapper(const char *pathname
, mode_t mode
);
16 int mkdir_safe(const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
);
17 int mkdir_parents(const char *path
, mode_t mode
);
18 int mkdir_p(const char *path
, mode_t mode
);
20 /* mandatory access control(MAC) versions */
21 int mkdir_safe_label(const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
);
22 int mkdir_parents_label(const char *path
, mode_t mode
);
23 int mkdir_p_label(const char *path
, mode_t mode
);
26 typedef int (*mkdir_func_t
)(const char *pathname
, mode_t mode
);
27 int mkdir_safe_internal(const char *path
, mode_t mode
, uid_t uid
, gid_t gid
, MkdirFlags flags
, mkdir_func_t _mkdir
);
28 int mkdir_parents_internal(const char *prefix
, const char *path
, mode_t mode
, mkdir_func_t _mkdir
);
29 int mkdir_p_internal(const char *prefix
, const char *path
, mode_t mode
, mkdir_func_t _mkdir
);