diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-09-29 08:10:06 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-09-29 08:10:06 +0200 |
| commit | fb5bc122cc4b6b8d5a2baa5af7bb2dc4961de6b8 (patch) | |
| tree | 27f61dd34583cc4255247ba1275cbd154d1bdf8d /src | |
| parent | 4c328d0fca2ca617341e338b4c3ca8a2d1c56509 (diff) | |
| download | box64-fb5bc122cc4b6b8d5a2baa5af7bb2dc4961de6b8.tar.gz box64-fb5bc122cc4b6b8d5a2baa5af7bb2dc4961de6b8.zip | |
Added mallinfo wrapped function (for #121)
Diffstat (limited to 'src')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 1 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedlibctypes.h | 1 | ||||
| -rwxr-xr-x | src/wrapped/wrappedlibc.c | 7 | ||||
| -rwxr-xr-x | src/wrapped/wrappedlibc_private.h | 2 |
4 files changed, 10 insertions, 1 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index abea9103..49755fd6 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -2405,6 +2405,7 @@ wrappedlibc: - malloc - pFp: - __deregister_frame_info + - mallinfo - vFpi: - __longjmp_chk - _longjmp diff --git a/src/wrapped/generated/wrappedlibctypes.h b/src/wrapped/generated/wrappedlibctypes.h index 1cd6cfec..834efe64 100644 --- a/src/wrapped/generated/wrappedlibctypes.h +++ b/src/wrapped/generated/wrappedlibctypes.h @@ -92,6 +92,7 @@ typedef int64_t (*iFpippppp_t)(void*, int64_t, void*, void*, void*, void*, void* GO(getauxval, LFL_t) \ GO(malloc, pFL_t) \ GO(__deregister_frame_info, pFp_t) \ + GO(mallinfo, pFp_t) \ GO(__longjmp_chk, vFpi_t) \ GO(_longjmp, vFpi_t) \ GO(longjmp, vFpi_t) \ diff --git a/src/wrapped/wrappedlibc.c b/src/wrapped/wrappedlibc.c index b4dd0a12..1d9ee570 100755 --- a/src/wrapped/wrappedlibc.c +++ b/src/wrapped/wrappedlibc.c @@ -36,6 +36,7 @@ #include <spawn.h> #include <fts.h> #include <syslog.h> +#include <malloc.h> #include <getopt.h> #undef LOG_INFO #undef LOG_DEBUG @@ -2200,6 +2201,12 @@ EXPORT int my_mprotect(x64emu_t* emu, void *addr, unsigned long len, int prot) return ret; } +EXPORT void* my_mallinfo(x64emu_t* emu, void* p) +{ + *(struct mallinfo*)p = mallinfo(); + return p; +} + EXPORT int my_getopt(int argc, char* const argv[], const char *optstring) { int ret = getopt(argc, argv, optstring); diff --git a/src/wrapped/wrappedlibc_private.h b/src/wrapped/wrappedlibc_private.h index 275d89de..cc9fdf08 100755 --- a/src/wrapped/wrappedlibc_private.h +++ b/src/wrapped/wrappedlibc_private.h @@ -1106,7 +1106,7 @@ GOM(__lxstat64, iFEipp) GO(__madvise, iFpLi) GOW(madvise, iFpLi) GOWM(makecontext, iFEppiV) -//GOW(mallinfo, ?Fv) +GOWM(mallinfo, pFEp) GOM(malloc, pFL) // need to wrap to clear allocated memory? //GO(malloc_get_state, // Obsolete GOW(malloc_info, iFip) |