Re: query fs info level 0x100

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 4/29/24 6:13 PM, Steve French wrote:
But the (current Samba) server fails the level 100 (level 0x64 in hex)
FS_POSIX_INFO with "STATUS_INVALID_ERROR_CLASS"
which causes all xfstests to break since they can't verify the mount
(e.g. with "stat -f").
Nothing related to this on the client has changed, and ksmbd has
always supported this so works fine there.

ah, I broke it. Fix attached. Really embarrassing...

-slow

From 3862563582683f86a1fd5d25422b3137f1b05141 Mon Sep 17 00:00:00 2001
From: Ralph Boehme <slow@xxxxxxxxx>
Date: Mon, 29 Apr 2024 18:38:10 +0200
Subject: [PATCH] smbd: SMB3 POSIX Extensions statfs() is broken

Regression introduced by 55d98b29eb294542cc4947573f233e0d5e6966cb. D'oh!

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15639

Signed-off-by: Ralph Boehme <slow@xxxxxxxxx>
---
 source3/smbd/smb2_trans2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/source3/smbd/smb2_trans2.c b/source3/smbd/smb2_trans2.c
index 5198a04a74c6..8e122025d283 100644
--- a/source3/smbd/smb2_trans2.c
+++ b/source3/smbd/smb2_trans2.c
@@ -1991,7 +1991,7 @@ static bool fsinfo_unix_valid_level(connection_struct *conn,
 				    uint16_t info_level)
 {
 	if (conn_using_smb2(conn->sconn) &&
-	    fsp->posix_flags == FSP_POSIX_FLAGS_OPEN &&
+	    (fsp->posix_flags & FSP_POSIX_FLAGS_OPEN) &&
 	    info_level == SMB2_FS_POSIX_INFORMATION_INTERNAL)
 	{
 		return true;
-- 
2.44.0

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature


[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux