summaryrefslogtreecommitdiffstats
path: root/sys/ufs
diff options
context:
space:
mode:
authorjh <jh@FreeBSD.org>2012-04-04 14:50:21 +0000
committerjh <jh@FreeBSD.org>2012-04-04 14:50:21 +0000
commit7494e2ac3f2ef3688d4fb515d879980772a77152 (patch)
treea5e7415a9e36ab31e2d931f0ae7fb4ec6fc7bbff /sys/ufs
parent7676adf25d6182c1722f79935bb39b3667558934 (diff)
downloadFreeBSD-src-7494e2ac3f2ef3688d4fb515d879980772a77152.zip
FreeBSD-src-7494e2ac3f2ef3688d4fb515d879980772a77152.tar.gz
Add a check for unsupported file flags to ufs_setattr().
Discussed with: bde MFC after: 2 weeks
Diffstat (limited to 'sys/ufs')
-rw-r--r--sys/ufs/ufs/ufs_vnops.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/ufs/ufs/ufs_vnops.c b/sys/ufs/ufs/ufs_vnops.c
index 99bc1ea..811237e 100644
--- a/sys/ufs/ufs/ufs_vnops.c
+++ b/sys/ufs/ufs/ufs_vnops.c
@@ -526,6 +526,10 @@ ufs_setattr(ap)
return (EINVAL);
}
if (vap->va_flags != VNOVAL) {
+ if ((vap->va_flags & ~(UF_NODUMP | UF_IMMUTABLE | UF_APPEND |
+ UF_OPAQUE | UF_NOUNLINK | SF_ARCHIVED | SF_IMMUTABLE |
+ SF_APPEND | SF_NOUNLINK | SF_SNAPSHOT)) != 0)
+ return (EOPNOTSUPP);
if (vp->v_mount->mnt_flag & MNT_RDONLY)
return (EROFS);
/*
OpenPOWER on IntegriCloud