Lines Matching defs:volume_info
2530 cifs_get_tcp_session(struct smb_vol *volume_info)
2535 cifs_dbg(FYI, "UNC: %s\n", volume_info->UNC);
2538 tcp_ses = cifs_find_tcp_session(volume_info);
2548 tcp_ses->ops = volume_info->ops;
2549 tcp_ses->vals = volume_info->vals;
2551 tcp_ses->hostname = extract_hostname(volume_info->UNC);
2557 tcp_ses->noblockcnt = volume_info->rootfs;
2558 tcp_ses->noblocksnd = volume_info->noblocksnd || volume_info->rootfs;
2559 tcp_ses->noautotune = volume_info->noautotune;
2560 tcp_ses->tcp_nodelay = volume_info->sockopt_tcp_nodelay;
2561 tcp_ses->rdma = volume_info->rdma;
2570 volume_info->source_rfc1001_name, RFC1001_NAME_LEN_WITH_NULL);
2572 volume_info->target_rfc1001_name, RFC1001_NAME_LEN_WITH_NULL);
2577 tcp_ses->compress_algorithm = cpu_to_le16(volume_info->compression);
2584 memcpy(&tcp_ses->srcaddr, &volume_info->srcaddr,
2586 memcpy(&tcp_ses->dstaddr, &volume_info->dstaddr,
2588 if (volume_info->use_client_guid)
2589 memcpy(tcp_ses->client_guid, volume_info->client_guid,
2601 if (volume_info->echo_interval >= SMB_ECHO_INTERVAL_MIN &&
2602 volume_info->echo_interval <= SMB_ECHO_INTERVAL_MAX)
2603 tcp_ses->echo_interval = volume_info->echo_interval * HZ;
2613 tcp_ses, (struct sockaddr *)&volume_info->dstaddr);
2642 tcp_ses->min_offload = volume_info->min_offload;
2645 if ((volume_info->max_credits < 20) || (volume_info->max_credits > 60000))
2648 tcp_ses->max_credits = volume_info->max_credits;
2651 tcp_ses->ignore_signature = volume_info->ignore_signature;
2728 cifs_setup_ipc(struct cifs_ses *ses, struct smb_vol *volume_info)
2741 if (volume_info->seal) {
3032 * cifs_get_smb_ses - get a session matching @volume_info data from @server
3039 cifs_get_smb_ses(struct TCP_Server_Info *server, struct smb_vol *volume_info)
3049 ses = cifs_find_smb_ses(server, volume_info);
3066 volume_info->local_nls);
3097 if (volume_info->username) {
3098 ses->user_name = kstrdup(volume_info->username, GFP_KERNEL);
3103 /* volume_info->password freed at unmount */
3104 if (volume_info->password) {
3105 ses->password = kstrdup(volume_info->password, GFP_KERNEL);
3109 if (volume_info->domainname) {
3110 ses->domainName = kstrdup(volume_info->domainname, GFP_KERNEL);
3114 if (volume_info->domainauto)
3115 ses->domainAuto = volume_info->domainauto;
3116 ses->cred_uid = volume_info->cred_uid;
3117 ses->linux_uid = volume_info->linux_uid;
3119 ses->sectype = volume_info->sectype;
3120 ses->sign = volume_info->sign;
3126 ses->chan_max = volume_info->multichannel ? volume_info->max_channels:1;
3130 rc = cifs_setup_session(xid, ses, volume_info->local_nls);
3147 cifs_setup_ipc(ses, volume_info);
3157 static int match_tcon(struct cifs_tcon *tcon, struct smb_vol *volume_info)
3161 if (strncmp(tcon->treeName, volume_info->UNC, MAX_TREE_SIZE))
3163 if (tcon->seal != volume_info->seal)
3165 if (tcon->snapshot_time != volume_info->snapshot_time)
3167 if (tcon->handle_timeout != volume_info->handle_timeout)
3169 if (tcon->no_lease != volume_info->no_lease)
3171 if (tcon->nodelete != volume_info->nodelete)
3177 cifs_find_tcon(struct cifs_ses *ses, struct smb_vol *volume_info)
3189 if (!match_tcon(tcon, volume_info))
3234 * cifs_get_tcon - get a tcon matching @volume_info data from @ses
3254 cifs_get_tcon(struct cifs_ses *ses, struct smb_vol *volume_info)
3259 tcon = cifs_find_tcon(ses, volume_info);
3281 if (volume_info->snapshot_time) {
3288 tcon->snapshot_time = volume_info->snapshot_time;
3291 if (volume_info->handle_timeout) {
3298 tcon->handle_timeout = volume_info->handle_timeout;
3302 if (volume_info->password) {
3303 tcon->password = kstrdup(volume_info->password, GFP_KERNEL);
3310 if (volume_info->seal) {
3326 if (volume_info->linux_ext) {
3342 rc = ses->server->ops->tree_connect(xid, ses, volume_info->UNC, tcon,
3343 volume_info->local_nls);
3351 if (volume_info->persistent) {
3368 && (volume_info->nopersistent == false)) {
3371 } else if (volume_info->resilient) {
3383 if (volume_info->cache_ro)
3385 else if (volume_info->cache_rw)
3389 if (volume_info->no_lease) {
3396 tcon->no_lease = volume_info->no_lease;
3404 tcon->retry = volume_info->retry;
3405 tcon->nocase = volume_info->nocase;
3407 tcon->nohandlecache = volume_info->nohandlecache;
3410 tcon->nodelete = volume_info->nodelete;
3411 tcon->local_lease = volume_info->local_lease;
3510 struct smb_vol *volume_info;
3530 volume_info = mnt_data->vol;
3532 if (!match_server(tcp_srv, volume_info) ||
3533 !match_session(ses, volume_info) ||
3534 !match_tcon(tcon, volume_info) ||
4041 cifs_cleanup_volume_info_contents(struct smb_vol *volume_info)
4043 kfree(volume_info->username);
4044 kfree_sensitive(volume_info->password);
4045 kfree(volume_info->UNC);
4046 kfree(volume_info->domainname);
4047 kfree(volume_info->iocharset);
4048 kfree(volume_info->prepath);
4052 cifs_cleanup_volume_info(struct smb_vol *volume_info)
4054 if (!volume_info)
4056 cifs_cleanup_volume_info_contents(volume_info);
4057 kfree(volume_info);
4241 struct smb_vol *volume_info, struct cifs_sb_info *cifs_sb,
4251 full_path = build_unc_path_to_root(volume_info, cifs_sb, true);
4269 cifs_cleanup_volume_info_contents(volume_info);
4270 rc = cifs_setup_volume_info(volume_info, mdata,
4412 cifs_setup_volume_info(struct smb_vol *volume_info, char *mount_data,
4417 if (cifs_parse_mount_options(mount_data, devname, volume_info, is_smb3))
4420 if (volume_info->nullauth) {
4422 kfree(volume_info->username);
4423 volume_info->username = NULL;
4424 } else if (volume_info->username) {
4426 cifs_dbg(FYI, "Username: %s\n", volume_info->username);
4435 if (volume_info->iocharset == NULL) {
4437 volume_info->local_nls = load_nls_default();
4439 volume_info->local_nls = load_nls(volume_info->iocharset);
4440 if (volume_info->local_nls == NULL) {
4442 volume_info->iocharset);
4454 struct smb_vol *volume_info;
4456 volume_info = kmalloc(sizeof(struct smb_vol), GFP_KERNEL);
4457 if (!volume_info)
4460 rc = cifs_setup_volume_info(volume_info, mount_data, devname, is_smb3);
4462 cifs_cleanup_volume_info(volume_info);
4463 volume_info = ERR_PTR(rc);
4466 return volume_info;