]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
smb/client: fix buffer size for smb311_posix_qinfo in SMB311_posix_query_info()
authorZhangGuoDong <zhangguodong@kylinos.cn>
Tue, 3 Mar 2026 15:13:12 +0000 (15:13 +0000)
committerSteve French <stfrench@microsoft.com>
Wed, 4 Mar 2026 00:03:56 +0000 (18:03 -0600)
SMB311_posix_query_info() is currently unused, but it may still be used in
some stable versions, so these changes are submitted as a separate patch.

Use `sizeof(struct smb311_posix_qinfo)` instead of sizeof its pointer,
so the allocated buffer matches the actual struct size.

Fixes: b1bc1874b885 ("smb311: Add support for SMB311 query info (non-compounded)")
Reported-by: ChenXiaoSong <chenxiaosong@kylinos.cn>
Signed-off-by: ZhangGuoDong <zhangguodong@kylinos.cn>
Reviewed-by: ChenXiaoSong <chenxiaosong@kylinos.cn>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/smb/client/smb2pdu.c

index 04e361ed2356ecd34d7a7f9e5fd4445f66880af2..8a1fcc0976064ecb1bdf6a5380cdf0a30868e013 100644 (file)
@@ -3996,7 +3996,7 @@ SMB311_posix_query_info(const unsigned int xid, struct cifs_tcon *tcon,
                        u64 persistent_fid, u64 volatile_fid,
                        struct smb311_posix_qinfo *data, u32 *plen)
 {
-       size_t output_len = sizeof(struct smb311_posix_qinfo *) +
+       size_t output_len = sizeof(struct smb311_posix_qinfo) +
                        (sizeof(struct smb_sid) * 2) + (PATH_MAX * 2);
        *plen = 0;