diff options
author | jh <jh@FreeBSD.org> | 2012-04-04 14:50:21 +0000 |
---|---|---|
committer | jh <jh@FreeBSD.org> | 2012-04-04 14:50:21 +0000 |
commit | 7494e2ac3f2ef3688d4fb515d879980772a77152 (patch) | |
tree | a5e7415a9e36ab31e2d931f0ae7fb4ec6fc7bbff | |
parent | 7676adf25d6182c1722f79935bb39b3667558934 (diff) | |
download | FreeBSD-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
-rw-r--r-- | sys/ufs/ufs/ufs_vnops.c | 4 |
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); /* |