diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2020-11-12 16:30:06 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-12 16:30:06 +0900 |
commit | 9429ee6a89772d96ad3340b730bc3ca3ba8f0cc7 (patch) | |
tree | 05cd26ed493b6f4b9129eeff1fe258340dff68c3 /src/basic | |
parent | ca121e20c42219e3bc4e5cb63dcc96cc5eae2879 (diff) | |
parent | 4d5f52e77e1978a4f07fca2a1ecae45d5c5979c1 (diff) | |
download | systemd-9429ee6a89772d96ad3340b730bc3ca3ba8f0cc7.tar.gz |
Merge pull request #17567 from keszybz/various-small-cleanups
Various small cleanups
Diffstat (limited to 'src/basic')
-rw-r--r-- | src/basic/env-util.c | 12 | ||||
-rw-r--r-- | src/basic/env-util.h | 3 | ||||
-rw-r--r-- | src/basic/fileio.c | 8 | ||||
-rw-r--r-- | src/basic/fileio.h | 4 |
4 files changed, 21 insertions, 6 deletions
diff --git a/src/basic/env-util.c b/src/basic/env-util.c index bf191044c0..a84863ff22 100644 --- a/src/basic/env-util.c +++ b/src/basic/env-util.c @@ -747,3 +747,15 @@ int getenv_bool_secure(const char *p) { return parse_boolean(e); } + +int set_unset_env(const char *name, const char *value, bool overwrite) { + int r; + + if (value) + r = setenv(name, value, overwrite); + else + r = unsetenv(name); + if (r < 0) + return -errno; + return 0; +} diff --git a/src/basic/env-util.h b/src/basic/env-util.h index a37603dbd8..6684b3350f 100644 --- a/src/basic/env-util.h +++ b/src/basic/env-util.h @@ -52,3 +52,6 @@ char *strv_env_get(char **x, const char *n) _pure_; int getenv_bool(const char *p); int getenv_bool_secure(const char *p); + +/* Like setenv, but calls unsetenv if value == NULL. */ +int set_unset_env(const char *name, const char *value, bool overwrite); diff --git a/src/basic/fileio.c b/src/basic/fileio.c index 71a2654507..973756c891 100644 --- a/src/basic/fileio.c +++ b/src/basic/fileio.c @@ -117,7 +117,7 @@ int write_string_stream_ts( FILE *f, const char *line, WriteStringFileFlags flags, - struct timespec *ts) { + const struct timespec *ts) { bool needs_nl; int r, fd; @@ -161,7 +161,7 @@ int write_string_stream_ts( return r; if (ts) { - struct timespec twice[2] = {*ts, *ts}; + const struct timespec twice[2] = {*ts, *ts}; if (futimens(fd, twice) < 0) return -errno; @@ -174,7 +174,7 @@ static int write_string_file_atomic( const char *fn, const char *line, WriteStringFileFlags flags, - struct timespec *ts) { + const struct timespec *ts) { _cleanup_fclose_ FILE *f = NULL; _cleanup_free_ char *p = NULL; @@ -221,7 +221,7 @@ int write_string_file_ts( const char *fn, const char *line, WriteStringFileFlags flags, - struct timespec *ts) { + const struct timespec *ts) { _cleanup_fclose_ FILE *f = NULL; int q, r, fd; diff --git a/src/basic/fileio.h b/src/basic/fileio.h index b34ed5e88b..0886354cbc 100644 --- a/src/basic/fileio.h +++ b/src/basic/fileio.h @@ -48,11 +48,11 @@ 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, struct timespec *ts); +int write_string_stream_ts(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); } -int write_string_file_ts(const char *fn, const char *line, WriteStringFileFlags flags, struct timespec *ts); +int write_string_file_ts(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_ts(fn, line, flags, NULL); } |