Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  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 #define UTIME_NOW       ((1l << 30) - 1l)
 57 #define UTIME_OMIT      ((1l << 30) - 2l)
 58 
 59 #include <linux/types.h>
 60 #include <linux/time.h>
 61 
 62 struct kstat {
 63         u64             ino;
 64         dev_t           dev;
 65         umode_t         mode;
 66         unsigned int    nlink;
 67         uid_t           uid;
 68         gid_t           gid;
 69         dev_t           rdev;
 70         loff_t          size;
 71         struct timespec  atime;
 72         struct timespec mtime;
 73         struct timespec ctime;
 74         unsigned long   blksize;
 75         unsigned long long      blocks;
 76 };
 77 
 78 #endif
 79 
 80 #endif
 81 
  This page was automatically generated by the LXR engine.