Lines Matching refs:server
41 struct TCP_Server_Info *server, char *signature, in __cifs_calc_signature() argument
48 int is_smb2 = server->vals->header_preamble_size == 0; in __cifs_calc_signature()
113 struct TCP_Server_Info *server, char *signature) in cifs_calc_signature() argument
117 if (!rqst->rq_iov || !signature || !server) in cifs_calc_signature()
120 rc = cifs_alloc_hash("md5", &server->secmech.md5, in cifs_calc_signature()
121 &server->secmech.sdescmd5); in cifs_calc_signature()
125 rc = crypto_shash_init(&server->secmech.sdescmd5->shash); in cifs_calc_signature()
131 rc = crypto_shash_update(&server->secmech.sdescmd5->shash, in cifs_calc_signature()
132 server->session_key.response, server->session_key.len); in cifs_calc_signature()
138 return __cifs_calc_signature(rqst, server, signature, in cifs_calc_signature()
139 &server->secmech.sdescmd5->shash); in cifs_calc_signature()
143 int cifs_sign_rqst(struct smb_rqst *rqst, struct TCP_Server_Info *server, in cifs_sign_rqst() argument
154 if ((cifs_pdu == NULL) || (server == NULL)) in cifs_sign_rqst()
158 server->tcpStatus == CifsNeedNegotiate) in cifs_sign_rqst()
161 if (!server->session_estab) { in cifs_sign_rqst()
167 cpu_to_le32(server->sequence_number); in cifs_sign_rqst()
170 *pexpected_response_sequence_number = ++server->sequence_number; in cifs_sign_rqst()
171 ++server->sequence_number; in cifs_sign_rqst()
173 rc = cifs_calc_signature(rqst, server, smb_signature); in cifs_sign_rqst()
182 int cifs_sign_smbv(struct kvec *iov, int n_vec, struct TCP_Server_Info *server, in cifs_sign_smbv() argument
188 return cifs_sign_rqst(&rqst, server, pexpected_response_sequence); in cifs_sign_smbv()
192 int cifs_sign_smb(struct smb_hdr *cifs_pdu, struct TCP_Server_Info *server, in cifs_sign_smb() argument
202 return cifs_sign_smbv(iov, 2, server, in cifs_sign_smb()
207 struct TCP_Server_Info *server, in cifs_verify_signature() argument
219 if (cifs_pdu == NULL || server == NULL) in cifs_verify_signature()
222 if (!server->session_estab) in cifs_verify_signature()
248 mutex_lock(&server->srv_mutex); in cifs_verify_signature()
249 rc = cifs_calc_signature(rqst, server, what_we_think_sig_should_be); in cifs_verify_signature()
250 mutex_unlock(&server->srv_mutex); in cifs_verify_signature()
281 rc = SMBNTencrypt(ses->password, ses->server->cryptkey, in setup_ntlm_response()
504 wchar_t *server; in calc_ntlmv2_hash() local
506 if (!ses->server->secmech.sdeschmacmd5) { in calc_ntlmv2_hash()
514 rc = crypto_shash_setkey(ses->server->secmech.hmacmd5, nt_hash, in calc_ntlmv2_hash()
521 rc = crypto_shash_init(&ses->server->secmech.sdeschmacmd5->shash); in calc_ntlmv2_hash()
542 rc = crypto_shash_update(&ses->server->secmech.sdeschmacmd5->shash, in calc_ntlmv2_hash()
562 crypto_shash_update(&ses->server->secmech.sdeschmacmd5->shash, in calc_ntlmv2_hash()
574 server = kmalloc(2 + (len * 2), GFP_KERNEL); in calc_ntlmv2_hash()
575 if (server == NULL) { in calc_ntlmv2_hash()
579 len = cifs_strtoUTF16((__le16 *)server, ses->serverName, len, in calc_ntlmv2_hash()
582 crypto_shash_update(&ses->server->secmech.sdeschmacmd5->shash, in calc_ntlmv2_hash()
583 (char *)server, 2 * len); in calc_ntlmv2_hash()
584 kfree(server); in calc_ntlmv2_hash()
592 rc = crypto_shash_final(&ses->server->secmech.sdeschmacmd5->shash, in calc_ntlmv2_hash()
612 if (!ses->server->secmech.sdeschmacmd5) { in CalcNTLMv2_response()
617 rc = crypto_shash_setkey(ses->server->secmech.hmacmd5, in CalcNTLMv2_response()
625 rc = crypto_shash_init(&ses->server->secmech.sdeschmacmd5->shash); in CalcNTLMv2_response()
631 if (ses->server->negflavor == CIFS_NEGFLAVOR_EXTENDED) in CalcNTLMv2_response()
636 ses->server->cryptkey, CIFS_SERVER_CHALLENGE_SIZE); in CalcNTLMv2_response()
637 rc = crypto_shash_update(&ses->server->secmech.sdeschmacmd5->shash, in CalcNTLMv2_response()
645 rc = crypto_shash_final(&ses->server->secmech.sdeschmacmd5->shash, in CalcNTLMv2_response()
664 if (ses->server->negflavor == CIFS_NEGFLAVOR_EXTENDED) { in setup_ntlmv2_rsp()
714 mutex_lock(&ses->server->srv_mutex); in setup_ntlmv2_rsp()
717 &ses->server->secmech.hmacmd5, in setup_ntlmv2_rsp()
718 &ses->server->secmech.sdeschmacmd5); in setup_ntlmv2_rsp()
738 rc = crypto_shash_setkey(ses->server->secmech.hmacmd5, in setup_ntlmv2_rsp()
746 rc = crypto_shash_init(&ses->server->secmech.sdeschmacmd5->shash); in setup_ntlmv2_rsp()
752 rc = crypto_shash_update(&ses->server->secmech.sdeschmacmd5->shash, in setup_ntlmv2_rsp()
760 rc = crypto_shash_final(&ses->server->secmech.sdeschmacmd5->shash, in setup_ntlmv2_rsp()
766 mutex_unlock(&ses->server->srv_mutex); in setup_ntlmv2_rsp()
805 cifs_crypto_secmech_release(struct TCP_Server_Info *server) in cifs_crypto_secmech_release() argument
807 if (server->secmech.cmacaes) { in cifs_crypto_secmech_release()
808 crypto_free_shash(server->secmech.cmacaes); in cifs_crypto_secmech_release()
809 server->secmech.cmacaes = NULL; in cifs_crypto_secmech_release()
812 if (server->secmech.hmacsha256) { in cifs_crypto_secmech_release()
813 crypto_free_shash(server->secmech.hmacsha256); in cifs_crypto_secmech_release()
814 server->secmech.hmacsha256 = NULL; in cifs_crypto_secmech_release()
817 if (server->secmech.md5) { in cifs_crypto_secmech_release()
818 crypto_free_shash(server->secmech.md5); in cifs_crypto_secmech_release()
819 server->secmech.md5 = NULL; in cifs_crypto_secmech_release()
822 if (server->secmech.sha512) { in cifs_crypto_secmech_release()
823 crypto_free_shash(server->secmech.sha512); in cifs_crypto_secmech_release()
824 server->secmech.sha512 = NULL; in cifs_crypto_secmech_release()
827 if (server->secmech.hmacmd5) { in cifs_crypto_secmech_release()
828 crypto_free_shash(server->secmech.hmacmd5); in cifs_crypto_secmech_release()
829 server->secmech.hmacmd5 = NULL; in cifs_crypto_secmech_release()
832 if (server->secmech.ccmaesencrypt) { in cifs_crypto_secmech_release()
833 crypto_free_aead(server->secmech.ccmaesencrypt); in cifs_crypto_secmech_release()
834 server->secmech.ccmaesencrypt = NULL; in cifs_crypto_secmech_release()
837 if (server->secmech.ccmaesdecrypt) { in cifs_crypto_secmech_release()
838 crypto_free_aead(server->secmech.ccmaesdecrypt); in cifs_crypto_secmech_release()
839 server->secmech.ccmaesdecrypt = NULL; in cifs_crypto_secmech_release()
842 kfree(server->secmech.sdesccmacaes); in cifs_crypto_secmech_release()
843 server->secmech.sdesccmacaes = NULL; in cifs_crypto_secmech_release()
844 kfree(server->secmech.sdeschmacsha256); in cifs_crypto_secmech_release()
845 server->secmech.sdeschmacsha256 = NULL; in cifs_crypto_secmech_release()
846 kfree(server->secmech.sdeschmacmd5); in cifs_crypto_secmech_release()
847 server->secmech.sdeschmacmd5 = NULL; in cifs_crypto_secmech_release()
848 kfree(server->secmech.sdescmd5); in cifs_crypto_secmech_release()
849 server->secmech.sdescmd5 = NULL; in cifs_crypto_secmech_release()
850 kfree(server->secmech.sdescsha512); in cifs_crypto_secmech_release()
851 server->secmech.sdescsha512 = NULL; in cifs_crypto_secmech_release()