Lines Matching full:resp
49 * N.B. After this call resp->fh needs an fh_put
55 struct nfsd_attrstat *resp = rqstp->rq_resp; in nfsd_proc_getattr() local
59 fh_copy(&resp->fh, &argp->fh); in nfsd_proc_getattr()
60 resp->status = fh_verify(rqstp, &resp->fh, 0, in nfsd_proc_getattr()
62 if (resp->status != nfs_ok) in nfsd_proc_getattr()
64 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_getattr()
66 resp->status = nfsd_map_status(resp->status); in nfsd_proc_getattr()
72 * N.B. After this call resp->fh needs an fh_put
78 struct nfsd_attrstat *resp = rqstp->rq_resp; in nfsd_proc_setattr() local
89 fhp = fh_copy(&resp->fh, &argp->fh); in nfsd_proc_setattr()
115 resp->status = fh_verify(rqstp, fhp, 0, NFSD_MAY_NOP); in nfsd_proc_setattr()
116 if (resp->status != nfs_ok) in nfsd_proc_setattr()
132 resp->status = nfsd_setattr(rqstp, fhp, &attrs, NULL); in nfsd_proc_setattr()
133 if (resp->status != nfs_ok) in nfsd_proc_setattr()
136 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_setattr()
138 resp->status = nfsd_map_status(resp->status); in nfsd_proc_setattr()
151 * Note: the dentry in the resp->fh may be negative if the file
153 * N.B. After this call resp->fh needs an fh_put
159 struct nfsd_diropres *resp = rqstp->rq_resp; in nfsd_proc_lookup() local
164 fh_init(&resp->fh, NFS_FHSIZE); in nfsd_proc_lookup()
165 resp->status = nfsd_lookup(rqstp, &argp->fh, argp->name, argp->len, in nfsd_proc_lookup()
166 &resp->fh); in nfsd_proc_lookup()
168 if (resp->status != nfs_ok) in nfsd_proc_lookup()
171 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_lookup()
173 resp->status = nfsd_map_status(resp->status); in nfsd_proc_lookup()
184 struct nfsd_readlinkres *resp = rqstp->rq_resp; in nfsd_proc_readlink() local
189 resp->len = NFS_MAXPATHLEN; in nfsd_proc_readlink()
190 resp->page = *(rqstp->rq_next_page++); in nfsd_proc_readlink()
191 resp->status = nfsd_readlink(rqstp, &argp->fh, in nfsd_proc_readlink()
192 page_address(resp->page), &resp->len); in nfsd_proc_readlink()
195 resp->status = nfsd_map_status(resp->status); in nfsd_proc_readlink()
201 * N.B. After this call resp->fh needs an fh_put
207 struct nfsd_readres *resp = rqstp->rq_resp; in nfsd_proc_read() local
217 resp->pages = rqstp->rq_next_page; in nfsd_proc_read()
224 resp->count = argp->count; in nfsd_proc_read()
225 fh_copy(&resp->fh, &argp->fh); in nfsd_proc_read()
226 resp->status = nfsd_read(rqstp, &resp->fh, argp->offset, in nfsd_proc_read()
227 &resp->count, &eof); in nfsd_proc_read()
228 if (resp->status == nfs_ok) in nfsd_proc_read()
229 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_read()
230 else if (resp->status == nfserr_jukebox) in nfsd_proc_read()
232 resp->status = nfsd_map_status(resp->status); in nfsd_proc_read()
245 * N.B. After this call resp->fh needs an fh_put
251 struct nfsd_attrstat *resp = rqstp->rq_resp; in nfsd_proc_write() local
261 resp->status = nfsd_write(rqstp, fh_copy(&resp->fh, &argp->fh), in nfsd_proc_write()
264 if (resp->status == nfs_ok) in nfsd_proc_write()
265 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_write()
266 else if (resp->status == nfserr_jukebox) in nfsd_proc_write()
268 resp->status = nfsd_map_status(resp->status); in nfsd_proc_write()
276 * N.B. After this call _both_ argp->fh and resp->fh need an fh_put
282 struct nfsd_diropres *resp = rqstp->rq_resp; in nfsd_proc_create() local
284 svc_fh *newfhp = &resp->fh; in nfsd_proc_create()
299 resp->status = fh_verify(rqstp, dirfhp, S_IFDIR, NFSD_MAY_EXEC); in nfsd_proc_create()
300 if (resp->status != nfs_ok) in nfsd_proc_create()
305 resp->status = nfserr_exist; in nfsd_proc_create()
310 resp->status = nfserrno(hosterr); in nfsd_proc_create()
317 resp->status = nfserrno(PTR_ERR(dchild)); in nfsd_proc_create()
321 resp->status = fh_compose(newfhp, dirfhp->fh_export, dchild, dirfhp); in nfsd_proc_create()
322 if (!resp->status && d_really_is_negative(dchild)) in nfsd_proc_create()
323 resp->status = nfserr_noent; in nfsd_proc_create()
325 if (resp->status) { in nfsd_proc_create()
326 if (resp->status != nfserr_noent) in nfsd_proc_create()
332 resp->status = nfserr_acces; in nfsd_proc_create()
365 resp->status = nfsd_permission( in nfsd_proc_create()
370 if (resp->status && resp->status != nfserr_rofs) in nfsd_proc_create()
406 resp->status = nfserr_exist; in nfsd_proc_create()
411 resp->status = nfs_ok; in nfsd_proc_create()
414 resp->status = nfsd_create_locked(rqstp, dirfhp, &attrs, type, in nfsd_proc_create()
425 resp->status = nfsd_setattr(rqstp, newfhp, &attrs, in nfsd_proc_create()
434 if (resp->status != nfs_ok) in nfsd_proc_create()
436 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_create()
438 resp->status = nfsd_map_status(resp->status); in nfsd_proc_create()
446 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_remove() local
452 resp->status = nfsd_unlink(rqstp, &argp->fh, -S_IFDIR, in nfsd_proc_remove()
455 resp->status = nfsd_map_status(resp->status); in nfsd_proc_remove()
463 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_rename() local
470 resp->status = nfsd_rename(rqstp, &argp->ffh, argp->fname, argp->flen, in nfsd_proc_rename()
474 resp->status = nfsd_map_status(resp->status); in nfsd_proc_rename()
482 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_link() local
491 resp->status = nfsd_link(rqstp, &argp->tfh, argp->tname, argp->tlen, in nfsd_proc_link()
495 resp->status = nfsd_map_status(resp->status); in nfsd_proc_link()
503 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_symlink() local
510 resp->status = nfserr_nametoolong; in nfsd_proc_symlink()
518 resp->status = nfserrno(PTR_ERR(argp->tname)); in nfsd_proc_symlink()
527 resp->status = nfsd_symlink(rqstp, &argp->ffh, argp->fname, argp->flen, in nfsd_proc_symlink()
534 resp->status = nfsd_map_status(resp->status); in nfsd_proc_symlink()
540 * N.B. After this call resp->fh needs an fh_put
546 struct nfsd_diropres *resp = rqstp->rq_resp; in nfsd_proc_mkdir() local
553 if (resp->fh.fh_dentry) { in nfsd_proc_mkdir()
559 fh_init(&resp->fh, NFS_FHSIZE); in nfsd_proc_mkdir()
560 resp->status = nfsd_create(rqstp, &argp->fh, argp->name, argp->len, in nfsd_proc_mkdir()
561 &attrs, S_IFDIR, 0, &resp->fh); in nfsd_proc_mkdir()
563 if (resp->status != nfs_ok) in nfsd_proc_mkdir()
566 resp->status = fh_getattr(&resp->fh, &resp->stat); in nfsd_proc_mkdir()
568 resp->status = nfsd_map_status(resp->status); in nfsd_proc_mkdir()
579 struct nfsd_stat *resp = rqstp->rq_resp; in nfsd_proc_rmdir() local
583 resp->status = nfsd_unlink(rqstp, &argp->fh, S_IFDIR, in nfsd_proc_rmdir()
586 resp->status = nfsd_map_status(resp->status); in nfsd_proc_rmdir()
591 struct nfsd_readdirres *resp, in nfsd_init_dirlist_pages() argument
594 struct xdr_buf *buf = &resp->dirlist; in nfsd_init_dirlist_pages()
595 struct xdr_stream *xdr = &resp->xdr; in nfsd_init_dirlist_pages()
615 struct nfsd_readdirres *resp = rqstp->rq_resp; in nfsd_proc_readdir() local
622 nfsd_init_dirlist_pages(rqstp, resp, argp->count); in nfsd_proc_readdir()
624 resp->common.err = nfs_ok; in nfsd_proc_readdir()
625 resp->cookie_offset = 0; in nfsd_proc_readdir()
627 resp->status = nfsd_readdir(rqstp, &argp->fh, &offset, in nfsd_proc_readdir()
628 &resp->common, nfssvc_encode_entry); in nfsd_proc_readdir()
629 nfssvc_encode_nfscookie(resp, offset); in nfsd_proc_readdir()
632 resp->status = nfsd_map_status(resp->status); in nfsd_proc_readdir()
643 struct nfsd_statfsres *resp = rqstp->rq_resp; in nfsd_proc_statfs() local
647 resp->status = nfsd_statfs(rqstp, &argp->fh, &resp->stats, in nfsd_proc_statfs()
650 resp->status = nfsd_map_status(resp->status); in nfsd_proc_statfs()