diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-02-04 11:17:34 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-02-04 11:17:34 +0100 |
| commit | 4038ad5ce5c4d5702d229230697e4246991cbd59 (patch) | |
| tree | 3cb8de17f66528598bbe8799eca9ebb0c4697d31 /src | |
| parent | 973864e045c2080425619d47538db3455e4a7435 (diff) | |
| download | box64-4038ad5ce5c4d5702d229230697e4246991cbd59.tar.gz box64-4038ad5ce5c4d5702d229230697e4246991cbd59.zip | |
Added fts64_XXX wrapped functions to libc (for #503)
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 | 8 | ||||
| -rwxr-xr-x | src/wrapped/wrappedlibc_private.h | 10 |
4 files changed, 15 insertions, 5 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 26f9e680..63a1da02 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -3138,6 +3138,7 @@ wrappedlibc: - strlcat - strlcpy - pFpip: + - fts64_open - fts_open - pFppp: - tsearch diff --git a/src/wrapped/generated/wrappedlibctypes.h b/src/wrapped/generated/wrappedlibctypes.h index 5a08f38d..be8a3f3a 100644 --- a/src/wrapped/generated/wrappedlibctypes.h +++ b/src/wrapped/generated/wrappedlibctypes.h @@ -209,6 +209,7 @@ typedef int64_t (*iFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void* GO(readlink, lFppL_t) \ GO(strlcat, LFppL_t) \ GO(strlcpy, LFppL_t) \ + GO(fts64_open, pFpip_t) \ GO(fts_open, pFpip_t) \ GO(tsearch, pFppp_t) \ GO(__syslog_chk, vFiipV_t) \ diff --git a/src/wrapped/wrappedlibc.c b/src/wrapped/wrappedlibc.c index 2f25b9ae..8ee59a30 100755 --- a/src/wrapped/wrappedlibc.c +++ b/src/wrapped/wrappedlibc.c @@ -90,10 +90,12 @@ typedef int32_t (*iFipiI_t)(int32_t, void*, int32_t, int64_t); typedef int32_t (*iFipuup_t)(int32_t, void*, uint32_t, uint32_t, void*); typedef int32_t (*iFiiV_t)(int32_t, int32_t, ...); typedef void* (*pFp_t)(void*); +typedef void* (*pFpip_t)(void*, int, void*); #define SUPER() \ GO(_ITM_addUserCommitAction, iFpup_t) \ GO(_IO_file_stat, iFpp_t) \ + GO(fts64_open, pFpip_t) \ GO(register_printf_specifier, iFipp_t) \ GO(register_printf_type, iFp_t) @@ -1278,6 +1280,12 @@ EXPORT void* my_fts_open(x64emu_t* emu, void* path, int options, void* c) return fts_open(path, options, findcompareFct(c)); } +EXPORT void* my_fts64_open(x64emu_t* emu, void* path, int options, void* c) +{ + (void)emu; + return my->fts64_open(path, options, findcompareFct(c)); +} + #if 0 struct i386_dirent { uint32_t d_ino; diff --git a/src/wrapped/wrappedlibc_private.h b/src/wrapped/wrappedlibc_private.h index 1ce329d3..6f682431 100755 --- a/src/wrapped/wrappedlibc_private.h +++ b/src/wrapped/wrappedlibc_private.h @@ -446,11 +446,11 @@ GO(ftok, iFpi) GOW(ftruncate, iFil) GOW(ftruncate64, iFil) GOW(ftrylockfile, iFp) -//GOW(fts64_children, !F!i) -//GOW(fts64_close, iF!) -//GOW(fts64_open, !Fpi@) -//GOW(fts64_read, !F!) -//GOW(fts64_set, iF!!i) +GOW(fts64_children, pFpi) +GOW(fts64_close, iFp) +GOWM(fts64_open, pFEpip) +GOW(fts64_read, pFp) +GOW(fts64_set, iFppi) GO(fts_children, pFpi) GO(fts_close, iFp) GOM(fts_open, pFEpip) |