bugacl - Bugs: bug #28131, setfacl --physical mode does not...

 
 

bug #28131: setfacl --physical mode does not work

Submitter:  Markus Steinborn <msteinbo>
Submitted:  Mon 30 Nov 2009 02:29:24 PM UTC
   
 
Category:  None Severity:  3 - Normal
Priority:  5 - Normal Item Group:  None
Status:  None Privacy:  Public
Assigned to:  None Open/Closed:  Closed
* Mandatory Fields

Post a Comment

Add a New Comment Rich Markup
   

Discussion

Fri 22 Jan 2010 11:54:37 PM UTC, comment #3: 

Good catch. Thanks for the patch. Added to git:
 http://git.savann ... d36c1f6c428f34a91

Brandon Philips <philips>
Group administrator
Sat 26 Dec 2009 12:40:32 PM UTC, comment #2: 

Well,

fixing the bug in the same way as

http://git.savann ... ommit/?id=63451a0

but this time for setfacl seems to be correct.


But it remains the question why walk_tree_rec decides not to follow symlinks (by setting "follow_symlinks" to 0, and then follows them...

(file #19363)

Markus Steinborn <msteinbo>
Sat 26 Dec 2009 09:54:11 AM UTC, comment #1: 

I took a deeper look at the source code. Assume setfacl
is called as above.

After processing the options, the function walk_tree_rec (file:
libmisc/walk_tree.c) is called with path ".". A little time later, the same function is called with path "2", which is a symlink.

In line 62 of libmisc/walk_tree.c, it is decided not to follow symlinks (that is correct!). In line 77, lstat(...) is called on the symlink "2".

The conditions in line 79 and line 81 are true, so on line 84 stat(...) is called on the symlink "2". Note that "2" is a dangling symlink in my example (otherwise "ls" would have listed a file named "1"), so stat() failes, because stat follows symlinks in contrast to lstat(). This failure is returned to the
caller on line 85.




Please comment the attached patch.

(file #19362)

Markus Steinborn <msteinbo>
Mon 30 Nov 2009 02:29:24 PM UTC, original submission:  

On https://bugzilla. ... bug.cgi?id=488674 I found the following bug, which is always reproduible:

--- cut here ---
msteinbo@acer:/tmp/2>ls -l
insgesamt 0
lrwxrwxrwx 1 msteinbo msteinbo 1 30. Nov 15:21 2 -> 1
msteinbo@acer:/tmp/2>LANG=C ../acl-2.2.49/setfacl/setfacl -RP -m u:bin:r .
lt-setfacl: ./2: No such file or directory
msteinbo@acer:/tmp/2>echo $?
1
--- cut here ---

As you see, version 2.2.49 does not fix this bug.

With version 2.2.39 you get the expected results:

--- cut here ---
msteinbo@acer:/tmp/2>ls -l
insgesamt 0
lrwxrwxrwx 1 msteinbo msteinbo 1 30. Nov 15:21 2 -> 1
msteinbo@acer:/tmp/2>setfacl -RP -m u:bin:r .
msteinbo@acer:/tmp/2>echo $?
0
--- cut here ---

Markus Steinborn <msteinbo>

 

Attached Files

Attached Files
file #19363:  setfacl.patch added by msteinbo (1.1KiB - text/x-patch - New patch, replacing (?) the old one)
file #19362:  acl-physical-walk.patch added by msteinbo (823B - text/x-patch - Proposed patch to fix the bug.)

(Note: upload size limit is set to 4.0MiB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

 

Dependencies

This item does not depend on any other items.

No items depend on this one.

 

Mail Notification Carbon-Copy List

Carbon-Copy List
  • -email is unavailable- added by philips (Posted a comment)
  • -email is unavailable- added by msteinbo (Submitted the item)
  •  

    Votes

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

    History

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2010-01-22 philips Open/ClosedOpen Closed
    2009-12-26 msteinbo Attached File- Added setfacl.patch, #19363
    2009-12-26 msteinbo Attached File- Added acl-physical-walk.patch, #19362

    Back to the top

    Powered by Savane 3.16-a7ba.
    Corresponding source code