diff options
Diffstat (limited to 'sysdeps/nacl/bits')
-rw-r--r-- | sysdeps/nacl/bits/dirent.h | 52 | ||||
-rw-r--r-- | sysdeps/nacl/bits/fcntl.h | 145 | ||||
-rw-r--r-- | sysdeps/nacl/bits/local_lim.h | 64 | ||||
-rw-r--r-- | sysdeps/nacl/bits/mman.h | 24 | ||||
-rw-r--r-- | sysdeps/nacl/bits/param.h | 23 | ||||
-rw-r--r-- | sysdeps/nacl/bits/posix_opt.h | 210 | ||||
-rw-r--r-- | sysdeps/nacl/bits/stat.h | 147 | ||||
-rw-r--r-- | sysdeps/nacl/bits/typesizes.h | 72 |
8 files changed, 0 insertions, 737 deletions
diff --git a/sysdeps/nacl/bits/dirent.h b/sysdeps/nacl/bits/dirent.h deleted file mode 100644 index d4eb7feb4b..0000000000 --- a/sysdeps/nacl/bits/dirent.h +++ /dev/null @@ -1,52 +0,0 @@ -/* Directory entry structure `struct dirent'. NaCl version. - Copyright (C) 2015-2016 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/>. */ - -#ifndef _DIRENT_H -# error "Never use <bits/dirent.h> directly; include <dirent.h> instead." -#endif - -/* Note that __ino_t and __ino64_t are the same type. - Likewise __off_t and __off64_t are the same type. */ - -struct dirent - { - __ino_t d_ino; /* File serial number. */ - __off_t d_off; /* File position of this entry. */ - unsigned short int d_reclen; /* Length of the whole `struct dirent'. */ - - /* Only this member is in the POSIX standard. */ - char d_name[256]; /* We must not include limits.h! */ - }; - -#ifdef __USE_LARGEFILE64 -/* This is completely identical to `struct dirent'. */ -struct dirent64 - { - __ino_t d_ino; /* File serial number. */ - __off_t d_off; /* File position of this entry. */ - unsigned short int d_reclen; /* Length of the whole `struct dirent'. */ - - /* Only this member is in the POSIX standard. */ - char d_name[256]; /* We must not include limits.h! */ - }; -#endif - -#define d_fileno d_ino /* Backwards compatibility. */ - -#define _DIRENT_HAVE_D_RECLEN 1 -#define _DIRENT_MATCHES_DIRENT64 1 diff --git a/sysdeps/nacl/bits/fcntl.h b/sysdeps/nacl/bits/fcntl.h deleted file mode 100644 index ad083b357c..0000000000 --- a/sysdeps/nacl/bits/fcntl.h +++ /dev/null @@ -1,145 +0,0 @@ -/* O_*, F_*, FD_* bit values. NaCl version. - Copyright (C) 2015-2016 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/>. */ - -#ifndef _FCNTL_H -#error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead." -#endif - - -/* File access modes for `open' and `fcntl'. */ -#define O_RDONLY 0 /* Open read-only. */ -#define O_WRONLY 1 /* Open write-only. */ -#define O_RDWR 2 /* Open read/write. */ - - -/* Bits OR'd into the second argument to open. */ -#define O_CREAT 00100 /* Create file if it doesn't exist. */ -#define O_EXCL 00200 /* Fail if file already exists. */ -#define O_TRUNC 01000 /* Truncate file to zero length. */ -#define O_NOCTTY 0 /* Don't assign a controlling terminal. */ -#define O_ASYNC 020000 /* Send SIGIO to owner when data is ready. */ -#define O_FSYNC 010000 /* Synchronous writes. */ -#define O_SYNC O_FSYNC -#ifdef __USE_XOPEN2K8 -# define O_DIRECTORY 00200000 /* Must be a directory. */ -# define O_NOFOLLOW 00400000 /* Do not follow links. */ -# define O_CLOEXEC 02000000 /* Set close_on_exec. */ -#endif -#if defined __USE_POSIX199309 || defined __USE_UNIX98 -# define O_DSYNC O_SYNC /* Synchronize data. */ -# define O_RSYNC O_SYNC /* Synchronize read operations. */ -#endif - -/* All opens support large file sizes, so there is no flag bit for this. */ -#ifdef __USE_LARGEFILE64 -# define O_LARGEFILE 0 -#endif - -/* File status flags for `open' and `fcntl'. */ -#define O_APPEND 02000 /* Writes append to the file. */ -#define O_NONBLOCK 04000 /* Non-blocking I/O. */ - -#ifdef __USE_MISC -# define O_NDELAY O_NONBLOCK -#endif - -#ifdef __USE_MISC -/* Bits in the file status flags returned by F_GETFL. - These are all the O_* flags, plus FREAD and FWRITE, which are - independent bits set by which of O_RDONLY, O_WRONLY, and O_RDWR, was - given to `open'. */ -# define FREAD 1 -# define FWRITE 2 - -/* Traditional BSD names the O_* bits. */ -# define FASYNC O_ASYNC -# define FFSYNC O_FSYNC -# define FSYNC O_SYNC -# define FAPPEND O_APPEND -# define FNDELAY O_NDELAY -#endif - -/* Mask for file access modes. This is system-dependent in case - some system ever wants to define some other flavor of access. */ -#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR) - -/* Values for the second argument to `fcntl'. */ -#define F_DUPFD 0 /* Duplicate file descriptor. */ -#define F_GETFD 1 /* Get file descriptor flags. */ -#define F_SETFD 2 /* Set file descriptor flags. */ -#define F_GETFL 3 /* Get file status flags. */ -#define F_SETFL 4 /* Set file status flags. */ -#if defined __USE_UNIX98 || defined __USE_XOPEN2K8 -#define F_GETOWN 5 /* Get owner (receiver of SIGIO). */ -#define F_SETOWN 6 /* Set owner (receiver of SIGIO). */ -#endif -#define F_GETLK 7 /* Get record locking info. */ -#define F_SETLK 8 /* Set record locking info (non-blocking). */ -#define F_SETLKW 9 /* Set record locking info (blocking). */ -/* Not necessary, we always have 64-bit offsets. */ -#define F_GETLK64 F_GETLK /* Get record locking info. */ -#define F_SETLK64 F_SETLK /* Set record locking info (non-blocking). */ -#define F_SETLKW64 F_SETLKW/* Set record locking info (blocking). */ -#ifdef __USE_XOPEN2K8 -# define F_DUPFD_CLOEXEC 12 /* Duplicate file descriptor with - close-on-exec set. */ -#endif - -/* File descriptor flags used with F_GETFD and F_SETFD. */ -#define FD_CLOEXEC 1 /* Close on exec. */ - - -#include <bits/types.h> - -/* The structure describing an advisory lock. This is the type of the third - argument to `fcntl' for the F_GETLK, F_SETLK, and F_SETLKW requests. */ -struct flock - { - short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ - short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ - __off_t l_start; /* Offset where the lock begins. */ - __off_t l_len; /* Size of the locked area; zero means until EOF. */ - __pid_t l_pid; /* Process holding the lock. */ - }; - -#ifdef __USE_LARGEFILE64 -/* Note this matches struct flock exactly. */ -struct flock64 - { - short int l_type; /* Type of lock: F_RDLCK, F_WRLCK, or F_UNLCK. */ - short int l_whence; /* Where `l_start' is relative to (like `lseek'). */ - __off_t l_start; /* Offset where the lock begins. */ - __off_t l_len; /* Size of the locked area; zero means until EOF. */ - __pid_t l_pid; /* Process holding the lock. */ - }; -#endif - -/* Values for the `l_type' field of a `struct flock'. */ -#define F_RDLCK 1 /* Read lock. */ -#define F_WRLCK 2 /* Write lock. */ -#define F_UNLCK 3 /* Remove lock. */ - -/* Advice to `posix_fadvise'. */ -#ifdef __USE_XOPEN2K -# define POSIX_FADV_NORMAL 0 /* No further special treatment. */ -# define POSIX_FADV_RANDOM 1 /* Expect random page references. */ -# define POSIX_FADV_SEQUENTIAL 2 /* Expect sequential page references. */ -# define POSIX_FADV_WILLNEED 3 /* Will need these pages. */ -# define POSIX_FADV_DONTNEED 4 /* Don't need these pages. */ -# define POSIX_FADV_NOREUSE 5 /* Data will be accessed once. */ -#endif diff --git a/sysdeps/nacl/bits/local_lim.h b/sysdeps/nacl/bits/local_lim.h deleted file mode 100644 index 0f9e4df561..0000000000 --- a/sysdeps/nacl/bits/local_lim.h +++ /dev/null @@ -1,64 +0,0 @@ -/* Minimum guaranteed maximum values for system limits. NaCl version. - Copyright (C) 2015-2016 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/>. */ - -#define NAME_MAX 255 - -#define PATH_MAX 4096 - -#define NGROUPS_MAX 65536 - -/* The number of data keys per process. */ -#define _POSIX_THREAD_KEYS_MAX 128 -/* This is the value this implementation supports. */ -#define PTHREAD_KEYS_MAX 1024 - -/* Controlling the iterations of destructors for thread-specific data. */ -#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 -/* Number of iterations this implementation does. */ -#define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS - -/* The number of threads per process. */ -#define _POSIX_THREAD_THREADS_MAX 64 -/* We have no predefined limit on the number of threads. */ -#undef PTHREAD_THREADS_MAX - -/* Maximum amount by which a process can descrease its asynchronous I/O - priority level. */ -#define AIO_PRIO_DELTA_MAX 20 - -/* Minimum size for a thread. We are free to choose a reasonable value. */ -#define PTHREAD_STACK_MIN 131072 - -/* Maximum number of timer expiration overruns. */ -#define DELAYTIMER_MAX 2147483647 - -/* Maximum tty name length. */ -#define TTY_NAME_MAX 32 - -/* Maximum login name length. This is arbitrary. */ -#define LOGIN_NAME_MAX 256 - -/* Maximum host name length. */ -#define HOST_NAME_MAX 64 - -/* Maximum message queue priority level. */ -#define MQ_PRIO_MAX 32768 - -/* Maximum value the semaphore can have. */ -#define SEM_VALUE_MAX (2147483647) diff --git a/sysdeps/nacl/bits/mman.h b/sysdeps/nacl/bits/mman.h deleted file mode 100644 index 2baf35b036..0000000000 --- a/sysdeps/nacl/bits/mman.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Definitions for POSIX memory map interface. NaCl version. - Copyright (C) 2015-2016 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/>. */ - -#ifndef _SYS_MMAN_H -# error "Never use <bits/mman.h> directly; include <sys/mman.h> instead." -#endif - -/* NaCl uses the Linux bits for this. */ -#include <bits/mman-linux.h> diff --git a/sysdeps/nacl/bits/param.h b/sysdeps/nacl/bits/param.h deleted file mode 100644 index 8f33497a3d..0000000000 --- a/sysdeps/nacl/bits/param.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Old-style Unix parameters and limits. NaCl version. - Copyright (C) 2012-2016 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/>. */ - -#ifndef _SYS_PARAM_H -# error "Never use <bits/param.h> directly; include <sys/param.h> instead." -#endif - -#define EXEC_PAGESIZE 0x10000 diff --git a/sysdeps/nacl/bits/posix_opt.h b/sysdeps/nacl/bits/posix_opt.h deleted file mode 100644 index 6d51363e0e..0000000000 --- a/sysdeps/nacl/bits/posix_opt.h +++ /dev/null @@ -1,210 +0,0 @@ -/* Define POSIX options for NaCl. - Copyright (C) 2015-2016 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; see the file COPYING.LIB. If - not, see <http://www.gnu.org/licenses/>. */ - -#ifndef _BITS_POSIX_OPT_H -#define _BITS_POSIX_OPT_H 1 - -/* Job control is supported. (Not really, but the APIs exist.) */ -#define _POSIX_JOB_CONTROL 1 - -/* Processes have a saved set-user-ID and a saved set-group-ID. */ -#define _POSIX_SAVED_IDS 1 - -/* Priority scheduling is supported. ??? */ -#define _POSIX_PRIORITY_SCHEDULING 200809L - -/* Synchronizing file data is supported. ??? */ -#define _POSIX_SYNCHRONIZED_IO 200809L - -/* The fsync function is present. */ -#define _POSIX_FSYNC 200809L - -/* Mapping of files to memory is supported. */ -#define _POSIX_MAPPED_FILES 200809L - -/* Locking of all memory is not supported. */ -#define _POSIX_MEMLOCK -1 - -/* Locking of ranges of memory is not supported. */ -#define _POSIX_MEMLOCK_RANGE -1 - -/* Setting of memory protections is supported. */ -#define _POSIX_MEMORY_PROTECTION 200809L - -/* Some filesystems allow all users to change file ownership. */ -#define _POSIX_CHOWN_RESTRICTED 0 - -/* `c_cc' member of 'struct termios' structure can be disabled by - using the value _POSIX_VDISABLE. ??? */ -#define _POSIX_VDISABLE '\0' - -/* Filenames are not silently truncated. */ -#define _POSIX_NO_TRUNC 1 - -/* X/Open realtime support is not fully available. This requires the - following set of POSIX.1 features, not all of which NaCl supports: - _POSIX_FSYNC - _POSIX_MEMLOCK - _POSIX_MEMLOCK_RANGE - _POSIX_MESSAGE_PASSING - _POSIX_PRIORITIZED_IO - _POSIX_PRIORITY_SCHEDULING - _POSIX_SHARED_MEMORY_OBJECTS - _POSIX_SYNCHRONIZED_IO - */ -#define _XOPEN_REALTIME -1 - -/* X/Open thread realtime support is not available. This requires the - following set of POSIX.1 features, none of which NaCl supports: - _POSIX_THREAD_PRIO_INHERIT - _POSIX_THREAD_PRIO_PROTECT - _POSIX_THREAD_PRIORITY_SCHEDULING - _POSIX_THREAD_ROBUST_PRIO_INHERIT - _POSIX_THREAD_ROBUST_PRIO_PROTECT - */ -#define _XOPEN_REALTIME_THREADS -1 - -/* XPG4.2 shared memory is not supported. - ??? What is this? shm* interfaces? -*/ -#define _XOPEN_SHM -1 - -/* POSIX threads are supported. */ -#define _POSIX_THREADS 200809L - -/* We have the reentrant functions described in POSIX. */ -#define _POSIX_REENTRANT_FUNCTIONS 1 -#define _POSIX_THREAD_SAFE_FUNCTIONS 200809L - -/* We do not provide priority scheduling for threads. */ -#define _POSIX_THREAD_PRIORITY_SCHEDULING -1 - -/* We support user-defined stack sizes. */ -#define _POSIX_THREAD_ATTR_STACKSIZE 200809L - -/* We support user-defined stacks. */ -#define _POSIX_THREAD_ATTR_STACKADDR 200809L - -/* We do not support priority inheritence. */ -#define _POSIX_THREAD_PRIO_INHERIT -1 - -/* We do not support priority protection. */ -#define _POSIX_THREAD_PRIO_PROTECT -1 - -#ifdef __USE_XOPEN2K8 -/* We do not support priority inheritence for robust mutexes. */ -# define _POSIX_THREAD_ROBUST_PRIO_INHERIT -1 - -/* We do not support priority protection for robust mutexes. */ -# define _POSIX_THREAD_ROBUST_PRIO_PROTECT -1 -#endif - -/* We support POSIX.1b semaphores. */ -#define _POSIX_SEMAPHORES 200809L - -/* Real-time signals are supported. ??? */ -#define _POSIX_REALTIME_SIGNALS 200809L - -/* We support asynchronous I/O. */ -#define _POSIX_ASYNCHRONOUS_IO 200809L -#define _POSIX_ASYNC_IO 1 -/* Alternative name for Unix98. */ -#define _LFS_ASYNCHRONOUS_IO 1 -/* Support for prioritization is not available. */ -#define _POSIX_PRIORITIZED_IO -1 - -/* The LFS support in asynchronous I/O is also available. */ -#define _LFS64_ASYNCHRONOUS_IO 1 - -/* The rest of the LFS is also available. */ -#define _LFS_LARGEFILE 1 -#define _LFS64_LARGEFILE 1 -#define _LFS64_STDIO 1 - -/* POSIX shared memory objects are implemented. */ -#define _POSIX_SHARED_MEMORY_OBJECTS 200809L - -/* Process CPU-time clocks are not supported. */ -#define _POSIX_CPUTIME -1 - -/* Thread CPU-time locks are supported. */ -#define _POSIX_THREAD_CPUTIME 200809L - -/* GNU libc provides regular expression handling. */ -#define _POSIX_REGEXP 1 - -/* Reader/Writer locks are available. */ -#define _POSIX_READER_WRITER_LOCKS 200809L - -/* We have a POSIX shell. */ -#define _POSIX_SHELL 1 - -/* We support the Timeouts option. */ -#define _POSIX_TIMEOUTS 200809L - -/* We support spinlocks. */ -#define _POSIX_SPIN_LOCKS 200809L - -/* The `spawn' function family is supported. */ -#define _POSIX_SPAWN 200809L - -/* We have POSIX timers. */ -#define _POSIX_TIMERS 200809L - -/* The barrier functions are available. */ -#define _POSIX_BARRIERS 200809L - -/* POSIX message queues are not available. */ -#define _POSIX_MESSAGE_PASSING -1 - -/* Thread process-shared synchronization is not supported. */ -#define _POSIX_THREAD_PROCESS_SHARED -1 - -/* The monotonic clock is available. */ -#define _POSIX_MONOTONIC_CLOCK 200809L - -/* The clock selection interfaces are available. ??? Actually only - clock_nanosleep works, and pthread_condattr_setclock does not. */ -#define _POSIX_CLOCK_SELECTION 200809L - -/* Advisory information interfaces are available. */ -#define _POSIX_ADVISORY_INFO 200809L - -/* IPv6 support is available. */ -#define _POSIX_IPV6 200809L - -/* Raw socket support is available. */ -#define _POSIX_RAW_SOCKETS 200809L - -/* We have at least one terminal. */ -#define _POSIX2_CHAR_TERM 200809L - -/* Neither process nor thread sporadic server interfaces is available. */ -#define _POSIX_SPORADIC_SERVER -1 -#define _POSIX_THREAD_SPORADIC_SERVER -1 - -/* trace.h is not available. */ -#define _POSIX_TRACE -1 -#define _POSIX_TRACE_EVENT_FILTER -1 -#define _POSIX_TRACE_INHERIT -1 -#define _POSIX_TRACE_LOG -1 - -/* Typed memory objects are not available. */ -#define _POSIX_TYPED_MEMORY_OBJECTS -1 - -#endif /* bits/posix_opt.h */ diff --git a/sysdeps/nacl/bits/stat.h b/sysdeps/nacl/bits/stat.h deleted file mode 100644 index 2ff4982e8f..0000000000 --- a/sysdeps/nacl/bits/stat.h +++ /dev/null @@ -1,147 +0,0 @@ -/* 'struct stat' and related definitions. NaCl version. - Copyright (C) 2015-2016 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/>. */ - -#if !defined _SYS_STAT_H && !defined _FCNTL_H -# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead." -#endif - -#ifndef _BITS_STAT_H -#define _BITS_STAT_H 1 - -/* Versions of the `struct stat' data structure. */ -#define _STAT_VER_NACL 0 -#define _STAT_VER_LINUX 1 - -#define _STAT_VER _STAT_VER_LINUX - -struct stat - { - __dev_t st_dev; /* Device. */ - __ino_t st_ino; /* File serial number. */ - __nlink_t st_nlink; /* Link count. */ - __mode_t st_mode; /* File mode. */ - __uid_t st_uid; /* User ID of the file's owner. */ - __gid_t st_gid; /* Group ID of the file's group.*/ - int __pad0; - __dev_t st_rdev; /* Device number, if device. */ - __off_t st_size; /* Size of file, in bytes. */ - __blksize_t st_blksize; /* Optimal block size for I/O. */ - __blkcnt_t st_blocks; /* Number 512-byte blocks allocated. */ -#if defined __USE_XOPEN2K8 - /* Nanosecond resolution timestamps are stored in a format - equivalent to 'struct timespec'. This is the type used - whenever possible but the Unix namespace rules do not allow the - identifier 'timespec' to appear in the <sys/stat.h> header. - Therefore we have to handle the use of this header in strictly - standard-compliant sources special. */ - struct timespec st_atim; /* Time of last access. */ - struct timespec st_mtim; /* Time of last modification. */ - struct timespec st_ctim; /* Time of last status change. */ -# define st_atime st_atim.tv_sec /* Backward compatibility. */ -# define st_mtime st_mtim.tv_sec -# define st_ctime st_ctim.tv_sec -#else - __time_t st_atime; /* Time of last access. */ - __uint64_t st_atimensec; /* Nsecs of last access. */ - __time_t st_mtime; /* Time of last modification. */ - __uint64_t st_mtimensec; /* Nsecs of last modification. */ - __time_t st_ctime; /* Time of last status change. */ - __uint64_t st_ctimensec; /* Nsecs of last status change. */ -#endif - __int64_t __unused[3]; - }; - -#ifdef __USE_LARGEFILE64 -/* Note stat64 has the same shape as stat for NaCl. */ -struct stat64 - { - __dev_t st_dev; /* Device. */ - __ino_t st_ino; /* File serial number. */ - __nlink_t st_nlink; /* Link count. */ - __mode_t st_mode; /* File mode. */ - __uid_t st_uid; /* User ID of the file's owner. */ - __gid_t st_gid; /* Group ID of the file's group.*/ - int __pad0; - __dev_t st_rdev; /* Device number, if device. */ - __off_t st_size; /* Size of file, in bytes. */ - __blksize_t st_blksize; /* Optimal block size for I/O. */ - __blkcnt_t st_blocks; /* Number 512-byte blocks allocated. */ -# if defined __USE_XOPEN2K8 - /* Nanosecond resolution timestamps are stored in a format - equivalent to 'struct timespec'. This is the type used - whenever possible but the Unix namespace rules do not allow the - identifier 'timespec' to appear in the <sys/stat.h> header. - Therefore we have to handle the use of this header in strictly - standard-compliant sources special. */ - struct timespec st_atim; /* Time of last access. */ - struct timespec st_mtim; /* Time of last modification. */ - struct timespec st_ctim; /* Time of last status change. */ -# define st_atime st_atim.tv_sec /* Backward compatibility. */ -# define st_mtime st_mtim.tv_sec -# define st_ctime st_ctim.tv_sec -# else - __time_t st_atime; /* Time of last access. */ - __uint64_t st_atimensec; /* Nsecs of last access. */ - __time_t st_mtime; /* Time of last modification. */ - __uint64_t st_mtimensec; /* Nsecs of last modification. */ - __time_t st_ctime; /* Time of last status change. */ - __uint64_t st_ctimensec; /* Nsecs of last status change. */ -# endif - __int64_t __unused[3]; - }; -#endif - -/* Tell code we have these members. */ -#define _STATBUF_ST_BLKSIZE 1 -#define _STATBUF_ST_RDEV 1 -/* Nanosecond resolution time values are supported. */ -#define _STATBUF_ST_NSEC 1 - -/* Encoding of the file mode. */ - -#define __S_IFMT 0170000 /* These bits determine file type. */ - -/* File types. */ -#define __S_IFDIR 0040000 /* Directory. */ -#define __S_IFCHR 0020000 /* Character device. */ -#define __S_IFBLK 0060000 /* Block device. */ -#define __S_IFREG 0100000 /* Regular file. */ -#define __S_IFIFO 0010000 /* FIFO. */ -#define __S_IFLNK 0120000 /* Symbolic link. */ -#define __S_IFSOCK 0140000 /* Socket. */ - -/* POSIX.1b objects. Note that these macros always evaluate to zero. But - they do it by enforcing the correct use of the macros. */ -#define __S_TYPEISMQ(buf) ((buf)->st_mode - (buf)->st_mode) -#define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode) -#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode) - -/* Protection bits. */ - -#define __S_ISUID 04000 /* Set user ID on execution. */ -#define __S_ISGID 02000 /* Set group ID on execution. */ -#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */ -#define __S_IREAD 0400 /* Read by owner. */ -#define __S_IWRITE 0200 /* Write by owner. */ -#define __S_IEXEC 0100 /* Execute by owner. */ - -#ifdef __USE_ATFILE -/* XXX missing: UTIME_NOW, UTIME_OMIT */ -#endif - -#endif /* bits/stat.h */ diff --git a/sysdeps/nacl/bits/typesizes.h b/sysdeps/nacl/bits/typesizes.h deleted file mode 100644 index 0118309e18..0000000000 --- a/sysdeps/nacl/bits/typesizes.h +++ /dev/null @@ -1,72 +0,0 @@ -/* bits/typesizes.h -- underlying types for *_t. NaCl version. - Copyright (C) 2015-2016 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/>. */ - -#ifndef _BITS_TYPES_H -# error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead." -#endif - -#ifndef _BITS_TYPESIZES_H -#define _BITS_TYPESIZES_H 1 - -/* See <bits/types.h> for the meaning of these macros. This file exists so - that <bits/types.h> need not vary across different GNU platforms. */ - -#define __DEV_T_TYPE __UQUAD_TYPE -#define __UID_T_TYPE __U32_TYPE -#define __GID_T_TYPE __U32_TYPE -#define __INO_T_TYPE __UQUAD_TYPE -#define __INO64_T_TYPE __INO_T_TYPE -#define __MODE_T_TYPE __U32_TYPE -#define __NLINK_T_TYPE __UWORD_TYPE -#define __OFF_T_TYPE __SQUAD_TYPE -#define __OFF64_T_TYPE __OFF_T_TYPE -#define __PID_T_TYPE __S32_TYPE -#define __RLIM_T_TYPE __UQUAD_TYPE -#define __RLIM64_T_TYPE __RLIM_T_TYPE -#define __BLKCNT_T_TYPE __SQUAD_TYPE -#define __BLKCNT64_T_TYPE __BLKCNT_T_TYPE -#define __FSBLKCNT_T_TYPE __UQUAD_TYPE -#define __FSBLKCNT64_T_TYPE __FSBLKCNT_T_TYPE -#define __FSFILCNT_T_TYPE __UQUAD_TYPE -#define __FSFILCNT64_T_TYPE __FSFILCNT_T_TYPE -#define __FSWORD_T_TYPE __SWORD_TYPE -#define __ID_T_TYPE __U32_TYPE -#define __CLOCK_T_TYPE __SLONGWORD_TYPE -#define __TIME_T_TYPE __SQUAD_TYPE -#define __USECONDS_T_TYPE __U32_TYPE -#define __SUSECONDS_T_TYPE __SLONGWORD_TYPE -#define __DADDR_T_TYPE __S32_TYPE -#define __KEY_T_TYPE __S32_TYPE -#define __CLOCKID_T_TYPE __S32_TYPE -#define __TIMER_T_TYPE void * -#define __BLKSIZE_T_TYPE __SLONGWORD_TYPE -#define __FSID_T_TYPE struct { int __val[2]; } -#define __SSIZE_T_TYPE __SWORD_TYPE -#define __SYSCALL_SLONG_TYPE __SLONGWORD_TYPE -#define __SYSCALL_ULONG_TYPE __ULONGWORD_TYPE -#define __CPU_MASK_TYPE __ULONGWORD_TYPE - -/* All our foo64_t types match their foo_t counterparts. */ -#define __OFF_T_MATCHES_OFF64_T 1 -#define __INO_T_MATCHES_INO64_T 1 - -/* Number of descriptors that can fit in an `fd_set'. */ -#define __FD_SETSIZE 1024 - - -#endif /* bits/typesizes.h */ |