Lines Matching refs:vcspec

121 smb_sm_lookupint(struct smb_vcspec *vcspec, struct smb_sharespec *shspec,  in smb_sm_lookupint()  argument
129 vcspec->shspec = shspec; in smb_sm_lookupint()
139 !CONNADDREQ(vcp->vc_paddr, vcspec->sap) || in smb_sm_lookupint()
140 strcmp(vcp->vc_username, vcspec->username) != 0) in smb_sm_lookupint()
142 if (vcspec->owner != SMBM_ANY_OWNER) { in smb_sm_lookupint()
143 if (vcp->vc_uid != vcspec->owner) in smb_sm_lookupint()
147 if (vcspec->group != SMBM_ANY_GROUP) { in smb_sm_lookupint()
148 if (vcp->vc_grp != vcspec->group) in smb_sm_lookupint()
152 if (vcspec->mode & SMBM_EXACT) { in smb_sm_lookupint()
153 if (!exact || (vcspec->mode & SMBM_MASK) != in smb_sm_lookupint()
157 if (smb_vc_access(vcp, scred, vcspec->mode) != 0) in smb_sm_lookupint()
159 vcspec->ssp = NULL; in smb_sm_lookupint()
162 &vcspec->ssp); in smb_sm_lookupint()
181 smb_sm_lookup(struct smb_vcspec *vcspec, struct smb_sharespec *shspec, in smb_sm_lookup() argument
193 error = smb_sm_lookupint(vcspec, shspec, scred, vcpp); in smb_sm_lookup()
194 if (error == 0 || (vcspec->flags & SMBV_CREATE) == 0) { in smb_sm_lookup()
198 error = smb_sm_lookupint(vcspec, NULL, scred, &vcp); in smb_sm_lookup()
200 error = smb_vc_create(vcspec, scred, &vcp); in smb_sm_lookup()
214 vcspec->ssp = ssp; in smb_sm_lookup()
388 smb_vc_create(struct smb_vcspec *vcspec, in smb_vc_create() argument
393 uid_t uid = vcspec->owner; in smb_vc_create()
394 gid_t gid = vcspec->group; in smb_vc_create()
396 char *domain = vcspec->domain; in smb_vc_create()
415 vcp->vc_mode = vcspec->rights & SMBM_MASK; in smb_vc_create()
416 vcp->obj.co_flags = vcspec->flags & (SMBV_PRIVATE | SMBV_SINGLESHARE); in smb_vc_create()
432 vcp->vc_paddr = sodupsockaddr(vcspec->sap, M_WAITOK); in smb_vc_create()
435 vcp->vc_laddr = sodupsockaddr(vcspec->lap, M_WAITOK); in smb_vc_create()
438 vcp->vc_pass = smb_strdup(vcspec->pass); in smb_vc_create()
445 vcp->vc_srvname = smb_strdup(vcspec->srvname); in smb_vc_create()
448 vcp->vc_username = smb_strdup(vcspec->username); in smb_vc_create()
451 error = (int)iconv_open("tolower", vcspec->localcs, &vcp->vc_tolower); in smb_vc_create()
454 error = (int)iconv_open("toupper", vcspec->localcs, &vcp->vc_toupper); in smb_vc_create()
457 if (vcspec->servercs[0]) { in smb_vc_create()
458 error = (int)iconv_open(vcspec->servercs, vcspec->localcs, in smb_vc_create()
462 error = (int)iconv_open(vcspec->localcs, vcspec->servercs, in smb_vc_create()
470 error = (int)iconv_open(SMB_UNICODE_NAME, vcspec->localcs, in smb_vc_create()
473 error = (int)iconv_open(vcspec->localcs, SMB_UNICODE_NAME, in smb_vc_create()