]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
fileio: clean up write_string_file() naming
authorLennart Poettering <lennart@poettering.net>
Tue, 15 Oct 2024 13:32:55 +0000 (15:32 +0200)
committerLennart Poettering <lennart@poettering.net>
Tue, 15 Oct 2024 16:20:27 +0000 (18:20 +0200)
let's rename the "_ts" flavour of these calls "_full" instead, exposing
the full functionality. And then keep two more minimal versions around:
one "_at" (which has the ts parameter suppressed, but keeps the dir_fd
one). And one without suffix (which supresses both).

Do the same for the label versions of these calls.

src/basic/fileio.c
src/basic/fileio.h
src/shared/fileio-label.c
src/shared/fileio-label.h
src/update-done/update-done.c

index 24357c1ef86faaf365ffe723eee353f35354bead..bf1603de0ea5608a1fead7032c2c4a6fbbd9422b 100644 (file)
@@ -118,7 +118,7 @@ FILE* fmemopen_unlocked(void *buf, size_t size, const char *mode) {
         return f;
 }
 
-int write_string_stream_ts(
+int write_string_stream_full(
                 FILE *f,
                 const char *line,
                 WriteStringFileFlags flags,
@@ -234,7 +234,7 @@ static int write_string_file_atomic_at(
         if (r < 0)
                 return r;
 
-        r = write_string_stream_ts(f, line, flags, ts);
+        r = write_string_stream_full(f, line, flags, ts);
         if (r < 0)
                 goto fail;
 
@@ -261,7 +261,7 @@ fail:
         return r;
 }
 
-int write_string_file_ts_at(
+int write_string_file_full(
                 int dir_fd,
                 const char *fn,
                 const char *line,
@@ -314,7 +314,7 @@ int write_string_file_ts_at(
         if (flags & WRITE_STRING_FILE_DISABLE_BUFFER)
                 setvbuf(f, NULL, _IONBF, 0);
 
-        r = write_string_stream_ts(f, line, flags, ts);
+        r = write_string_stream_full(f, line, flags, ts);
         if (r < 0)
                 goto fail;
 
index 6986ed327665ee4f85467846387a8b61f6c2c9df..dc514e3cccc0091d33c7f26e2dc5778efcd8787d 100644 (file)
@@ -51,25 +51,21 @@ DIR* take_fdopendir(int *dfd);
 FILE* open_memstream_unlocked(char **ptr, size_t *sizeloc);
 FILE* fmemopen_unlocked(void *buf, size_t size, const char *mode);
 
-int write_string_stream_ts(FILE *f, const char *line, WriteStringFileFlags flags, const struct timespec *ts);
+int write_string_stream_full(FILE *f, const char *line, WriteStringFileFlags flags, const struct timespec *ts);
 static inline int write_string_stream(FILE *f, const char *line, WriteStringFileFlags flags) {
-        return write_string_stream_ts(f, line, flags, NULL);
+        return write_string_stream_full(f, line, flags, /* ts= */ NULL);
 }
-int write_string_file_ts_at(int dir_fd, const char *fn, const char *line, WriteStringFileFlags flags, const struct timespec *ts);
-static inline int write_string_file_ts(const char *fn, const char *line, WriteStringFileFlags flags, const struct timespec *ts) {
-        return write_string_file_ts_at(AT_FDCWD, fn, line, flags, ts);
+int write_string_file_full(int dir_fd, const char *fn, const char *line, WriteStringFileFlags flags, const struct timespec *ts);
+static inline int write_string_file(const char *fn, const char *line, WriteStringFileFlags flags) {
+        return write_string_file_full(AT_FDCWD, fn, line, flags, /* ts= */ NULL);
 }
 static inline int write_string_file_at(int dir_fd, const char *fn, const char *line, WriteStringFileFlags flags) {
-        return write_string_file_ts_at(dir_fd, fn, line, flags, NULL);
-}
-static inline int write_string_file(const char *fn, const char *line, WriteStringFileFlags flags) {
-        return write_string_file_ts(fn, line, flags, NULL);
+        return write_string_file_full(dir_fd, fn, line, flags, /* ts= */ NULL);
 }
+int write_string_filef(const char *fn, WriteStringFileFlags flags, const char *format, ...) _printf_(3, 4);
 
 int write_base64_file_at(int dir_fd, const char *fn, const struct iovec *data, WriteStringFileFlags flags);
 
-int write_string_filef(const char *fn, WriteStringFileFlags flags, const char *format, ...) _printf_(3, 4);
-
 int read_one_line_file_at(int dir_fd, const char *filename, char **ret);
 static inline int read_one_line_file(const char *filename, char **ret) {
         return read_one_line_file_at(AT_FDCWD, filename, ret);
index 572b8f62ad681576d61f2dac83893c3740e955b5..39de54fa25676c875d1a97675381f7b1f5abfa33 100644 (file)
@@ -6,14 +6,14 @@
 #include "fileio.h"
 #include "selinux-util.h"
 
-int write_string_file_atomic_label_ts(const char *fn, const char *line, struct timespec *ts) {
+int write_string_file_full_label(int atfd, const char *fn, const char *line, WriteStringFileFlags flags, struct timespec *ts) {
         int r;
 
-        r = mac_selinux_create_file_prepare(fn, S_IFREG);
+        r = mac_selinux_create_file_prepare_at(atfd, fn, S_IFREG);
         if (r < 0)
                 return r;
 
-        r = write_string_file_ts(fn, line, WRITE_STRING_FILE_CREATE|WRITE_STRING_FILE_ATOMIC, ts);
+        r = write_string_file_full(atfd, fn, line, flags, ts);
 
         mac_selinux_create_file_clear();
 
index 03b4a164174b546a7b8812a13157500997122df5..5aa5c40224e7dd8d8faf5f43669221b570a757ec 100644 (file)
@@ -7,9 +7,14 @@
  * optimize linking: This way, -lselinux is needed only for the callers of these functions that need selinux, but not
  * for all */
 
-int write_string_file_atomic_label_ts(const char *fn, const char *line, struct timespec *ts);
+#include "fileio.h"
+
+int write_string_file_full_label(int atfd, const char *fn, const char *line, WriteStringFileFlags flags, struct timespec *ts);
+static inline int write_string_file_at_label(int atfd, const char *fn, const char *line, WriteStringFileFlags flags) {
+        return write_string_file_full_label(atfd, fn, line, flags, /* ts= */ NULL);
+}
 static inline int write_string_file_atomic_label(const char *fn, const char *line) {
-        return write_string_file_atomic_label_ts(fn, line, NULL);
+        return write_string_file_at_label(AT_FDCWD, fn, line, WRITE_STRING_FILE_CREATE|WRITE_STRING_FILE_ATOMIC);
 }
 
 int create_shutdown_run_nologin_or_warn(void);
index f448b3b1d173fd75c5d49599b8718bbb273cd637..436bae639b27b4d6b5b74840c74741b3edb73861 100644 (file)
@@ -29,7 +29,7 @@ static int apply_timestamp(const char *path, struct timespec *ts) {
                      timespec_load_nsec(ts)) < 0)
                 return log_oom();
 
-        r = write_string_file_atomic_label_ts(path, message, ts);
+        r = write_string_file_full_label(AT_FDCWD, path, message, WRITE_STRING_FILE_CREATE|WRITE_STRING_FILE_ATOMIC, ts);
         if (r == -EROFS)
                 log_debug_errno(r, "Cannot create \"%s\", file system is read-only.", path);
         else if (r < 0)