Blob Blame History Raw
From 97d0eda2562af07b7514de075ddf62f9dd678e51 Mon Sep 17 00:00:00 2001
From: Nick Moriarty <nick.moriarty@york.ac.uk>
Date: Fri, 26 Jul 2019 08:28:09 +0000
Subject: [PATCH] Permit root-owned home directory

On certain types of filesystem (especially NFS appliances which support
multiple operating systems), the user's home directory may report as
being owned by root rather than the user, yet still permit the user to
create and modify files normally (which will be owned by them).

Our users have home directories hosted on a NetApp storage appliance
which uses mixed-mode ACLs but where the home directory is set up with
NTFS ACLs at the top level.  This means they have the expected effective
permissions, but the ownership reports as root.  This could also be the
case if the filesystem were using NFS4 ACLs or similar.
---
 src/pulsecore/core-util.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c
index d75f1d215..601b1d1df 100644
--- a/src/pulsecore/core-util.c
+++ b/src/pulsecore/core-util.c
@@ -1448,7 +1448,7 @@ static int check_ours(const char *p) {
         return -errno;
 
 #ifdef HAVE_GETUID
-    if (st.st_uid != getuid())
+    if (st.st_uid != getuid() && st.st_uid != 0)
         return -EACCES;
 #endif
 
-- 
2.26.2