This source file includes following definitions.
- ext2_permission
1
2
3
4
5
6
7
8
9
10
11
12 #include <linux/sched.h>
13 #include <linux/ext2_fs.h>
14 #include <linux/errno.h>
15 #include <linux/stat.h>
16
17
18
19
20
21
22 int ext2_permission (struct inode * inode, int mask)
23 {
24 int mode = inode->i_mode;
25
26
27 if (suser ())
28 return 1;
29
30 else if (current->euid == inode->i_uid)
31 mode >>= 6;
32 else if (in_group_p (inode->i_gid))
33 mode >>= 3;
34 if (((mode & mask & S_IRWXO) == mask))
35 return 1;
36 else
37 return 0;
38 }