]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
cryptenroll: Fix reading keyfile from socket
authorFelix Riemann <felix.riemann@sma.de>
Fri, 2 Feb 2024 17:08:52 +0000 (18:08 +0100)
committerLuca Boccassi <luca.boccassi@gmail.com>
Tue, 6 Feb 2024 12:44:42 +0000 (12:44 +0000)
systemd-cryptenroll uses the READ_FULL_FILE_CONNECT_SOCKET flag when
reading the keyfile to also allow reading it from a socket. But it also
sets the offset to 0, causing an unnecessary seek to the beginning of
the newly opened keyfile and disables socket support again, as these do
not support seeking.

Disable seeking entirely to remove the unneeded seek and restore support
for reading the keyfile from a socket again as with systemd-cryptsetup.

src/cryptenroll/cryptenroll.c

index e1fdc3f5f02448099185f2bd19da9a8fd38c6de1..79d06e7414e536af6284bde0ab37a6f9666955d5 100644 (file)
@@ -601,7 +601,7 @@ static int load_volume_key_keyfile(
         r = read_full_file_full(
                         AT_FDCWD,
                         arg_unlock_keyfile,
-                        0,
+                        UINT64_MAX,
                         SIZE_MAX,
                         READ_FULL_FILE_SECURE|READ_FULL_FILE_WARN_WORLD_READABLE|READ_FULL_FILE_CONNECT_SOCKET,
                         NULL,