X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=fs%2Fnfsctl.c;h=b27451909dff0d17b2f148adad84f964214bac83;hb=ad6b646fe55c40ec193240b974561f0a3775d68d;hp=51f1b31acbf69c7a2aad8877f5b34c9fe19d6ec3;hpb=dcb76f88683618ed6ef0df66643dba1285881ee5;p=~andy%2Flinux diff --git a/fs/nfsctl.c b/fs/nfsctl.c index 51f1b31acbf..b27451909df 100644 --- a/fs/nfsctl.c +++ b/fs/nfsctl.c @@ -10,6 +10,8 @@ #include #include #include +#include +#include #include #include #include @@ -36,14 +38,16 @@ static struct file *do_open(char *name, int flags) return ERR_PTR(error); if (flags == O_RDWR) - error = may_open(&nd,MAY_READ|MAY_WRITE,FMODE_READ|FMODE_WRITE); + error = may_open(&nd.path, MAY_READ|MAY_WRITE, + FMODE_READ|FMODE_WRITE); else - error = may_open(&nd, MAY_WRITE, FMODE_WRITE); + error = may_open(&nd.path, MAY_WRITE, FMODE_WRITE); if (!error) - return dentry_open(nd.dentry, nd.mnt, flags); + return dentry_open(nd.path.dentry, nd.path.mnt, flags, + current_cred()); - path_release(&nd); + path_put(&nd.path); return ERR_PTR(error); }