/* Copyright (C) 1991,1992,1994-2002,2006,2010 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ /* * POSIX Standard: 2.6 Primitive System Data Types <sys/types.h> */ #ifndef _SYS_TYPES_H #define _SYS_TYPES_H 1 #include <features.h> __BEGIN_DECLS #include <bits/types.h> #ifdef __USE_BSD # ifndef __u_char_defined typedef __u_char u_char; typedef __u_short u_short; typedef __u_int u_int; typedef __u_long u_long; typedef __quad_t quad_t; typedef __u_quad_t u_quad_t; typedef __fsid_t fsid_t; # define __u_char_defined # endif #endif typedef __loff_t loff_t; #ifndef __ino_t_defined # ifndef __USE_FILE_OFFSET64 typedef __ino_t ino_t; # else typedef __ino64_t ino_t; # endif # define __ino_t_defined #endif #if defined __USE_LARGEFILE64 && !defined __ino64_t_defined typedef __ino64_t ino64_t; # define __ino64_t_defined #endif #ifndef __dev_t_defined typedef __dev_t dev_t; # define __dev_t_defined #endif #ifndef __gid_t_defined typedef __gid_t gid_t; # define __gid_t_defined #endif #ifndef __mode_t_defined typedef __mode_t mode_t; # define __mode_t_defined #endif #ifndef __nlink_t_defined typedef __nlink_t nlink_t; # define __nlink_t_defined #endif #ifndef __uid_t_defined typedef __uid_t uid_t; # define __uid_t_defined #endif #ifndef __off_t_defined # ifndef __USE_FILE_OFFSET64 typedef __off_t off_t; # else typedef __off64_t off_t; # endif # define __off_t_defined #endif #if defined __USE_LARGEFILE64 && !defined __off64_t_defined typedef __off64_t off64_t; # define __off64_t_defined #endif #ifndef __pid_t_defined typedef __pid_t pid_t; # define __pid_t_defined #endif #if (defined __USE_SVID || defined __USE_XOPEN || defined __USE_XOPEN2K8) \ && !defined __id_t_defined typedef __id_t id_t; # define __id_t_defined #endif #ifndef __ssize_t_defined typedef __ssize_t ssize_t; # define __ssize_t_defined #endif #ifdef __USE_BSD # ifndef __daddr_t_defined typedef __daddr_t daddr_t; typedef __caddr_t caddr_t; # define __daddr_t_defined # endif #endif #if (defined __USE_SVID || defined __USE_XOPEN) && !defined __key_t_defined typedef __key_t key_t; # define __key_t_defined #endif #if defined __USE_XOPEN || defined __USE_XOPEN2K8 # define __need_clock_t #endif #define __need_time_t #define __need_timer_t #define __need_clockid_t #include <time.h> #ifdef __USE_XOPEN # ifndef __useconds_t_defined typedef __useconds_t useconds_t; # define __useconds_t_defined # endif # ifndef __suseconds_t_defined typedef __suseconds_t suseconds_t; # define __suseconds_t_defined # endif #endif #define __need_size_t #include <stddef.h> #ifdef __USE_MISC /* Old compatibility names for C types. */ typedef unsigned long int ulong; typedef unsigned short int ushort; typedef unsigned int uint; #endif /* These size-specific names are used by some of the inet code. */ #if !__GNUC_PREREQ (2, 7) /* These types are defined by the ISO C99 header <inttypes.h>. */ # ifndef __int8_t_defined # define __int8_t_defined typedef char int8_t; typedef short int int16_t; typedef int int32_t; # if __WORDSIZE == 64 typedef long int int64_t; # elif __GLIBC_HAVE_LONG_LONG __extension__ typedef long long int int64_t; # endif # endif /* But these were defined by ISO C without the first `_'. */ typedef unsigned char u_int8_t; typedef unsigned short int u_int16_t; typedef unsigned int u_int32_t; # if __WORDSIZE == 64 typedef unsigned long int u_int64_t; # elif __GLIBC_HAVE_LONG_LONG __extension__ typedef unsigned long long int u_int64_t; # endif typedef int register_t; #else /* For GCC 2.7 and later, we can use specific type-size attributes. */ # define __intN_t(N, MODE) \ typedef int int##N##_t __attribute__ ((__mode__ (MODE))) # define __u_intN_t(N, MODE) \ typedef unsigned int u_int##N##_t __attribute__ ((__mode__ (MODE))) # ifndef __int8_t_defined # define __int8_t_defined __intN_t (8, __QI__); __intN_t (16, __HI__); __intN_t (32, __SI__); __intN_t (64, __DI__); # endif __u_intN_t (8, __QI__); __u_intN_t (16, __HI__); __u_intN_t (32, __SI__); __u_intN_t (64, __DI__); typedef int register_t __attribute__ ((__mode__ (__word__))); /* Some code from BIND tests this macro to see if the types above are defined. */ #endif #define __BIT_TYPES_DEFINED__ 1 #ifdef __USE_BSD /* In BSD <sys/types.h> is expected to define BYTE_ORDER. */ # include <endian.h> /* It also defines `fd_set' and the FD_* macros for `select'. */ # include <sys/select.h> /* BSD defines these symbols, so we follow. */ # include <sys/sysmacros.h> #endif /* Use BSD. */ #if (defined __USE_UNIX98 || defined __USE_XOPEN2K8) \ && !defined __blksize_t_defined typedef __blksize_t blksize_t; # define __blksize_t_defined #endif /* Types from the Large File Support interface. */ #ifndef __USE_FILE_OFFSET64 # ifndef __blkcnt_t_defined typedef __blkcnt_t blkcnt_t; /* Type to count number of disk blocks. */ # define __blkcnt_t_defined # endif # ifndef __fsblkcnt_t_defined typedef __fsblkcnt_t fsblkcnt_t; /* Type to count file system blocks. */ # define __fsblkcnt_t_defined # endif # ifndef __fsfilcnt_t_defined typedef __fsfilcnt_t fsfilcnt_t; /* Type to count file system inodes. */ # define __fsfilcnt_t_defined # endif #else # ifndef __blkcnt_t_defined typedef __blkcnt64_t blkcnt_t; /* Type to count number of disk blocks. */ # define __blkcnt_t_defined # endif # ifndef __fsblkcnt_t_defined typedef __fsblkcnt64_t fsblkcnt_t; /* Type to count file system blocks. */ # define __fsblkcnt_t_defined # endif # ifndef __fsfilcnt_t_defined typedef __fsfilcnt64_t fsfilcnt_t; /* Type to count file system inodes. */ # define __fsfilcnt_t_defined # endif #endif #ifdef __USE_LARGEFILE64 typedef __blkcnt64_t blkcnt64_t; /* Type to count number of disk blocks. */ typedef __fsblkcnt64_t fsblkcnt64_t; /* Type to count file system blocks. */ typedef __fsfilcnt64_t fsfilcnt64_t; /* Type to count file system inodes. */ #endif /* Now add the thread types. */ #if defined __USE_POSIX199506 || defined __USE_UNIX98 # include <bits/pthreadtypes.h> #endif __END_DECLS #endif /* sys/types.h */
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
acct.h | File | 3.25 KB | 0644 |
|
auxv.h | File | 1.22 KB | 0644 |
|
bitypes.h | File | 86 B | 0644 |
|
cdefs.h | File | 14.39 KB | 0644 |
|
debugreg.h | File | 3.49 KB | 0644 |
|
dir.h | File | 922 B | 0644 |
|
elf.h | File | 1023 B | 0644 |
|
epoll.h | File | 4.34 KB | 0644 |
|
errno.h | File | 19 B | 0644 |
|
eventfd.h | File | 1.36 KB | 0644 |
|
fanotify.h | File | 1.26 KB | 0644 |
|
fcntl.h | File | 19 B | 0644 |
|
file.h | File | 1.65 KB | 0644 |
|
fsuid.h | File | 1.17 KB | 0644 |
|
gmon.h | File | 5.97 KB | 0644 |
|
gmon_out.h | File | 2.57 KB | 0644 |
|
inotify.h | File | 3.75 KB | 0644 |
|
io.h | File | 4.97 KB | 0644 |
|
ioctl.h | File | 1.72 KB | 0644 |
|
ipc.h | File | 1.6 KB | 0644 |
|
kd.h | File | 1.09 KB | 0644 |
|
kdaemon.h | File | 1.08 KB | 0644 |
|
klog.h | File | 1.18 KB | 0644 |
|
mman.h | File | 5.44 KB | 0644 |
|
mount.h | File | 5.5 KB | 0644 |
|
msg.h | File | 2.35 KB | 0644 |
|
mtio.h | File | 10.9 KB | 0644 |
|
param.h | File | 2.96 KB | 0644 |
|
pci.h | File | 917 B | 0644 |
|
perm.h | File | 1.11 KB | 0644 |
|
personality.h | File | 2.56 KB | 0644 |
|
poll.h | File | 2.57 KB | 0644 |
|
prctl.h | File | 1.03 KB | 0644 |
|
procfs.h | File | 4.85 KB | 0644 |
|
profil.h | File | 1.91 KB | 0644 |
|
ptrace.h | File | 6.61 KB | 0644 |
|
queue.h | File | 19.08 KB | 0644 |
|
quota.h | File | 7.72 KB | 0644 |
|
raw.h | File | 1.15 KB | 0644 |
|
reboot.h | File | 1.59 KB | 0644 |
|
reg.h | File | 1.78 KB | 0644 |
|
resource.h | File | 3.58 KB | 0644 |
|
sdt-config.h | File | 276 B | 0644 |
|
sdt.h | File | 18.16 KB | 0644 |
|
select.h | File | 4.11 KB | 0644 |
|
sem.h | File | 2.01 KB | 0644 |
|
sendfile.h | File | 1.77 KB | 0644 |
|
shm.h | File | 1.86 KB | 0644 |
|
signal.h | File | 20 B | 0644 |
|
signalfd.h | File | 1.57 KB | 0644 |
|
socket.h | File | 10.24 KB | 0644 |
|
socketvar.h | File | 141 B | 0644 |
|
soundcard.h | File | 29 B | 0644 |
|
stat.h | File | 16.23 KB | 0644 |
|
statfs.h | File | 2.06 KB | 0644 |
|
statvfs.h | File | 2.77 KB | 0644 |
|
swap.h | File | 1.57 KB | 0644 |
|
syscall.h | File | 1.32 KB | 0644 |
|
sysctl.h | File | 1.98 KB | 0644 |
|
sysinfo.h | File | 1.49 KB | 0644 |
|
syslog.h | File | 7.52 KB | 0644 |
|
sysmacros.h | File | 2.49 KB | 0644 |
|
termios.h | File | 74 B | 0644 |
|
time.h | File | 6.54 KB | 0644 |
|
timeb.h | File | 1.37 KB | 0644 |
|
timerfd.h | File | 1.7 KB | 0644 |
|
times.h | File | 1.59 KB | 0644 |
|
timex.h | File | 2.14 KB | 0644 |
|
ttychars.h | File | 2.44 KB | 0644 |
|
ttydefaults.h | File | 3.48 KB | 0644 |
|
types.h | File | 6.61 KB | 0644 |
|
ucontext.h | File | 5.26 KB | 0644 |
|
uio.h | File | 4.61 KB | 0644 |
|
ultrasound.h | File | 30 B | 0644 |
|
un.h | File | 1.43 KB | 0644 |
|
unistd.h | File | 20 B | 0644 |
|
user.h | File | 5.08 KB | 0644 |
|
ustat.h | File | 1.12 KB | 0644 |
|
utsname.h | File | 2.44 KB | 0644 |
|
vfs.h | File | 161 B | 0644 |
|
vlimit.h | File | 1.85 KB | 0644 |
|
vm86.h | File | 1.17 KB | 0644 |
|
vt.h | File | 22 B | 0644 |
|
vtimes.h | File | 2.42 KB | 0644 |
|
wait.h | File | 6.44 KB | 0644 |
|
xattr.h | File | 4.14 KB | 0644 |
|