You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
1.7 KiB
75 lines
1.7 KiB
#ifndef __BIONIC_COMPAT_H
|
|
#define __BIONIC_COMPAT_H
|
|
|
|
/* These functions and definitions aren't candidates for adding to bionic:
|
|
* they've either been removed from POSIX or are glibc extensions.
|
|
*/
|
|
|
|
#define _GNU_SOURCE
|
|
#include <limits.h>
|
|
#include <linux/icmp.h>
|
|
#include <stddef.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
#include <sys/resource.h>
|
|
#include <sys/sysmacros.h>
|
|
#include <sys/time.h>
|
|
#include <sys/types.h>
|
|
#include <sys/utsname.h>
|
|
#include <unistd.h>
|
|
|
|
#define __GLIBC_PREREQ(a, b) 1
|
|
|
|
#define DEV_BSIZE 512
|
|
#define NGROUPS NGROUPS_MAX
|
|
#define SHMLBA sysconf(_SC_PAGESIZE)
|
|
#define SIGCLD SIGCHLD
|
|
#define S_IREAD S_IRUSR
|
|
#define S_IWRITE S_IWUSR
|
|
#define _UTSNAME_DOMAIN_LENGTH SYS_NMLN
|
|
#define _UTSNAME_LENGTH SYS_NMLN
|
|
#define LINE_MAX _POSIX2_LINE_MAX
|
|
/* Bionic doesn't support extended patterns and
|
|
* as of LTP20180515, this only used by read_all.c
|
|
* which is run from runtest/fs.
|
|
*
|
|
* LTP does not pass the argument that will end up
|
|
* going down the extended pattern match call, so
|
|
* we are safe here. This is for *build* purposes only
|
|
* and we don't alter behavior
|
|
*/
|
|
#define FNM_EXTMATCH 0
|
|
|
|
enum __ptrace_request { ENUM_PTRACE_UNUSED };
|
|
typedef unsigned long ulong;
|
|
|
|
static inline void *valloc(size_t size)
|
|
{
|
|
return memalign(sysconf(_SC_PAGESIZE), size);
|
|
}
|
|
|
|
static inline char *get_current_dir_name(void)
|
|
{
|
|
return getcwd(NULL, 0);
|
|
}
|
|
|
|
static inline int getdtablesize(void)
|
|
{
|
|
struct rlimit lim;
|
|
int err = getrlimit(RLIMIT_NOFILE, &lim);
|
|
if (err < 0)
|
|
return err;
|
|
|
|
return lim.rlim_cur;
|
|
}
|
|
|
|
static inline void pthread_testcancel(void) { }
|
|
static inline int pthread_cancel(pthread_t thread) { return 0; }
|
|
static inline int pthread_yield(void)
|
|
{
|
|
extern int sched_yield(void);
|
|
return sched_yield();
|
|
}
|
|
|
|
#endif /* __BIONIC_COMPAT_H */
|