| From foo@baz Sun May 27 17:33:38 CEST 2018 |
| From: Arnd Bergmann <arnd@arndb.de> |
| Date: Fri, 2 Feb 2018 16:48:47 +0100 |
| Subject: cifs: silence compiler warnings showing up with gcc-8.0.0 |
| |
| From: Arnd Bergmann <arnd@arndb.de> |
| |
| [ Upstream commit ade7db991b47ab3016a414468164f4966bd08202 ] |
| |
| This bug was fixed before, but came up again with the latest |
| compiler in another function: |
| |
| fs/cifs/cifssmb.c: In function 'CIFSSMBSetEA': |
| fs/cifs/cifssmb.c:6362:3: error: 'strncpy' offset 8 is out of the bounds [0, 4] [-Werror=array-bounds] |
| strncpy(parm_data->list[0].name, ea_name, name_len); |
| |
| Let's apply the same fix that was used for the other instances. |
| |
| Fixes: b2a3ad9ca502 ("cifs: silence compiler warnings showing up with gcc-4.7.0") |
| Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
| Signed-off-by: Steve French <smfrench@gmail.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| fs/cifs/cifssmb.c | 4 +--- |
| 1 file changed, 1 insertion(+), 3 deletions(-) |
| |
| --- a/fs/cifs/cifssmb.c |
| +++ b/fs/cifs/cifssmb.c |
| @@ -6413,9 +6413,7 @@ SetEARetry: |
| pSMB->InformationLevel = |
| cpu_to_le16(SMB_SET_FILE_EA); |
| |
| - parm_data = |
| - (struct fealist *) (((char *) &pSMB->hdr.Protocol) + |
| - offset); |
| + parm_data = (void *)pSMB + offsetof(struct smb_hdr, Protocol) + offset; |
| pSMB->ParameterOffset = cpu_to_le16(param_offset); |
| pSMB->DataOffset = cpu_to_le16(offset); |
| pSMB->SetupCount = 1; |