summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_syscalls.c
diff options
context:
space:
mode:
authorjh <jh@FreeBSD.org>2012-04-20 10:08:30 +0000
committerjh <jh@FreeBSD.org>2012-04-20 10:08:30 +0000
commit433fc8eeffa614ac974539d56caf875a8b001065 (patch)
tree7960ee28ef510eff0326cb4b3ab2eeb2080d586f /sys/kern/vfs_syscalls.c
parentb85b9300bc3e968d4d6ce9f8f09fdedb3311f928 (diff)
downloadFreeBSD-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.c4
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
OpenPOWER on IntegriCloud