DragonFly commits List (threaded) for 2009-05
DragonFly-126.96.36.1995.gd7c75 master sys/kern vfs_helper.c vfs_nlookup.c vfs_vnops.c
Author: Matthew Dillon <email@example.com>
Date: Wed May 6 16:57:44 2009 -0700
fstest regression fixes - POSIX error codes.
Deal with most of the issues found by FreeBSD's fstest regression test:
* Limit path components to 255 characters. Return ENAMETOOLONG if
the limit is exceeded.
* Return EEXIST, EINVAL, and ENOTEMPTY as appropriate when the user
attempts to create, delete, or rename "." or "..", instead of EINVAL.
* Return EISDIR if an attempt is made to open a directory for writing,
instead of EINVAL.
* Return EACCES if an attempt is made to open a file O_TRUNC without
O_RDWR or O_WRONLY, instead of silently dropping the O_TRUNC.
* Implement O_NOFOLLOW semantics generally instead of just with O_EXCL.
Not dealt with:
* DragonFly clears SGID AND SUID on uid or gid change, if not root.
If root is doing the operation SGID/SUID is not cleared.
* HAMMER cannot modify the ctime without rolling a new inode, which
is very expensive, and does not do so when entries are added or
removed from a directory. mtime is modified.
Summary of changes:
sys/kern/vfs_helper.c | 6 ++++++
sys/kern/vfs_nlookup.c | 23 ++++++++++++++++++++---
sys/kern/vfs_vnops.c | 10 ++++++++--
3 files changed, 34 insertions(+), 5 deletions(-)
DragonFly BSD source repository