Re: [PATCH] fs/cifs: Replace one-element array with flexible-array member.

From: Steve French
Date: Sun Jan 17 2021 - 16:59:38 EST


Jiapeng,
Aurelien is correct, you should respin this patch and correct for
where it breaks the sizeof calculation. For example your change:

struct smb2_lock_rsp {
@@ -1434,7 +1434,7 @@ struct smb2_query_directory_req {
__le16 FileNameOffset;
__le16 FileNameLength;
__le32 OutputBufferLength;
- __u8 Buffer[1];
+ __u8 Buffer[];
} __packed;

would have the side effect of making the file name off by one:

smb2pdu.c-4654- req->FileNameOffset =
smb2pdu.c:4655: cpu_to_le16(sizeof(struct
smb2_query_directory_req) - 1);

On Thu, Jan 14, 2021 at 3:26 AM Aurélien Aptel via samba-technical
<samba-technical@xxxxxxxxxxxxxxx> wrote:
>
> Hi Jiapeng,
>
> This will change the size returned by sizeof(). Have you checked that
> this doesn't introduce off-by-one errors in all the sizeof() usage?
>
> Cheers,
> --
> Aurélien Aptel / SUSE Labs Samba Team
> GPG: 1839 CB5F 9F5B FB9B AA97 8C99 03C8 A49B 521B D5D3
> SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, 90409 Nürnberg, DE
> GF: Felix Imendörffer, Mary Higgins, Sri Rasiah HRB 247165 (AG München)
>
>


--
Thanks,

Steve