diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2022-12-12 22:03:52 +0900 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2022-12-12 22:04:53 +0900 |
commit | e2720340e9fdf3aee2e8998dc72798de50be3630 (patch) | |
tree | e48f13e3e1f37a086acc282b9a9e8b02eb3cdcfb /src/libsystemd/sd-id128 | |
parent | 9be90c401e16cf04a9cea0b19fdefa7d0a47f056 (diff) | |
download | systemd-e2720340e9fdf3aee2e8998dc72798de50be3630.tar.gz |
sd-id128: make sd_id128_get_boot() and friend return -ENOSYS when /proc/ is not mounted
Diffstat (limited to 'src/libsystemd/sd-id128')
-rw-r--r-- | src/libsystemd/sd-id128/sd-id128.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libsystemd/sd-id128/sd-id128.c b/src/libsystemd/sd-id128/sd-id128.c index 70b1a10c74..8f9801ae37 100644 --- a/src/libsystemd/sd-id128/sd-id128.c +++ b/src/libsystemd/sd-id128/sd-id128.c @@ -15,6 +15,7 @@ #include "macro.h" #include "missing_syscall.h" #include "random-util.h" +#include "stat-util.h" #include "user-util.h" _public_ char *sd_id128_to_string(sd_id128_t id, char s[_SD_ARRAY_STATIC SD_ID128_STRING_MAX]) { @@ -146,6 +147,8 @@ _public_ int sd_id128_get_boot(sd_id128_t *ret) { if (sd_id128_is_null(saved_boot_id)) { r = id128_read("/proc/sys/kernel/random/boot_id", ID128_FORMAT_UUID, &saved_boot_id); + if (r == -ENOENT && proc_mounted() == 0) + return -ENOSYS; if (r < 0) return r; |