Lines Matching full:server
31 is_server_using_iface(struct TCP_Server_Info *server, in is_server_using_iface() argument
36 struct sockaddr_in *s4 = (struct sockaddr_in *)&server->dstaddr; in is_server_using_iface()
37 struct sockaddr_in6 *s6 = (struct sockaddr_in6 *)&server->dstaddr; in is_server_using_iface()
39 if (server->dstaddr.ss_family != iface->sockaddr.ss_family) in is_server_using_iface()
41 if (server->dstaddr.ss_family == AF_INET) { in is_server_using_iface()
44 } else if (server->dstaddr.ss_family == AF_INET6) { in is_server_using_iface()
74 struct TCP_Server_Info *server) in cifs_ses_get_chan_index() argument
79 if (server && server->terminate) in cifs_ses_get_chan_index()
83 if (ses->chans[i].server == server) in cifs_ses_get_chan_index()
88 if (server) in cifs_ses_get_chan_index()
89 cifs_dbg(VFS, "unable to get chan index for server: 0x%llx", in cifs_ses_get_chan_index()
90 server->conn_id); in cifs_ses_get_chan_index()
96 struct TCP_Server_Info *server) in cifs_chan_set_in_reconnect() argument
98 int chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_set_in_reconnect()
108 struct TCP_Server_Info *server) in cifs_chan_clear_in_reconnect() argument
110 unsigned int chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_clear_in_reconnect()
120 struct TCP_Server_Info *server) in cifs_chan_in_reconnect() argument
122 unsigned int chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_in_reconnect()
132 struct TCP_Server_Info *server) in cifs_chan_set_need_reconnect() argument
134 unsigned int chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_set_need_reconnect()
146 struct TCP_Server_Info *server) in cifs_chan_clear_need_reconnect() argument
148 unsigned int chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_clear_need_reconnect()
160 struct TCP_Server_Info *server) in cifs_chan_needs_reconnect() argument
162 unsigned int chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_needs_reconnect()
172 struct TCP_Server_Info *server) in cifs_chan_is_iface_active() argument
174 unsigned int chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_is_iface_active()
186 struct TCP_Server_Info *server = ses->server; in cifs_try_adding_channels() local
208 if (server->dialect < SMB30_PROT_ID) { in cifs_try_adding_channels()
214 if (!(server->capabilities & SMB2_GLOBAL_CAP_MULTI_CHANNEL)) { in cifs_try_adding_channels()
233 cifs_dbg(VFS, "server %s does not advertise interfaces\n", in cifs_try_adding_channels()
234 ses->server->hostname); in cifs_try_adding_channels()
248 if (iface->rdma_capable != ses->server->rdma) in cifs_try_adding_channels()
305 * called when multichannel is disabled by the server.
313 struct TCP_Server_Info *server; in cifs_disable_secondary_channels() local
328 server = ses->chans[i].server; in cifs_disable_secondary_channels()
335 ses->chans[i].server = NULL; in cifs_disable_secondary_channels()
347 if (server) { in cifs_disable_secondary_channels()
348 if (!server->terminate) { in cifs_disable_secondary_channels()
349 server->terminate = true; in cifs_disable_secondary_channels()
350 cifs_signal_cifsd_for_reconnect(server, false); in cifs_disable_secondary_channels()
352 cifs_put_tcp_session(server, false); in cifs_disable_secondary_channels()
367 cifs_chan_update_iface(struct cifs_ses *ses, struct TCP_Server_Info *server) in cifs_chan_update_iface() argument
377 chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_update_iface()
392 spin_lock(&server->srv_lock); in cifs_chan_update_iface()
393 ss = server->dstaddr; in cifs_chan_update_iface()
394 spin_unlock(&server->srv_lock); in cifs_chan_update_iface()
399 cifs_dbg(VFS, "server %s does not advertise interfaces\n", ses->server->hostname); in cifs_chan_update_iface()
420 if (iface->rdma_capable != server->rdma) in cifs_chan_update_iface()
480 chan_index = cifs_ses_get_chan_index(ses, server); in cifs_chan_update_iface()
491 * If server is a channel of ses, return the corresponding enclosing
495 cifs_ses_find_chan(struct cifs_ses *ses, struct TCP_Server_Info *server) in cifs_ses_find_chan() argument
501 if (ses->chans[i].server == server) { in cifs_ses_find_chan()
541 * the session and server without caring about memory in cifs_ses_add_channel()
566 /* XXX: Use ses->server->hostname? */ in cifs_ses_add_channel()
577 ctx->vals = ses->server->vals; in cifs_ses_add_channel()
578 ctx->ops = ses->server->ops; in cifs_ses_add_channel()
580 ctx->noblocksnd = ses->server->noblocksnd; in cifs_ses_add_channel()
581 ctx->noautotune = ses->server->noautotune; in cifs_ses_add_channel()
582 ctx->sockopt_tcp_nodelay = ses->server->tcp_nodelay; in cifs_ses_add_channel()
583 ctx->echo_interval = ses->server->echo_interval / HZ; in cifs_ses_add_channel()
584 ctx->max_credits = ses->server->max_credits; in cifs_ses_add_channel()
597 memcpy(&ctx->client_guid, ses->server->client_guid, in cifs_ses_add_channel()
601 chan_server = cifs_get_tcp_session(ctx, ses->server); in cifs_ses_add_channel()
605 chan->server = chan_server; in cifs_ses_add_channel()
606 if (IS_ERR(chan->server)) { in cifs_ses_add_channel()
607 rc = PTR_ERR(chan->server); in cifs_ses_add_channel()
608 chan->server = NULL; in cifs_ses_add_channel()
617 cifs_chan_set_need_reconnect(ses, chan->server); in cifs_ses_add_channel()
623 * We need to allocate the server crypto now as we will need in cifs_ses_add_channel()
627 rc = smb311_crypto_shash_allocate(chan->server); in cifs_ses_add_channel()
634 rc = cifs_negotiate_protocol(xid, ses, chan->server); in cifs_ses_add_channel()
636 rc = cifs_setup_session(xid, ses, chan->server, ses->local_nls); in cifs_ses_add_channel()
641 if (rc && chan->server) { in cifs_ses_add_channel()
642 cifs_put_tcp_session(chan->server, 0); in cifs_ses_add_channel()
647 cifs_chan_clear_need_reconnect(ses, chan->server); in cifs_ses_add_channel()
667 struct TCP_Server_Info *server, in cifs_ssetup_hdr() argument
681 pSMB->req.MaxMpxCount = cpu_to_le16(server->maxReq); in cifs_ssetup_hdr()
691 if (server->sign) in cifs_ssetup_hdr()
745 * we did briefly in 2.6.18) since server will use its default in unicode_domain_string()
810 } /* else we send a null domain name so server will default to its own domain */ in ascii_ssetup_strings()
881 cifs_dbg(FYI, "OS/2 server\n"); in decode_ascii_ssetup()
948 …cifs_dbg(VFS, "%s: requested signing/encryption but server did not return either 56-bit or 128-bit… in decode_ntlmssp_challenge()
953 cifs_dbg(VFS, "%s: server does not seem to support either NTLMv1 or NTLMv2\n", __func__); in decode_ntlmssp_challenge()
956 if (ses->server->sign && !(server_flags & NTLMSSP_NEGOTIATE_SIGN)) { in decode_ntlmssp_challenge()
957 cifs_dbg(VFS, "%s: forced packet signing but server does not seem to support it\n", in decode_ntlmssp_challenge()
963 pr_warn_once("%s: authentication has been weakened as server does not support key exchange\n", in decode_ntlmssp_challenge()
1060 struct TCP_Server_Info *server, in build_ntlmssp_negotiate_blob() argument
1089 if (!server->session_estab || ses->ntlmssp->sesskey_per_smbsess) in build_ntlmssp_negotiate_blob()
1122 struct TCP_Server_Info *server, in build_ntlmssp_smb3_negotiate_blob() argument
1151 if (!server->session_estab || ses->ntlmssp->sesskey_per_smbsess) in build_ntlmssp_smb3_negotiate_blob()
1186 struct TCP_Server_Info *server, in build_ntlmssp_auth_blob() argument
1271 (!ses->server->session_estab || ses->ntlmssp->sesskey_per_smbsess) && in build_ntlmssp_auth_blob()
1291 cifs_select_sectype(struct TCP_Server_Info *server, enum securityEnum requested) in cifs_select_sectype() argument
1293 switch (server->negflavor) { in cifs_select_sectype()
1300 if (server->sec_ntlmssp && in cifs_select_sectype()
1303 if ((server->sec_kerberos || server->sec_mskerberos) && in cifs_select_sectype()
1330 struct TCP_Server_Info *server; member
1406 struct TCP_Server_Info *server = sess_data->server; in sess_establish_session() local
1408 cifs_server_lock(server); in sess_establish_session()
1409 if (!server->session_estab) { in sess_establish_session()
1410 if (server->sign) { in sess_establish_session()
1411 server->session_key.response = in sess_establish_session()
1414 if (!server->session_key.response) { in sess_establish_session()
1415 cifs_server_unlock(server); in sess_establish_session()
1418 server->session_key.len = in sess_establish_session()
1421 server->sequence_number = 0x2; in sess_establish_session()
1422 server->session_estab = true; in sess_establish_session()
1424 cifs_server_unlock(server); in sess_establish_session()
1460 struct TCP_Server_Info *server = sess_data->server; in sess_auth_ntlmv2() local
1472 capabilities = cifs_ssetup_hdr(ses, server, pSMB); in sess_auth_ntlmv2()
1570 struct TCP_Server_Info *server = sess_data->server; in sess_auth_kerberos() local
1585 capabilities = cifs_ssetup_hdr(ses, server, pSMB); in sess_auth_kerberos()
1587 spnego_key = cifs_get_spnego_key(ses, server); in sess_auth_kerberos()
1711 struct TCP_Server_Info *server = sess_data->server; in _sess_auth_rawntlmssp_assemble_req() local
1717 capabilities = cifs_ssetup_hdr(ses, server, pSMB); in _sess_auth_rawntlmssp_assemble_req()
1751 struct TCP_Server_Info *server = sess_data->server; in sess_auth_rawntlmssp_negotiate() local
1779 &blob_len, ses, server, in sess_auth_rawntlmssp_negotiate()
1857 struct TCP_Server_Info *server = sess_data->server; in sess_auth_rawntlmssp_authenticate() local
1874 &blob_len, ses, server, in sess_auth_rawntlmssp_authenticate()
1882 * Make sure that we tell the server that we are using in sess_auth_rawntlmssp_authenticate()
1963 struct TCP_Server_Info *server = sess_data->server; in select_sec() local
1965 type = cifs_select_sectype(server, ses->sectype); in select_sec()
1996 struct TCP_Server_Info *server, in CIFS_SessSetup() argument
2013 sess_data->server = server; in CIFS_SessSetup()