diff options
Diffstat (limited to 'src/wrapped32/wrappedlibc_private.h')
| -rwxr-xr-x | src/wrapped32/wrappedlibc_private.h | 2178 |
1 files changed, 2178 insertions, 0 deletions
diff --git a/src/wrapped32/wrappedlibc_private.h b/src/wrapped32/wrappedlibc_private.h new file mode 100755 index 00000000..c43f0f21 --- /dev/null +++ b/src/wrapped32/wrappedlibc_private.h @@ -0,0 +1,2178 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA) && defined(GOS)) +#error Meh... +#endif + +// FILE* is h (because stdin/stdout/stderr might be 64bits, maybe other special file can be too) +// locale_t needs special handling, with to_locale / from_locale (and is a / A) + +// a64l +//GO(abort, vFv) +//GO(abs, iFi) +//GOW(accept, iFipp) +//GOM(accept4, iFEippi) //%% glibc 2.10+ +//GOW(access, iFpi) +// acct +//GOW(addmntent, iFpp) +// addseverity +// adjtime // Weak +// adjtimex // Weak +// __adjtimex +// advance // Weak +// __aeabi_assert +// __aeabi_atexit +// __aeabi_errno_addr +// __aeabi_localeconv +// __aeabi_MB_CUR_MAX +// __aeabi_memclr +// __aeabi_memclr4 +// __aeabi_memclr8 +// __aeabi_memcpy +// __aeabi_memcpy4 +// __aeabi_memcpy8 +// __aeabi_memmove +// __aeabi_memmove4 +// __aeabi_memmove8 +// __aeabi_memset +// __aeabi_memset4 +// __aeabi_memset8 +//DATAV(__after_morecore_hook, 4) +GO(alarm, iFu) +//GO2(aligned_alloc, pFuu, memalign) +//GO(alphasort, iFpp) +//GO(alphasort64, iFpp) +//DATA(argp_err_exit_status, 4) +// argp_error // Weak +// argp_failure // Weak +// argp_help // Weak +// argp_parse // Weak +// argp_program_bug_address // type B +// argp_program_version // type B +// argp_program_version_hook // type B +// argp_state_help // Weak +// argp_usage // Weak +// argz_add // Weak +// argz_add_sep // Weak +// argz_append // Weak +// __argz_count +// argz_count // Weak +// argz_create // Weak +//GOW(argz_create_sep, iFpipp) +// argz_delete +// argz_extract // Weak +//GOW(argz_insert, iFpppp) +// __argz_next +//GOW(argz_next, pFpLp) +// argz_replace // Weak +// __argz_stringify +//GOW(argz_stringify, vFpLi) +//GO(asctime, pFp) +//GOW(asctime_r, pFpp) +//GOWM(asprintf, iFEppV) //%% +//GOM(__asprintf, iFEppV) //%% +//GOM(__asprintf_chk, iFEpipV) //%% +// __assert +//GO(__assert_fail, vFppup) +//GO(__assert_perror_fail, vFipup) +//GO(atof, dFp) +//GO(atoi, iFp) +//GO(atol, lFp) +//GO(atoll, IFp) +// authdes_create +// authdes_getucred +// authdes_pk_create +// _authenticate +// authnone_create +// authunix_create +// authunix_create_default +//GOW(backtrace, iFpi) //TODO: probably a my_backtrace version, that use emulated stack instead +//GO(__backtrace, iFpi) +//GO(__backtrace_symbols, pFpi) +//GOW(backtrace_symbols, pFpi) +//GO(__backtrace_symbols_fd, vFpii) +//GOW(backtrace_symbols_fd, vFpii) +//GO(basename, pFp) +//GOW(bcmp, iFppL) +//GO(bcopy, vFppL) +// bdflush +//GOW(bind, iFipu) +// bindresvport +//GOW(bindtextdomain, pFpp) +//GOW(bind_textdomain_codeset, pFpp) +//GOW(brk, iFp) +// __bsd_getpgrp +// bsd_signal // Weak +//GOM(bsearch, pFEppLLp) //%% +GOW(btowc, iFi) +//GOW(bzero, vFpL) +//GO(__bzero, vFpL) +GOW(calloc, pFLL) +// callrpc +//GOW(canonicalize_file_name, pFp) +// capget +// capset +//GO(catclose, iFp) +//GO(catgets, pFpiip) +//GO(catopen, pFpi) +// cbc_crypt +//GO(cfgetispeed, uFp) +//GO(cfgetospeed, uFp) +//GO(cfmakeraw, vFp) +//GOW(cfree, vFp) +//GO(cfsetispeed, iFpu) +//GO(cfsetospeed, iFpu) +//GO(cfsetspeed, iFpi) +//GOW(chdir, iFp) +//DATA(__check_rhosts_file, 4) +// chflags +// __chk_fail +//GOW(chmod, iFpu) +GOW(chown, iFpuu) +//GO(chroot, iFp) +//GOW(clearenv, iFv) +//GO(clearerr, vFp) +//GO(clearerr_unlocked, vFp) +// clnt_broadcast +// clnt_create +// clnt_pcreateerror +// clnt_perrno +// clnt_perror +// clntraw_create +// clnt_spcreateerror +// clnt_sperrno +// clnt_sperror +// clnttcp_create +// clntudp_bufcreate +// clntudp_create +// clntunix_create +GO(clock, LFv) +// clone // Weak +// __clone +GOW(close, iFi) +// __close // Weak +//GOW(closedir, iFp) +GO(closelog, vFv) +//GO(__cmsg_nxthdr, pFpp) +//GO(confstr, uFipu) +// __confstr_chk +//GOW(connect, iFipu) +//GOW(__connect, iFipu) +// copysign // Weak +// copysignf // Weak +// copysignl // Weak +//GOW(creat, iFpu) +//GO(creat64, iFpu) +// create_module // Weak +//GO(ctermid, pFp) +//GO(ctime, pFp) +//GO(ctime_r, pFpp) +//DATAM(__ctype_b, 4) +//GO(__ctype_b_loc, pFv) +//GOW(__ctype_get_mb_cur_max, LFv) +//DATAM(__ctype_tolower, 4) +//GO(__ctype_tolower_loc, pFv) +//DATAM(__ctype_toupper, 4) +//GO(__ctype_toupper_loc, pFv) +// __curbrk // type B +//GO(cuserid, pFp) +GOM(__cxa_atexit, iFEppp) //%% +GOM(atexit, iFEp) //%% just in case +GOM(__cxa_finalize, vFEp) //%% +DATAM(__cpu_model, 16) +//GOM(__cxa_thread_atexit_impl, iFEppp) //%% +// __cyg_profile_func_enter +// __cyg_profile_func_exit +// daemon +//DATAV(daylight, 4) +// __daylight // type B +//GOW(dcgettext, pFppi) +//GO(__dcgettext, pFppi) +//GOW(dcngettext, pFpppui) +// __default_morecore +// __default_rt_sa_restorer_v1 +// __default_rt_sa_restorer_v2 +// __default_sa_restorer_v1 +// __default_sa_restorer_v2 +// delete_module +// des_setparity +//GOW(dgettext, pFpp) +//GO(__dgettext, pFpp) +//GO(difftime, dFuu) +//GO(dirfd, iFp) +//GO(dirname, pFp) +//GOS(div, pFpii) //%%,noE +// _dl_addr +//GOM(dl_iterate_phdr, iFEpp) //%% +// _dl_mcount_wrapper +// _dl_mcount_wrapper_check +// _dl_open_hook // type B +// _dl_starting_up // Weak +// _dl_sym +// _dl_vsym +//GOW(dngettext, pFpppu) +//GOM(dprintf, iFEipV) +//GOM(__dprintf_chk, iFEivpV) //%% +GO(drand48, dFv) +// drand48_r +GOW(dup, iFi) +GOW(dup2, iFii) +GO(__dup2, iFii) +GO(dup3, iFiiO) +//GOW(duplocale, pFp) +//GO(__duplocale, pFp) +// dysize +//GOW(eaccess, iFpi) +// ecb_crypt +// ecvt +//GO(ecvt_r, iFdipppL) +// endaliasent +// endfsent +GO(endgrent, vFv) +GO(endhostent, vFv) +//GOW(endmntent, iFp) +// __endmntent +// endnetent +// endnetgrent +GO(endprotoent, vFv) +GO(endpwent, vFv) +// endrpcent +GO(endservent, vFv) +GO(endspent, vFv) +// endttyent +// endusershell +GOW(endutent, vFv) +// endutxent +//DATAM(environ, 4) +//DATAM(_environ, 4) +//DATAM(__environ, 4) // type B +// envz_add +// envz_entry +// envz_get +// envz_merge +// envz_remove +// envz_strip +GOM(epoll_create, iFEi) //%% not needed, but used in syscall +GOM(epoll_create1, iFEO) //%% +//GOM(epoll_ctl, iFEiiip) //%% align epool_event structure +// epoll_pwait +//GOM(epoll_wait, iFEipii) //%% need realign of epoll_event structure +// erand48 +// erand48_r // Weak +//GO(err, vFippppppppp) +// errno // type B +//GO(__errno_location, pFv) +//GOW(error, vFiippppppppp) // Simple attempt: there is a vararg, but the alignment will/may be off if it tries some Double in the "printf" part +// error_at_line // Weak +// error_message_count // type B +// error_one_per_line // type B +// error_print_progname // type B +//GO(errx, vFippppppppp) +//GO(ether_aton, pFp) +//GO(ether_aton_r, pFpp) +//GO(ether_hostton, iFpp) +//GO(ether_line, iFppp) +//GO(ether_ntoa, pFp) +//GO(ether_ntoa_r, pFpp) +//GO(ether_ntohost, iFpp) +//GOW(euidaccess, iFpi) +//GO(eventfd, iFui) +//GO(eventfd_read, iFip) +//GO(eventfd_write, iFiU) +//GO2(execl, iFEpV, my_execv) +//GO2(execle, iFEpV, my_execve) // Nope! This one needs wrapping, because is char*, char*, ..., char*[] +//GO2(execlp, iFpV, execvp) +//GOWM(execv, iFEpp) //%% +//GOM(execve, iFEppp) //%% and this one too... +//GOWM(execvp, iFEpp) +GO(exit, vFi) +GO(_exit, vFi) +GOW(_Exit, vFi) +//GOM(__explicit_bzero_chk, vFEpuu) //%% not always defined +//GO(faccessat, iFipii) +// fattach +//GO(__fbufsize, uFp) +GOW(fchdir, iFi) +// fchflags +GOW(fchmod, iFiu) +//GO(fchmodat, iFipui) +GOW(fchown, iFiuu) +//GO(fchownat, iFipuii) +GO(fclose, iFH) +GOW(fcloseall, iFv) +GOM(fcntl, iFEiiN) //%% this also use a vararg for 3rd argument +GOM(__fcntl, iFEiiN) //%% +GOM(fcntl64, iFEiiN) //%% +//GO(fcvt, pFdipp) +//GO(fcvt_r, iFdipppL) +GO(fdatasync, iFi) +// fdetach +//GO(fdopen, pFip) +//GOW(fdopendir, pFi) +//GOW(feof, iFp) +//GO(feof_unlocked, iFp) +//GOW(ferror, iFp) +//GO(ferror_unlocked, iFp) +//GO(fexecve, iFipp) //TODO: Check if needed to be wrapped, and target checked for x86 / native? +GOW(fflush, iFh) +//GO(fflush_unlocked, iFS) +GO(ffs, iFi) +// __ffs +GOW(ffsl, iFi) +GO(ffsll, iFI) +GOW(fgetc, iFh) +GOW(fgetc_unlocked, iFh) +// fgetgrent +// fgetgrent_r // Weak +//GO(fgetpos, iFpp) +//GO(fgetpos64, iFpp) +// fgetpwent +// fgetpwent_r // Weak +//GOW(fgets, pFpip) +//GO(__fgets_chk, pFpuip) +// fgetspent +// fgetspent_r // Weak +//GO(fgets_unlocked, pFpip) +// __fgets_unlocked_chk +//GOW(fgetwc, iFp) +//GOW(fgetwc_unlocked, iFp) +//GO(fgetws, pFpip) +// __fgetws_chk +//GO(fgetws_unlocked, pFpip) +// __fgetws_unlocked_chk +//GO(fgetxattr, iFippu) +//GO(fileno, iFp) +//GOW(fileno_unlocked, iFp) +GOW(finite, iFd) +GO(__finite, iFd) +GOW(finitef, iFf) +// __finitef +// finitel // Weak +// __finitel +// __flbf +//GO(flistxattr, iFipu) +GOW(flock, iFii) +//GOW(flockfile, vFp) +GOW(_flushlbf, vFv) +//GO(fmemopen, pFpup) +// fmtmsg +//GO(fnmatch, iFppi) +GOM(fopen, hFEpp) //%% +//GOWM(fopen64, pFEpp) //%% +//GOM(fopencookie, pFEpppppp) //%% last 4p are a struct with 4 callbacks... +GOWM(fork, iFEv) //%% +GOM(__fork, iFEv) //%% +// __fortify_fail +GOW(fpathconf, iFii) +//GO(__fpending, uFp) +//GOM(fprintf, iFEppV) //%% +//GOM(__fprintf_chk, iFEpvpV) //%% +// __fpu_control // type B +//GO(__fpurge, vFp) +//GOW(fputc, iFip) +//GO(fputc_unlocked, iFip) +GOW(fputs, iFhp) // Weak +//GO(fputs_unlocked, iFpp) +//GO(fputwc, iFip) +//GO(fputwc_unlocked, iFip) +//GO(fputws, iFpp) +//GO(fputws_unlocked, iFpp) +//GOW(fread, LFpLLp) +//GO(__freadable, iFp) +//GO(__fread_chk, uFpuuup) +//GO(__freading, iFp) +//GO(fread_unlocked, uFpuup) +//GO(__fread_unlocked_chk, uFpuuup) +GO(free, vFp) +//GO(freeaddrinfo, vFp) +//DATAV(__free_hook, 4) +//GO(freeifaddrs, vFp) +GOW(freelocale, vFA) +GO(__freelocale, vFA) +//GO(fremovexattr, iFip) +//GO(freopen, pFppp) +//GO(freopen64, pFppp) +// frexp // Weak +// frexpf // Weak +// frexpl // Weak +//GO2(fscanf, iFppV, vfscanf) +//GO(fseek, iFpli) +//GO(fseeko, iFpli) +//GO(fseeko64, iFpIi) +//GO(__fsetlocking, iFpi) +//GO(fsetpos, iFpp) +//GO(fsetpos64, iFpp) +//GO(fsetxattr, iFippui) +//GOW(fstatfs, iFip) +//GOWM(fstatfs64, iFip) //%%,noE +//GO(fstatvfs, iFip) +//GOW(fstatvfs64, iFip) // alignment? +GOW(fsync, iFi) +//GOW(ftell, lFp) +//GO(ftello, lFp) +//GO(ftello64, IFp) +//GO(ftime, iFp) +//GO(ftok, iFpi) +GOW(ftruncate, iFiu) +GOW(ftruncate64, iFiI) +//GOW(ftrylockfile, iFp) +//GOM(fts_children, pFEpi) //%% +//GOM(fts_close, iFEp) //%% +//GOM(fts_open, pFEpip) //%% +//GOM(fts_read, pFEp) //%% +// fts_set +//GOM(ftw, iFEppi) //%% +//GOM(ftw64, iFEppi) //%% +//GOW(funlockfile, vFp) +//GO(futimens, iFip) +//GOW(futimes, iFip) //int futimes(int fd, const struct timeval tv[2]) +//GO(futimesat, iFippp) +// fwide +//GOWM(fwprintf, iFEppV) //%% +//GOM(__fwprintf_chk, iFEpvpV) //%% +//GO(__fwritable, iFp) +GOW(fwrite, LFpLLh) +//GO(fwrite_unlocked, uFpuup) +//GO(__fwriting, iFp) +// fwscanf +//GOM(__fxstat, iFEiip) //%% +//GOM(__fxstat64, iFEiip) //%% need reaalign of struct stat64 +//GOM(__fxstatat, iFEiippi) //%% +//GOM(__fxstatat64, iFEiippi) //%% struct stat64 again +// __gai_sigqueue +//GO(gai_strerror, pFi) +// __gconv_get_alias_db +// __gconv_get_cache +// __gconv_get_modules_db +// gcvt +//GO(getaddrinfo, iFpppp) +// getaliasbyname +// getaliasbyname_r +// getaliasent +// getaliasent_r +// get_avphys_pages // Weak +//GOW(getc, iFp) +GOW(getchar, iFv) +GO(getchar_unlocked, iFv) +GOM(getcontext, iFEp) //%% +//GOW(getc_unlocked, iFp) +//GO(get_current_dir_name, pFv) +//GOW(getcwd, pFpL) +//GO(__getcwd_chk, pFpLL) +//GO(getdate, pFp) +// getdate_err // type B +// getdate_r // Weak +//GOW(getdelim, iFppip) +//GOW(__getdelim, iFppip) +// getdirentries +// getdirentries64 +//GO(getdomainname, iFpu) +// __getdomainname_chk +GOW(getdtablesize, iFv) +GOW(getegid, iFv) +GO(getenv, pFp) +//GOW(geteuid, pFv) +// getfsent +// getfsfile +// getfsspec +GOW(getgid, iFv) +//GO(getgrent, pFv) +// getgrent_r +//GO(getgrgid, pFu) +//GO(getgrgid_r, iFuppup) +//GO(getgrnam, pFp) +//GO(getgrnam_r, iFpppup) +//GO(getgrouplist, iFpipp) +GOW(getgroups, iFiu) +// __getgroups_chk +//GO(gethostbyaddr, pFpui) +//GO(gethostbyaddr_r, iFpuippupp) +//GO(gethostbyname, pFp) +//GO(gethostbyname2, pFpi) +//GO(gethostbyname2_r, iFpippupp) +//GO(gethostbyname_r, iFpppupp) +//GO(gethostent, pFv) +//GO(gethostent_r, iFppupp) +// gethostid +//GOW(gethostname, iFpu) +// __gethostname_chk +//GO(getifaddrs, iFp) +// getipv4sourcefilter +//GOW(getitimer, iFip) +// get_kernel_syms // Weak +//GOW(getline, iFppp) +//GO(getloadavg, iFpi) +//GO(getlogin, pFv) +//GO(getlogin_r, iFpu) +// __getlogin_r_chk +//GO(getmntent, pFp) +// __getmntent_r +//GOW(getmntent_r, pFpppi) +// getmsg +// get_myaddress +//GO(getnameinfo, iFpupupui) +// getnetbyaddr +// getnetbyaddr_r +// getnetbyname +// getnetbyname_r +// getnetent +// getnetent_r +// getnetgrent +// getnetgrent_r // Weak +// getnetname +//GOW(get_nprocs, iFv) +//GOW(get_nprocs_conf, iFv) +//GOM(getopt, iFipp) //%noE +//GOM(getopt_long, iFipppp) //%noE +//GOM(getopt_long_only, iFipppp) //%noE +GOW(getpagesize, iFv) +GO(__getpagesize, iFv) +//GO(getpass, pFp) +//GOW(getpeername, iFipp) +GOW(getpgid, uFu) +// __getpgid +GO(getpgrp, iFv) +// get_phys_pages // Weak +GO(getpid, uFv) +GO(__getpid, uFv) +// getpmsg +GOW(getppid, uFv) +GO(getpriority, iFii) +//GOM(getrandom, iFEpuu) //%% +//GO(getprotobyname, pFp) +//GO(getprotobyname_r, iFpppup) +//GO(getprotobynumber, pFi) +//GO(getprotobynumber_r, iFippup) +//GO(getprotoent, pFv) +//GO(getprotoent_r, iFppup) +GOW(getpt, iFv) +// getpublickey +// getpw // Weak +//GO(getpwent, pFv) +// getpwent_r +//GO(getpwnam, pFp) +//GO(getpwnam_r, iFpppup) +//GOM(getpwuid, pFEu) +//GO(getpwuid_r, iFuppup) +//GOW(getresgid, iFppp) +//GOW(getresuid, iFppp) +//GO(getrlimit, iFip) +//GO(getrlimit64, iFip) +// getrpcbyname +// getrpcbyname_r +// getrpcbynumber +// getrpcbynumber_r +// getrpcent +// getrpcent_r +// getrpcport +//GOW(getrusage, iFip) +//GOW(gets, pFp) +// __gets_chk +// getsecretkey +//GO(getservbyname, pFpp) +//GO(getservbyname_r, iFppppup) +//GO(getservbyport, pFip) +//GO(getservbyport_r, iFipppup) +// getservent +//GO(getservent_r, iFppup) +GO(getsid, uFu) +//GOW(getsockname, iFipp) +//GOW(getsockopt, iFiiipp) +// getsourcefilter +//GO(getspent, pFv) +// getspent_r +//GO(getspnam, pFp) +// getspnam_r +// getsubopt +//GOW(gettext, pFp) +//GOW(gettimeofday, iFpp) +//GO(__gettimeofday, iFpp) +// getttyent +// getttynam +GOW(getuid, uFv) +// getusershell +//GOW(getutent, pFv) +//GOW(getutent_r, iFpp) +//GOW(getutid, pFp) +//GOW(getutid_r, iFppp) +//GOW(getutline, pFp) +//GOW(getutline_r, iFppp) +// getutmp +// getutmpx +// getutxent +// getutxid +// getutxline +// getw +//GO2(getwc, iFp, fgetwc) +GO(getwchar, iFv) +GO(getwchar_unlocked, iFv) +//GOW(getwc_unlocked, iFp) +//GO(getwd, pFp) +// __getwd_chk +//GO(getxattr, iFpppu) +//GOM(glob, iFEpipp) //%% +//GOM(glob64, iFEpipp) //%% +//GO(globfree, vFp) +//GO(globfree64, vFp) +// glob_pattern_p // Weak +//GO(gmtime, pFp) +//GO(__gmtime_r, pFpp) +//GOW(gmtime_r, pFpp) +GO(gnu_dev_major, uFU) +GO(gnu_dev_makedev, UFii) // dev_t seems to be a u64 +GO(gnu_dev_minor, uFU) +//GOW(gnu_get_libc_release, pFv) +//GOW(gnu_get_libc_version, pFv) +// __gnu_mcount_nc +// __gnu_Unwind_Find_exidx +GO(grantpt, iFi) +// group_member // Weak +// gsignal // Weak +// gtty +//GOW(hasmntopt, pFpp) +// hcreate +// hcreate_r +// hdestroy // Weak +// hdestroy_r +//DATA(h_errlist, 4) +// h_errno // type B +//GO(__h_errno_location, pFv) +//GO(herror, vFp) +// h_nerr // type R +// host2netname +// hsearch +// hsearch_r +//GO(hstrerror, pFi) +GO(htonl, uFu) +GO(htons, uFu) +//GO(iconv, LFLpppp) +//GO(iconv_canonicalize, pFp) +GO(iconv_close, iFL) +//GO(iconv_open, LFpp) +//GO(if_freenameindex, vFp) +//GO(if_indextoname, pFup) +//GO(if_nameindex, pFv) +//GO(if_nametoindex, uFp) +// imaxabs // Weak +GOW(imaxdiv, IFII) +//DATA(in6addr_any, 16) // type R +//DATA(in6addr_loopback, 16) // type R +// inb // Weak +//GOW(index, pFpi) +// inet6_opt_append +// inet6_opt_find +// inet6_opt_finish +// inet6_opt_get_val +// inet6_opt_init +// inet6_option_alloc +// inet6_option_append +// inet6_option_find +// inet6_option_init +// inet6_option_next +// inet6_option_space +// inet6_opt_next +// inet6_opt_set_val +// inet6_rth_add +// inet6_rth_getaddr +// inet6_rth_init +// inet6_rth_reverse +// inet6_rth_segments +// inet6_rth_space +//GO(inet_addr, uFp) +//GOW(inet_aton, iFpp) +// inet_lnaof +// inet_makeaddr +// inet_netof +//GO(inet_network, iFp) +// inet_nsap_addr +//GO(inet_nsap_ntoa, pFipp) +//GO(inet_ntoa, pFu) +//GO(inet_ntop, pFippu) +//GO(inet_pton, iFipp) +//GO(initgroups, iFpi) +// init_module +// initstate // Weak +//GOW(initstate_r, iFupup) +// inl // Weak +// innetgr +//GO(inotify_add_watch, iFipu) +GO(inotify_init, iFv) +GO(inotify_init1, iFi) +GO(inotify_rm_watch, iFii) +// insque +// __internal_endnetgrent +// __internal_getnetgrent_r +// __internal_setnetgrent +// inw // Weak +//DATA(_IO_2_1_stderr_, 152) //sizeof(struct _IO_FILE_plus) +//DATA(_IO_2_1_stdin_, 152) +//DATA(_IO_2_1_stdout_, 152) +//GO(_IO_adjust_column, uFupi) +// _IO_adjust_wcolumn +GO(ioctl, iFiLN) //the vararg is just to have optional arg of various type, but only 1 arg +//GO(_IO_default_doallocate, iFS) +//GO(_IO_default_finish, vFSi) +//GO(_IO_default_pbackfail, iFSi) +//GO(_IO_default_uflow, iFS) +//GO(_IO_default_xsgetn, LFSpL) +//GO(_IO_default_xsputn, LFSpL) +//GO(_IO_doallocbuf, vFS) +//GO(_IO_do_write, iFSpL) +// _IO_fclose +// _IO_fdopen +// _IO_feof +// _IO_ferror +// _IO_fflush +// _IO_fgetpos +// _IO_fgetpos64 +// _IO_fgets +//GO(_IO_file_attach, pFSi) +//GO(_IO_file_close, iFS) +//GO(_IO_file_close_it, iFS) +//GO(_IO_file_doallocate, iFS) +// _IO_file_finish +//GO(_IO_file_fopen, pFSppi) +//GO(_IO_file_init, vFS) +//DATA(_IO_file_jumps, 4) +//GO(_IO_file_open, pFSpiiii) +//GO(_IO_file_overflow, iFSi) +//GO(_IO_file_read, lFSpl) +//GO(_IO_file_seek, IFSIi) +//GO(_IO_file_seekoff, IFSIii) +//GO(_IO_file_setbuf, pFSpl) +//GOM(_IO_file_stat, iFESp) +//GO(_IO_file_sync, iFS) +//GO(_IO_file_underflow, iFS) +//GO(_IO_file_write, lFSpl) +//GO(_IO_file_xsputn, LFSpL) +//GO(_IO_flockfile, vFS) +//GO(_IO_flush_all, iFv) +//GO(_IO_flush_all_linebuffered, vFv) +// _IO_fopen +// _IO_fprintf // Weak +// _IO_fputs +// _IO_fread +//GO(_IO_free_backup_area, vFS) +// _IO_free_wbackup_area +// _IO_fsetpos +// _IO_fsetpos64 +// _IO_ftell +// _IO_ftrylockfile +//GO(_IO_funlockfile, vFS) +// _IO_fwrite +//GO(_IO_getc, iFS) +// _IO_getline +//GO(_IO_getline_info, LFSpLiip) +// _IO_gets +//GO(_IO_init, vFSi) +//GO(_IO_init_marker, vFpS) +// _IO_init_wmarker +// _IO_iter_begin +// _IO_iter_end +// _IO_iter_file +// _IO_iter_next +// _IO_least_wmarker +//GO(_IO_link_in, vFp) +//DATA(_IO_list_all, 4) +// _IO_list_lock +// _IO_list_resetlock +// _IO_list_unlock +//GO(_IO_marker_delta, iFp) +//GO(_IO_marker_difference, iFpp) +//GO(_IO_padn, iFpii) +//GO(_IO_peekc_locked, iFp) +GOW(ioperm, iFuui) +GOW(iopl, iFi) +// _IO_popen +// _IO_printf +//GO(_IO_proc_close, iFS) +//GO(_IO_proc_open, pFSpp) +//GO(_IO_putc, iFip) +// _IO_puts +//GO(_IO_remove_marker, vFp) +//GO(_IO_seekmark, iFSpi) +//GO(_IO_seekoff, IFSIii) +//GO(_IO_seekpos, IFSIi) +// _IO_seekwmark +//GO(_IO_setb, vFSppi) +// _IO_setbuffer +// _IO_setvbuf +//GO(_IO_sgetn, uFppu) +// _IO_sprintf +//GO(_IO_sputbackc, iFSi) +// _IO_sputbackwc +// _IO_sscanf +//GO(_IO_str_init_readonly, vFppi) +//GO(_IO_str_init_static, vFppup) +//GO(_IO_str_overflow, iFSi) +//GO(_IO_str_pbackfail, iFSi) +//GO(_IO_str_seekoff, UFSUii) +//GO(_IO_str_underflow, iFS) +//GO(_IO_sungetc, iFp) +// _IO_sungetwc +//GO(_IO_switch_to_get_mode, iFp) +// _IO_switch_to_main_wget_area +// _IO_switch_to_wbackup_area +// _IO_switch_to_wget_mode +// _IO_ungetc +//GO(_IO_un_link, vFp) +//GO(_IO_unsave_markers, vFp) +// _IO_unsave_wmarkers +//GOM(_IO_vfprintf, iFEpppp) //%% +//GOM(_IO_vfscanf, iFEppp) //%% +// _IO_vsprintf +// _IO_wdefault_doallocate +// _IO_wdefault_finish +// _IO_wdefault_pbackfail +// _IO_wdefault_uflow +// _IO_wdefault_xsgetn +// _IO_wdefault_xsputn +// _IO_wdoallocbuf +// _IO_wdo_write +//DATA(_IO_wfile_jumps, 4) +// _IO_wfile_overflow +// _IO_wfile_seekoff +// _IO_wfile_sync +// _IO_wfile_underflow +// _IO_wfile_xsputn +// _IO_wmarker_delta +// _IO_wsetb +// iruserok +// iruserok_af +GO(isalnum, iFi) +// __isalnum_l +// isalnum_l // Weak +GO(isalpha, iFi) +// __isalpha_l +// isalpha_l // Weak +GO(isascii, iFi) +// __isascii_l // Weak +// isastream +GOW(isatty, iFi) +GO(isblank, iFi) +// __isblank_l +// isblank_l // Weak +GO(iscntrl, iFi) +// __iscntrl_l +// iscntrl_l // Weak +// isctype // Weak +// __isctype +GO(isdigit, iFi) +// __isdigit_l +// isdigit_l // Weak +// isfdtype +GO(isgraph, iFi) +// __isgraph_l +// isgraph_l // Weak +GOW(isinf, iFd) +GO(__isinf, iFd) +GOW(isinff, iFf) +GO(__isinff, iFf) +// isinfl // Weak +// __isinfl +GO(islower, iFi) +// __islower_l +// islower_l // Weak +GOW(isnan, iFd) +GO(__isnan, iFd) +GOW(isnanf, iFf) +GO(__isnanf, iFf) +// isnanl // Weak +// __isnanl +//GOM(__isoc99_fscanf, iFEppV) //%% +// __isoc99_fwscanf +// __isoc99_scanf +//GOM(__isoc99_sscanf, iFEppV) //%% +// __isoc99_swscanf +//GOM(__isoc99_vfscanf, iFEppp) //%% +// __isoc99_vfwscanf +// __isoc99_vscanf +//GOM(__isoc99_vsscanf, iFEppp) //%% TODO: check if ok +// __isoc99_vswscanf +// __isoc99_vwscanf +// __isoc99_wscanf +GO(isprint, iFi) +// __isprint_l +// isprint_l // Weak +GO(ispunct, iFi) +// __ispunct_l +// ispunct_l // Weak +GO(isspace, iFi) +// __isspace_l +// isspace_l // Weak +GO(isupper, iFi) +// __isupper_l +// isupper_l // Weak +GOW(iswalnum, iFi) +// __iswalnum_l +//GOW(iswalnum_l, iFip) +GOW(iswalpha, iFi) +// __iswalpha_l +//GOW(iswalpha_l, iFip) +GOW(iswblank, iFi) +// __iswblank_l +GOW(iswblank_l, iFip) +GOW(iswcntrl, iFi) +// __iswcntrl_l +GOW(iswcntrl_l, iFip) +GOW(iswctype, iFiu) +// __iswctype +GO(__iswctype_l, iFuLp) +// iswctype_l // Weak +GOW(iswdigit, iFi) +// __iswdigit_l +//GOW(iswdigit_l, iFip) +GOW(iswgraph, iFi) +// __iswgraph_l +//GOW(iswgraph_l, iFip) +GOW(iswlower, iFi) +// __iswlower_l +//GOW(iswlower_l, iFip) +GOW(iswprint, iFi) +// __iswprint_l +//GOW(iswprint_l, iFip) +GOW(iswpunct, iFi) +// __iswpunct_l +//GOW(iswpunct_l, iFip) +GOW(iswspace, iFi) +// __iswspace_l +//GOW(iswspace_l, iFip) +GOW(iswupper, iFi) +// __iswupper_l +//GOW(iswupper_l, iFip) +GOW(iswxdigit, iFi) +// __iswxdigit_l +//GOW(iswxdigit_l, iFip) +GO(isxdigit, iFi) +// __isxdigit_l +// isxdigit_l // Weak +// _itoa_lower_digits // type R +// __ivaliduser +//GO(jrand48, iFp) +// jrand48_r // Weak +// key_decryptsession +// key_decryptsession_pk +// __key_decryptsession_pk_LOCAL // type B +// key_encryptsession +// key_encryptsession_pk +// __key_encryptsession_pk_LOCAL // type B +// key_gendes +// __key_gendes_LOCAL // type B +// key_get_conv +// key_secretkey_is_set +// key_setnet +// key_setsecret +GOW(kill, iFli) +GO(killpg, iFii) +// klogctl +// l64a +GO(labs, iFi) +// lchmod +//GOW(lchown, iFpuu) +// lckpwdf // Weak +// lcong48 +// lcong48_r // Weak +// ldexp // Weak +// ldexpf // Weak +// ldexpl // Weak +//GOS(ldiv, pFEpii) //%% return a struct, so address of stuct is on the stack, as a shadow 1st element +//GOM(lfind, pFEpppLp) //%% +//GO(lgetxattr, iFpppu) +GOM(__libc_alloca_cutoff, iFEL) //%% +// __libc_allocate_rtsig +// __libc_allocate_rtsig_private +//GO(__libc_calloc, pFLL) +// __libc_clntudp_bufcreate +GO(__libc_current_sigrtmax, iFv) +// __libc_current_sigrtmax_private +GO(__libc_current_sigrtmin, iFv) +// __libc_current_sigrtmin_private +//GOM(__libc_dlclose, iFEp) //%% +// __libc_dl_error_tsd +//GOM(__libc_dlopen_mode, pFEpi) //%% +//GOM(__libc_dlsym, pFEpp) //%% +// __libc_fatal +// __libc_fork +//GO(__libc_free, vFp) +// __libc_freeres +GOM(__libc_init_first, vFEipV) //%% +// _libc_intl_domainname // type R +//GO2(__libc_open, iFEpOu, my_open) +// __libc_longjmp +// __libc_mallinfo +//GO(__libc_malloc, pFL) +// __libc_mallopt +//GO(__libc_memalign, pFLL) +// __libc_pthread_init +//GO(__libc_pvalloc, pFL) +// __libc_pwrite +//GO2(__libc_read, lFipL, my_read) //%%,noE +//GO(__libc_realloc, pFpL) +// __libc_sa_len +// __libc_siglongjmp +GOM(__libc_start_main, iFEpippppp) //%% +GO2(__libc_sigaction, iFEipp, my32_sigaction) //%% +// __libc_system +// __libc_thread_freeres +//GO(__libc_valloc, pFL) +//GOW(link, iFpp) +//GO(linkat, iFipipi) +GOW(listen, iFii) +//GO(listxattr, iFppu) +// llabs +// lldiv +//GO(llistxattr, iFppu) +// llseek // Weak +// loc1 // type B +// loc2 // type B +//GOW(localeconv, pFv) +//GO(localtime, pFp) +//GOW(localtime_r, pFpp) +GO(lockf, iFiiu) +GO(lockf64, iFiiI) +// locs // type B +GOM(longjmp, vFEpi) //%% +GOM(_longjmp, vFEpi) //%% +GOM(__longjmp_chk, vFEpi) //%% +GO(lrand48, iFv) +// lrand48_r +//GO(lremovexattr, iFpp) +//GOM(lsearch, pFEpppLp) //%% +GOW(lseek, iFiii) +// __lseek // Weak +GOW(lseek64, IFiIi) +//GO(lsetxattr, iFpppui) +//GO(lutimes, iFpp) +//GOM(__lxstat, iFEipp) //%% +//GOM(__lxstat64, iFEipp) //%% +//GO(madvise, iFpLi) +GOM(makecontext, iFEppiV) //%% +//GOW(mallinfo, pFv) +GOM(malloc, pFL) //%%,noE +// malloc_get_state // Weak +//DATAV(__malloc_hook, 4) +//DATAV(__malloc_initialize_hook, 4) +// malloc_set_state // Weak +// malloc_stats // Weak +GOW(malloc_trim, iFu) +//GOW(malloc_usable_size, LFp) +GOW(mallopt, iFii) // Weak +// mallwatch // type B +//GO(mblen, iFpL) +//GOW(mbrlen, LFpLp) +//GO(__mbrlen, LFpLp) +//GOW(mbrtowc, LFppLp) +//GO(__mbrtowc, LFppLp) +//GOW(mbsinit, iFp) +//GOW(mbsnrtowcs, LFppLLp) +// __mbsnrtowcs_chk +//GOW(mbsrtowcs, LFppLp) +// __mbsrtowcs_chk +//GO(mbstowcs, LFppL) +// __mbstowcs_chk +//GO(mbtowc, iFppL) +// mcheck +// mcheck_check_all +// mcheck_pedantic +// _mcleanup +//GOWM(mcount, vFpp) //%%,noE +// _mcount +//GOW(memalign, pFLL) +//DATAV(__memalign_hook, 4) +//GOW(memccpy, pFppiL) +//GO(memchr, pFpiL) +GO(memcmp, iFppL) +GO(memcpy, pFppL) +GO(__memcpy_chk, pFppuL) +// memfrob +//GO(memmem, pFpupu) +//GO(memmove, pFppL) +//GO(__memmove_chk, pFppLL) +//GO(mempcpy, pFppL) +//GO(__mempcpy, pFppu) +// __mempcpy_chk +// __mempcpy_small +//GOW(memrchr, pFpiL) +//GO(memset, pFpiL) +//GO(__memset_chk, pFpiLL) +//GO(mincore, iFpLp) +//GOW(mkdir, iFpu) +//GO(mkdirat, iFipu) +//GO(mkdtemp, pFp) +//GO(mkfifo, iFpu) +//GO(mkfifoat, iFipu) +//GO(mkostemp, iFpi) +//GO(mkostemp64, iFpi) +//GO(mkstemp, iFp) +//GO(mkstemp64, iFp) +//GO(mktemp, pFp) +//GO(mktime, LFp) +//GO(mlock, iFpL) +//GO(mlockall, iFi) +//GOM(mmap, pFEpLiiii) //%% +//GOM(mmap64, pFEpLiiiI) //%% +// modf // Weak +// modff // Weak +// modfl // Weak +// moncontrol // Weak +// monstartup // Weak +// __monstartup +//DATA(__morecore, 4) +//GOW(mount, iFpppup) +// mprobe +//GOM(mprotect, iFEpLi) //%% +// mrand48 +// mrand48_r +//GOWM(mremap, pFEpLLiN) //%% 5th hidden paramerer "void* new_addr" if flags is MREMAP_FIXED +//GO(msgctl, iFiip) +//GOW(msgget, iFpi) +//GOW(msgrcv, lFipLli) +//GOW(msgsnd, iFipLi) +//GOW(msync, iFpLi) +// mtrace +//GO(munlock, iFpL) +//GO(munlockall, iFv) +//GOM(munmap, iFEpL) //%% +// muntrace +//GOWM(nanosleep, iFpp) //%%,noE +// __nanosleep // Weak +// netname2host +// netname2user +GOW(newlocale, aFipa) +GO(__newlocale, aFipa) +// nfsservctl +//GOM(nftw, iFEppii) //%% +//GOM(nftw64, iFEppii) //%% +//GOW(ngettext, pFppu) +GO(nice, iFi) +// _nl_default_dirname // type R +// _nl_domain_bindings // type B +//GO(nl_langinfo, pFu) +//GO(__nl_langinfo_l, pFup) +//GOW(nl_langinfo_l, pFup) +//DATAB(_nl_msg_cat_cntr, 4) // type B +// nrand48 +// nrand48_r // Weak +// __nss_configure_lookup +// __nss_database_lookup +// __nss_disable_nscd +// _nss_files_parse_grent +// _nss_files_parse_pwent +// _nss_files_parse_spent +// __nss_group_lookup +// __nss_group_lookup2 +// __nss_hostname_digits_dots +// __nss_hosts_lookup +// __nss_hosts_lookup2 +// __nss_lookup_function +// __nss_next +// __nss_next2 +// __nss_passwd_lookup +// __nss_passwd_lookup2 +// __nss_services_lookup2 +GOW(ntohl, uFu) +GOW(ntohs, uFu) +// ntp_adjtime // Weak +// ntp_gettime +// _null_auth // type B +// _obstack_allocated_p +//DATAM(obstack_alloc_failed_handler, 4) +//GOM(_obstack_begin, iFpLLpp) //%%,noE +// _obstack_begin_1 +//DATA(obstack_exit_failure, 4) +//GOM(_obstack_free, vFpp) //%%,noE +//GOM(obstack_free, vFpp) //%%,noE +// _obstack_memory_used +//GOM(_obstack_newchunk, vFpi) //%%,noE +// obstack_printf // Weak +// __obstack_printf_chk +//GOWM(obstack_vprintf, iFEpppp) //%% +// __obstack_vprintf_chk +//GOWM(on_exit, iFEpp) //%% +//GO2(__on_exit, iFEpp, my_on_exit) //%% +//GOWM(open, iFEpOu) //%% +//GOWM(__open, iFEpOu) //%% +//GO(__open_2, iFpO) +//GOWM(open64, iFEpOu) //%% +// __open64 // Weak +//GO(__open64_2, iFpO) +//GOW(openat, iFipON) +// __openat_2 +//GOW(openat64, iFipON) +//GO(__openat64_2, iFipON) +// __open_catalog +//GOW(opendir, pFp) +//GO(openlog, vFpii) +// open_memstream +// open_wmemstream +//DATAB(optarg, 4) +//DATA(opterr, 4) +//DATA(optind, 4) +//DATA(optopt, 4) +// outb // Weak +// outl // Weak +// outw // Weak +//GO(__overflow, iFpi) +//GO(parse_printf_format, uFpup) +// passwd2des +//GOW(pathconf, iFpi) +GOW(pause, iFv) +//GO(pclose, iFp) +//GO(perror, vFp) +// personality // Weak +//GOW(pipe, iFp) // the array of 2 int seems to converted as a pointer, on both x86 and arm (and x86_64 too) +// __pipe +//GOW(pipe2, iFpO) // assuming this works the same as pipe, so pointer for array of 2 int +// pivot_root +// pmap_getmaps +// pmap_getport +// pmap_rmtcall +// pmap_set +// pmap_unset +//GOW(poll, iFpui) // poll have an array of struct as 1st argument +//GO(__poll, iFpui) +//GO(popen, pFpp) +GO(posix_fadvise, iFiuui) +GO(posix_fadvise64, iFiuui) +GO(posix_fallocate, iFiii) +GO(posix_fallocate64, iFiII) +// posix_madvise +//GOW(posix_memalign, iFpLL) +// posix_openpt // Weak +//GO(posix_spawn, iFpppppp) +// posix_spawnattr_destroy +// posix_spawnattr_getflags +// posix_spawnattr_getpgroup +// posix_spawnattr_getschedparam +// posix_spawnattr_getschedpolicy +// posix_spawnattr_getsigdefault +// posix_spawnattr_getsigmask +// posix_spawnattr_init +// posix_spawnattr_setflags +// posix_spawnattr_setpgroup +// posix_spawnattr_setschedparam +// posix_spawnattr_setschedpolicy +// posix_spawnattr_setsigdefault +// posix_spawnattr_setsigmask +// posix_spawn_file_actions_addclose +//GO(posix_spawn_file_actions_adddup2, iFpii) +//GO(posix_spawn_file_actions_addopen, iFpipii) +//GO(posix_spawn_file_actions_destroy, iFp) +//GO(posix_spawn_file_actions_init, iFp) +//GOM(posix_spawnp, iFEpppppp) //%% +//GO(ppoll, iFpupp) +GOW(prctl, iFiLLLL) +//GOW(pread, lFipLl) +//GOW(pread64, lFipLI) +// __pread64 // Weak +// __pread64_chk +//GOM(preadv64, lFEipiI) //%% not always present +// __pread_chk +GOM(printf, iFEpV) //%% +GOM(__printf_chk, iFEvpV) //%% +//GO(__printf_fp, iFppp) // does this needs aligment? +// printf_size +// printf_size_info +// profil // Weak +// __profile_frequency +//DATAM(__progname, 4) +//DATAM(__progname_full, 4) +//DATAM(program_invocation_name, 4) +//DATAM(program_invocation_short_name, 4) +//GOW(pselect, iFippppp) +// psignal +//GO(ptrace, iFiupp) // will that work??? +//GO(ptsname, pFi) +//GOW(ptsname_r, iFipu) +// __ptsname_r_chk +GOW(putc, iFip) +GO(putchar, iFi) +GO(putchar_unlocked, iFi) +//GO(putc_unlocked, iFip) +//GO(putenv, iFp) +// putgrent +// putmsg +// putpmsg +// putpwent +GOW(puts, iFp) +// putspent +//GOW(pututline, pFp) +// pututxline +// putw +//GO(putwc, iFip) +// putwchar +GO(putwchar_unlocked, iFi) +//GO(putwc_unlocked, iFip) +// pvalloc // Weak +// pwrite // Weak +//GOW(pwrite64, lFipLI) +// __pwrite64 // Weak +//GOM(pwritev64, lFEipiI) //%% not always present +// qecvt +#ifdef HAVE_LD80BITS +//GO(qecvt_r, iFDipppL) +#else +//GO(qecvt_r, iFKipppL) +#endif +// qfcvt +#ifdef HAVE_LD80BITS +//GO(qfcvt_r, iFDipppL) +#else +//GO(qfcvt_r, iFKipppL) +#endif +// qgcvt +//GOM(qsort, vFEpLLp) //%% +//GOM(qsort_r, vFEpLLpp) //%% +// query_module // Weak +//GO(quotactl, iFipip) +GO(raise, iFi) +GO(rand, iFv) +GOW(random, iFv) +//GOW(random_r, iFpp) +//GO(rand_r, iFp) +//GOW(rawmemchr, pFpi) +//GO(__rawmemchr, pFpi) +// rcmd +// rcmd_af +// __rcmd_errstr // type B +//GOM(read, lFipL) //%%,noE +//GOW(__read, lFipL) +// readahead // Weak +//GO(__read_chk, lFipLL) +//GOM(readdir, pFEp) //%% should also be weak +//GO(readdir64, pFp) // check if alignement is correct +// readdir64_r +//GOM(readdir_r, iFEppp) //%% should also be weak +//GOM(readlink, iFEppL) //%% +//GOM(readlinkat, iFEippL) +// __readlinkat_chk +// __readlink_chk +//GO(readv, lFipi) +//GO(realloc, pFpL) +//DATAV(__realloc_hook, 4) +//GOM(realpath, pFEpp) //%% +//GO(__realpath_chk, pFppu) +// reboot +// re_comp // Weak +// re_compile_fastmap // Weak +//GOW(re_compile_pattern, pFpup) +//GO(recv, lFipLi) +//GO(__recv_chk, iFipuui) +//GOW(recvfrom, lFipLipp) +// __recvfrom_chk +//GOM(recvmmsg, iFEipuup) //%% actual recvmmsg is glibc 2.12+. The syscall is Linux 2.6.33+, so use syscall... +//GOW(recvmsg, lFipi) +// re_exec // Weak +//GOW(regcomp, iFppi) +//GOW(regerror, uFippu) +//GO(regexec, iFppupi) +//GOW(regfree, vFp) +//GOM(__register_atfork, iFEpppp) //%% +// register_printf_function // Weak +// registerrpc +// remap_file_pages // Weak +//GOW(re_match, iFppiip) +// re_match_2 // Weak +//GO(remove, iFp) +//GO(removexattr, iFpp) +// remque +//GO(rename, iFpp) +//GO(renameat, iFipip) +//GO(renameat2, iFipipu) +// _res // type B +//GOW(re_search, iFppiiip) +//GOW(re_search_2, iFppipiiipi) +// re_set_registers // Weak +GOW(re_set_syntax, uFu) +// _res_hconf // type B +//GO(__res_iclose, vFpi) +GO(__res_init, iFv) +//GO(__res_maybe_init, iFpi) +//GO(__res_nclose, vFp) +//GO(__res_ninit, iFp) +//DATA(__resp, 4) +// __res_randomid +//GO(__res_state, pFv) +//DATA(re_syntax_options, 4) // type B +// revoke +//GO(rewind, vFp) +//GO(rewinddir, vFp) +// rexec +// rexec_af +// rexecoptions // type B +//GOW(rindex, pFpi) +//GOW(rmdir, iFp) +//GO(readdir64_r, iFppp) // is this present? +// rpc_createerr // type B +// _rpc_dtablesize +// __rpc_thread_createerr +// __rpc_thread_svc_fdset +// __rpc_thread_svc_max_pollfd +// __rpc_thread_svc_pollfd +//GO(rpmatch, iFp) +// rresvport +// rresvport_af +// rtime +// ruserok +// ruserok_af +// ruserpass +//GOW(sbrk, pFl) +//GO(__sbrk, pFl) +// scalbn // Weak +// scalbnf // Weak +// scalbnl // Weak +//GOM(scandir, iFEpppp) //%% +//GOM(scandir64, iFEpppp) //%% +//GO2(scanf, iFpp, vscanf) +//GO(__sched_cpualloc, pFu) //TODO: check, return cpu_set_t* : should this be aligned/changed? +//GO(__sched_cpucount, iFup) +//GO(__sched_cpufree, vFp) +//GO(sched_getaffinity, iFiup) +GO(sched_getcpu, iFv) +//GO(__sched_getparam, iFip) +//GOW(sched_getparam, iFip) +GO(__sched_get_priority_max, iFi) +GOW(sched_get_priority_max, iFi) +GO(__sched_get_priority_min, iFi) +GOW(sched_get_priority_min, iFi) +GO(__sched_getscheduler, iFi) +GOW(sched_getscheduler, iFi) +//GOW(sched_rr_get_interval, iFip) +//GO(sched_setaffinity, iFiup) +//GOW(sched_setparam, iFip) +//GO(__sched_setscheduler, iFiip) +//GOW(sched_setscheduler, iFiip) +GO(__sched_yield, iFv) +GOW(sched_yield, iFv) +GO(__secure_getenv, pFp) +GO(secure_getenv, pFp) +// seed48 +// seed48_r // Weak +//GO(seekdir, vFpi) +//GOW(select, iFipppp) +//GO(__select, iFipppp) +//GO(semctl, iFiiiN) +GOW(semget, iFuii) +//GOW(semop, iFipL) +//GO(semtimedop, iFipup) +//GOW(send, lFipLi) +// __send // Weak +//GO(sendfile, lFiipL) +//GO(sendfile64, lFiipL) +//GOW(sendmsg, lFipi) +//GOM(__sendmmsg, iFEipuu) //%% actual __sendmmsg is glibc 2.14+. The syscall is Linux 3.0+, so use syscall... +//GOW(sendto, lFipLipu) +// setaliasent +//GOW(setbuf, vFpp) +//GOW(setbuffer, vFppL) +GOM(setcontext, iFEp) //%% +// setdomainname +GO(setegid, iFu) +//GOW(setenv, iFppi) +// _seterr_reply +GO(seteuid, iFu) +// setfsent +// setfsgid +// setfsuid +GOW(setgid, iFu) +GO(setgrent, vFv) +//GO(setgroups, iFup) +GO(sethostent, vFi) +// sethostid +//GO(sethostname, iFpu) +// setipv4sourcefilter +//GOW(setitimer, iFipp) +GOM(setjmp, iFEp) //%% +GOM(_setjmp, iFEp) //%% +//GO(setlinebuf, vFp) +GO(setlocale, aFia) +// setlogin +GO(setlogmask, iFi) +//GOW(setmntent, pFpp) +// __setmntent +// setnetent +// setnetgrent +GOW(setpgid, iFuu) +// __setpgid +GO(setpgrp, iFv) +GO(setpriority, iFiii) +GO(setprotoent, vFi) +GO(setpwent, vFv) +GOW(setregid, iFuu) +GOW(setresgid, iFuuu) +GOW(setresuid, iFuuu) +GOW(setreuid, iFuu) +//GO(setrlimit, iFip) +//GO(setrlimit64, iFip) +// setrpcent +// setservent +GOW(setsid, iFv) +//GOW(setsockopt, iFiiipu) +// setsourcefilter +GO(setspent, vFv) +// setstate // Weak +//GOW(setstate_r, iFpp) +//GOW(settimeofday, iFpp) +// setttyent +GOW(setuid, iFu) +// setusershell +GOW(setutent, vFv) +// setutxent +//GOW(setvbuf, iFppiL) +//GO(setxattr, iFpppui) +// sgetspent +// sgetspent_r // Weak +//GOW(shmat, pFipi) +//GOW(shmctl, iFiip) +//GOW(shmdt, iFp) +GOW(shmget, iFuui) +GOW(shutdown, iFii) +//GOWM(sigaction, iFEipp) //%% +//GOWM(__sigaction, iFEipp) //%% +//GO(sigaddset, iFpi) +// __sigaddset +GOWM(sigaltstack, iFEpp) //%% +// sigandset +GOW(sigblock, iFi) +//GO(sigdelset, iFpi) +// __sigdelset +//GO(sigemptyset, iFp) +//GO(sigfillset, iFp) +GO(siggetmask, iFv) +// sighold +// sigignore +GO(siginterrupt, iFii) // no need to wrap this one? +// sigisemptyset +//GO(sigismember, iFpi) +// __sigismember +GOM(siglongjmp, vFEip) //%% +GOW2(signal, pFEip, my_signal) +// signalfd +GO(__signbit, iFd) +GO(__signbitf, iFf) +// sigorset +// sigpause // Weak +// __sigpause +//GO(sigpending, iFp) +//GOW(sigprocmask, iFipp) +// sigqueue // Weak +// sigrelse +// sigreturn // Weak +GOM(sigset, pFEip) //%% +GOM(__sigsetjmp, iFEp) //%% +GOW(sigsetmask, iFi) +// sigstack +//GOW(sigsuspend, iFp) +// __sigsuspend +//GOW(sigtimedwait, iFppp) +//GOW(sigvec, iFipp) +//GOW(sigwait, iFpp) +//GOW(sigwaitinfo, iFpp) +GOW(sleep, uFu) +//GOM(snprintf, iFEpLpV) //%% +//GOM(__snprintf_chk, iFEpLiipV) //%% +//GOM(__snprintf, iFEpLpV) //%% +// sockatmark +GOW(socket, iFiii) +//GOW(socketpair, iFiiip) +//GO(splice, iFipipuu) +//GOM(sprintf, iFEppV) //%% +//GOM(__sprintf_chk, iFEpvvpV) //%% +// sprofil // Weak +GOW(srand, vFu) +GO(srand48, vFi) +// srand48_r // Weak +GOW(srandom, vFu) +//GOW(srandom_r, iFup) +//GOM(sscanf, iFEppV) //%% +// ssignal // Weak +// sstk +GOM(__stack_chk_fail, vFEv) //%% +//GOM(lstat64, iFpp) //%%,noE +//GOM(stat64, iFpp) //%%,noE +//GOW(statfs, iFpp) +// __statfs +//GOWM(statfs64, iFpp) //%%,noE +//GO(statvfs, iFpp) +//GOW(statvfs64, iFpp) // is alignment ok? +DATAM(stderr, 4) +DATAM(stdin, 4) +DATAM(stdout, 4) +// step // Weak +// stime +//GO(stpcpy, pFpp) +// __stpcpy +//GO(__stpcpy_chk, pFppL) +// __stpcpy_small +//GOW(stpncpy, pFppL) +//GO(__stpncpy, pFppL) +//GO(__stpncpy_chk, pFppLL) +//GOW(strcasecmp, iFpp) +//GO(__strcasecmp, iFpp) +// __strcasecmp_l +// strcasecmp_l // Weak +//GOW(strcasestr, pFpp) +//GO(__strcasestr, pFpp) +//GO(strcat, pFpp) +//GO(__strcat_chk, pFppL) +//GO(strchr, pFpi) +//GOW(strchrnul, pFpi) +GO(strcmp, iFpp) +//GO(strcoll, iFpp) +//GO(__strcoll_l, iFppp) +//GOW(strcoll_l, iFppp) +//GO(strcpy, pFpp) +//GO(__strcpy_chk, pFppL) +// __strcpy_small +GO(strcspn, LFpp) +// __strcspn_c1 +// __strcspn_c2 +// __strcspn_c3 +//GOW(strdup, pFp) +//GO(__strdup, pFp) +//GO(strerror, pFi) +//GO(strerror_l, pFip) +//GO(__strerror_r, pFipu) +//GOW(strerror_r, pFipu) +//GO(strfmon, lFpLpppppppppp) //vaarg, probably needs align, there are just double... +// __strfmon_l +// strfmon_l // Weak +// strfry +//GO(strftime, LFpLpp) +//GO(__strftime_l, LFpLppL) +//GOW(strftime_l, LFpLppL) +//GO(strlen, LFp) +//GOW(strncasecmp, iFppL) +// __strncasecmp_l +// strncasecmp_l // Weak +//GO(strncat, pFppL) +//GO(__strncat_chk, pFppLL) +//GO(strncmp, iFppL) +//GO(strncpy, pFppL) +//GO(__strncpy_chk, pFppLL) +//GOW(strndup, pFpL) +//GO(__strndup, pFpL) +//GO(strnlen, LFpL) +//GO(strpbrk, pFpp) +// __strpbrk_c2 +// __strpbrk_c3 +//GO(strptime, pFppp) +// strptime_l // Weak +//GO(strrchr, pFpi) +//GOW(strsep, pFpp) +// __strsep_1c +// __strsep_2c +// __strsep_3c +// __strsep_g +//GO(strsignal, pFi) +//GO(strspn, LFpp) +// __strspn_c1 +// __strspn_c2 +// __strspn_c3 +//GO(strstr, pFpp) +//GO(strtod, dFpp) +//GO(__strtod_internal, dFppi) +//GO(__strtod_l, dFppp) +//GOW(strtod_l, dFppu) +//GO(strtof, fFpp) +//GO(__strtof_internal, fFppp) +//GO(__strtof_l, fFppp) +//GOW(strtof_l, fFppu) +//GO(strtoimax, IFppi) +//GO(strtok, pFpp) +//GO(__strtok_r, pFppp) +//GOW(strtok_r, pFppp) +// __strtok_r_1c +GO(strtol, lFpBp_i) +#ifdef HAVE_LD80BITS +//GO(strtold, DFpp) +//GO(__strtold_internal, DFppi) +//GO(__strtold_l, DFppip) +//GOW(strtold_l, DFppu) +#else +//GO(strtold, KFpp) +//GO2(__strtold_internal, KFppi, __strtod_internal) +//GO2(__strtold_l, KFppip, __strtod_l) +//GOW2(strtold_l, KFppu, strtod_l) +#endif +//GO(__strtol_internal, lFppi) +//GO(strtoll, IFppi) +//GO(__strtol_l, lFppiip) +//GOW(strtol_l, lFppiip) +//GO(__strtoll_internal, IFppii) +//GO(__strtoll_l, IFppip) +//GOW(strtoll_l, IFppip) +//GOW(strtoq, IFppi) // is that ok? +//GO(strtoul, LFppi) +//GO(__strtoul_internal, LFppii) +//GO(strtoull, UFppi) +//GO(__strtoul_l, uFppip) +//GOW(strtoul_l, LFppip) +//GO(__strtoull_internal, UFppii) +//GO(__strtoull_l, UFppip) +//GOW(strtoull_l, UFppip) +//GO(strtoumax, UFppi) +//GOW(strtouq, UFppi) // ok? +//GOW(strverscmp, iFpp) +// __strverscmp +//GO(strxfrm, uFppu) +//GO(__strxfrm_l, uFppup) +//GO(strxfrm_l, uFppup) +// stty +// svcauthdes_stats // type B +// svcerr_auth +// svcerr_decode +// svcerr_noproc +// svcerr_noprog +// svcerr_progvers +// svcerr_systemerr +// svcerr_weakauth +// svc_exit +// svcfd_create +// svc_fdset // type B +// svc_getreq +// svc_getreq_common +// svc_getreq_poll +// svc_getreqset +// svc_max_pollfd // type B +// svc_pollfd // type B +// svcraw_create +// svc_register +// svc_run +// svc_sendreply +// svctcp_create +// svcudp_bufcreate +// svcudp_create +// svcudp_enablecache +// svcunix_create +// svcunixfd_create +// svc_unregister +//GO(swab, vFppi) +GOM(swapcontext, iFEpp) //%% +// swapoff // Weak +// swapon // Weak +//GOM(swprintf, iFEpupV) //%% +//GOM(__swprintf_chk, iFEpuiupV) //%% +//GO2(swscanf, iFppV, vswscanf) // swscanf va_list is only pointer, no realign to do +//GOW(symlink, iFpp) +//GO(symlinkat, iFpip) +GO(sync, vFv) +GO(syncfs, iFi) +// sync_file_range +GOM(syscall, uFEV) //%% +GOW(sysconf, lFi) +GO(__sysconf, lFi) +// sysctl // Weak +//GO(__sysctl, iFp) +//DATA(_sys_errlist, 4) +//DATA(sys_errlist, 4) +//GO(sysinfo, iFp) +//GO2(syslog, vFipV, vsyslog) +//GO2(__syslog_chk, vFiipV, __vsyslog_chk) +//DATA(_sys_nerr, 4) // type R +//DATA(sys_nerr, 4) // type R +//DATA(sys_sigabbrev, 4) +//DATA(_sys_siglist, 4) +//DATA(sys_siglist, 4) +//GOW(system, iFp) // Need to wrap to use box86 if needed? +//GOM(__sysv_signal, pFEip) //%% +//GOWM(sysv_signal, pFEip) //%% +GOW(tcdrain, iFi) +GO(tcflow, iFii) +GO(tcflush, iFii) +//GOW(tcgetattr, iFip) +GO(tcgetpgrp, iFi) +// tcgetsid +GO(tcsendbreak, iFii) +//GO(tcsetattr, iFiip) +GO(tcsetpgrp, iFii) +// tdelete // Weak +// tdestroy // Weak +// tee +//GO(telldir, iFp) +//GO(tempnam, pFpp) +//GOW(textdomain, pFp) +// tfind // Weak +//GO(time, LFp) +//GO(timegm, LFp) +// timelocal // Weak +GO(timerfd_create, iFii) +//GO(timerfd_gettime, iFip) +//GO(timerfd_settime, iFiipp) +//GOW(times, iFp) +//DATAV(timezone, 4) +//DATAB(__timezone, 4) // type B +//GO(tmpfile, pFv) +//GO(tmpfile64, pFv) +//GO(tmpnam, pFp) +//GO(tmpnam_r, pFp) +GO(toascii, iFi) +// __toascii_l // Weak +GO(tolower, iFi) +// _tolower +// __tolower_l +//GOW(tolower_l, iFip) +GO(toupper, iFi) +// _toupper +// __toupper_l +//GOW(toupper_l, iFip) +// towctrans // Weak +// __towctrans +// __towctrans_l +// towctrans_l // Weak +GO(towlower, iFi) +//GO(__towlower_l, iFip) +//GOW(towlower_l, iFip) +//GO(towupper, iFi) +//GO(__towupper_l, iFip) +//GOW(towupper_l, iFip) +// tr_break +//GOW(truncate, iFpu) +//GO(truncate64, iFpU) +// tsearch // Weak +//GO(ttyname, pFi) +//GOW(ttyname_r, iFipu) +// __ttyname_r_chk +// ttyslot +// twalk // Weak +//DATAV(tzname, 4) +//DATA(__tzname, 4) +GOW(tzset, vFv) +// ualarm +//GO(__uflow, iFp) +// ulckpwdf // Weak +// ulimit // Weak +GOW(umask, uFu) +//GOW(umount, iFp) +//GOW(umount2, iFpi) +//GOWM(uname, iFp) //%%,noE +//GO(__underflow, iFp) +//GOW(ungetc, iFip) +//GO(ungetwc, iFip) +//GOW(unlink, iFp) +//GO(unlinkat, iFipi) +GO(unlockpt, iFi) +//GOW(unsetenv, iFp) +// unshare +//GOW(updwtmp, vFpp) +// updwtmpx +// uselib +GOW(uselocale, aFa) +GO(__uselocale, aFa) +// user2netname +GO(usleep, iFu) +// ustat +//GO(utime, iFpp) +//GO(utimensat, iFippi) +//GOW(utimes, iFpp) //TODO: check, signature is int utimes(const char *filename, const struct timeval times[2]); +//GOW(utmpname, iFp) +// utmpxname +//GOW(valloc, pFu) +//GOM(vasprintf, iFEpppp) //%% +//GOM(__vasprintf_chk, iFEpippp) //%% +// vdprintf // Weak +// __vdprintf_chk +//GOM(verr, vFEpV) //%% +// verrx +//GO(versionsort, iFpp) +//GO(versionsort64, iFpp) //need to align dirent64? +GOWM(vfork, iFEv) //%% +// __vfork +//GOM(vfprintf, iFEppp) //%% +//GOM(__vfprintf_chk, iFEpvpp) //%% +//GOWM(vfscanf, iFEppp) //%% +// __vfscanf +//GOWM(vfwprintf, iFEppp) //%% +//GO2(__vfwprintf_chk, iFEpvpp, my_vfwprintf) +//GOW(vfwscanf, iFppp) +// vhangup +// vlimit +// vmsplice +//GOM(vprintf, iFEpp) //%% +//GOM(__vprintf_chk, iFEvpp) //%% +// vscanf // Weak +//GOWM(vsnprintf, iFEpLppp) //%% +//GOWM(__vsnprintf, iFEpuppp) //%% +//GOM(__vsnprintf_chk, iFEpuvvppp) //%% +//GOWM(vsprintf, iFEppp) //%% +//GOM(__vsprintf_chk, iFEpiLpp) //%% +//GOM(vsscanf, iFEppp) //%% +// __vsscanf // Weak +//GOWM(vswprintf, iFEpuppp) //%% +//GOWM(__vswprintf_chk, iFEpLiLppp) //%% +//GO(vswscanf, iFppp) +//GO(vsyslog, vFipp) +//GO(__vsyslog_chk, vFiipp) +// vtimes +//GOM(vwarn, vFEppp) //%% +// vwarnx +//GOM(vwprintf, iFEpp) //%% +//GO2(__vwprintf_chk, iFEvpp, my_vwprintf) +//GO(vwscanf, iFpp) +//GOW(wait, iFp) +//GOW(__wait, iFp) +//GOW(wait3, iFpip) +//GOW(wait4, iFipip) +//GOW(waitid, iFiipi) +//GOW(waitpid, lFlpi) +//GOW(__waitpid, lFlpi) +//GO(warn, vFppppppppp) +//GO(warnx, vFppppppppp) +//GOW(wcpcpy, pFpp) +// __wcpcpy_chk +//GOW(wcpncpy, pFpp) +// __wcpncpy_chk +//GOW(wcrtomb, LFpip) +// __wcrtomb_chk +//GOW(wcscasecmp, iFpp) +// __wcscasecmp_l +//GOW(wcscasecmp_l, iFppp) +//GOW(wcscat, pFpp) +//GO(__wcscat_chk, pFppu) +//GO(wcschr, pFpi) +// wcschrnul // Weak +//GO(wcscmp, iFpp) +//GOW(wcscoll, iFpp) +//GO(__wcscoll_l, iFppp) +//GOW(wcscoll_l, iFppp) +//GO(wcscpy, pFpp) +//GO(__wcscpy_chk, pFppu) +//GO(wcscspn, uFpp) +//GO(wcsdup, pFp) +//GO(wcsftime, LFpLpp) +//GO(__wcsftime_l, LFpLppp) +//GOW(wcsftime_l, LFpLppp) +//GOW(wcslen, LFp) +//GOW(wcsncasecmp, iFppu) +// __wcsncasecmp_l +//GOW(wcsncasecmp_l, iFppup) +//GO(wcsncat, pFppu) +// __wcsncat_chk +//GO(wcsncmp, iFppu) +//GOW(wcsncpy, pFppu) +//GO(__wcsncpy_chk, pFppuu) +//GOW(wcsnlen, LFpL) +//GOW(wcsnrtombs, LFppLLp) +// __wcsnrtombs_chk +//GO(wcspbrk, pFpp) +//GO(wcsrchr, pFpi) +//GOW(wcsrtombs, uFppup) +// __wcsrtombs_chk +//GO(wcsspn, uFpp) +//GO(wcsstr, pFpp) +//GO(wcstod, dFpp) +//GO(__wcstod_internal, dFppi) +// __wcstod_l +// wcstod_l // Weak +//GO(wcstof, fFpp) +// __wcstof_internal +// __wcstof_l +// wcstof_l // Weak +// wcstoimax +//GO(wcstok, pFppp) +//GO(wcstol, iFppi) +//GO(wcstold, DFpp) +// __wcstold_internal +// __wcstold_l +// wcstold_l // Weak +//GO(__wcstol_internal, iFppii) +//GO(wcstoll, IFppi) +// __wcstol_l +// wcstol_l // Weak +// __wcstoll_internal +// __wcstoll_l +// wcstoll_l // Weak +//GO(wcstombs, uFppu) +// __wcstombs_chk +// wcstoq // Weak +//GO(wcstoul, iFppi) +//GO(__wcstoul_internal, LFppii) +//GO(wcstoull, UFppi) +// __wcstoul_l +// wcstoul_l // Weak +// __wcstoull_internal +// __wcstoull_l +// wcstoull_l // Weak +// wcstoumax +// wcstouq // Weak +// wcswcs // Weak +//GO(wcswidth, iFpu) +//GO(wcsxfrm, uFppu) +//GOW(wcsxfrm_l, uFppup) +//GO(__wcsxfrm_l, uFppup) +GO(wctob, iFi) +//GO(wctomb, iFpi) +//GO(__wctomb_chk, iFpuL) +// wctrans // Weak +// __wctrans_l +// wctrans_l // Weak +//GOW(wctype, uFp) +GO(__wctype_l, uFpa) +GOW(wctype_l, uFpa) +//GO(wcwidth, iFu) +//GOW(wmemchr, pFpuL) +GO(wmemcmp, iFppL) +GOW(wmemcpy, pFppL) +GO(__wmemcpy_chk, pFppLL) +//GOW(wmemmove, pFppL) +// __wmemmove_chk +// wmempcpy // Weak +// __wmempcpy_chk +//GO(wmemset, pFpuL) +// __wmemset_chk +//GO(wordexp, iFppi) +//GO(wordfree, vFp) +// __woverflow +//GOM(wprintf, iFEpV) //%% +//GOM(__wprintf_chk, iFEipV) //%% +//GOW(write, lFipL) +//GOW(__write, lFipL) +//GOW(writev, lFipi) +// wscanf +// __wuflow +// __wunderflow +// xdecrypt +// xdr_accepted_reply +// xdr_array +// xdr_authdes_cred +// xdr_authdes_verf +// xdr_authunix_parms +// xdr_bool +// xdr_bytes +// xdr_callhdr +// xdr_callmsg +// xdr_char +// xdr_cryptkeyarg +// xdr_cryptkeyarg2 +// xdr_cryptkeyres +// xdr_des_block +// xdr_double +// xdr_enum +// xdr_float +// xdr_free +// xdr_getcredres +// xdr_hyper +//GO(xdr_int, iFpp) +// xdr_int16_t +// xdr_int32_t +// xdr_int64_t +// xdr_int8_t +// xdr_keybuf +// xdr_key_netstarg +// xdr_key_netstres +// xdr_keystatus +// xdr_long +// xdr_longlong_t +// xdrmem_create +// xdr_netnamestr +// xdr_netobj +// xdr_opaque +// xdr_opaque_auth +// xdr_pmap +// xdr_pmaplist +// xdr_pointer +// xdr_quad_t +// xdrrec_create +// xdrrec_endofrecord +// xdrrec_eof +// xdrrec_skiprecord +// xdr_reference +// xdr_rejected_reply +// xdr_replymsg +// xdr_rmtcall_args +// xdr_rmtcallres +// xdr_short +// xdr_sizeof +// xdrstdio_create +// xdr_string +// xdr_u_char +// xdr_u_hyper +//GO(xdr_u_int, iFpp) +// xdr_uint16_t +// xdr_uint32_t +// xdr_uint64_t +// xdr_uint8_t +// xdr_u_long +// xdr_u_longlong_t +// xdr_union +// xdr_unixcred +// xdr_u_quad_t +// xdr_u_short +// xdr_vector +// xdr_void +// xdr_wrapstring +// xencrypt +//GO(__xmknod, iFipup) +//GO(__xmknodat, iFiipip) +//GO(__xpg_basename, pFp) +// __xpg_sigpause // Weak +//GO(__xpg_strerror_r, pFipu) +// xprt_register +// xprt_unregister +//GOM(__xstat, iFEipp) //%% +//GOM(__xstat64, iFEipp) //%% + +// forcing a custom __gmon_start__ that does nothing +GOM(__gmon_start__, vFEv) //%% + +GOM(_Jv_RegisterClasses, vFv) //%%,noE dummy + +GOM(__fdelt_chk, LFL) //%%,noE + +GOM(getauxval, uFEu) //%% implemented since glibc 2.16 + +//GOM(prlimit64, lFpupp) //%%,noE +//GO(process_vm_readv, lFipLpLL) +//GO(process_vm_writev, lFipLpLL) +//GOM(reallocarray, pFpLL) //%%,noE +//GOM(__open_nocancel, iFEpOV) //%% +//GO2(__read_nocancel, lFipL, read) +GO2(__close_nocancel, iFi, close) + +//GOM(mkstemps64, iFEpi) //%% not always implemented +//GOM(getentropy, iFEpL) //%% starting from glibc 2.25 + +// not found (libitm???), but it seems OK to declare dummies: + +//GOM(_ITM_RU1, uFp) //%%,noE +//GOM(_ITM_RU4, uFp) //%%,noE +//GOM(_ITM_RU8, UFp) +//GOM(_ITM_memcpyRtWn, vFppu) //%%,noE register(2) +//GOM(_ITM_memcpyRnWt, vFppu) //%%,noE register(2) +//GOM(_ITM_addUserCommitAction, vFEpup) +GOM(_ITM_registerTMCloneTable, vFEpu) //%% +GOM(_ITM_deregisterTMCloneTable, vFEp) //%% + +GOM(__umoddi3, UFUU) //%%,noE +GOM(__udivdi3, UFUU) //%%,noE +GOM(__divdi3, IFII) //%%,noE +//GOM(__poll_chk, iFpuii) //%%,noE + +GOM(fallocate64, iFiiII) //%%,noE + +//DATAM(__libc_stack_end, sizeof(void*)) + +//DATAM(___brk_addr, 4) +//DATA(__libc_enable_secure, 4) + +//GOM(__register_frame_info, vFpp) //%%,noE faked function +//GOM(__deregister_frame_info, pFp) //%%,noE + +//GO(name_to_handle_at, iFipppi) // only glibc 2.14+, so may not be present... + +//GOM(modify_ldt, iFEipL) // there is suposedly no glibc wrapper for this one + +#ifdef ANDROID +GOM(__libc_init, vFEpppp) +GO(__errno, pFv) +#else +// Those symbols don't exist in non-Android builds +//GOM(__libc_init, +//GO(__errno, +#endif + +//GOM(stat, +//GOM(lstat, +//GOM(fstat, +//GO(setprogname, +//GO(getprogname, + +DATAM(__libc_single_threaded, 4) //B type |