H A D | nfs4proc.c | 97 struct dentry *dentry = cstate->current_fh.fh_dentry; check_attr_support() 188 do_open_permission(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_open *open, int accmode) do_open_permission() argument 205 status = fh_verify(rqstp, current_fh, S_IFREG, accmode); do_open_permission() 239 struct svc_fh *current_fh = &cstate->current_fh; do_open_lookup() local 269 status = do_nfsd_create(rqstp, current_fh, open->op_fname.data, do_open_lookup() 293 status = nfsd_lookup(rqstp, current_fh, do_open_lookup() 310 set_change_info(&open->op_cinfo, current_fh); do_open_lookup() 318 struct svc_fh *current_fh = &cstate->current_fh; do_open_fhandle() local 328 nfsd4_set_open_owner_reply_cache(cstate, open, current_fh); do_open_fhandle() 344 status = do_open_permission(rqstp, current_fh, open, accmode); do_open_fhandle() 396 fh_put(&cstate->current_fh); nfsd4_open() 397 fh_copy_shallow(&cstate->current_fh.fh_handle, nfsd4_open() 399 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); nfsd4_open() 444 resfh = &cstate->current_fh; nfsd4_open() 468 if (resfh && resfh != &cstate->current_fh) { nfsd4_open() 469 fh_dup2(&cstate->current_fh, resfh); nfsd4_open() 503 if (!cstate->current_fh.fh_dentry) nfsd4_getfh() 506 *getfh = &cstate->current_fh; nfsd4_getfh() 514 fh_put(&cstate->current_fh); nfsd4_putfh() 515 cstate->current_fh.fh_handle.fh_size = putfh->pf_fhlen; nfsd4_putfh() 516 memcpy(&cstate->current_fh.fh_handle.fh_base, putfh->pf_fhval, nfsd4_putfh() 518 return fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_BYPASS_GSS); nfsd4_putfh() 527 fh_put(&cstate->current_fh); nfsd4_putrootfh() 528 status = exp_pseudoroot(rqstp, &cstate->current_fh); nfsd4_putrootfh() 539 fh_dup2(&cstate->current_fh, &cstate->save_fh); nfsd4_restorefh() 551 if (!cstate->current_fh.fh_dentry) nfsd4_savefh() 554 fh_dup2(&cstate->save_fh, &cstate->current_fh); nfsd4_savefh() 573 return nfsd_access(rqstp, &cstate->current_fh, &access->ac_resp_access, nfsd4_access() 596 return nfsd_commit(rqstp, &cstate->current_fh, commit->co_offset, nfsd4_commit() 610 status = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, nfsd4_create() 622 status = nfsd_symlink(rqstp, &cstate->current_fh, nfsd4_create() 632 status = nfsd_create(rqstp, &cstate->current_fh, nfsd4_create() 642 status = nfsd_create(rqstp, &cstate->current_fh, nfsd4_create() 648 status = nfsd_create(rqstp, &cstate->current_fh, nfsd4_create() 654 status = nfsd_create(rqstp, &cstate->current_fh, nfsd4_create() 661 status = nfsd_create(rqstp, &cstate->current_fh, nfsd4_create() 680 fh_unlock(&cstate->current_fh); nfsd4_create() 681 set_change_info(&create->cr_cinfo, &cstate->current_fh); nfsd4_create() 682 fh_dup2(&cstate->current_fh, &resfh); nfsd4_create() 694 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); nfsd4_getattr() 705 getattr->ga_fhp = &cstate->current_fh; nfsd4_getattr() 717 status = nfsd_link(rqstp, &cstate->current_fh, nfsd4_link() 720 set_change_info(&link->li_cinfo, &cstate->current_fh); nfsd4_link() 745 return nfsd4_do_lookupp(rqstp, &cstate->current_fh); nfsd4_lookupp() 752 return nfsd_lookup(rqstp, &cstate->current_fh, nfsd4_lookup() 754 &cstate->current_fh); nfsd4_lookup() 790 read->rd_fhp = &cstate->current_fh; nfsd4_read() 815 readdir->rd_fhp = &cstate->current_fh; nfsd4_readdir() 824 readlink->rl_fhp = &cstate->current_fh; nfsd4_readlink() 836 status = nfsd_unlink(rqstp, &cstate->current_fh, 0, nfsd4_remove() 839 fh_unlock(&cstate->current_fh); nfsd4_remove() 840 set_change_info(&remove->rm_cinfo, &cstate->current_fh); nfsd4_remove() 857 rename->rn_snamelen, &cstate->current_fh, nfsd4_rename() 861 set_change_info(&rename->rn_sinfo, &cstate->current_fh); nfsd4_rename() 876 err = fh_verify(rqstp, &cstate->current_fh, S_IFDIR, NFSD_MAY_EXEC); nfsd4_secinfo() 879 err = nfsd_lookup_dentry(rqstp, &cstate->current_fh, nfsd4_secinfo() 884 fh_unlock(&cstate->current_fh); nfsd4_secinfo() 893 fh_put(&cstate->current_fh); nfsd4_secinfo() 907 err = nfsd4_do_lookupp(rqstp, &cstate->current_fh); nfsd4_secinfo_no_name() 915 sin->sin_exp = exp_get(cstate->current_fh.fh_export); nfsd4_secinfo_no_name() 916 fh_put(&cstate->current_fh); nfsd4_secinfo_no_name() 935 err = fh_want_write(&cstate->current_fh); nfsd4_setattr() 946 status = nfsd4_set_nfs4_acl(rqstp, &cstate->current_fh, nfsd4_setattr() 951 status = nfsd4_set_nfs4_label(rqstp, &cstate->current_fh, nfsd4_setattr() 955 status = nfsd_setattr(rqstp, &cstate->current_fh, &setattr->sa_iattr, nfsd4_setattr() 958 fh_drop_write(&cstate->current_fh); nfsd4_setattr() 1009 status = nfsd_write(rqstp, &cstate->current_fh, filp, nfsd4_write() 1037 status = nfsd4_vfs_fallocate(rqstp, &cstate->current_fh, file, nfsd4_fallocate() 1118 status = fh_verify(rqstp, &cstate->current_fh, 0, NFSD_MAY_NOP); _nfsd4_verify() 1141 status = nfsd4_encode_fattr_to_buf(&p, count, &cstate->current_fh, _nfsd4_verify() 1142 cstate->current_fh.fh_export, _nfsd4_verify() 1143 cstate->current_fh.fh_dentry, _nfsd4_verify() 1255 struct svc_fh *current_fh = &cstate->current_fh; nfsd4_layoutget() local 1275 nfserr = fh_verify(rqstp, current_fh, 0, accmode); nfsd4_layoutget() 1280 ops = nfsd4_layout_verify(current_fh->fh_export, lgp->lg_layout_type); nfsd4_layoutget() 1316 nfserr = ops->proc_layoutget(d_inode(current_fh->fh_dentry), nfsd4_layoutget() 1317 current_fh, lgp); nfsd4_layoutget() 1335 struct svc_fh *current_fh = &cstate->current_fh; nfsd4_layoutcommit() local 1342 nfserr = fh_verify(rqstp, current_fh, 0, NFSD_MAY_WRITE); nfsd4_layoutcommit() 1347 ops = nfsd4_layout_verify(current_fh->fh_export, lcp->lc_layout_type); nfsd4_layoutcommit() 1350 inode = d_inode(current_fh->fh_dentry); nfsd4_layoutcommit() 1399 struct svc_fh *current_fh = &cstate->current_fh; nfsd4_layoutreturn() local 1402 nfserr = fh_verify(rqstp, current_fh, 0, NFSD_MAY_NOP); nfsd4_layoutreturn() 1407 if (!nfsd4_layout_verify(current_fh->fh_export, lrp->lr_layout_type)) nfsd4_layoutreturn() 1615 struct svc_fh *current_fh = &cstate->current_fh; nfsd4_proc_compound() local 1627 fh_init(current_fh, NFS4_FHSIZE); nfsd4_proc_compound() 1668 if (!current_fh->fh_dentry) { nfsd4_proc_compound() 1673 } else if (current_fh->fh_export->ex_fslocs.migrated && nfsd4_proc_compound() 1679 fh_clear_wcc(current_fh); nfsd4_proc_compound() 1712 op->status = check_nfsd_access(current_fh->fh_export, rqstp); nfsd4_proc_compound() 1744 fh_put(current_fh); nfsd4_proc_compound()
|