* append-only attribute support [not found] ` <1106327280.9849.32.camel@lade.trondhjem.org> @ 2005-01-21 17:56 ` Aaron D. Ball 2005-01-21 18:02 ` Trond Myklebust 0 siblings, 1 reply; 4+ messages in thread From: Aaron D. Ball @ 2005-01-21 17:56 UTC (permalink / raw) To: nfs knfsd as of Linux 2.6.10 refuses to have anything to do with files or directories with the append-only attribute set: not even read operations are allowed. While I understand that NFS doesn't support the idea of appending to files, it seems like there should at least be read and mkdir support for append-only files and directories, and that this could be implemented with a couple small changes to the logic of fs/nfsd/vfs.c. Does that seem reasonable? Is it likely to happen soon? Should I try to work up a patch? Though I haven't tested this, it looks like a one-line fix at first glance: --- vfs.c~ 2004-12-24 16:34:31.000000000 -0500 +++ vfs.c 2005-01-21 12:52:14.000000000 -0500 @@ -658,7 +658,7 @@ * with mandatory locking enabled */ err = nfserr_perm; - if (IS_APPEND(inode) || IS_ISMNDLK(inode)) + if ((IS_APPEND(inode) || (access & MAY_WRITE)) || IS_ISMNDLK(inode)) goto out; if (!inode->i_fop) goto out; ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ NFS maillist - NFS@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nfs ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: append-only attribute support 2005-01-21 17:56 ` append-only attribute support Aaron D. Ball @ 2005-01-21 18:02 ` Trond Myklebust 2005-01-21 18:12 ` Aaron D. Ball 0 siblings, 1 reply; 4+ messages in thread From: Trond Myklebust @ 2005-01-21 18:02 UTC (permalink / raw) To: Aaron D. Ball; +Cc: nfs fr den 21.01.2005 Klokka 12:56 (-0500) skreiv Aaron D. Ball: > --- vfs.c~ 2004-12-24 16:34:31.000000000 -0500 > +++ vfs.c 2005-01-21 12:52:14.000000000 -0500 > @@ -658,7 +658,7 @@ > * with mandatory locking enabled > */ > err = nfserr_perm; > - if (IS_APPEND(inode) || IS_ISMNDLK(inode)) > + if ((IS_APPEND(inode) || (access & MAY_WRITE)) || > IS_ISMNDLK(inode)) > goto out; > if (!inode->i_fop) > goto out; Don't you mean if ((IS_APPEND(inode) && (access & MAY_WRITE)) || IS_ISMNDLK(inode)) ;-) Cheers, Trond -- Trond Myklebust <trond.myklebust@fys.uio.no> ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ NFS maillist - NFS@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nfs ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: append-only attribute support 2005-01-21 18:02 ` Trond Myklebust @ 2005-01-21 18:12 ` Aaron D. Ball 2005-01-24 4:27 ` Neil Brown 0 siblings, 1 reply; 4+ messages in thread From: Aaron D. Ball @ 2005-01-21 18:12 UTC (permalink / raw) To: Trond Myklebust; +Cc: nfs Trond Myklebust wrote: > Don't you mean > > if ((IS_APPEND(inode) && (access & MAY_WRITE)) || IS_ISMNDLK(inode)) > >;-) > > Yep, I retyped it without my brain engaged. Guess 1 PM is past my bedtime. It'll be a few hours before I can try this out. Does anything else suggest itself in the mean time? ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ NFS maillist - NFS@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nfs ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: append-only attribute support 2005-01-21 18:12 ` Aaron D. Ball @ 2005-01-24 4:27 ` Neil Brown 0 siblings, 0 replies; 4+ messages in thread From: Neil Brown @ 2005-01-24 4:27 UTC (permalink / raw) To: Aaron D. Ball; +Cc: Trond Myklebust, nfs On Friday January 21, adb@bdi.com wrote: > Trond Myklebust wrote: > > > Don't you mean > > > > if ((IS_APPEND(inode) && (access & MAY_WRITE)) || IS_ISMNDLK(inode)) > > > >;-) > > > > > Yep, I retyped it without my brain engaged. Guess 1 PM is past my bedtime. > > It'll be a few hours before I can try this out. Does anything else > suggest itself in the mean time? Sounds sensible. I'll forward the following patch off in due course. NeilBrown ----------- Diffstat output ------------ ./fs/nfsd/vfs.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff ./fs/nfsd/vfs.c~current~ ./fs/nfsd/vfs.c --- ./fs/nfsd/vfs.c~current~ 2005-01-24 15:25:31.000000000 +1100 +++ ./fs/nfsd/vfs.c 2005-01-24 15:26:39.000000000 +1100 @@ -656,12 +656,15 @@ nfsd_open(struct svc_rqst *rqstp, struct dentry = fhp->fh_dentry; inode = dentry->d_inode; - /* Disallow access to files with the append-only bit set or - * with mandatory locking enabled + /* Disallow write access to files with the append-only bit set + * or any access when mandatory locking enabled */ err = nfserr_perm; - if (IS_APPEND(inode) || IS_ISMNDLK(inode)) + if (IS_APPEND(inode) && (access & MAY_WRITE)) goto out; + if (IS_ISMNDLK(inode)) + goto out; + if (!inode->i_fop) goto out; ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ NFS maillist - NFS@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nfs ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2005-01-24 4:27 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <8381054C-6B13-11D9-BFA6-000D933B35AA@bdi.com>
[not found] ` <1106318654.3200.38.camel@tribesman.namesys.com>
[not found] ` <1106322787.30627.5.camel@lade.trondhjem.org>
[not found] ` <41F12C75.5040007@bdi.com>
[not found] ` <1106327280.9849.32.camel@lade.trondhjem.org>
2005-01-21 17:56 ` append-only attribute support Aaron D. Ball
2005-01-21 18:02 ` Trond Myklebust
2005-01-21 18:12 ` Aaron D. Ball
2005-01-24 4:27 ` Neil Brown
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox