Lines Matching refs:current_fh
62 struct dentry *dentry = cstate->current_fh.fh_dentry; in check_attr_support()
153 do_open_permission(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open *open, int … in do_open_permission() argument
170 status = fh_verify(rqstp, current_fh, S_IFREG, accmode); in do_open_permission()
194 do_open_lookup(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open *open) in do_open_lookup() argument
226 status = do_nfsd_create(rqstp, current_fh, open->op_fname.data, in do_open_lookup()
241 status = nfsd_lookup(rqstp, current_fh, in do_open_lookup()
243 fh_unlock(current_fh); in do_open_lookup()
261 set_change_info(&open->op_cinfo, current_fh); in do_open_lookup()
262 fh_dup2(current_fh, resfh); in do_open_lookup()
270 do_open_fhandle(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open *open) in do_open_fhandle() argument
283 ¤t_fh->fh_handle); in do_open_fhandle()
299 status = do_open_permission(rqstp, current_fh, open, accmode); in do_open_fhandle()
350 fh_put(&cstate->current_fh); in nfsd4_open()
351 fh_copy_shallow(&cstate->current_fh.fh_handle, in nfsd4_open()
353 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in nfsd4_open()
379 status = do_open_lookup(rqstp, &cstate->current_fh, in nfsd4_open()
391 status = do_open_fhandle(rqstp, &cstate->current_fh, in nfsd4_open()
414 status = nfsd4_process_open2(rqstp, &cstate->current_fh, open); in nfsd4_open()
432 if (!cstate->current_fh.fh_dentry) in nfsd4_getfh()
435 *getfh = &cstate->current_fh; in nfsd4_getfh()
443 fh_put(&cstate->current_fh); in nfsd4_putfh()
444 cstate->current_fh.fh_handle.fh_size = putfh->pf_fhlen; in nfsd4_putfh()
445 memcpy(&cstate->current_fh.fh_handle.fh_base, putfh->pf_fhval, in nfsd4_putfh()
447 return fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_BYPASS_GSS); in nfsd4_putfh()
456 fh_put(&cstate->current_fh); in nfsd4_putrootfh()
457 status = exp_pseudoroot(rqstp, &cstate->current_fh); in nfsd4_putrootfh()
468 fh_dup2(&cstate->current_fh, &cstate->save_fh); in nfsd4_restorefh()
480 if (!cstate->current_fh.fh_dentry) in nfsd4_savefh()
483 fh_dup2(&cstate->save_fh, &cstate->current_fh); in nfsd4_savefh()
502 return nfsd_access(rqstp, &cstate->current_fh, &access->ac_resp_access, in nfsd4_access()
520 return nfsd_commit(rqstp, &cstate->current_fh, commit->co_offset, in nfsd4_commit()
534 status = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, in nfsd4_create()
555 status = nfsd_symlink(rqstp, &cstate->current_fh, in nfsd4_create()
566 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
576 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
582 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
588 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
595 status = nfsd_create(rqstp, &cstate->current_fh, in nfsd4_create()
611 fh_unlock(&cstate->current_fh); in nfsd4_create()
612 set_change_info(&create->cr_cinfo, &cstate->current_fh); in nfsd4_create()
613 fh_dup2(&cstate->current_fh, &resfh); in nfsd4_create()
625 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in nfsd4_getattr()
636 getattr->ga_fhp = &cstate->current_fh; in nfsd4_getattr()
648 status = nfsd_link(rqstp, &cstate->current_fh, in nfsd4_link()
651 set_change_info(&link->li_cinfo, &cstate->current_fh); in nfsd4_link()
676 return nfsd4_do_lookupp(rqstp, &cstate->current_fh); in nfsd4_lookupp()
683 return nfsd_lookup(rqstp, &cstate->current_fh, in nfsd4_lookup()
685 &cstate->current_fh); in nfsd4_lookup()
713 read->rd_fhp = &cstate->current_fh; in nfsd4_read()
738 readdir->rd_fhp = &cstate->current_fh; in nfsd4_readdir()
747 readlink->rl_fhp = &cstate->current_fh; in nfsd4_readlink()
759 status = nfsd_unlink(rqstp, &cstate->current_fh, 0, in nfsd4_remove()
762 fh_unlock(&cstate->current_fh); in nfsd4_remove()
763 set_change_info(&remove->rm_cinfo, &cstate->current_fh); in nfsd4_remove()
780 rename->rn_snamelen, &cstate->current_fh, in nfsd4_rename()
789 S_ISDIR(cstate->current_fh.fh_dentry->d_inode->i_mode))) in nfsd4_rename()
793 set_change_info(&rename->rn_sinfo, &cstate->current_fh); in nfsd4_rename()
809 err = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, NFSD_MAY_EXEC); in nfsd4_secinfo()
812 err = nfsd_lookup_dentry(rqstp, &cstate->current_fh, in nfsd4_secinfo()
825 fh_put(&cstate->current_fh); in nfsd4_secinfo()
839 err = nfsd4_do_lookupp(rqstp, &cstate->current_fh); in nfsd4_secinfo_no_name()
846 exp_get(cstate->current_fh.fh_export); in nfsd4_secinfo_no_name()
847 sin->sin_exp = cstate->current_fh.fh_export; in nfsd4_secinfo_no_name()
848 fh_put(&cstate->current_fh); in nfsd4_secinfo_no_name()
869 err = fh_want_write(&cstate->current_fh); in nfsd4_setattr()
880 status = nfsd4_set_nfs4_acl(rqstp, &cstate->current_fh, in nfsd4_setattr()
884 status = nfsd_setattr(rqstp, &cstate->current_fh, &setattr->sa_iattr, in nfsd4_setattr()
887 fh_drop_write(&cstate->current_fh); in nfsd4_setattr()
920 status = nfsd_write(rqstp, &cstate->current_fh, filp, in nfsd4_write()
944 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); in _nfsd4_verify()
966 status = nfsd4_encode_fattr(&cstate->current_fh, in _nfsd4_verify()
967 cstate->current_fh.fh_export, in _nfsd4_verify()
968 cstate->current_fh.fh_dentry, buf, in _nfsd4_verify()
1183 fh_init(&resp->cstate.current_fh, NFS4_FHSIZE); in nfsd4_proc_compound()
1234 if (!cstate->current_fh.fh_dentry) { in nfsd4_proc_compound()
1239 } else if (cstate->current_fh.fh_export->ex_fslocs.migrated && in nfsd4_proc_compound()
1269 op->status = check_nfsd_access(cstate->current_fh.fh_export, rqstp); in nfsd4_proc_compound()
1304 fh_put(&resp->cstate.current_fh); in nfsd4_proc_compound()