lkml.org 
[lkml]   [2005]   [Dec]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[-mm patch] fs/nfsd/vfs.c: fix possible runtime stack corruption
Compiling 2.6.15-rc5-mm2 with CONFIG_NFSD_V4=n and CONFIG_NFSD_V2_ACL=y 
or CONFIG_NFSD_V3_ACL=y results due to
add-vfs_-helpers-for-xattr-operations.patch in the following:

<-- snip -->

...
CC [M] fs/nfsd/vfs.o
fs/nfsd/vfs.c: In function 'nfsd_getxattr':
fs/nfsd/vfs.c:376: warning: implicit declaration of function 'vfs_getxattr'
fs/nfsd/vfs.c: In function 'nfsd_set_posix_acl':
fs/nfsd/vfs.c:1931: warning: implicit declaration of function 'vfs_setxattr'
fs/nfsd/vfs.c:1936: warning: implicit declaration of function 'vfs_removexattr'
...

<-- snip -->


The possible stack corruption if gcc guessed the types of the parameters
of any of these functions wrong is obvious.


Given the -Werror-implicit-function-declaration flag, gcc would
abort compilation in such cases:

<-- snip -->

...
CC [M] fs/nfsd/vfs.o
fs/nfsd/vfs.c: In function 'nfsd_getxattr':
fs/nfsd/vfs.c:376: error: implicit declaration of function 'vfs_getxattr'
fs/nfsd/vfs.c: In function 'nfsd_set_posix_acl':
fs/nfsd/vfs.c:1931: error: implicit declaration of function 'vfs_setxattr'
fs/nfsd/vfs.c:1936: error: implicit declaration of function 'vfs_removexattr'
make[2]: *** [fs/nfsd/vfs.o] Error 1

<-- snip -->



Signed-off-by: Adrian Bunk <bunk@stusta.de>

--- linux-2.6.15-rc5-mm2-modular/fs/nfsd/vfs.c.old 2005-12-13 22:05:39.000000000 +0100
+++ linux-2.6.15-rc5-mm2-modular/fs/nfsd/vfs.c 2005-12-13 22:05:55.000000000 +0100
@@ -48,8 +48,8 @@
#include <linux/fsnotify.h>
#include <linux/posix_acl.h>
#include <linux/posix_acl_xattr.h>
-#ifdef CONFIG_NFSD_V4
#include <linux/xattr.h>
+#ifdef CONFIG_NFSD_V4
#include <linux/nfs4.h>
#include <linux/nfs4_acl.h>
#include <linux/nfsd_idmap.h>
-
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/

\
 
 \ /
  Last update: 2005-12-14 00:09    [W:0.041 / U:0.368 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site