1
linux/fs/nfsd
J. Bruce Fields 4b2ca38ad6 knfsd: nfsd4: fix handling of acl errrors
nfs4_acl_nfsv4_to_posix() returns an error and returns any posix acls
calculated in two caller-provided pointers.  It was setting these pointers to
-errno in some error cases, resulting in nfsd4_set_nfs4_acl() calling
posix_acl_release() with a -errno as an argument.

Fix both the caller and the callee, by modifying nfsd4_set_nfs4_acl() to
stop relying on the passed-in-pointers being left as NULL in the error
case, and by modifying nfs4_acl_nfsv4_to_posix() to stop returning
garbage in those pointers.

Thanks to Alex Soule for reporting the bug.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
Cc: Alexander Soule <soule@umich.edu>
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-17 10:23:07 -07:00
..
auth.c
export.c knfsd: exportfs: add exportfs.h header 2007-07-17 10:23:06 -07:00
lockd.c knfsd: lockd: nfsd4: use same grace period for lockd and nfsd4 2007-07-17 10:23:07 -07:00
Makefile knfsd: trivial makefile cleanup 2007-05-09 12:30:54 -07:00
nfs2acl.c [PATCH] Fix a free-wrong-pointer bug in nfs/acl server. 2007-02-19 16:13:28 -08:00
nfs3acl.c [PATCH] NFS3: Calculate 'w' a bit later in nfs3svc_encode_getaclres() 2006-12-08 08:29:02 -08:00
nfs3proc.c RPC: add wrapper for svc_reserve to account for checksum 2007-05-09 12:30:54 -07:00
nfs3xdr.c knfsd: various nfsd xdr cleanups 2007-05-09 12:30:54 -07:00
nfs4acl.c knfsd: nfsd4: fix handling of acl errrors 2007-07-17 10:23:07 -07:00
nfs4callback.c knfsd: nfsd4: fix enc_stateid_sz for nfsd callbacks 2007-07-17 10:23:07 -07:00
nfs4idmap.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
nfs4proc.c [PATCH] knfsd: nfsd4: simplify filehandle check 2006-12-13 09:05:54 -08:00
nfs4recover.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
nfs4state.c knfsd: lockd: nfsd4: use same grace period for lockd and nfsd4 2007-07-17 10:23:07 -07:00
nfs4xdr.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
nfscache.c [PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses 2007-02-12 09:48:36 -08:00
nfsctl.c nfsd warning fix 2007-07-17 10:23:06 -07:00
nfsfh.c knfsd: exportfs: add procedural interface for NFSD 2007-07-17 10:23:06 -07:00
nfsproc.c RPC: add wrapper for svc_reserve to account for checksum 2007-05-09 12:30:54 -07:00
nfssvc.c Freezer: make kernel threads nonfreezable by default 2007-07-17 10:23:02 -07:00
nfsxdr.c knfsd: various nfsd xdr cleanups 2007-05-09 12:30:54 -07:00
stats.c [PATCH] knfsd: nfsd4: add per-operation server stats 2006-07-10 13:24:27 -07:00
vfs.c knfsd: nfsd4: fix handling of acl errrors 2007-07-17 10:23:07 -07:00