vfs.c (6c0a654dceaa4342270306de77eadb0173dfb58a) vfs.c (32c1eb0cd7ee00b5eb7b6f7059c635fbc1052966)
1#define MSNFS /* HACK HACK */
2/*
3 * linux/fs/nfsd/vfs.c
4 *
5 * File operations used by nfsd. Some of these have been ripped from
6 * other parts of the kernel because they weren't exported, others
7 * are partial duplicates with added or changed functionality.
8 *

--- 226 unchanged lines hidden (view full) ---

235{
236 struct svc_export *exp;
237 struct dentry *dentry;
238 __be32 err;
239
240 err = nfsd_lookup_dentry(rqstp, fhp, name, len, &exp, &dentry);
241 if (err)
242 return err;
1#define MSNFS /* HACK HACK */
2/*
3 * linux/fs/nfsd/vfs.c
4 *
5 * File operations used by nfsd. Some of these have been ripped from
6 * other parts of the kernel because they weren't exported, others
7 * are partial duplicates with added or changed functionality.
8 *

--- 226 unchanged lines hidden (view full) ---

235{
236 struct svc_export *exp;
237 struct dentry *dentry;
238 __be32 err;
239
240 err = nfsd_lookup_dentry(rqstp, fhp, name, len, &exp, &dentry);
241 if (err)
242 return err;
243 err = check_nfsd_access(exp, rqstp);
244 if (err)
245 goto out;
243 /*
244 * Note: we compose the file handle now, but as the
245 * dentry may be negative, it may need to be updated.
246 */
247 err = fh_compose(resfh, exp, dentry, fhp);
248 if (!err && !dentry->d_inode)
249 err = nfserr_noent;
246 /*
247 * Note: we compose the file handle now, but as the
248 * dentry may be negative, it may need to be updated.
249 */
250 err = fh_compose(resfh, exp, dentry, fhp);
251 if (!err && !dentry->d_inode)
252 err = nfserr_noent;
253out:
250 dput(dentry);
251 exp_put(exp);
252 return err;
253}
254
255
256/*
257 * Set various file attributes.

--- 1753 unchanged lines hidden ---
254 dput(dentry);
255 exp_put(exp);
256 return err;
257}
258
259
260/*
261 * Set various file attributes.

--- 1753 unchanged lines hidden ---