Lines Matching refs:volume_info

300 static int cifs_setup_volume_info(struct smb_vol *volume_info, char *mount_data,
2149 cifs_get_tcp_session(struct smb_vol *volume_info) in cifs_get_tcp_session() argument
2154 cifs_dbg(FYI, "UNC: %s\n", volume_info->UNC); in cifs_get_tcp_session()
2157 tcp_ses = cifs_find_tcp_session(volume_info); in cifs_get_tcp_session()
2167 tcp_ses->ops = volume_info->ops; in cifs_get_tcp_session()
2168 tcp_ses->vals = volume_info->vals; in cifs_get_tcp_session()
2170 tcp_ses->hostname = extract_hostname(volume_info->UNC); in cifs_get_tcp_session()
2176 tcp_ses->noblocksnd = volume_info->noblocksnd; in cifs_get_tcp_session()
2177 tcp_ses->noautotune = volume_info->noautotune; in cifs_get_tcp_session()
2178 tcp_ses->tcp_nodelay = volume_info->sockopt_tcp_nodelay; in cifs_get_tcp_session()
2186 volume_info->source_rfc1001_name, RFC1001_NAME_LEN_WITH_NULL); in cifs_get_tcp_session()
2188 volume_info->target_rfc1001_name, RFC1001_NAME_LEN_WITH_NULL); in cifs_get_tcp_session()
2196 memcpy(&tcp_ses->srcaddr, &volume_info->srcaddr, in cifs_get_tcp_session()
2198 memcpy(&tcp_ses->dstaddr, &volume_info->dstaddr, in cifs_get_tcp_session()
2483 cifs_get_smb_ses(struct TCP_Server_Info *server, struct smb_vol *volume_info) in cifs_get_smb_ses() argument
2493 ses = cifs_find_smb_ses(server, volume_info); in cifs_get_smb_ses()
2510 volume_info->local_nls); in cifs_get_smb_ses()
2539 if (volume_info->username) { in cifs_get_smb_ses()
2540 ses->user_name = kstrdup(volume_info->username, GFP_KERNEL); in cifs_get_smb_ses()
2546 if (volume_info->password) { in cifs_get_smb_ses()
2547 ses->password = kstrdup(volume_info->password, GFP_KERNEL); in cifs_get_smb_ses()
2551 if (volume_info->domainname) { in cifs_get_smb_ses()
2552 ses->domainName = kstrdup(volume_info->domainname, GFP_KERNEL); in cifs_get_smb_ses()
2556 ses->cred_uid = volume_info->cred_uid; in cifs_get_smb_ses()
2557 ses->linux_uid = volume_info->linux_uid; in cifs_get_smb_ses()
2559 ses->sectype = volume_info->sectype; in cifs_get_smb_ses()
2560 ses->sign = volume_info->sign; in cifs_get_smb_ses()
2565 rc = cifs_setup_session(xid, ses, volume_info->local_nls); in cifs_get_smb_ses()
2639 cifs_get_tcon(struct cifs_ses *ses, struct smb_vol *volume_info) in cifs_get_tcon() argument
2644 tcon = cifs_find_tcon(ses, volume_info->UNC); in cifs_get_tcon()
2649 if (tcon->seal != volume_info->seal) in cifs_get_tcon()
2666 if (volume_info->password) { in cifs_get_tcon()
2667 tcon->password = kstrdup(volume_info->password, GFP_KERNEL); in cifs_get_tcon()
2679 rc = ses->server->ops->tree_connect(xid, ses, volume_info->UNC, tcon, in cifs_get_tcon()
2680 volume_info->local_nls); in cifs_get_tcon()
2686 if (volume_info->nodfs) { in cifs_get_tcon()
2690 tcon->seal = volume_info->seal; in cifs_get_tcon()
2693 if (volume_info->persistent) { in cifs_get_tcon()
2713 && (volume_info->nopersistent == false)) { in cifs_get_tcon()
2717 } else if (volume_info->resilient) { in cifs_get_tcon()
2732 tcon->retry = volume_info->retry; in cifs_get_tcon()
2733 tcon->nocase = volume_info->nocase; in cifs_get_tcon()
2734 tcon->local_lease = volume_info->local_lease; in cifs_get_tcon()
2817 struct smb_vol *volume_info; in cifs_match_super() local
2836 volume_info = mnt_data->vol; in cifs_match_super()
2838 if (!match_server(tcp_srv, volume_info) || in cifs_match_super()
2839 !match_session(ses, volume_info) || in cifs_match_super()
2840 !match_tcon(tcon, volume_info->UNC)) { in cifs_match_super()
3352 cleanup_volume_info_contents(struct smb_vol *volume_info) in cleanup_volume_info_contents() argument
3354 kfree(volume_info->username); in cleanup_volume_info_contents()
3355 kzfree(volume_info->password); in cleanup_volume_info_contents()
3356 kfree(volume_info->UNC); in cleanup_volume_info_contents()
3357 kfree(volume_info->domainname); in cleanup_volume_info_contents()
3358 kfree(volume_info->iocharset); in cleanup_volume_info_contents()
3359 kfree(volume_info->prepath); in cleanup_volume_info_contents()
3363 cifs_cleanup_volume_info(struct smb_vol *volume_info) in cifs_cleanup_volume_info() argument
3365 if (!volume_info) in cifs_cleanup_volume_info()
3367 cleanup_volume_info_contents(volume_info); in cifs_cleanup_volume_info()
3368 kfree(volume_info); in cifs_cleanup_volume_info()
3416 struct smb_vol *volume_info, struct cifs_sb_info *cifs_sb, in expand_dfs_referral() argument
3424 full_path = build_unc_path_to_root(volume_info, cifs_sb); in expand_dfs_referral()
3429 ref_path = check_prefix ? full_path + 1 : volume_info->UNC + 1; in expand_dfs_referral()
3447 cleanup_volume_info_contents(volume_info); in expand_dfs_referral()
3448 rc = cifs_setup_volume_info(volume_info, mdata, in expand_dfs_referral()
3461 cifs_setup_volume_info(struct smb_vol *volume_info, char *mount_data, in cifs_setup_volume_info() argument
3466 if (cifs_parse_mount_options(mount_data, devname, volume_info)) in cifs_setup_volume_info()
3469 if (volume_info->nullauth) { in cifs_setup_volume_info()
3471 kfree(volume_info->username); in cifs_setup_volume_info()
3472 volume_info->username = NULL; in cifs_setup_volume_info()
3473 } else if (volume_info->username) { in cifs_setup_volume_info()
3475 cifs_dbg(FYI, "Username: %s\n", volume_info->username); in cifs_setup_volume_info()
3484 if (volume_info->iocharset == NULL) { in cifs_setup_volume_info()
3486 volume_info->local_nls = load_nls_default(); in cifs_setup_volume_info()
3488 volume_info->local_nls = load_nls(volume_info->iocharset); in cifs_setup_volume_info()
3489 if (volume_info->local_nls == NULL) { in cifs_setup_volume_info()
3491 volume_info->iocharset); in cifs_setup_volume_info()
3503 struct smb_vol *volume_info; in cifs_get_volume_info() local
3505 volume_info = kmalloc(sizeof(struct smb_vol), GFP_KERNEL); in cifs_get_volume_info()
3506 if (!volume_info) in cifs_get_volume_info()
3509 rc = cifs_setup_volume_info(volume_info, mount_data, devname); in cifs_get_volume_info()
3511 cifs_cleanup_volume_info(volume_info); in cifs_get_volume_info()
3512 volume_info = ERR_PTR(rc); in cifs_get_volume_info()
3515 return volume_info; in cifs_get_volume_info()
3519 cifs_mount(struct cifs_sb_info *cifs_sb, struct smb_vol *volume_info) in cifs_mount() argument
3560 server = cifs_get_tcp_session(volume_info); in cifs_mount()
3568 ses = cifs_get_smb_ses(server, volume_info); in cifs_mount()
3576 if ((volume_info->persistent == true) && ((ses->server->capabilities & in cifs_mount()
3585 tcon = cifs_get_tcon(ses, volume_info); in cifs_mount()
3596 reset_cifs_unix_caps(xid, tcon, cifs_sb, volume_info); in cifs_mount()
3610 cifs_sb->wsize = server->ops->negotiate_wsize(tcon, volume_info); in cifs_mount()
3611 cifs_sb->rsize = server->ops->negotiate_rsize(tcon, volume_info); in cifs_mount()
3626 int refrc = expand_dfs_referral(xid, ses, volume_info, cifs_sb, in cifs_mount()
3644 full_path = cifs_build_path_to_root(volume_info, cifs_sb, tcon); in cifs_mount()
3672 rc = expand_dfs_referral(xid, ses, volume_info, cifs_sb, true); in cifs_mount()