From 6ef06723b1de8efc6cfe4bdaee8bc39220bdcb5a Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Fri, 19 Feb 2021 16:51:18 +0100 Subject: [PATCH] Move os-util.[ch] to basic/ parse_os_release() will be used basic/hostname-util.c later on. --- src/basic/meson.build | 2 ++ src/{shared => basic}/os-util.c | 20 +++++++++++++++++++- src/{shared => basic}/os-util.h | 2 ++ src/machine/image-dbus.c | 1 + src/machine/machined-dbus.c | 1 + src/portable/portablectl.c | 2 +- src/portable/portabled-image-bus.c | 1 + src/shared/discover-image.c | 17 ----------------- src/shared/discover-image.h | 2 -- src/shared/meson.build | 2 -- 10 files changed, 27 insertions(+), 23 deletions(-) rename src/{shared => basic}/os-util.c (93%) rename src/{shared => basic}/os-util.h (96%) diff --git a/src/basic/meson.build b/src/basic/meson.build index 0b0982d5431..bacd519a867 100644 --- a/src/basic/meson.build +++ b/src/basic/meson.build @@ -170,6 +170,8 @@ basic_sources = files(''' nulstr-util.h ordered-set.c ordered-set.h + os-util.c + os-util.h parse-util.c parse-util.h path-lookup.c diff --git a/src/shared/os-util.c b/src/basic/os-util.c similarity index 93% rename from src/shared/os-util.c rename to src/basic/os-util.c index 3405c9aeaf0..e6f9f7c511c 100644 --- a/src/shared/os-util.c +++ b/src/basic/os-util.c @@ -1,7 +1,6 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ #include "alloc-util.h" -#include "discover-image.h" #include "env-file.h" #include "env-util.h" #include "fd-util.h" @@ -9,8 +8,27 @@ #include "fs-util.h" #include "macro.h" #include "os-util.h" +#include "path-util.h" #include "string-util.h" #include "strv.h" +#include "utf8.h" + +bool image_name_is_valid(const char *s) { + if (!filename_is_valid(s)) + return false; + + if (string_has_cc(s, NULL)) + return false; + + if (!utf8_is_valid(s)) + return false; + + /* Temporary files for atomically creating new files */ + if (startswith(s, ".#")) + return false; + + return true; +} int path_is_extension_tree(const char *path, const char *extension) { int r; diff --git a/src/shared/os-util.h b/src/basic/os-util.h similarity index 96% rename from src/shared/os-util.h rename to src/basic/os-util.h index bdb9e6adea9..f7789c08047 100644 --- a/src/shared/os-util.h +++ b/src/basic/os-util.h @@ -6,6 +6,8 @@ /* The *_extension_release flavours will look for /usr/lib/extension-release/extension-release.NAME * in accordance with the OS extension specification, rather than for /usr/lib/ or /etc/os-release. */ +bool image_name_is_valid(const char *s) _pure_; + int path_is_extension_tree(const char *path, const char *extension); static inline int path_is_os_tree(const char *path) { return path_is_extension_tree(path, NULL); diff --git a/src/machine/image-dbus.c b/src/machine/image-dbus.c index 539b4c802a6..309de0b116c 100644 --- a/src/machine/image-dbus.c +++ b/src/machine/image-dbus.c @@ -18,6 +18,7 @@ #include "loop-util.h" #include "missing_capability.h" #include "mount-util.h" +#include "os-util.h" #include "process-util.h" #include "raw-clone.h" #include "strv.h" diff --git a/src/machine/machined-dbus.c b/src/machine/machined-dbus.c index 08179eb4006..bb6a2bc5761 100644 --- a/src/machine/machined-dbus.c +++ b/src/machine/machined-dbus.c @@ -24,6 +24,7 @@ #include "machine-pool.h" #include "machined.h" #include "missing_capability.h" +#include "os-util.h" #include "path-util.h" #include "process-util.h" #include "stdio-util.h" diff --git a/src/portable/portablectl.c b/src/portable/portablectl.c index 278dae0e1b5..af4acc21257 100644 --- a/src/portable/portablectl.c +++ b/src/portable/portablectl.c @@ -12,7 +12,6 @@ #include "bus-wait-for-jobs.h" #include "def.h" #include "dirent-util.h" -#include "discover-image.h" #include "env-file.h" #include "fd-util.h" #include "fileio.h" @@ -20,6 +19,7 @@ #include "fs-util.h" #include "locale-util.h" #include "main-func.h" +#include "os-util.h" #include "pager.h" #include "parse-util.h" #include "path-util.h" diff --git a/src/portable/portabled-image-bus.c b/src/portable/portabled-image-bus.c index 018cc9b818a..8332332c915 100644 --- a/src/portable/portabled-image-bus.c +++ b/src/portable/portabled-image-bus.c @@ -17,6 +17,7 @@ #include "fileio.h" #include "io-util.h" #include "missing_capability.h" +#include "os-util.h" #include "portable.h" #include "portabled-bus.h" #include "portabled-image-bus.h" diff --git a/src/shared/discover-image.c b/src/shared/discover-image.c index fbce201e297..fb59d1d704a 100644 --- a/src/shared/discover-image.c +++ b/src/shared/discover-image.c @@ -1250,23 +1250,6 @@ int image_name_lock(const char *name, int operation, LockFile *ret) { return make_lock_file(p, operation, ret); } -bool image_name_is_valid(const char *s) { - if (!filename_is_valid(s)) - return false; - - if (string_has_cc(s, NULL)) - return false; - - if (!utf8_is_valid(s)) - return false; - - /* Temporary files for atomically creating new files */ - if (startswith(s, ".#")) - return false; - - return true; -} - bool image_in_search_path( ImageClass class, const char *root, diff --git a/src/shared/discover-image.h b/src/shared/discover-image.h index af67d167c49..3726e98d30c 100644 --- a/src/shared/discover-image.h +++ b/src/shared/discover-image.h @@ -76,8 +76,6 @@ int image_read_only(Image *i, bool b); const char* image_type_to_string(ImageType t) _const_; ImageType image_type_from_string(const char *s) _pure_; -bool image_name_is_valid(const char *s) _pure_; - int image_path_lock(const char *path, int operation, LockFile *global, LockFile *local); int image_name_lock(const char *name, int operation, LockFile *ret); diff --git a/src/shared/meson.build b/src/shared/meson.build index dfa3275b049..4b27a95cc23 100644 --- a/src/shared/meson.build +++ b/src/shared/meson.build @@ -198,8 +198,6 @@ shared_sources = files(''' numa-util.h openssl-util.c openssl-util.h - os-util.c - os-util.h output-mode.c output-mode.h pager.c -- 2.39.2