DragonFly-2.2.1.24.gfa830 DragonFly_RELEASE_2_2 sys/kern vfs_helper.c vfs_nlookup.c vfs_vnops.c
Simon Schubert
corecode at crater.dragonflybsd.org
Wed Jul 15 07:13:00 PDT 2009
commit fa8302b1b7803a0621c8975e38e763f1c3aeae8d
Author: Simon 'corecode' Schubert <corecode at fs.ei.tum.de>
Date: Wed Jul 15 16:04:42 2009 +0200
MFC: fstest regression fixes - POSIX error codes.
Partial MFC of d7c75c7a20590cab729c3d653aaa91a4960d6165:
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 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 MFC'd:
* Return EISDIR if an attempt is made to open a directory for writing,
instead of EINVAL.
This is required so that /usr/bin/tar can extract to an existing
directory:
tar cf - . | (cd otherdir && tar xof -)
failed before (breaking nrelease).
Summary of changes:
sys/kern/vfs_helper.c | 6 ++++++
sys/kern/vfs_nlookup.c | 19 ++++++++++++++++---
sys/kern/vfs_vnops.c | 12 ++++++++++--
3 files changed, 32 insertions(+), 5 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/fa8302b1b7803a0621c8975e38e763f1c3aeae8d
--
DragonFly BSD source repository
More information about the Commits
mailing list