Lines Matching refs:sr

59 smb_setinfo_rename(smb_request_t *sr, smb_node_t *node, char *path, int flags)  in smb_setinfo_rename()  argument
61 smb_fqi_t *src_fqi = &sr->arg.dirop.fqi; in smb_setinfo_rename()
62 smb_fqi_t *dst_fqi = &sr->arg.dirop.dst_fqi; in smb_setinfo_rename()
66 sr->arg.dirop.flags = flags ? SMB_RENAME_FLAG_OVERWRITE : 0; in smb_setinfo_rename()
67 sr->arg.dirop.info_level = FileRenameInformation; in smb_setinfo_rename()
74 smb_pathname_init(sr, dst_pn, path); in smb_setinfo_rename()
75 if (!smb_pathname_validate(sr, dst_pn)) in smb_setinfo_rename()
78 status = smb_common_rename(sr, src_fqi, dst_fqi); in smb_setinfo_rename()
97 smb_common_rename(smb_request_t *sr, smb_fqi_t *src_fqi, smb_fqi_t *dst_fqi) in smb_common_rename() argument
106 tnode = sr->tid_tree->t_snode; in smb_common_rename()
126 rc = smb_rename_lookup_src(sr); in smb_common_rename()
135 status = smb_rename_check_src(sr, src_fqi); in smb_common_rename()
157 rc = smb_pathname_reduce(sr, sr->user_cr, path, tnode, tnode, in smb_common_rename()
160 smb_rename_release_src(sr); in smb_common_rename()
171 smb_rename_release_src(sr); in smb_common_rename()
177 rc = smb_fsop_lookup(sr, sr->user_cr, 0, tnode, in smb_common_rename()
183 smb_rename_release_src(sr); in smb_common_rename()
211 if (smb_tree_has_feature(sr->tid_tree, in smb_common_rename()
215 smb_rename_release_src(sr); in smb_common_rename()
220 rc = smb_fsop_lookup(sr, sr->user_cr, in smb_common_rename()
226 smb_rename_release_src(sr); in smb_common_rename()
235 smb_rename_release_src(sr); in smb_common_rename()
246 if ((sr->arg.dirop.flags & SMB_RENAME_FLAG_OVERWRITE) == 0) { in smb_common_rename()
247 smb_rename_release_src(sr); in smb_common_rename()
255 if (sr->session->dialect >= SMB_VERS_2_BASE) in smb_common_rename()
256 (void) smb2sr_go_async(sr); in smb_common_rename()
257 (void) smb_oplock_wait_break(sr, dst_fnode, 0); in smb_common_rename()
261 smb_rename_release_src(sr); in smb_common_rename()
271 smb_rename_release_src(sr); in smb_common_rename()
295 smb_rename_release_src(sr); in smb_common_rename()
304 rc = smb_fsop_rename(sr, sr->user_cr, in smb_common_rename()
326 smb_rename_release_src(sr); in smb_common_rename()
394 smb_setinfo_link(smb_request_t *sr, smb_node_t *node, char *path, int flags) in smb_setinfo_link() argument
396 smb_fqi_t *src_fqi = &sr->arg.dirop.fqi; in smb_setinfo_link()
397 smb_fqi_t *dst_fqi = &sr->arg.dirop.dst_fqi; in smb_setinfo_link()
401 sr->arg.dirop.flags = flags ? SMB_RENAME_FLAG_OVERWRITE : 0; in smb_setinfo_link()
402 sr->arg.dirop.info_level = FileLinkInformation; in smb_setinfo_link()
409 smb_pathname_init(sr, dst_pn, path); in smb_setinfo_link()
410 if (!smb_pathname_validate(sr, dst_pn)) in smb_setinfo_link()
413 status = smb_make_link(sr, src_fqi, dst_fqi); in smb_setinfo_link()
434 smb_make_link(smb_request_t *sr, smb_fqi_t *src_fqi, smb_fqi_t *dst_fqi) in smb_make_link() argument
440 tnode = sr->tid_tree->t_snode; in smb_make_link()
455 rc = smb_rename_lookup_src(sr); in smb_make_link()
483 rc = smb_pathname_reduce(sr, sr->user_cr, path, tnode, tnode, in smb_make_link()
486 smb_rename_release_src(sr); in smb_make_link()
495 smb_rename_release_src(sr); in smb_make_link()
501 smb_rename_release_src(sr); in smb_make_link()
507 rc = smb_fsop_lookup(sr, sr->user_cr, 0, tnode, in smb_make_link()
514 smb_rename_release_src(sr); in smb_make_link()
519 rc = smb_fsop_link(sr, sr->user_cr, src_fqi->fq_fnode, in smb_make_link()
527 smb_rename_release_src(sr); in smb_make_link()
543 smb_rename_lookup_src(smb_request_t *sr) in smb_rename_lookup_src() argument
549 smb_fqi_t *src_fqi = &sr->arg.dirop.fqi; in smb_rename_lookup_src()
555 tnode = sr->tid_tree->t_snode; in smb_rename_lookup_src()
557 rc = smb_pathname_reduce(sr, sr->user_cr, path, tnode, tnode, in smb_rename_lookup_src()
563 rc = smb_fsop_lookup(sr, sr->user_cr, 0, tnode, in smb_rename_lookup_src()
571 rc = smb_rename_check_attr(sr, src_fqi->fq_fnode, src_fqi->fq_sattr); in smb_rename_lookup_src()
594 smb_rename_check_src(smb_request_t *sr, smb_fqi_t *src_fqi) in smb_rename_check_src() argument
608 if (sr->fid_ofile != NULL) { in smb_rename_check_src()
609 status = smb_oplock_break_SETINFO(src_node, sr->fid_ofile, in smb_rename_check_src()
612 if (sr->session->dialect >= SMB_VERS_2_BASE) in smb_rename_check_src()
613 (void) smb2sr_go_async(sr); in smb_rename_check_src()
614 (void) smb_oplock_wait_break(sr, src_node, 0); in smb_rename_check_src()
635 ASSERT(sr->session->dialect < SMB_VERS_2_BASE); in smb_rename_check_src()
638 (void) smb_oplock_wait_break(sr, src_node, 0); in smb_rename_check_src()
655 (void) smb_oplock_wait_break(sr, src_node, 0); in smb_rename_check_src()
686 smb_rename_release_src(smb_request_t *sr) in smb_rename_release_src() argument
688 smb_fqi_t *src_fqi = &sr->arg.dirop.fqi; in smb_rename_release_src()
697 smb_rename_check_attr(smb_request_t *sr, smb_node_t *node, uint16_t sattr) in smb_rename_check_attr() argument
703 if (smb_node_getattr(sr, node, zone_kcred(), NULL, &attr) != 0) in smb_rename_check_attr()