From 915e8fda7b3f2a5449c98604a327a013f8edfe53 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 12 Nov 2013 12:17:26 -0800 Subject: [PATCH] xattr: fix listing EAs on *BSD for non-root users Thanks to Stefan Rompf for reporting. This fixes bug #10247 Back-ported to 3.6.next from master commit 374b2cfde74e0c61f4b2da724b30d0e430596092 Signed-off-by: Bjoern Jacke Reviewed-by: Jeremy Allison --- source3/lib/system.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source3/lib/system.c b/source3/lib/system.c index 1ca2f5e..d0e34bc 100644 --- a/source3/lib/system.c +++ b/source3/lib/system.c @@ -1801,6 +1801,10 @@ static ssize_t bsd_attr_list (int type, extattr_arg arg, char *list, size_t size char *buf; /* Iterate through extattr(2) namespaces */ for(t = 0; t < (sizeof(extattr)/sizeof(extattr[0])); t++) { + if (t != EXTATTR_NAMESPACE_USER && geteuid() != 0) { + /* ignore all but user namespace when we are not root, see bug 10247 */ + continue; + } switch(type) { #if defined(HAVE_EXTATTR_LIST_FILE) case 0: -- 1.8.4.1