| From bc1b38532440bcaf1920f4a79e95132088b9fb8d Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 4 Sep 2019 23:07:52 -0500 |
| Subject: smb3: fix signing verification of large reads |
| |
| From: Steve French <stfrench@microsoft.com> |
| |
| [ Upstream commit 46f17d17687e8140f2e4e517d7dfa65e62fcc5f4 ] |
| |
| Code cleanup in the 5.1 kernel changed the array |
| passed into signing verification on large reads leading |
| to warning messages being logged when copying files to local |
| systems from remote. |
| |
| SMB signature verification returned error = -5 |
| |
| This changeset fixes verification of SMB3 signatures of large |
| reads. |
| |
| Suggested-by: Pavel Shilovsky <pshilov@microsoft.com> |
| Signed-off-by: Steve French <stfrench@microsoft.com> |
| Reviewed-by: Ronnie Sahlberg <lsahlber@redhat.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| fs/cifs/smb2pdu.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| --- a/fs/cifs/smb2pdu.c |
| +++ b/fs/cifs/smb2pdu.c |
| @@ -3130,8 +3130,8 @@ smb2_readv_callback(struct mid_q_entry * |
| struct smb2_sync_hdr *shdr = |
| (struct smb2_sync_hdr *)rdata->iov[0].iov_base; |
| unsigned int credits_received = 0; |
| - struct smb_rqst rqst = { .rq_iov = rdata->iov, |
| - .rq_nvec = 2, |
| + struct smb_rqst rqst = { .rq_iov = &rdata->iov[1], |
| + .rq_nvec = 1, |
| .rq_pages = rdata->pages, |
| .rq_offset = rdata->page_offset, |
| .rq_npages = rdata->nr_pages, |