diff options
author | Jeff Layton <jlayton@redhat.com> | 2013-05-26 15:00:59 +0400 |
---|---|---|
committer | Steve French <smfrench@gmail.com> | 2013-06-24 10:56:42 +0400 |
commit | e598d1d8fb512c7a4d86c729cdca30e87fe7cfc9 (patch) | |
tree | b55b7af7d1e6a701aee449239df1fe9f7f38ee50 /fs/cifs/smb2pdu.c | |
parent | 515d82ffd0fe4a87d872c655a6e19a318770ea0c (diff) | |
download | linux-e598d1d8fb512c7a4d86c729cdca30e87fe7cfc9.tar.xz |
cifs: track the flavor of the NEGOTIATE reponse
Track what sort of NEGOTIATE response we get from the server, as that
will govern what sort of authentication types this socket will support.
There are three possibilities:
LANMAN: server sent legacy LANMAN-type response
UNENCAP: server sent a newer-style response, but extended security bit
wasn't set. This socket will only support unencapsulated auth types.
EXTENDED: server sent a newer-style response with the extended security
bit set. This is necessary to support krb5 and ntlmssp auth types.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Pavel Shilovsky <piastry@etersoft.ru>
Signed-off-by: Steve French <smfrench@gmail.com>
Diffstat (limited to 'fs/cifs/smb2pdu.c')
-rw-r--r-- | fs/cifs/smb2pdu.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c index ebb97b484ab1..1609699e7bec 100644 --- a/fs/cifs/smb2pdu.c +++ b/fs/cifs/smb2pdu.c @@ -405,6 +405,8 @@ SMB2_negotiate(const unsigned int xid, struct cifs_ses *ses) } server->dialect = le16_to_cpu(rsp->DialectRevision); + /* SMB2 only has an extended negflavor */ + server->negflavor = CIFS_NEGFLAVOR_EXTENDED; server->maxBuf = le32_to_cpu(rsp->MaxTransactSize); server->max_read = le32_to_cpu(rsp->MaxReadSize); server->max_write = le32_to_cpu(rsp->MaxWriteSize); |