]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
Split out generator directory setup to a src/core/generator-setup.c
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 24 Mar 2020 11:17:43 +0000 (12:17 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 27 Mar 2020 19:12:44 +0000 (20:12 +0100)
Those functions have only one non-test user, so we can move them to src/core/.

src/core/generator-setup.c [new file with mode: 0644]
src/core/generator-setup.h [new file with mode: 0644]
src/core/manager.c
src/core/meson.build
src/shared/path-lookup.c
src/shared/path-lookup.h

diff --git a/src/core/generator-setup.c b/src/core/generator-setup.c
new file mode 100644 (file)
index 0000000..78ff590
--- /dev/null
@@ -0,0 +1,58 @@
+/* SPDX-License-Identifier: LGPL-2.1+ */
+
+#include <unistd.h>
+
+#include "generator-setup.h"
+#include "macro.h"
+#include "mkdir.h"
+#include "rm-rf.h"
+
+int lookup_paths_mkdir_generator(LookupPaths *p) {
+        int r, q;
+
+        assert(p);
+
+        if (!p->generator || !p->generator_early || !p->generator_late)
+                return -EINVAL;
+
+        r = mkdir_p_label(p->generator, 0755);
+
+        q = mkdir_p_label(p->generator_early, 0755);
+        if (q < 0 && r >= 0)
+                r = q;
+
+        q = mkdir_p_label(p->generator_late, 0755);
+        if (q < 0 && r >= 0)
+                r = q;
+
+        return r;
+}
+
+void lookup_paths_trim_generator(LookupPaths *p) {
+        assert(p);
+
+        /* Trim empty dirs */
+
+        if (p->generator)
+                (void) rmdir(p->generator);
+        if (p->generator_early)
+                (void) rmdir(p->generator_early);
+        if (p->generator_late)
+                (void) rmdir(p->generator_late);
+}
+
+void lookup_paths_flush_generator(LookupPaths *p) {
+        assert(p);
+
+        /* Flush the generated unit files in full */
+
+        if (p->generator)
+                (void) rm_rf(p->generator, REMOVE_ROOT|REMOVE_PHYSICAL);
+        if (p->generator_early)
+                (void) rm_rf(p->generator_early, REMOVE_ROOT|REMOVE_PHYSICAL);
+        if (p->generator_late)
+                (void) rm_rf(p->generator_late, REMOVE_ROOT|REMOVE_PHYSICAL);
+
+        if (p->temporary_dir)
+                (void) rm_rf(p->temporary_dir, REMOVE_ROOT|REMOVE_PHYSICAL);
+}
diff --git a/src/core/generator-setup.h b/src/core/generator-setup.h
new file mode 100644 (file)
index 0000000..9688601
--- /dev/null
@@ -0,0 +1,8 @@
+/* SPDX-License-Identifier: LGPL-2.1+ */
+#pragma once
+
+#include "path-lookup.h"
+
+int lookup_paths_mkdir_generator(LookupPaths *p);
+void lookup_paths_trim_generator(LookupPaths *p);
+void lookup_paths_flush_generator(LookupPaths *p);
index 4c59addfc8e63b048c30f4291ebbdd599f394ffa..148df8d523b1cebaacd08d19c7ab0232bb19bf12 100644 (file)
@@ -44,6 +44,7 @@
 #include "fd-util.h"
 #include "fileio.h"
 #include "fs-util.h"
+#include "generator-setup.h"
 #include "hashmap.h"
 #include "install.h"
 #include "io-util.h"
index 3586838f59b3b3a4ed3627399158593327b5bb02..0b31bb79ed03717cedaf044e98fc4803c09349fd 100644 (file)
@@ -72,6 +72,8 @@ libcore_sources = '''
         emergency-action.h
         execute.c
         execute.h
+        generator-setup.c
+        generator-setup.h
         hostname-setup.c
         hostname-setup.h
         ima-setup.c
index 2707dce7a83a0a748252b51762360669aa9fc63a..5e85b74a0528de65acb0bf055fd9b916a39e49b8 100644 (file)
@@ -6,19 +6,15 @@
 
 #include "alloc-util.h"
 #include "fs-util.h"
-#include "install.h"
 #include "log.h"
 #include "macro.h"
-#include "mkdir.h"
 #include "path-lookup.h"
 #include "path-util.h"
-#include "rm-rf.h"
 #include "stat-util.h"
 #include "string-util.h"
 #include "strv.h"
 #include "tmpfile-util.h"
 #include "user-util.h"
-#include "util.h"
 
 int xdg_user_runtime_dir(char **ret, const char *suffix) {
         const char *e;
@@ -783,56 +779,6 @@ void lookup_paths_log(LookupPaths *p) {
         }
 }
 
-int lookup_paths_mkdir_generator(LookupPaths *p) {
-        int r, q;
-
-        assert(p);
-
-        if (!p->generator || !p->generator_early || !p->generator_late)
-                return -EINVAL;
-
-        r = mkdir_p_label(p->generator, 0755);
-
-        q = mkdir_p_label(p->generator_early, 0755);
-        if (q < 0 && r >= 0)
-                r = q;
-
-        q = mkdir_p_label(p->generator_late, 0755);
-        if (q < 0 && r >= 0)
-                r = q;
-
-        return r;
-}
-
-void lookup_paths_trim_generator(LookupPaths *p) {
-        assert(p);
-
-        /* Trim empty dirs */
-
-        if (p->generator)
-                (void) rmdir(p->generator);
-        if (p->generator_early)
-                (void) rmdir(p->generator_early);
-        if (p->generator_late)
-                (void) rmdir(p->generator_late);
-}
-
-void lookup_paths_flush_generator(LookupPaths *p) {
-        assert(p);
-
-        /* Flush the generated unit files in full */
-
-        if (p->generator)
-                (void) rm_rf(p->generator, REMOVE_ROOT|REMOVE_PHYSICAL);
-        if (p->generator_early)
-                (void) rm_rf(p->generator_early, REMOVE_ROOT|REMOVE_PHYSICAL);
-        if (p->generator_late)
-                (void) rm_rf(p->generator_late, REMOVE_ROOT|REMOVE_PHYSICAL);
-
-        if (p->temporary_dir)
-                (void) rm_rf(p->temporary_dir, REMOVE_ROOT|REMOVE_PHYSICAL);
-}
-
 char **generator_binary_paths(UnitFileScope scope) {
         bool append = false; /* Add items from SYSTEMD_GENERATOR_PATH before normal directories */
         _cleanup_strv_free_ char **paths = NULL;
index b99e918144b571e059dbf74baa83447a169e5eb2..52f7a570a298048a1804e5628de30bcb27bcec18 100644 (file)
@@ -64,11 +64,6 @@ bool path_is_user_data_dir(const char *path);
 bool path_is_user_config_dir(const char *path);
 
 void lookup_paths_log(LookupPaths *p);
-
-int lookup_paths_mkdir_generator(LookupPaths *p);
-void lookup_paths_trim_generator(LookupPaths *p);
-void lookup_paths_flush_generator(LookupPaths *p);
-
 void lookup_paths_free(LookupPaths *p);
 
 char **generator_binary_paths(UnitFileScope scope);