mirror of
https://github.com/torvalds/linux.git
synced 2026-09-22 12:44:03 +02:00
ksmbd: return complete resume key response
The FSCTL_SRV_REQUEST_RESUME_KEY response contains a mandatory four-byte context field after ContextLength. Defining the context as a flexible array excludes it from sizeof(struct resume_key_ioctl_rsp), so ksmbd sends only 28 bytes instead of the required 32 bytes. The truncated response cannot be decoded and results in an NDR buffer size error. Define the reserved context as a fixed four-byte field. This makes the response size match the wire format and ensures the field is zeroed and included in OutputCount. Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
This commit is contained in:
parent
d4ef8821fd
commit
c1c200924f
|
|
@ -1452,7 +1452,7 @@ struct resume_key_ioctl_rsp {
|
|||
__u64 ResumeKeyU64[3];
|
||||
};
|
||||
__le32 ContextLength; /* MBZ */
|
||||
char Context[]; /* ignored, Windows sets to 4 bytes of zero */
|
||||
char Context[4]; /* ignored, Windows sets to 4 bytes of zero */
|
||||
} __packed;
|
||||
|
||||
struct smb2_ioctl_rsp {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user