summaryrefslogtreecommitdiffstats
path: root/src/shared/volatile-util.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2018-12-19 14:52:26 +0100
committerLennart Poettering <lennart@poettering.net>2019-03-01 14:11:07 +0100
commit68abaa09299445ad63881bca070c0069355c2ebc (patch)
tree06a07a6a87b0894951b8d65c06892fb635fd9676 /src/shared/volatile-util.c
parentnspawn: rework how arg_read_only is initialized in --volatile= mode (diff)
downloadsystemd-68abaa09299445ad63881bca070c0069355c2ebc.tar.xz
systemd-68abaa09299445ad63881bca070c0069355c2ebc.zip
volatile-util: tweak query_volatile_mode() a bit
Diffstat (limited to 'src/shared/volatile-util.c')
-rw-r--r--src/shared/volatile-util.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/shared/volatile-util.c b/src/shared/volatile-util.c
index 917ebfa4e4..5ca6ab3376 100644
--- a/src/shared/volatile-util.c
+++ b/src/shared/volatile-util.c
@@ -12,27 +12,28 @@
int query_volatile_mode(VolatileMode *ret) {
_cleanup_free_ char *mode = NULL;
- VolatileMode m = VOLATILE_NO;
int r;
r = proc_cmdline_get_key("systemd.volatile", PROC_CMDLINE_VALUE_OPTIONAL, &mode);
if (r < 0)
return r;
- if (r == 0)
- goto finish;
+ if (r == 0) {
+ *ret = VOLATILE_NO;
+ return 0;
+ }
if (mode) {
+ VolatileMode m;
+
m = volatile_mode_from_string(mode);
if (m < 0)
return -EINVAL;
- } else
- m = VOLATILE_YES;
- r = 1;
+ *ret = m;
+ } else
+ *ret = VOLATILE_YES;
-finish:
- *ret = m;
- return r;
+ return 1;
}
static const char* const volatile_mode_table[_VOLATILE_MODE_MAX] = {