Home | History | Annotate | Download | only in asm-generic
      1 #ifndef __ASM_GENERIC_POSIX_TYPES_H
      2 #define __ASM_GENERIC_POSIX_TYPES_H
      3 
      4 #include <asm/bitsperlong.h>
      5 /*
      6  * This file is generally used by user-level software, so you need to
      7  * be a little careful about namespace pollution etc.
      8  *
      9  * First the types that are often defined in different ways across
     10  * architectures, so that you can override them.
     11  */
     12 
     13 #ifndef __kernel_long_t
     14 typedef long		__kernel_long_t;
     15 typedef unsigned long	__kernel_ulong_t;
     16 #endif
     17 
     18 #ifndef __kernel_ino_t
     19 typedef __kernel_ulong_t __kernel_ino_t;
     20 #endif
     21 
     22 #ifndef __kernel_mode_t
     23 typedef unsigned int	__kernel_mode_t;
     24 #endif
     25 
     26 #ifndef __kernel_pid_t
     27 typedef int		__kernel_pid_t;
     28 #endif
     29 
     30 #ifndef __kernel_ipc_pid_t
     31 typedef int		__kernel_ipc_pid_t;
     32 #endif
     33 
     34 #ifndef __kernel_uid_t
     35 typedef unsigned int	__kernel_uid_t;
     36 typedef unsigned int	__kernel_gid_t;
     37 #endif
     38 
     39 #ifndef __kernel_suseconds_t
     40 typedef __kernel_long_t		__kernel_suseconds_t;
     41 #endif
     42 
     43 #ifndef __kernel_daddr_t
     44 typedef int		__kernel_daddr_t;
     45 #endif
     46 
     47 #ifndef __kernel_uid32_t
     48 typedef unsigned int	__kernel_uid32_t;
     49 typedef unsigned int	__kernel_gid32_t;
     50 #endif
     51 
     52 #ifndef __kernel_old_uid_t
     53 typedef __kernel_uid_t	__kernel_old_uid_t;
     54 typedef __kernel_gid_t	__kernel_old_gid_t;
     55 #endif
     56 
     57 #ifndef __kernel_old_dev_t
     58 typedef unsigned int	__kernel_old_dev_t;
     59 #endif
     60 
     61 /*
     62  * Most 32 bit architectures use "unsigned int" size_t,
     63  * and all 64 bit architectures use "unsigned long" size_t.
     64  */
     65 #ifndef __kernel_size_t
     66 #if __BITS_PER_LONG != 64
     67 typedef unsigned int	__kernel_size_t;
     68 typedef int		__kernel_ssize_t;
     69 typedef int		__kernel_ptrdiff_t;
     70 #else
     71 typedef __kernel_ulong_t __kernel_size_t;
     72 typedef __kernel_long_t	__kernel_ssize_t;
     73 typedef __kernel_long_t	__kernel_ptrdiff_t;
     74 #endif
     75 #endif
     76 
     77 #ifndef __kernel_fsid_t
     78 typedef struct {
     79 	int	val[2];
     80 } __kernel_fsid_t;
     81 #endif
     82 
     83 /*
     84  * anything below here should be completely generic
     85  */
     86 typedef __kernel_long_t	__kernel_off_t;
     87 typedef long long	__kernel_loff_t;
     88 typedef __kernel_long_t	__kernel_time_t;
     89 typedef __kernel_long_t	__kernel_clock_t;
     90 typedef int		__kernel_timer_t;
     91 typedef int		__kernel_clockid_t;
     92 typedef char *		__kernel_caddr_t;
     93 typedef unsigned short	__kernel_uid16_t;
     94 typedef unsigned short	__kernel_gid16_t;
     95 
     96 #endif /* __ASM_GENERIC_POSIX_TYPES_H */
     97