aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-06-29don't call file_pos_write() if vfs_{read,write}{,v}() failsAl Viro1-6/+12
Signed-off-by: Al Viro <[email protected]>
2013-06-29SELinux: Institute file_path_has_perm()David Howells1-6/+18
Create a file_path_has_perm() function that is like path_has_perm() but instead takes a file struct that is the source of both the path and the inode (rather than getting the inode from the dentry in the path). This is then used where appropriate. This will be useful for situations like unionmount where it will be possible to have an apparently-negative dentry (eg. a fallthrough) that is open with the file struct pointing to an inode on the lower fs. Signed-off-by: David Howells <[email protected]> Signed-off-by: Al Viro <[email protected]>
2013-06-29Replace a bunch of file->dentry->d_inode refs with file_inode()David Howells3-6/+6
Replace a bunch of file->dentry->d_inode refs with file_inode(). In __fput(), use file->f_inode instead so as not to be affected by any tricks that file_inode() might grow. Signed-off-by: David Howells <[email protected]> Signed-off-by: Al Viro <[email protected]>
2013-06-29udf: provide ->tmpfile()Al Viro1-0/+24
Signed-off-by: Al Viro <[email protected]>
2013-06-29ext3 ->tmpfile() supportAl Viro1-1/+46
In this case we do need a bit more than usual, due to orphan list handling. Signed-off-by: Al Viro <[email protected]>
2013-06-29allow the temp files created by open() to be linked toAl Viro3-3/+18
O_TMPFILE | O_CREAT => linkat() with AT_SYMLINK_FOLLOW and /proc/self/fd/<n> as oldpath (i.e. flink()) will create a link O_TMPFILE | O_CREAT | O_EXCL => ENOENT on attempt to link those guys Signed-off-by: Al Viro <[email protected]>
2013-06-29[O_TMPFILE] it's still short a few helpers, but infrastructure should be OK ↵Al Viro12-5/+164
now... Signed-off-by: Al Viro <[email protected]>
2013-06-29allow build_open_flags() to return an errorAl Viro4-31/+41
Signed-off-by: Al Viro <[email protected]>
2013-06-29lift file_*_write out of do_splice_direct()Al Viro2-2/+2
Signed-off-by: Al Viro <[email protected]>
2013-06-29lift file_*_write out of do_splice_from()Al Viro1-4/+5
Signed-off-by: Al Viro <[email protected]>
2013-06-29do_last(): fix missing checks for LAST_BIND caseAl Viro1-21/+3
/proc/self/cwd with O_CREAT should fail with EISDIR. /proc/self/exe, OTOH, should fail with ENOTDIR when opened with O_DIRECTORY. Signed-off-by: Al Viro <[email protected]>
2013-06-29pcm_native: switch to fdget()/fdput()Al Viro1-25/+15
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] constify ->actorAl Viro9-68/+57
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] ->readdir() is goneAl Viro7-16/+13
everything's converted to ->iterate() Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert ecryptfsAl Viro1-20/+15
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert codaAl Viro1-58/+19
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert ocfs2Al Viro4-113/+61
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert fatfsAl Viro1-50/+54
... pox upon the idiotic ioctls; life would be much easier without those. Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert xfsAl Viro7-61/+44
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert btrfsAl Viro3-40/+21
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert hostfsAl Viro1-7/+6
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert afsAl Viro1-62/+37
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert ncpfsAl Viro1-43/+35
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert hfsplusAl Viro1-27/+23
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert hfsAl Viro1-26/+23
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert befsAl Viro1-18/+22
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert cifsAl Viro3-100/+82
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert freevxfsAl Viro1-32/+23
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert fuseAl Viro1-20/+17
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert hpfsAl Viro1-27/+29
Signed-off-by: Al Viro <[email protected]>
2013-06-29reiserfs: switch reiserfs_readdir_dentry to inodeAl Viro3-17/+15
... and clean the callers up a bit Signed-off-by: Al Viro <[email protected]>
2013-06-29reiserfs: is_privroot_deh() needs only directory inode, actuallyAl Viro1-5/+4
... and that - only to get the superblock. Privroot is a directory and we don't allow hardlinks to those... Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert reiserfsAl Viro3-23/+19
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert ntfsAl Viro1-57/+27
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert isofsAl Viro1-22/+20
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert jffs2Al Viro1-36/+16
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert f2fsAl Viro2-35/+22
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert 9pAl Viro1-44/+28
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert affsAl Viro1-45/+24
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert adfsAl Viro1-24/+18
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert logfsAl Viro1-34/+15
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert jfsAl Viro3-36/+31
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert cephAl Viro1-51/+48
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert nfsAl Viro1-26/+25
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert ext4Al Viro3-190/+134
and trim the living hell out bogosities in inline dir case Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert qnx6Al Viro1-17/+14
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert qnx4Al Viro1-35/+31
... and use strnlen() instead of strlen() - it's done on untrusted data, after all. Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert omfsAl Viro1-56/+38
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert nilfs2Al Viro1-30/+18
Signed-off-by: Al Viro <[email protected]>
2013-06-29[readdir] convert sysfsAl Viro1-48/+18
get rid of the kludges in sysfs_readdir() Signed-off-by: Al Viro <[email protected]>