Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
0002 #ifndef __ASM_GENERIC_POSIX_TYPES_H
0003 #define __ASM_GENERIC_POSIX_TYPES_H
0004 
0005 #include <asm/bitsperlong.h>
0006 /*
0007  * This file is generally used by user-level software, so you need to
0008  * be a little careful about namespace pollution etc.
0009  *
0010  * First the types that are often defined in different ways across
0011  * architectures, so that you can override them.
0012  */
0013 
0014 #ifndef __kernel_long_t
0015 typedef long        __kernel_long_t;
0016 typedef unsigned long   __kernel_ulong_t;
0017 #endif
0018 
0019 #ifndef __kernel_ino_t
0020 typedef __kernel_ulong_t __kernel_ino_t;
0021 #endif
0022 
0023 #ifndef __kernel_mode_t
0024 typedef unsigned int    __kernel_mode_t;
0025 #endif
0026 
0027 #ifndef __kernel_pid_t
0028 typedef int     __kernel_pid_t;
0029 #endif
0030 
0031 #ifndef __kernel_ipc_pid_t
0032 typedef int     __kernel_ipc_pid_t;
0033 #endif
0034 
0035 #ifndef __kernel_uid_t
0036 typedef unsigned int    __kernel_uid_t;
0037 typedef unsigned int    __kernel_gid_t;
0038 #endif
0039 
0040 #ifndef __kernel_suseconds_t
0041 typedef __kernel_long_t     __kernel_suseconds_t;
0042 #endif
0043 
0044 #ifndef __kernel_daddr_t
0045 typedef int     __kernel_daddr_t;
0046 #endif
0047 
0048 #ifndef __kernel_uid32_t
0049 typedef unsigned int    __kernel_uid32_t;
0050 typedef unsigned int    __kernel_gid32_t;
0051 #endif
0052 
0053 #ifndef __kernel_old_uid_t
0054 typedef __kernel_uid_t  __kernel_old_uid_t;
0055 typedef __kernel_gid_t  __kernel_old_gid_t;
0056 #endif
0057 
0058 #ifndef __kernel_old_dev_t
0059 typedef unsigned int    __kernel_old_dev_t;
0060 #endif
0061 
0062 /*
0063  * Most 32 bit architectures use "unsigned int" size_t,
0064  * and all 64 bit architectures use "unsigned long" size_t.
0065  */
0066 #ifndef __kernel_size_t
0067 #if __BITS_PER_LONG != 64
0068 typedef unsigned int    __kernel_size_t;
0069 typedef int     __kernel_ssize_t;
0070 typedef int     __kernel_ptrdiff_t;
0071 #else
0072 typedef __kernel_ulong_t __kernel_size_t;
0073 typedef __kernel_long_t __kernel_ssize_t;
0074 typedef __kernel_long_t __kernel_ptrdiff_t;
0075 #endif
0076 #endif
0077 
0078 #ifndef __kernel_fsid_t
0079 typedef struct {
0080     int val[2];
0081 } __kernel_fsid_t;
0082 #endif
0083 
0084 /*
0085  * anything below here should be completely generic
0086  */
0087 typedef __kernel_long_t __kernel_off_t;
0088 typedef long long   __kernel_loff_t;
0089 typedef __kernel_long_t __kernel_old_time_t;
0090 #ifndef __KERNEL__
0091 typedef __kernel_long_t __kernel_time_t;
0092 #endif
0093 typedef long long __kernel_time64_t;
0094 typedef __kernel_long_t __kernel_clock_t;
0095 typedef int     __kernel_timer_t;
0096 typedef int     __kernel_clockid_t;
0097 typedef char *      __kernel_caddr_t;
0098 typedef unsigned short  __kernel_uid16_t;
0099 typedef unsigned short  __kernel_gid16_t;
0100 
0101 #endif /* __ASM_GENERIC_POSIX_TYPES_H */