Update header versions for NDK platform fixes.

Bug: http://b/28178111
Change-Id: Icd638673b409aa43a91490f77c6b4d79c9ea20d9
This commit is contained in:
Josh Gao 2016-05-27 11:14:16 -07:00
parent 6e9c1f61d8
commit 46b44160e9
30 changed files with 126 additions and 107 deletions

View File

@ -34,11 +34,12 @@
#include <string.h>
#include <sys/cdefs.h>
#if __ANDROID_API__ < 21
__BEGIN_DECLS
extern sighandler_t bsd_signal(int signum, sighandler_t handler);
extern sighandler_t bsd_signal(int signum, sighandler_t handler) __REMOVED_IN(21);
#if __ANDROID_API__ < 21
static __inline int sigismember(const sigset_t *set, int signum) {
/* Signal numbers start at 1, but bit positions start at 0. */
@ -97,7 +98,8 @@ static __inline sighandler_t signal(int s, sighandler_t f) {
return bsd_signal(s, f);
}
#endif /* __ANDROID_API__ < 21 */
__END_DECLS
#endif
#endif /* _ANDROID_LEGACY_SIGNAL_INLINES_H_ */

View File

@ -87,13 +87,13 @@ extern int posix_fadvise64(int, off64_t, off64_t, int) __INTRODUCED_IN(21);
extern int posix_fallocate64(int, off64_t, off64_t) __INTRODUCED_IN(21);
#if defined(__USE_GNU)
ssize_t readahead(int, off64_t, size_t) __INTRODUCED_IN(21);
ssize_t readahead(int, off64_t, size_t) __INTRODUCED_IN(16);
int sync_file_range(int, off64_t, off64_t, unsigned int) __INTRODUCED_IN_FUTURE;
#endif
extern int __open_2(const char*, int) __INTRODUCED_IN(21);
extern int __open_2(const char*, int) __INTRODUCED_IN(17);
extern int __open_real(const char*, int, ...) __RENAME(open);
extern int __openat_2(int, const char*, int) __INTRODUCED_IN(21);
extern int __openat_2(int, const char*, int) __INTRODUCED_IN(17);
extern int __openat_real(int, const char*, int, ...) __RENAME(openat);
__errordecl(__creat_missing_mode, "called with O_CREAT, but missing mode");
__errordecl(__creat_too_many_args, "too many arguments");

View File

@ -36,23 +36,27 @@
__BEGIN_DECLS
#pragma GCC visibility push(default)
int feclearexcept(int) __INTRODUCED_IN(21);
int fegetexceptflag(fexcept_t*, int) __INTRODUCED_IN(21);
int feraiseexcept(int) __INTRODUCED_IN(21);
int fesetexceptflag(const fexcept_t*, int) __INTRODUCED_IN(21);
int fetestexcept(int) __INTRODUCED_IN(21);
// fenv was always available on x86.
int feclearexcept(int) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int fegetexceptflag(fexcept_t*, int) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21)
__INTRODUCED_IN_X86(9);
int feraiseexcept(int) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int fesetexceptflag(const fexcept_t*, int) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21)
__INTRODUCED_IN_X86(9);
int fetestexcept(int) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int fegetround(void) __INTRODUCED_IN(21);
int fesetround(int) __INTRODUCED_IN(21);
int fegetround(void) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int fesetround(int) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int fegetenv(fenv_t*) __INTRODUCED_IN(21);
int feholdexcept(fenv_t*) __INTRODUCED_IN(21);
int fesetenv(const fenv_t*) __INTRODUCED_IN(21);
int feupdateenv(const fenv_t*) __INTRODUCED_IN(21);
int fegetenv(fenv_t*) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int feholdexcept(fenv_t*) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int fesetenv(const fenv_t*) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int feupdateenv(const fenv_t*) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21)
__INTRODUCED_IN_X86(9);
int feenableexcept(int) __INTRODUCED_IN(21);
int fedisableexcept(int) __INTRODUCED_IN(21);
int fegetexcept(void) __INTRODUCED_IN(21);
int feenableexcept(int) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int fedisableexcept(int) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
int fegetexcept(void) __INTRODUCED_IN_ARM(21) __INTRODUCED_IN_MIPS(21) __INTRODUCED_IN_X86(9);
/*
* The following constant represents the default floating-point environment

View File

@ -54,9 +54,9 @@ struct FTW {
};
__BEGIN_DECLS
int ftw(const char*, int (*)(const char*, const struct stat*, int), int) __INTRODUCED_IN(21);
int ftw(const char*, int (*)(const char*, const struct stat*, int), int) __INTRODUCED_IN(17);
int nftw(const char*, int (*)(const char*, const struct stat*, int, struct FTW*), int, int)
__INTRODUCED_IN(21);
__INTRODUCED_IN(17);
int ftw64(const char*, int (*)(const char*, const struct stat64*, int), int) __INTRODUCED_IN(21);
int nftw64(const char*, int (*)(const char*, const struct stat64*, int, struct FTW*), int, int)
__INTRODUCED_IN(21);

View File

@ -254,8 +254,8 @@ typedef struct {
} imaxdiv_t;
__BEGIN_DECLS
intmax_t imaxabs(intmax_t) __pure2 __INTRODUCED_IN(21);
imaxdiv_t imaxdiv(intmax_t, intmax_t) __pure2 __INTRODUCED_IN(21);
intmax_t imaxabs(intmax_t) __pure2 __INTRODUCED_IN(19);
imaxdiv_t imaxdiv(intmax_t, intmax_t) __pure2 __INTRODUCED_IN(19);
intmax_t strtoimax(const char *, char **, int);
uintmax_t strtoumax(const char *, char **, int);
intmax_t wcstoimax(const wchar_t* __restrict, wchar_t** __restrict, int) __INTRODUCED_IN(21);

View File

@ -29,7 +29,7 @@ extern void* realloc(void* p, size_t byte_count) __wur __attribute__((alloc_size
extern void free(void* p);
extern void* memalign(size_t alignment, size_t byte_count) __mallocfunc __wur __attribute__((alloc_size(2)));
extern size_t malloc_usable_size(const void* p) __INTRODUCED_IN(21);
extern size_t malloc_usable_size(const void* p) __INTRODUCED_IN(17);
#ifndef STRUCT_MALLINFO_DECLARED
#define STRUCT_MALLINFO_DECLARED 1

View File

@ -127,13 +127,6 @@ extern int signgam;
#endif
#endif /* __BSD_VISIBLE */
/* scalbln, scalbnf, and scalblnl were unavailable on x86 until API level 18 */
#if defined(__i386__)
#define __INTRODUCED_IN_X86 __INTRODUCED_IN
#else
#define __INTRODUCED_IN_X86(x)
#endif
/*
* Most of these functions depend on the rounding mode and have the side
* effect of raising floating-point exceptions, so they are not declared
@ -212,7 +205,10 @@ double log2(double) __INTRODUCED_IN(18);
double logb(double);
long lrint(double);
long lround(double);
double nan(const char*) __pure2 __INTRODUCED_IN(13);
double nan(const char*) __pure2 __INTRODUCED_IN_ARM(13) __INTRODUCED_IN_MIPS(13)
__INTRODUCED_IN_X86(9);
double nextafter(double, double);
double remainder(double, double);
double remquo(double, double, int *);
@ -243,8 +239,8 @@ double fmax(double, double) __pure2;
double fmin(double, double) __pure2;
double nearbyint(double);
double round(double);
double scalbln(double, long);
double scalbn(double, int) __INTRODUCED_IN_X86(18);
double scalbln(double, long) __INTRODUCED_IN_X86(18);
double scalbn(double, int);
double tgamma(double);
double trunc(double);
#endif
@ -310,7 +306,7 @@ float erff(float);
float erfcf(float);
float hypotf(float, float);
float lgammaf(float);
float tgammaf(float) __INTRODUCED_IN(13);
float tgammaf(float) __INTRODUCED_IN_ARM(13) __INTRODUCED_IN_MIPS(13) __INTRODUCED_IN_X86(9);
float acoshf(float);
float asinhf(float);
@ -322,14 +318,15 @@ long long llrintf(float);
long long llroundf(float);
long lrintf(float);
long lroundf(float);
float nanf(const char*) __pure2 __INTRODUCED_IN(13);
float nanf(const char*) __pure2 __INTRODUCED_IN_ARM(13) __INTRODUCED_IN_MIPS(13)
__INTRODUCED_IN_X86(9);
float nearbyintf(float);
float nextafterf(float, float);
float remainderf(float, float);
float remquof(float, float, int *);
float rintf(float);
float scalblnf(float, long);
float scalbnf(float, int) __INTRODUCED_IN_X86(18);
float scalblnf(float, long) __INTRODUCED_IN_X86(18);
float scalbnf(float, int);
float truncf(float);
float fdimf(float, float);
@ -421,8 +418,8 @@ long double remainderl(long double, long double) __INTRODUCED_IN(21);
long double remquol(long double, long double, int*) __INTRODUCED_IN(21);
long double rintl(long double) __INTRODUCED_IN(21);
long double roundl(long double);
long double scalblnl(long double, long);
long double scalbnl(long double, int) __INTRODUCED_IN_X86(18);
long double scalblnl(long double, long) __INTRODUCED_IN_X86(18);
long double scalbnl(long double, int);
long double sinhl(long double) __INTRODUCED_IN(21);
long double sinl(long double) __INTRODUCED_IN(21);
long double sqrtl(long double) __INTRODUCED_IN(21);

View File

@ -133,7 +133,7 @@ typedef struct {
__BEGIN_DECLS
int pthread_atfork(void (*)(void), void (*)(void), void (*)(void)) __INTRODUCED_IN(21);
int pthread_atfork(void (*)(void), void (*)(void), void (*)(void)) __INTRODUCED_IN(12);
int pthread_attr_destroy(pthread_attr_t* _Nonnull);
int pthread_attr_getdetachstate(const pthread_attr_t* _Nonnull, int* _Nonnull);

View File

@ -122,8 +122,8 @@ struct passwd* getpwent(void)
void setpwent(void) __INTRODUCED_IN_FUTURE;
void endpwent(void) __INTRODUCED_IN_FUTURE;
int getpwnam_r(const char*, struct passwd*, char*, size_t, struct passwd**) __INTRODUCED_IN(21);
int getpwuid_r(uid_t, struct passwd*, char*, size_t, struct passwd**) __INTRODUCED_IN(21);
int getpwnam_r(const char*, struct passwd*, char*, size_t, struct passwd**) __INTRODUCED_IN(12);
int getpwuid_r(uid_t, struct passwd*, char*, size_t, struct passwd**) __INTRODUCED_IN(12);
__END_DECLS

View File

@ -52,9 +52,10 @@ extern int sched_rr_get_interval(pid_t, struct timespec*);
#if defined(__USE_GNU)
extern int clone(int (*)(void*), void*, int, void*, ...);
extern int unshare(int) __INTRODUCED_IN(21);
extern int sched_getcpu(void) __INTRODUCED_IN(21);
extern int clone(int (*)(void*), void*, int, void*, ...) __INTRODUCED_IN_ARM(9)
__INTRODUCED_IN_MIPS(12) __INTRODUCED_IN_X86(17);
extern int unshare(int) __INTRODUCED_IN(17);
extern int sched_getcpu(void) __INTRODUCED_IN(12);
extern int setns(int, int) __INTRODUCED_IN(21);
#ifdef __LP64__
@ -72,9 +73,8 @@ typedef struct {
__CPU_BITTYPE __bits[ CPU_SETSIZE / __CPU_BITS ];
} cpu_set_t;
extern int sched_setaffinity(pid_t pid, size_t setsize, const cpu_set_t* set) __INTRODUCED_IN(21);
extern int sched_getaffinity(pid_t pid, size_t setsize, cpu_set_t* set) __INTRODUCED_IN(21);
extern int sched_setaffinity(pid_t pid, size_t setsize, const cpu_set_t* set) __INTRODUCED_IN(12);
extern int sched_getaffinity(pid_t pid, size_t setsize, cpu_set_t* set) __INTRODUCED_IN(12);
#define CPU_ZERO(set) CPU_ZERO_S(sizeof(cpu_set_t), set)
#define CPU_SET(cpu, set) CPU_SET_S(cpu, sizeof(cpu_set_t), set)
@ -97,8 +97,8 @@ extern int sched_getaffinity(pid_t pid, size_t setsize, cpu_set_t* set) __INTROD
#define CPU_ALLOC(count) __sched_cpualloc((count))
#define CPU_FREE(set) __sched_cpufree((set))
extern cpu_set_t* __sched_cpualloc(size_t count) __INTRODUCED_IN(21);
extern void __sched_cpufree(cpu_set_t* set) __INTRODUCED_IN(21);
extern cpu_set_t* __sched_cpualloc(size_t count) __INTRODUCED_IN(12);
extern void __sched_cpufree(cpu_set_t* set) __INTRODUCED_IN(12);
#define CPU_ZERO_S(setsize, set) __builtin_memset(set, 0, setsize)
@ -142,7 +142,7 @@ extern void __sched_cpufree(cpu_set_t* set) __INTRODUCED_IN(21);
#define CPU_COUNT_S(setsize, set) __sched_cpucount((setsize), (set))
extern int __sched_cpucount(size_t setsize, cpu_set_t* set) __INTRODUCED_IN(21);
extern int __sched_cpucount(size_t setsize, cpu_set_t* set) __INTRODUCED_IN(12);
#endif /* __USE_GNU */

