Lines Matching full:resp
24 * N.B. After this call resp->fh needs an fh_put
30 struct nfsd_attrstat *resp = rqstp->rq_resp; in nfsd_proc_getattr() local
34 fh_copy(&resp->fh, &argp->fh); in nfsd_proc_getattr()
35 resp->status = fh_verify(rqstp, &resp->fh, 0, in nfsd_proc_getattr()
37 if (resp->status != nfs_ok) in nfsd_proc_getattr()
39 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_getattr()
46 * N.B. After this call resp->fh needs an fh_put
52 struct nfsd_attrstat *resp = rqstp->rq_resp; in nfsd_proc_setattr() local
60 fhp = fh_copy(&resp->fh, &argp->fh); in nfsd_proc_setattr()
86 resp->status = fh_verify(rqstp, fhp, 0, NFSD_MAY_NOP); in nfsd_proc_setattr()
87 if (resp->status != nfs_ok) in nfsd_proc_setattr()
103 resp->status = nfsd_setattr(rqstp, fhp, iap, 0, (time64_t)0); in nfsd_proc_setattr()
104 if (resp->status != nfs_ok) in nfsd_proc_setattr()
107 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_setattr()
121 * Note: the dentry in the resp->fh may be negative if the file
123 * N.B. After this call resp->fh needs an fh_put
129 struct nfsd_diropres *resp = rqstp->rq_resp; in nfsd_proc_lookup() local
134 fh_init(&resp->fh, NFS_FHSIZE); in nfsd_proc_lookup()
135 resp->status = nfsd_lookup(rqstp, &argp->fh, argp->name, argp->len, in nfsd_proc_lookup()
136 &resp->fh); in nfsd_proc_lookup()
138 if (resp->status != nfs_ok) in nfsd_proc_lookup()
141 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_lookup()
153 struct nfsd_readlinkres *resp = rqstp->rq_resp; in nfsd_proc_readlink() local
158 resp->len = NFS_MAXPATHLEN; in nfsd_proc_readlink()
159 resp->page = *(rqstp->rq_next_page++); in nfsd_proc_readlink()
160 resp->status = nfsd_readlink(rqstp, &argp->fh, in nfsd_proc_readlink()
161 page_address(resp->page), &resp->len); in nfsd_proc_readlink()
169 * N.B. After this call resp->fh needs an fh_put
175 struct nfsd_readres *resp = rqstp->rq_resp; in nfsd_proc_read() local
188 resp->pages = rqstp->rq_next_page; in nfsd_proc_read()
203 resp->count = argp->count; in nfsd_proc_read()
204 fh_copy(&resp->fh, &argp->fh); in nfsd_proc_read()
205 resp->status = nfsd_read(rqstp, &resp->fh, argp->offset, in nfsd_proc_read()
206 rqstp->rq_vec, v, &resp->count, &eof); in nfsd_proc_read()
207 if (resp->status == nfs_ok) in nfsd_proc_read()
208 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_read()
209 else if (resp->status == nfserr_jukebox) in nfsd_proc_read()
223 * N.B. After this call resp->fh needs an fh_put
229 struct nfsd_attrstat *resp = rqstp->rq_resp; in nfsd_proc_write() local
240 resp->status = nfserr_io; in nfsd_proc_write()
244 resp->status = nfsd_write(rqstp, fh_copy(&resp->fh, &argp->fh), in nfsd_proc_write()
247 if (resp->status == nfs_ok) in nfsd_proc_write()
248 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_write()
249 else if (resp->status == nfserr_jukebox) in nfsd_proc_write()
259 * N.B. After this call _both_ argp->fh and resp->fh need an fh_put
265 struct nfsd_diropres *resp = rqstp->rq_resp; in nfsd_proc_create() local
267 svc_fh *newfhp = &resp->fh; in nfsd_proc_create()
279 resp->status = fh_verify(rqstp, dirfhp, S_IFDIR, NFSD_MAY_EXEC); in nfsd_proc_create()
280 if (resp->status != nfs_ok) in nfsd_proc_create()
285 resp->status = nfserr_exist; in nfsd_proc_create()
290 resp->status = nfserrno(hosterr); in nfsd_proc_create()
297 resp->status = nfserrno(PTR_ERR(dchild)); in nfsd_proc_create()
301 resp->status = fh_compose(newfhp, dirfhp->fh_export, dchild, dirfhp); in nfsd_proc_create()
302 if (!resp->status && d_really_is_negative(dchild)) in nfsd_proc_create()
303 resp->status = nfserr_noent; in nfsd_proc_create()
305 if (resp->status) { in nfsd_proc_create()
306 if (resp->status != nfserr_noent) in nfsd_proc_create()
312 resp->status = nfserr_acces; in nfsd_proc_create()
345 resp->status = nfsd_permission(rqstp, in nfsd_proc_create()
349 if (resp->status && resp->status != nfserr_rofs) in nfsd_proc_create()
385 resp->status = nfserr_exist; in nfsd_proc_create()
390 resp->status = nfs_ok; in nfsd_proc_create()
393 resp->status = nfsd_create_locked(rqstp, dirfhp, argp->name, in nfsd_proc_create()
405 resp->status = nfsd_setattr(rqstp, newfhp, attr, 0, in nfsd_proc_create()
415 if (resp->status != nfs_ok) in nfsd_proc_create()
417 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_create()
426 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_remove() local
432 resp->status = nfsd_unlink(rqstp, &argp->fh, -S_IFDIR, in nfsd_proc_remove()
442 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_rename() local
449 resp->status = nfsd_rename(rqstp, &argp->ffh, argp->fname, argp->flen, in nfsd_proc_rename()
460 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_link() local
469 resp->status = nfsd_link(rqstp, &argp->tfh, argp->tname, argp->tlen, in nfsd_proc_link()
480 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_symlink() local
484 resp->status = nfserr_nametoolong; in nfsd_proc_symlink()
492 resp->status = nfserrno(PTR_ERR(argp->tname)); in nfsd_proc_symlink()
501 resp->status = nfsd_symlink(rqstp, &argp->ffh, argp->fname, argp->flen, in nfsd_proc_symlink()
513 * N.B. After this call resp->fh needs an fh_put
519 struct nfsd_diropres *resp = rqstp->rq_resp; in nfsd_proc_mkdir() local
523 if (resp->fh.fh_dentry) { in nfsd_proc_mkdir()
529 fh_init(&resp->fh, NFS_FHSIZE); in nfsd_proc_mkdir()
530 resp->status = nfsd_create(rqstp, &argp->fh, argp->name, argp->len, in nfsd_proc_mkdir()
531 &argp->attrs, S_IFDIR, 0, &resp->fh); in nfsd_proc_mkdir()
533 if (resp->status != nfs_ok) in nfsd_proc_mkdir()
536 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_mkdir()
548 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_rmdir() local
552 resp->status = nfsd_unlink(rqstp, &argp->fh, S_IFDIR, in nfsd_proc_rmdir()
559 struct nfsd_readdirres *resp, in nfsd_init_dirlist_pages() argument
562 struct xdr_buf *buf = &resp->dirlist; in nfsd_init_dirlist_pages()
563 struct xdr_stream *xdr = &resp->xdr; in nfsd_init_dirlist_pages()
592 struct nfsd_readdirres *resp = rqstp->rq_resp; in nfsd_proc_readdir() local
599 nfsd_init_dirlist_pages(rqstp, resp, argp->count); in nfsd_proc_readdir()
601 resp->common.err = nfs_ok; in nfsd_proc_readdir()
602 resp->cookie_offset = 0; in nfsd_proc_readdir()
604 resp->status = nfsd_readdir(rqstp, &argp->fh, &offset, in nfsd_proc_readdir()
605 &resp->common, nfssvc_encode_entry); in nfsd_proc_readdir()
606 nfssvc_encode_nfscookie(resp, offset); in nfsd_proc_readdir()
619 struct nfsd_statfsres *resp = rqstp->rq_resp; in nfsd_proc_statfs() local
623 resp->status = nfsd_statfs(rqstp, &argp->fh, &resp->stats, in nfsd_proc_statfs()