ext4: tighten restrictions on inode flags
authorDuane Griffin <duaneg@dghda.com>
Sun, 15 Feb 2009 23:09:20 +0000 (18:09 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Sun, 15 Feb 2009 23:09:20 +0000 (18:09 -0500)
commit2dc6b0d48ca0599837df21b14bb8393d0804af57
treeb70dd83908f9bcb3cb953e5b7df1837268968c2e
parent8fa43a81b97853fc69417bb6054182e78f95cbeb
ext4: tighten restrictions on inode flags

At the moment there are few restrictions on which flags may be set on
which inodes.  Specifically DIRSYNC may only be set on directories and
IMMUTABLE and APPEND may not be set on links.  Tighten that to disallow
TOPDIR being set on non-directories and only NODUMP and NOATIME to be set
on non-regular file, non-directories.

Introduces a flags masking function which masks flags based on mode and
use it during inode creation and when flags are set via the ioctl to
facilitate future consistency.

Signed-off-by: Duane Griffin <duaneg@dghda.com>
Acked-by: Andreas Dilger <adilger@sun.com>
Cc: <linux-ext4@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
fs/ext4/ext4.h
fs/ext4/ialloc.c
fs/ext4/ioctl.c