commit-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[hurd] 46/61: trans/fakeroot: override fshelp_isowner


From: Samuel Thibault
Subject: [hurd] 46/61: trans/fakeroot: override fshelp_isowner
Date: Tue, 27 May 2014 08:32:13 +0000

This is an automated email from the git hooks/post-receive script.

sthibault pushed a commit to branch upstream
in repository hurd.

commit 353fe33eb2481a14dc324c7c2e52b2032df86465
Author: Justus Winter <address@hidden>
Date:   Mon May 19 16:46:33 2014 +0200

    trans/fakeroot: override fshelp_isowner
    
    As of recently, fakeroot would fail to create symlinks:
    
    % fakeroot-hurd ln -s foo a
    ln: failed to create symbolic link ‘a’: Operation not permitted
    
    Fix this by overriding fshelp_isowner.
    
    Various netfs functions will call fshelp_isowner to check whether USER
    is allowed to do some operation.  As fakeroot is not running within
    the fakeauth'ed environment, USER contains the real user.
    
    I have no explanation why this ever worked.
    
    * trans/fakeroot.c (fshelp_isowner): New function.
---
 trans/fakeroot.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/trans/fakeroot.c b/trans/fakeroot.c
index c4b95de..4175b55 100644
--- a/trans/fakeroot.c
+++ b/trans/fakeroot.c
@@ -479,6 +479,16 @@ netfs_validate_stat (struct node *np, struct iouser *cred)
   return 0;
 }
 
+/* Various netfs functions will call fshelp_isowner to check whether
+   USER is allowed to do some operation.  As fakeroot is not running
+   within the fakeauth'ed environment, USER contains the real
+   user.  Hence, we override this check.  */
+error_t
+fshelp_isowner (struct stat *st, struct iouser *user)
+{
+  return 0;
+}
+
 error_t
 netfs_attempt_chown (struct iouser *cred, struct node *np,
                     uid_t uid, uid_t gid)

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-hurd/hurd.git



reply via email to

[Prev in Thread] Current Thread [Next in Thread]