[PATCH] cifs: Fix endian types in struct rfc1002_session_packet

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

 



    > All fields in struct rfc1002_session_packet are in big endian. This is
    > because all NetBIOS packet headers are in big endian as opposite of SMB
    >structures which are in little endian.
    > Therefore use __be16 and __be32 types instead of __u16 and __u32 in
    >struct rfc1002_session_packet.
    >
    >Reported-by: kernel test robot <lkp@xxxxxxxxx>

Do you have a link to the kernel bot reported by (email?)

-- 
Thanks,

Steve
From bbd8ad0d8994d448aa12e9df5fe23e5847729909 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pali=20Roh=C3=A1r?= <pali@xxxxxxxxxx>
Date: Wed, 25 Dec 2024 15:54:22 +0100
Subject: [PATCH 29/71] cifs: Fix endian types in struct rfc1002_session_packet
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

All fields in struct rfc1002_session_packet are in big endian. This is
because all NetBIOS packet headers are in big endian as opposite of SMB
structures which are in little endian.

Therefore use __be16 and __be32 types instead of __u16 and __u32 in
struct rfc1002_session_packet.

Reported-by: kernel test robot <lkp@xxxxxxxxx>
Signed-off-by: Pali Rohár <pali@xxxxxxxxxx>
---
 fs/smb/client/rfc1002pdu.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/fs/smb/client/rfc1002pdu.h b/fs/smb/client/rfc1002pdu.h
index ae1d025da294..ac82c2f3a4a2 100644
--- a/fs/smb/client/rfc1002pdu.h
+++ b/fs/smb/client/rfc1002pdu.h
@@ -24,7 +24,7 @@
 struct rfc1002_session_packet {
 	__u8	type;
 	__u8	flags;
-	__u16	length;
+	__be16	length;
 	union {
 		struct {
 			__u8 called_len;
@@ -35,8 +35,8 @@ struct rfc1002_session_packet {
 			__u8 scope2; /* null */
 		} __attribute__((packed)) session_req;
 		struct {
-			__u32 retarget_ip_addr;
-			__u16 port;
+			__be32 retarget_ip_addr;
+			__be16 port;
 		} __attribute__((packed)) retarget_resp;
 		__u8 neg_ses_resp_error_code;
 		/* POSITIVE_SESSION_RESPONSE packet does not include trailer.
-- 
2.43.0


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

  Powered by Linux