Re: [NFS] [PATCH] Bug in NFS - should init be allowed to set umask???

From: Neil Brown (neilb@cse.unsw.edu.au)
Date: Fri Jul 13 2001 - 23:49:00 EST


On Friday July 13, torvalds@transmeta.com wrote:
>
> On Sat, 14 Jul 2001, Neil Brown wrote:
> >
> > I've found a 4th option. We make it so that fs->umask does not affect
> > nfsd
>
> Me likee.
>
> Applied. I'd only like to double-check that you made sure you changed all
> callers?

There is just the call to vfs_mknod in net/unix/af_unix.c that I
mentioned. I'm not sure what to do about that one.

A
    find -name '*.[ch]' | xargs egrep 'vfs_(mkdir|mknod|create)'

found:
  4 matches in fs/nfsd/vfs.c which I explicitly didn't want to change
  6 matches in fs/devfs/base.c which were really matches for devfs_(mkdir|mknod)
  7 matches in fs/namei.c which the patch changed
  3 matches in kernel/ksyms.c which are EXPORT_SYMBOLs, not calls
  3 matches in include/linux/fs.h which are declatations
  2 matches in net/unix/af_unix.c one is a comment, the other is the
                                   one in question

To be maximally conservative, you might want to apply this patch,
just in case it is important.

NeilBrown

--- ./net/unix/af_unix.c 2001/07/14 04:43:58 1.1
+++ ./net/unix/af_unix.c 2001/07/14 04:46:39
@@ -714,7 +714,7 @@
                  * All right, let's create it.
                  */
                 err = vfs_mknod(nd.dentry->d_inode, dentry,
- S_IFSOCK|sock->inode->i_mode, 0);
+ (S_IFSOCK|sock->inode->i_mode) & ~current->fs->umask, 0);
                 if (err)
                         goto out_mknod_dput;
                 up(&nd.dentry->d_inode->i_sem);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Jul 15 2001 - 21:00:20 EST