CIFS: SMBD: Disable signing on SMB direct transport

Currently the CIFS SMB Direct implementation (experimental) doesn't properly
support signing. Disable it when SMB Direct is in use for transport.

Signing will be enabled in future after it is implemented.

Signed-off-by: Long Li <longli@microsoft.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Reviewed-by: Ronnie Sahlberg <lsahlber@redhat.com>
This commit is contained in:
Long Li 2017-11-22 17:38:49 -07:00 committed by Steve French
parent 08a3b9690f
commit 8801e90233
2 changed files with 13 additions and 0 deletions

View File

@ -1968,6 +1968,14 @@ cifs_parse_mount_options(const char *mountdata, const char *devname,
goto cifs_parse_mount_err;
}
#ifdef CONFIG_CIFS_SMB_DIRECT
if (vol->rdma && vol->sign) {
cifs_dbg(VFS, "Currently SMB direct doesn't support signing."
" This is being fixed\n");
goto cifs_parse_mount_err;
}
#endif
#ifndef CONFIG_KEYS
/* Muliuser mounts require CONFIG_KEYS support */
if (vol->multiuser) {

View File

@ -616,6 +616,11 @@ int smb3_validate_negotiate(const unsigned int xid, struct cifs_tcon *tcon)
cifs_dbg(FYI, "validate negotiate\n");
#ifdef CONFIG_CIFS_SMB_DIRECT
if (tcon->ses->server->rdma)
return 0;
#endif
/*
* validation ioctl must be signed, so no point sending this if we
* can not sign it (ie are not known user). Even if signing is not