diff options
author | jh <jh@FreeBSD.org> | 2012-04-20 10:08:30 +0000 |
---|---|---|
committer | jh <jh@FreeBSD.org> | 2012-04-20 10:08:30 +0000 |
commit | 433fc8eeffa614ac974539d56caf875a8b001065 (patch) | |
tree | 7960ee28ef510eff0326cb4b3ab2eeb2080d586f /sys/kern/vfs_syscalls.c | |
parent | b85b9300bc3e968d4d6ce9f8f09fdedb3311f928 (diff) | |
download | FreeBSD-src-433fc8eeffa614ac974539d56caf875a8b001065.zip FreeBSD-src-433fc8eeffa614ac974539d56caf875a8b001065.tar.gz |
The value of flags matching VNOVAL can't be supported. Return EOPNOTSUPP
from setfflags() in this case. This fixes the return value of
chflags(path, -1).
Discussed with: bde
MFC after: 2 weeks
Diffstat (limited to 'sys/kern/vfs_syscalls.c')
-rw-r--r-- | sys/kern/vfs_syscalls.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 613f30d..0400504 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -2744,6 +2744,10 @@ setfflags(td, vp, flags) struct mount *mp; struct vattr vattr; + /* We can't support the value matching VNOVAL. */ + if (flags == VNOVAL) + return (EOPNOTSUPP); + /* * Prevent non-root users from setting flags on devices. When * a device is reused, users can retain ownership of the device |