diff options
Diffstat (limited to 'fs/smb/client/connect.c')
| -rw-r--r-- | fs/smb/client/connect.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/fs/smb/client/connect.c b/fs/smb/client/connect.c index 065dde89febf..4c269eaf6013 100644 --- a/fs/smb/client/connect.c +++ b/fs/smb/client/connect.c @@ -909,10 +909,13 @@ handle_mid(struct mid_q_entry *mid, struct TCP_Server_Info *server, int cifs_enable_signing(struct TCP_Server_Info *server, bool mnt_sign_required) { - bool srv_sign_required = server->sec_mode & server->vals->signing_required; - bool srv_sign_enabled = server->sec_mode & server->vals->signing_enabled; + bool srv_sign_required; + bool srv_sign_enabled; bool mnt_sign_enabled; + srv_sign_required = (server->sec_mode & SMB2_NEGOTIATE_SIGNING_REQUIRED); + srv_sign_enabled = srv_sign_required || (server->sec_mode & SMB2_NEGOTIATE_SIGNING_ENABLED); + /* * Is signing required by mnt options? If not then check * global_secflags to see if it is there. @@ -1053,8 +1056,7 @@ standard_receive3(struct TCP_Server_Info *server, struct mid_q_entry *mid) unsigned int pdu_length = server->pdu_size; /* make sure this will fit in a large buffer */ - if (pdu_length > CIFSMaxBufSize + MAX_HEADER_SIZE(server) - - HEADER_PREAMBLE_SIZE(server)) { + if (pdu_length > CIFSMaxBufSize + MAX_SMB2_HDR_SIZE) { cifs_server_dbg(VFS, "SMB response too long (%u bytes)\n", pdu_length); cifs_reconnect(server, true); return -ECONNABORTED; @@ -1215,9 +1217,7 @@ next_pdu: } /* read down to the MID */ - length = cifs_read_from_socket(server, - buf + HEADER_PREAMBLE_SIZE(server), - MID_HEADER_SIZE(server)); + length = cifs_read_from_socket(server, buf, MID_HEADER_SIZE(server)); if (length < 0) continue; server->total_read += length; @@ -3662,7 +3662,8 @@ cifs_setup_session(const unsigned int xid, struct cifs_ses *ses, if (!is_binding) { ses->capabilities = server->capabilities; if (!linuxExtEnabled) - ses->capabilities &= (~server->vals->cap_unix); + /* XXX: remove this? (was ~cap_unix) */ + ses->capabilities &= (~0); if (ses->auth_key.response) { cifs_dbg(FYI, "Free previous auth_key.response = %p\n", |
