Lines Matching refs:resp

24  * N.B. After this call resp->fh needs an fh_put
30 struct nfsd_attrstat *resp = rqstp->rq_resp;
34 fh_copy(&resp->fh, &argp->fh);
35 resp->status = fh_verify(rqstp, &resp->fh, 0,
37 if (resp->status != nfs_ok)
39 resp->status = fh_getattr(&resp->fh, &resp->stat);
46 * N.B. After this call resp->fh needs an fh_put
52 struct nfsd_attrstat *resp = rqstp->rq_resp;
60 fhp = fh_copy(&resp->fh, &argp->fh);
86 resp->status = fh_verify(rqstp, fhp, 0, NFSD_MAY_NOP);
87 if (resp->status != nfs_ok)
103 resp->status = nfsd_setattr(rqstp, fhp, iap, 0, (time64_t)0);
104 if (resp->status != nfs_ok)
107 resp->status = fh_getattr(&resp->fh, &resp->stat);
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;
134 fh_init(&resp->fh, NFS_FHSIZE);
135 resp->status = nfsd_lookup(rqstp, &argp->fh, argp->name, argp->len,
136 &resp->fh);
138 if (resp->status != nfs_ok)
141 resp->status = fh_getattr(&resp->fh, &resp->stat);
153 struct nfsd_readlinkres *resp = rqstp->rq_resp;
158 resp->len = NFS_MAXPATHLEN;
159 resp->status = nfsd_readlink(rqstp, &argp->fh, argp->buffer, &resp->len);
167 * N.B. After this call resp->fh needs an fh_put
173 struct nfsd_readres *resp = rqstp->rq_resp;
194 resp->count = argp->count;
195 resp->status = nfsd_read(rqstp, fh_copy(&resp->fh, &argp->fh),
198 &resp->count,
200 if (resp->status == nfs_ok)
201 resp->status = fh_getattr(&resp->fh, &resp->stat);
202 else if (resp->status == nfserr_jukebox)
216 * N.B. After this call resp->fh needs an fh_put
222 struct nfsd_attrstat *resp = rqstp->rq_resp;
233 resp->status = nfserr_io;
237 resp->status = nfsd_write(rqstp, fh_copy(&resp->fh, &argp->fh),
240 if (resp->status == nfs_ok)
241 resp->status = fh_getattr(&resp->fh, &resp->stat);
242 else if (resp->status == nfserr_jukebox)
252 * N.B. After this call _both_ argp->fh and resp->fh need an fh_put
258 struct nfsd_diropres *resp = rqstp->rq_resp;
260 svc_fh *newfhp = &resp->fh;
272 resp->status = fh_verify(rqstp, dirfhp, S_IFDIR, NFSD_MAY_EXEC);
273 if (resp->status != nfs_ok)
278 resp->status = nfserr_exist;
283 resp->status = nfserrno(hosterr);
290 resp->status = nfserrno(PTR_ERR(dchild));
294 resp->status = fh_compose(newfhp, dirfhp->fh_export, dchild, dirfhp);
295 if (!resp->status && d_really_is_negative(dchild))
296 resp->status = nfserr_noent;
298 if (resp->status) {
299 if (resp->status != nfserr_noent)
305 resp->status = nfserr_acces;
338 resp->status = nfsd_permission(rqstp,
342 if (resp->status && resp->status != nfserr_rofs)
378 resp->status = nfserr_exist;
383 resp->status = nfs_ok;
386 resp->status = nfsd_create_locked(rqstp, dirfhp, argp->name,
398 resp->status = nfsd_setattr(rqstp, newfhp, attr, 0,
408 if (resp->status != nfs_ok)
410 resp->status = fh_getattr(&resp->fh, &resp->stat);
419 struct nfsd_stat *resp = rqstp->rq_resp;
425 resp->status = nfsd_unlink(rqstp, &argp->fh, -S_IFDIR,
435 struct nfsd_stat *resp = rqstp->rq_resp;
442 resp->status = nfsd_rename(rqstp, &argp->ffh, argp->fname, argp->flen,
453 struct nfsd_stat *resp = rqstp->rq_resp;
462 resp->status = nfsd_link(rqstp, &argp->tfh, argp->tname, argp->tlen,
473 struct nfsd_stat *resp = rqstp->rq_resp;
477 resp->status = nfserr_nametoolong;
485 resp->status = nfserrno(PTR_ERR(argp->tname));
494 resp->status = nfsd_symlink(rqstp, &argp->ffh, argp->fname, argp->flen,
506 * N.B. After this call resp->fh needs an fh_put
512 struct nfsd_diropres *resp = rqstp->rq_resp;
516 if (resp->fh.fh_dentry) {
522 fh_init(&resp->fh, NFS_FHSIZE);
523 resp->status = nfsd_create(rqstp, &argp->fh, argp->name, argp->len,
524 &argp->attrs, S_IFDIR, 0, &resp->fh);
526 if (resp->status != nfs_ok)
529 resp->status = fh_getattr(&resp->fh, &resp->stat);
541 struct nfsd_stat *resp = rqstp->rq_resp;
545 resp->status = nfsd_unlink(rqstp, &argp->fh, S_IFDIR,
558 struct nfsd_readdirres *resp = rqstp->rq_resp;
574 resp->buffer = argp->buffer;
575 resp->offset = NULL;
576 resp->buflen = count;
577 resp->common.err = nfs_ok;
580 resp->status = nfsd_readdir(rqstp, &argp->fh, &offset,
581 &resp->common, nfssvc_encode_entry);
583 resp->count = resp->buffer - argp->buffer;
584 if (resp->offset)
585 *resp->offset = htonl(offset);
598 struct nfsd_statfsres *resp = rqstp->rq_resp;
602 resp->status = nfsd_statfs(rqstp, &argp->fh, &resp->stats,