summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* SELinux: Institute file_path_has_perm()David Howells2013-06-291-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 <dhowells@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* Replace a bunch of file->dentry->d_inode refs with file_inode()David Howells2013-06-293-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 <dhowells@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* udf: provide ->tmpfile()Al Viro2013-06-291-0/+24
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* ext3 ->tmpfile() supportAl Viro2013-06-291-1/+46
| | | | | | | In this case we do need a bit more than usual, due to orphan list handling. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* allow the temp files created by open() to be linked toAl Viro2013-06-293-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 <viro@zeniv.linux.org.uk>
* [O_TMPFILE] it's still short a few helpers, but infrastructure should be OK ↵Al Viro2013-06-2912-5/+164
| | | | | | now... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* allow build_open_flags() to return an errorAl Viro2013-06-294-31/+41
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* lift file_*_write out of do_splice_direct()Al Viro2013-06-292-2/+2
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* lift file_*_write out of do_splice_from()Al Viro2013-06-291-4/+5
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* do_last(): fix missing checks for LAST_BIND caseAl Viro2013-06-291-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 <viro@zeniv.linux.org.uk>
* pcm_native: switch to fdget()/fdput()Al Viro2013-06-291-25/+15
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] constify ->actorAl Viro2013-06-299-68/+57
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] ->readdir() is goneAl Viro2013-06-297-16/+13
| | | | | | everything's converted to ->iterate() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert ecryptfsAl Viro2013-06-291-20/+15
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert codaAl Viro2013-06-291-58/+19
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert ocfs2Al Viro2013-06-294-113/+61
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert fatfsAl Viro2013-06-291-50/+54
| | | | | | | ... pox upon the idiotic ioctls; life would be much easier without those. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert xfsAl Viro2013-06-297-61/+44
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert btrfsAl Viro2013-06-293-40/+21
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert hostfsAl Viro2013-06-291-7/+6
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert afsAl Viro2013-06-291-62/+37
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert ncpfsAl Viro2013-06-291-43/+35
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert hfsplusAl Viro2013-06-291-27/+23
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert hfsAl Viro2013-06-291-26/+23
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert befsAl Viro2013-06-291-18/+22
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert cifsAl Viro2013-06-293-100/+82
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert freevxfsAl Viro2013-06-291-32/+23
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert fuseAl Viro2013-06-291-20/+17
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert hpfsAl Viro2013-06-291-27/+29
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* reiserfs: switch reiserfs_readdir_dentry to inodeAl Viro2013-06-293-17/+15
| | | | | | ... and clean the callers up a bit Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* reiserfs: is_privroot_deh() needs only directory inode, actuallyAl Viro2013-06-291-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 <viro@zeniv.linux.org.uk>
* [readdir] convert reiserfsAl Viro2013-06-293-23/+19
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert ntfsAl Viro2013-06-291-57/+27
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert isofsAl Viro2013-06-291-22/+20
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert jffs2Al Viro2013-06-291-36/+16
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert f2fsAl Viro2013-06-292-35/+22
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert 9pAl Viro2013-06-291-44/+28
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert affsAl Viro2013-06-291-45/+24
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert adfsAl Viro2013-06-291-24/+18
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert logfsAl Viro2013-06-291-34/+15
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert jfsAl Viro2013-06-293-36/+31
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert cephAl Viro2013-06-291-51/+48
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert nfsAl Viro2013-06-291-26/+25
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert ext4Al Viro2013-06-293-190/+134
| | | | | | and trim the living hell out bogosities in inline dir case Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert qnx6Al Viro2013-06-291-17/+14
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert qnx4Al Viro2013-06-291-35/+31
| | | | | | | ... and use strnlen() instead of strlen() - it's done on untrusted data, after all. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert omfsAl Viro2013-06-291-56/+38
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert nilfs2Al Viro2013-06-291-30/+18
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert sysfsAl Viro2013-06-291-48/+18
| | | | | | get rid of the kludges in sysfs_readdir() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [readdir] convert gfs2Al Viro2013-06-294-51/+38
| | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
OpenPOWER on IntegriCloud