Subversion Repositories shark

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
422 giacomo 1
#ifndef _LINUX_STAT_H
2
#define _LINUX_STAT_H
3
 
4
#ifdef __KERNEL__
5
 
6
#include <asm/stat.h>
7
 
8
#endif
9
 
10
#if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2)
11
 
12
#define S_IFMT  00170000
13
#define S_IFSOCK 0140000
14
#define S_IFLNK  0120000
15
#define S_IFREG  0100000
16
#define S_IFBLK  0060000
17
#define S_IFDIR  0040000
18
#define S_IFCHR  0020000
19
#define S_IFIFO  0010000
20
#define S_ISUID  0004000
21
#define S_ISGID  0002000
22
#define S_ISVTX  0001000
23
 
24
#define S_ISLNK(m)      (((m) & S_IFMT) == S_IFLNK)
25
#define S_ISREG(m)      (((m) & S_IFMT) == S_IFREG)
26
#define S_ISDIR(m)      (((m) & S_IFMT) == S_IFDIR)
27
#define S_ISCHR(m)      (((m) & S_IFMT) == S_IFCHR)
28
#define S_ISBLK(m)      (((m) & S_IFMT) == S_IFBLK)
29
#define S_ISFIFO(m)     (((m) & S_IFMT) == S_IFIFO)
30
#define S_ISSOCK(m)     (((m) & S_IFMT) == S_IFSOCK)
31
 
32
#define S_IRWXU 00700
33
#define S_IRUSR 00400
34
#define S_IWUSR 00200
35
#define S_IXUSR 00100
36
 
37
#define S_IRWXG 00070
38
#define S_IRGRP 00040
39
#define S_IWGRP 00020
40
#define S_IXGRP 00010
41
 
42
#define S_IRWXO 00007
43
#define S_IROTH 00004
44
#define S_IWOTH 00002
45
#define S_IXOTH 00001
46
 
47
#endif
48
 
49
#ifdef __KERNEL__
50
#define S_IRWXUGO       (S_IRWXU|S_IRWXG|S_IRWXO)
51
#define S_IALLUGO       (S_ISUID|S_ISGID|S_ISVTX|S_IRWXUGO)
52
#define S_IRUGO         (S_IRUSR|S_IRGRP|S_IROTH)
53
#define S_IWUGO         (S_IWUSR|S_IWGRP|S_IWOTH)
54
#define S_IXUGO         (S_IXUSR|S_IXGRP|S_IXOTH)
55
 
56
#include <linux/types.h>
57
#include <linux/time.h>
58
 
59
struct kstat {
60
        unsigned long   ino;
61
        dev_t           dev;
62
        umode_t         mode;
63
        nlink_t         nlink;
64
        uid_t           uid;
65
        gid_t           gid;
66
        dev_t           rdev;
67
        loff_t          size;
68
        struct timespec  atime;
69
        struct timespec mtime;
70
        struct timespec ctime;
71
        unsigned long   blksize;
72
        unsigned long   blocks;
73
};
74
 
75
#endif
76
 
77
#endif