creds: fix cat with encrypted credentials

Fixes: https://github.com/systemd/systemd/issues/34547
This commit is contained in:
Simon Pilkington
2024-09-25 11:25:48 +02:00
parent 20d00d1f3c
commit 32951fe4de
2 changed files with 7 additions and 3 deletions
+5 -1
View File
@@ -434,10 +434,14 @@ static int verb_cat(int argc, char **argv, void *userdata) {
if (!d) /* Not set */
continue;
ReadFullFileFlags flags = READ_FULL_FILE_SECURE|READ_FULL_FILE_WARN_WORLD_READABLE;
if (encrypted)
flags |= READ_FULL_FILE_UNBASE64;
r = read_full_file_full(
dirfd(d), *cn,
UINT64_MAX, SIZE_MAX,
READ_FULL_FILE_SECURE|READ_FULL_FILE_WARN_WORLD_READABLE,
flags,
NULL,
(char**) &data, &size);
if (r == -ENOENT) /* Not found */