]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
mountfsd: allow O_NONBLOCK on image fds
authorLennart Poettering <lennart@poettering.net>
Wed, 3 Dec 2025 08:37:07 +0000 (09:37 +0100)
committerLennart Poettering <lennart@poettering.net>
Sun, 21 Dec 2025 06:04:42 +0000 (07:04 +0100)
Let's accept O_NONBLOCK on image fds. It's usually wise to open block
device with O_NONBLOCK as it means that drivers with removable media
won't block until a medium is inserted. Otherwise it has no effect. It
also has no effect when opening regular files. Since block devices and
raw devices are the only two things we accept in mountfsd, it's hence
safe to allow it.

src/mountfsd/mountwork.c

index 0e0bd964eebede0b874fa944db40d62402b7c1f8..4c321ce1c07e4489bf14e91787b8f828d8fddb41 100644 (file)
@@ -124,7 +124,7 @@ static int validate_image_fd(int fd, MountImageParameters *p) {
                         return r;
         }
 
-        fl = fd_verify_safe_flags(fd);
+        fl = fd_verify_safe_flags_full(fd, O_NONBLOCK);
         if (fl < 0)
                 return log_debug_errno(fl, "Image file descriptor has unsafe flags set: %m");