shared: clean up mkdir.h/label.h situation

Previously the mkdir_label() family of calls was implemented in
src/shared/mkdir-label.c but its functions partly declared ins
src/shared/label.h and partly in src/basic/mkdir.h (!!). That's weird
(and wrong).

Let's clean this up, and add a proper mkdir-label.h matching the .c
file.
This commit is contained in:
Lennart Poettering
2021-11-16 17:03:28 +01:00
parent ed304a5d73
commit 35cd0ba516
58 changed files with 80 additions and 77 deletions
+1 -1
View File
@@ -33,7 +33,7 @@
#include "macro.h"
#include "memory-util.h"
#include "missing_syscall.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "process-util.h"
#include "random-util.h"
#include "signal-util.h"
+1
View File
@@ -20,6 +20,7 @@
#include "io-util.h"
#include "macro.h"
#include "missing_syscall.h"
#include "mkdir-label.h"
#include "mountpoint-util.h"
#include "nulstr-util.h"
#include "rm-rf.h"
+1
View File
@@ -8,6 +8,7 @@
#include "dev-setup.h"
#include "label.h"
#include "log.h"
#include "mkdir-label.h"
#include "nulstr-util.h"
#include "path-util.h"
#include "umask-util.h"
+1 -1
View File
@@ -46,7 +46,7 @@
#include "hostname-setup.h"
#include "id128-util.h"
#include "import-util.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "mount-util.h"
#include "mountpoint-util.h"
#include "namespace-util.h"
+2 -2
View File
@@ -13,7 +13,7 @@
#include "generator.h"
#include "log.h"
#include "macro.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "path-util.h"
#include "special.h"
#include "specifier.h"
@@ -63,7 +63,7 @@ int generator_add_symlink(const char *dir, const char *dst, const char *dep_type
from = path_is_absolute(src) ? src : strjoina("../", src);
to = strjoina(dir, "/", dst, ".", dep_type, "/", basename(src));
mkdir_parents_label(to, 0755);
(void) mkdir_parents_label(to, 0755);
if (symlink(from, to) < 0)
if (errno != EEXIST)
return log_error_errno(errno, "Failed to create symlink \"%s\": %m", to);
+1 -1
View File
@@ -12,7 +12,7 @@
#include "hwdb-internal.h"
#include "hwdb-util.h"
#include "label.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "nulstr-util.h"
#include "path-util.h"
#include "sort-util.h"
+2 -2
View File
@@ -26,7 +26,7 @@
#include "locale-util.h"
#include "log.h"
#include "macro.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "path-lookup.h"
#include "path-util.h"
#include "rm-rf.h"
@@ -461,7 +461,7 @@ static int create_symlink(
* the right place, or negative on error.
*/
mkdir_parents_label(new_path, 0755);
(void) mkdir_parents_label(new_path, 0755);
if (symlink(old_path, new_path) >= 0) {
unit_file_changes_add(changes, n_changes, UNIT_FILE_SYMLINK, new_path, old_path);
-6
View File
@@ -15,12 +15,6 @@ static inline int label_fix(const char *path, LabelFixFlags flags) {
return label_fix_container(path, path, flags);
}
int mkdirat_label(int dirfd, const char *path, mode_t mode);
static inline int mkdir_label(const char *path, mode_t mode) {
return mkdirat_label(AT_FDCWD, path, mode);
}
int symlink_label(const char *old_path, const char *new_path);
int symlink_atomic_label(const char *from, const char *to);
int mknod_label(const char *pathname, mode_t mode, dev_t dev);
+1
View File
@@ -209,6 +209,7 @@ shared_sources = files('''
macvlan-util.h
main-func.h
mkdir-label.c
mkdir-label.h
mkfs-util.c
mkfs-util.h
module-util.h
+1 -8
View File
@@ -1,13 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>
#include "label.h"
#include "macro.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "selinux-util.h"
#include "smack-util.h"
#include "user-util.h"
+17
View File
@@ -0,0 +1,17 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#pragma once
#include <fcntl.h>
#include <sys/types.h>
#include "mkdir.h"
int mkdirat_label(int dirfd, const char *path, mode_t mode);
static inline int mkdir_label(const char *path, mode_t mode) {
return mkdirat_label(AT_FDCWD, path, mode);
}
int mkdir_safe_label(const char *path, mode_t mode, uid_t uid, gid_t gid, MkdirFlags flags);
int mkdir_parents_label(const char *path, mode_t mod);
int mkdir_p_label(const char *path, mode_t mode);
+1 -1
View File
@@ -20,7 +20,7 @@
#include "label.h"
#include "log.h"
#include "macro.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "mount-setup.h"
#include "mount-util.h"
#include "mountpoint-util.h"
+1 -1
View File
@@ -22,7 +22,7 @@
#include "libmount-util.h"
#include "missing_mount.h"
#include "missing_syscall.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "mount-util.h"
#include "mountpoint-util.h"
#include "namespace-util.h"
+1 -1
View File
@@ -14,7 +14,7 @@
#include "log.h"
#include "macro.h"
#include "missing_socket.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "selinux-util.h"
#include "socket-util.h"
#include "umask-util.h"
+1 -1
View File
@@ -13,7 +13,7 @@
#include "fd-util.h"
#include "log.h"
#include "missing_syscall.h"
#include "mkdir.h"
#include "mkdir-label.h"
#include "mount-util.h"
#include "mountpoint-util.h"
#include "path-util.h"