diff options
| author | Andrew Morton <akpm@osdl.org> | 2003-07-10 10:02:29 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@home.osdl.org> | 2003-07-10 10:02:29 -0700 |
| commit | b14241c493ca9d846a058fe945740d9510ae0603 (patch) | |
| tree | 163b64f5188036ce8dd9b388903908473472b0f1 /include/linux/socket.h | |
| parent | ecbaa73016cbdf6377fd07753f85d87673388d83 (diff) | |
[PATCH] Set umask correctly for nfsd kernel threads
From: Andreas Gruenbacher <agruen@suse.de>
Without acls, when creating files the umask is applied directly in the vfs.
ACLs require that the umask is applied at the file system level, depending on
whether or not the containing directory has a default acl. The daemonize()
function makes kernel threads share their fs_struct structure with the init
process. Among other things, fs_struct contains the umask, so all kernel
threads share their umask with init.
The kernel nfsd needs to create files with a umask of 0. Init's umask cannot
simply be changed to 0 --- this would have side effects on init, and init
would have side effects on nfsd. So this patch recreates a fs_struct
structure for nfsd kernel threads, and sets its umask to 0.
This fixes bug #721, <http://www.osdl.net/show_bug.cgi?id=721>.
Diffstat (limited to 'include/linux/socket.h')
0 files changed, 0 insertions, 0 deletions