View File

@ -38,10 +38,10 @@ void* lsearch(const void*, void*, size_t*, size_t, int (*)(const void*, const vo
__INTRODUCED_IN(21);
void* tdelete(const void* __restrict, void** __restrict, int (*)(const void*, const void*))
__INTRODUCED_IN(21);
void tdestroy(void*, void (*)(void*)) __INTRODUCED_IN(21);
void* tfind(const void*, void* const*, int (*)(const void*, const void*)) __INTRODUCED_IN(21);
void* tsearch(const void*, void**, int (*)(const void*, const void*)) __INTRODUCED_IN(21);
__INTRODUCED_IN(16);
void tdestroy(void*, void (*)(void*)) __INTRODUCED_IN(16);
void* tfind(const void*, void* const*, int (*)(const void*, const void*)) __INTRODUCED_IN(16);
void* tsearch(const void*, void**, int (*)(const void*, const void*)) __INTRODUCED_IN(16);
void twalk(const void*, void (*)(const void*, VISIT, int)) __INTRODUCED_IN(21);
__END_DECLS

View File

@ -54,8 +54,10 @@ void _longjmp(jmp_buf, int);
int setjmp(jmp_buf);
void longjmp(jmp_buf, int);
int sigsetjmp(sigjmp_buf, int);
void siglongjmp(sigjmp_buf, int);
int sigsetjmp(sigjmp_buf, int) __INTRODUCED_IN_ARM(9) __INTRODUCED_IN_MIPS(12)
__INTRODUCED_IN_X86(12);
void siglongjmp(sigjmp_buf, int) __INTRODUCED_IN_ARM(9) __INTRODUCED_IN_MIPS(12)
__INTRODUCED_IN_X86(12);
__END_DECLS

View File

@ -144,8 +144,8 @@ extern int killpg(int, int);
extern int sigaltstack(const stack_t*, stack_t*);
extern void psiginfo(const siginfo_t*, const char*) __INTRODUCED_IN(21);
extern void psignal(int, const char*) __INTRODUCED_IN(21);
extern void psiginfo(const siginfo_t*, const char*) __INTRODUCED_IN(17);
extern void psignal(int, const char*) __INTRODUCED_IN(17);
extern int pthread_kill(pthread_t, int);
extern int pthread_sigmask(int, const sigset_t*, sigset_t*);

View File

@ -119,8 +119,8 @@ int fscanf(FILE * __restrict, const char * __restrict, ...)
size_t fwrite(const void * __restrict, size_t, size_t, FILE * __restrict);
int getc(FILE *);
int getchar(void);
ssize_t getdelim(char** __restrict, size_t* __restrict, int, FILE* __restrict) __INTRODUCED_IN(21);
ssize_t getline(char** __restrict, size_t* __restrict, FILE* __restrict) __INTRODUCED_IN(21);
ssize_t getdelim(char** __restrict, size_t* __restrict, int, FILE* __restrict) __INTRODUCED_IN(18);
ssize_t getline(char** __restrict, size_t* __restrict, FILE* __restrict) __INTRODUCED_IN(18);
void perror(const char *);
int printf(const char * __restrict, ...)
@ -280,7 +280,7 @@ int fileno_unlocked(FILE*) __INTRODUCED_IN(24);
#define fwopen(cookie, fn) funopen(cookie, 0, fn, 0, 0)
#endif /* __BSD_VISIBLE */
extern char* __fgets_chk(char*, int, FILE*, size_t) __INTRODUCED_IN(21);
extern char* __fgets_chk(char*, int, FILE*, size_t) __INTRODUCED_IN(17);
extern char* __fgets_real(char*, int, FILE*) __RENAME(fgets);
__errordecl(__fgets_too_big_error, "fgets called with size bigger than buffer");
__errordecl(__fgets_too_small_error, "fgets called with size less than zero");

View File

@ -54,7 +54,7 @@ extern void* memset(void *, int, size_t);
extern void* memmem(const void *, size_t, const void *, size_t) __purefunc;
extern char* strchr(const char *, int) __purefunc;
extern char* __strchr_chk(const char*, int, size_t) __INTRODUCED_IN(21);
extern char* __strchr_chk(const char*, int, size_t) __INTRODUCED_IN(18);
#if defined(__USE_GNU)
#if defined(__cplusplus)
extern "C++" char* strchrnul(char*, int) __RENAME(strchrnul) __purefunc;
@ -65,10 +65,10 @@ char* strchrnul(const char*, int) __purefunc __INTRODUCED_IN(24);
#endif
extern char* strrchr(const char *, int) __purefunc;
extern char* __strrchr_chk(const char*, int, size_t) __INTRODUCED_IN(21);
extern char* __strrchr_chk(const char*, int, size_t) __INTRODUCED_IN(18);
extern size_t strlen(const char *) __purefunc;
extern size_t __strlen_chk(const char*, size_t) __INTRODUCED_IN(21);
extern size_t __strlen_chk(const char*, size_t) __INTRODUCED_IN(17);
extern int strcmp(const char *, const char *) __purefunc;
extern char* stpcpy(char* __restrict, const char* __restrict) __INTRODUCED_IN(21);
extern char* strcpy(char* __restrict, const char* __restrict);
@ -139,10 +139,10 @@ extern char* __stpncpy_chk2(char* __restrict, const char* __restrict, size_t, si
extern char* __strncpy_chk2(char* __restrict, const char* __restrict, size_t, size_t, size_t)
__INTRODUCED_IN(21);
extern size_t __strlcpy_real(char* __restrict, const char* __restrict, size_t) __RENAME(strlcpy);
extern size_t __strlcpy_chk(char*, const char*, size_t, size_t) __INTRODUCED_IN(21);
extern size_t __strlcpy_chk(char*, const char*, size_t, size_t) __INTRODUCED_IN(17);
extern size_t __strlcat_real(char* __restrict, const char* __restrict, size_t) __RENAME(strlcat);
extern size_t __strlcat_chk(char* __restrict, const char* __restrict, size_t, size_t)
__INTRODUCED_IN(21);
__INTRODUCED_IN(17);
#if defined(__BIONIC_FORTIFY)

View File

@ -54,11 +54,7 @@ __BEGIN_DECLS
#define bzero(b, len) (void)(__builtin_memset((b), '\0', (len)))
#endif
#if defined(__i386__)
int ffs(int) __INTRODUCED_IN(21);
#else
int ffs(int);
#endif
int ffs(int) __INTRODUCED_IN_X86(18);
__END_DECLS

View File

@ -33,7 +33,7 @@
__BEGIN_DECLS
unsigned long int getauxval(unsigned long int type) __INTRODUCED_IN(21);
unsigned long int getauxval(unsigned long int type) __INTRODUCED_IN(18);
__END_DECLS

View File

@ -501,6 +501,24 @@
#define __INTRODUCED_IN_64(api_level)
#endif
#if defined(__arm__)
#define __INTRODUCED_IN_ARM __INTRODUCED_IN
#else
#define __INTRODUCED_IN_ARM(x)
#endif
#if defined(__i386__)
#define __INTRODUCED_IN_X86 __INTRODUCED_IN
#else
#define __INTRODUCED_IN_X86(x)
#endif
#if defined(__mips__)
#define __INTRODUCED_IN_MIPS __INTRODUCED_IN
#else
#define __INTRODUCED_IN_MIPS(x)
#endif
#if __has_builtin(__builtin_umul_overflow) || __GNUC__ >= 5
#if __LP64__
#define __size_mul_overflow(a, b, result) __builtin_umull_overflow(a, b, result)

View File

@ -61,8 +61,8 @@ extern int msync(const void*, size_t, int);
extern int mprotect(const void*, size_t, int);
extern void* mremap(void*, size_t, size_t, int, ...);
extern int mlockall(int) __INTRODUCED_IN(21);
extern int munlockall(void) __INTRODUCED_IN(21);
extern int mlockall(int) __INTRODUCED_IN(17);
extern int munlockall(void) __INTRODUCED_IN(17);
extern int mlock(const void*, size_t);
extern int munlock(const void*, size_t);

View File

@ -34,7 +34,7 @@
__BEGIN_DECLS
extern int personality(unsigned int persona) __INTRODUCED_IN(21);
extern int personality(unsigned int persona) __INTRODUCED_IN(15);
__END_DECLS

View File

@ -35,7 +35,7 @@
__BEGIN_DECLS
extern int signalfd(int fd, const sigset_t* _Nonnull mask, int flags) __INTRODUCED_IN(21);
extern int signalfd(int fd, const sigset_t* _Nonnull mask, int flags) __INTRODUCED_IN(18);
__END_DECLS

View File

@ -157,7 +157,7 @@ extern int stat64(const char*, struct stat64*) __INTRODUCED_IN(21);
extern int mknod(const char*, mode_t, dev_t);
extern mode_t umask(mode_t);
extern mode_t __umask_chk(mode_t) __INTRODUCED_IN(21);
extern mode_t __umask_chk(mode_t) __INTRODUCED_IN(18);
extern mode_t __umask_real(mode_t) __RENAME(umask);
__errordecl(__umask_invalid_mode, "umask called with invalid mode");

View File

@ -60,10 +60,10 @@ struct statvfs64 { __STATVFS64_BODY };
#define ST_RELATIME 0x1000
extern int statvfs(const char* __restrict _Nonnull, struct statvfs* __restrict _Nonnull)
__INTRODUCED_IN(21);
__INTRODUCED_IN(19);
extern int statvfs64(const char* __restrict _Nonnull, struct statvfs64* __restrict _Nonnull)
__INTRODUCED_IN(21);
extern int fstatvfs(int, struct statvfs* _Nonnull) __INTRODUCED_IN(21);
extern int fstatvfs(int, struct statvfs* _Nonnull) __INTRODUCED_IN(19);
extern int fstatvfs64(int, struct statvfs64* _Nonnull) __INTRODUCED_IN(21);
__END_DECLS

View File

@ -38,8 +38,8 @@ __BEGIN_DECLS
#define SWAP_FLAG_PRIO_MASK 0x7fff
#define SWAP_FLAG_PRIO_SHIFT 0
extern int swapon(const char* _Nonnull, int) __INTRODUCED_IN(21);
extern int swapoff(const char* _Nonnull) __INTRODUCED_IN(21);
extern int swapon(const char* _Nonnull, int) __INTRODUCED_IN(19);
extern int swapoff(const char* _Nonnull) __INTRODUCED_IN(19);
__END_DECLS

View File

@ -48,7 +48,7 @@ int __system_property_get(const char *name, char *value);
/* Set a system property by name.
**/
int __system_property_set(const char* key, const char* value) __INTRODUCED_IN(21);
int __system_property_set(const char* key, const char* value) __INTRODUCED_IN(12);
/* Return a pointer to the system property named name, if it
** exists, or NULL if there is no such property. Use
@ -94,7 +94,7 @@ const prop_info *__system_property_find_nth(unsigned n);
** not a bug.
*/
int __system_property_foreach(void (*propfn)(const prop_info* pi, void* cookie), void* cookie)
__INTRODUCED_IN(21);
__INTRODUCED_IN(19);
__END_DECLS

View File

@ -41,10 +41,10 @@ __BEGIN_DECLS
#define TFD_CLOEXEC O_CLOEXEC
#define TFD_NONBLOCK O_NONBLOCK
extern int timerfd_create(clockid_t, int) __INTRODUCED_IN(21);
extern int timerfd_create(clockid_t, int) __INTRODUCED_IN(19);
extern int timerfd_settime(int, int, const struct itimerspec*, struct itimerspec*)
__INTRODUCED_IN(21);
extern int timerfd_gettime(int, struct itimerspec*) __INTRODUCED_IN(21);
__INTRODUCED_IN(19);
extern int timerfd_gettime(int, struct itimerspec*) __INTRODUCED_IN(19);
__END_DECLS

View File

@ -51,7 +51,7 @@ __BEGIN_DECLS
extern pid_t wait(int *);
extern pid_t waitpid(pid_t, int *, int);
extern pid_t wait4(pid_t, int*, int, struct rusage*) __INTRODUCED_IN(19);
extern pid_t wait4(pid_t, int*, int, struct rusage*) __INTRODUCED_IN(18);
/* Posix states that idtype_t should be an enumeration type, but
* the kernel headers define P_ALL, P_PID and P_PGID as constant macros

View File

@ -36,25 +36,25 @@ __BEGIN_DECLS
#define XATTR_REPLACE 2
extern int fsetxattr(int fd, const char* name, const void* value, size_t size, int flags)
__INTRODUCED_IN(21);
__INTRODUCED_IN(16);
extern int setxattr(const char* path, const char* name, const void* value, size_t size, int flags)
__INTRODUCED_IN(21);
__INTRODUCED_IN(16);
extern int lsetxattr(const char* path, const char* name, const void* value, size_t size, int flags)
__INTRODUCED_IN(21);
__INTRODUCED_IN(16);
extern ssize_t fgetxattr(int fd, const char* name, void* value, size_t size) __INTRODUCED_IN(21);
extern ssize_t fgetxattr(int fd, const char* name, void* value, size_t size) __INTRODUCED_IN(16);
extern ssize_t getxattr(const char* path, const char* name, void* value, size_t size)
__INTRODUCED_IN(21);
__INTRODUCED_IN(16);
extern ssize_t lgetxattr(const char* path, const char* name, void* value, size_t size)
__INTRODUCED_IN(21);
__INTRODUCED_IN(16);
extern ssize_t listxattr(const char* path, char* list, size_t size) __INTRODUCED_IN(21);
extern ssize_t llistxattr(const char* path, char* list, size_t size) __INTRODUCED_IN(21);
extern ssize_t flistxattr(int fd, char* list, size_t size) __INTRODUCED_IN(21);
extern ssize_t listxattr(const char* path, char* list, size_t size) __INTRODUCED_IN(16);
extern ssize_t llistxattr(const char* path, char* list, size_t size) __INTRODUCED_IN(16);
extern ssize_t flistxattr(int fd, char* list, size_t size) __INTRODUCED_IN(16);
extern int removexattr(const char* path, const char* name) __INTRODUCED_IN(21);
extern int lremovexattr(const char* path, const char* name) __INTRODUCED_IN(21);
extern int fremovexattr(int fd, const char* name) __INTRODUCED_IN(21);
extern int removexattr(const char* path, const char* name) __INTRODUCED_IN(16);
extern int lremovexattr(const char* path, const char* name) __INTRODUCED_IN(16);
extern int fremovexattr(int fd, const char* name) __INTRODUCED_IN(16);
__END_DECLS

View File

@ -100,8 +100,8 @@ extern int timer_gettime(timer_t, struct itimerspec*) __LIBC_ABI_PUBLIC__;
extern int timer_getoverrun(timer_t) __LIBC_ABI_PUBLIC__;
/* Non-standard extensions that are in the BSDs and glibc. */
extern time_t timelocal(struct tm*) __LIBC_ABI_PUBLIC__ __INTRODUCED_IN(21);
extern time_t timegm(struct tm*) __LIBC_ABI_PUBLIC__ __INTRODUCED_IN(21);
extern time_t timelocal(struct tm*) __LIBC_ABI_PUBLIC__ __INTRODUCED_IN(12);
extern time_t timegm(struct tm*) __LIBC_ABI_PUBLIC__ __INTRODUCED_IN(12);
__END_DECLS

View File

@ -90,7 +90,7 @@ extern int setpgid(pid_t __pid, pid_t __pgid);
extern pid_t getppid(void);
extern pid_t getpgrp(void);
extern int setpgrp(void);
extern pid_t getsid(pid_t __pid) __INTRODUCED_IN(21);
extern pid_t getsid(pid_t __pid) __INTRODUCED_IN(17);
extern pid_t setsid(void);
extern int execv(const char* __path, char* const* __argv);
@ -127,7 +127,7 @@ extern long pathconf(const char* __path, int __name);
extern int access(const char* __path, int __mode);
extern int faccessat(int __dirfd, const char* __path, int __mode, int __flags)
__INTRODUCED_IN(21);
__INTRODUCED_IN(16);
extern int link(const char* __oldpath, const char* __newpath);
extern int linkat(int __olddirfd, const char* __oldpath, int __newdirfd,
const char* __newpath, int __flags) __INTRODUCED_IN(21);
@ -285,7 +285,7 @@ extern ssize_t __readlink_real(const char*, char*, size_t) __RENAME(readlink);
extern ssize_t __readlinkat_chk(int dirfd, const char*, char*, size_t, size_t) __INTRODUCED_IN(23);
__errordecl(__readlinkat_dest_size_error, "readlinkat called with size bigger than destination");
__errordecl(__readlinkat_size_toobig_error, "readlinkat called with size > SSIZE_MAX");
extern ssize_t __readlinkat_real(int dirfd, const char*, char*, size_t) __RENAME(readlinkat);
extern ssize_t __readlinkat_real(int dirfd, const char*, char*, size_t) __RENAME(readlinkat) __INTRODUCED_IN(21);
extern int getdomainname(char*, size_t) __INTRODUCED_IN_FUTURE;
extern int setdomainname(const char*, size_t) __INTRODUCED_IN_FUTURE;