kern/143343: ZFS: bug in sunlink flag on directories
Dmitry Morozovsky
marck at FreeBSD.org
Fri Jan 29 12:20:10 UTC 2010
>Number: 143343
>Category: kern
>Synopsis: ZFS: bug in sunlink flag on directories
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Jan 29 12:20:09 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator: Dmitry Morozovsky
>Release: FreeBSD 8-STABLE
>Organization:
Cronyx Plus LLC (RiNet ISP)
>Environment:
System: FreeBSD 8-STABLE
>Description:
On UFS, [s]unlink flag set on a directory does NOT prevent from changing its
content, like creating new files or renaming existing. On ZFS, these flags are
effectively equivalent to immutable.
>How-To-Repeat:
Script started on Fri Jan 29 15:02:57 2010
root at hamster:/var/tmp# echo this is ZFS
this is ZFS
root at hamster:/var/tmp# mkdir sunlnk-test
root at hamster:/var/tmp# cd !$
cd sunlnk-test
root at hamster:/var/tmp/sunlnk-test# mkdir test
root at hamster:/var/tmp/sunlnk-test# chflags sunlnk test
root at hamster:/var/tmp/sunlnk-test# echo 123 >test/testfile
root at hamster:/var/tmp/sunlnk-test# mv test/testfile test/testfile.new
mv: rename test/testfile to test/testfile.new: Operation not permitted
root at hamster:/var/tmp/sunlnk-test# exit
exit
Script done on Fri Jan 29 15:03:52 2010
Script started on Fri Jan 29 15:04:10 2010
root at hamster:/tmp# echo this is UFS
this is UFS
root at hamster:/tmp# mkdir test
root at hamster:/tmp# chflags sunlnk test
root at hamster:/tmp# echo 123 >test/testfile
root at hamster:/tmp# mv test/testfile test/testfile.new
root at hamster:/tmp# rm -rf test
rm: test: Operation not permitted
root at hamster:/tmp# ls -lao test
total 4
drwxr-xr-x 2 root wheel sunlnk 512 Jan 29 15:04 ./
drwxrwxrwt 8 root wheel - 512 Jan 29 15:04 ../
root at hamster:/tmp# exit
exit
Script done on Fri Jan 29 15:05:11 2010
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list