diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-12-13 16:42:21 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-12-13 16:42:21 +0100 |
| commit | 5bf154195d7be2db877f55a3ee541c9a64ebe4e9 (patch) | |
| tree | 75a66292a44a45d703ae0353e9f5f795f57134e8 /src/wrapped32/generated | |
| parent | 0239305f69dbafc701eb8f9ec63723dc70abf9b5 (diff) | |
| download | box64-5bf154195d7be2db877f55a3ee541c9a64ebe4e9.tar.gz box64-5bf154195d7be2db877f55a3ee541c9a64ebe4e9.zip | |
[BOX32][WRAPPER] Added a few more 32bits wrapped libc functions
Diffstat (limited to 'src/wrapped32/generated')
| -rw-r--r-- | src/wrapped32/generated/functions_list.txt | 7 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrappedlibctypes32.h | 6 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrapper32.c | 2 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrapper32.h | 1 |
4 files changed, 12 insertions, 4 deletions
diff --git a/src/wrapped32/generated/functions_list.txt b/src/wrapped32/generated/functions_list.txt index 7905325b..c610718c 100644 --- a/src/wrapped32/generated/functions_list.txt +++ b/src/wrapped32/generated/functions_list.txt @@ -920,6 +920,7 @@ #() iFpppi -> iFpppi #() iFpppu -> iFpppu #() iEpppL -> iEpppL +#() iEpppp -> iEpppp #() iFpppp -> iFpppp #() iESpiL -> iESpiL #() iFXiii -> iFXiii @@ -1930,13 +1931,14 @@ wrappedlibc: - pFL: - _ZGTtnaX - _ZGTtnam -- pFp: - - gethostbyname - pEp: + - getgrnam - getprotobyname - getpwnam - gmtime - localtime +- pFp: + - gethostbyname - pES: - getmntent - iEbp_: @@ -1995,6 +1997,7 @@ wrappedlibc: - vEipp: - vsyslog - vEipV: + - syslog - vEpuu: - vEpup: - _ITM_addUserCommitAction diff --git a/src/wrapped32/generated/wrappedlibctypes32.h b/src/wrapped32/generated/wrappedlibctypes32.h index c5b6db2d..25ad6055 100644 --- a/src/wrapped32/generated/wrappedlibctypes32.h +++ b/src/wrapped32/generated/wrappedlibctypes32.h @@ -32,8 +32,8 @@ typedef void* (*pEu_t)(uint32_t); typedef void* (*pFu_t)(uint32_t); typedef void* (*pEL_t)(uintptr_t); typedef void* (*pFL_t)(uintptr_t); -typedef void* (*pFp_t)(void*); typedef void* (*pEp_t)(void*); +typedef void* (*pFp_t)(void*); typedef void* (*pES_t)(void*); typedef int32_t (*iEbp__t)(struct_p_t*); typedef void* (*pErl__t)(struct_l_t*); @@ -160,11 +160,12 @@ typedef int32_t (*iFpuippupp_t)(void*, uint32_t, int32_t, void*, void*, uint32_t GO(_ZGTtnaj, pFu_t) \ GO(_ZGTtnaX, pFL_t) \ GO(_ZGTtnam, pFL_t) \ - GO(gethostbyname, pFp_t) \ + GO(getgrnam, pEp_t) \ GO(getprotobyname, pEp_t) \ GO(getpwnam, pEp_t) \ GO(gmtime, pEp_t) \ GO(localtime, pEp_t) \ + GO(gethostbyname, pFp_t) \ GO(getmntent, pES_t) \ GO(getifaddrs, iEbp__t) \ GO(ctime, pErl__t) \ @@ -196,6 +197,7 @@ typedef int32_t (*iFpuippupp_t)(void*, uint32_t, int32_t, void*, void*, uint32_t GO(gmtime_r, pEpp_t) \ GO(localtime_r, pEpp_t) \ GO(vsyslog, vEipp_t) \ + GO(syslog, vEipV_t) \ GO(_ITM_addUserCommitAction, vEpup_t) \ GO(posix_spawn_file_actions_adddup2, iEpii_t) \ GO(regcomp, iEppi_t) \ diff --git a/src/wrapped32/generated/wrapper32.c b/src/wrapped32/generated/wrapper32.c index 8b6ba9c0..351d4b9b 100644 --- a/src/wrapped32/generated/wrapper32.c +++ b/src/wrapped32/generated/wrapper32.c @@ -1011,6 +1011,7 @@ typedef int32_t (*iFppLi_t)(void*, void*, uintptr_t, int32_t); typedef int32_t (*iFpppi_t)(void*, void*, void*, int32_t); typedef int32_t (*iFpppu_t)(void*, void*, void*, uint32_t); typedef int32_t (*iEpppL_t)(void*, void*, void*, uintptr_t); +typedef int32_t (*iEpppp_t)(void*, void*, void*, void*); typedef int32_t (*iFpppp_t)(void*, void*, void*, void*); typedef int32_t (*iESpiL_t)(void*, void*, int32_t, uintptr_t); typedef int32_t (*iFXiii_t)(void*, int32_t, int32_t, int32_t); @@ -2771,6 +2772,7 @@ void iFppLi_32(x64emu_t *emu, uintptr_t fcn) { iFppLi_t fn = (iFppLi_t)fcn; R_EA void iFpppi_32(x64emu_t *emu, uintptr_t fcn) { iFpppi_t fn = (iFpppi_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); } void iFpppu_32(x64emu_t *emu, uintptr_t fcn) { iFpppu_t fn = (iFpppu_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(uint32_t, R_ESP + 16)); } void iEpppL_32(x64emu_t *emu, uintptr_t fcn) { iEpppL_t fn = (iEpppL_t)fcn; errno = emu->libc_err; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16))); emu->libc_err = errno; } +void iEpppp_32(x64emu_t *emu, uintptr_t fcn) { iEpppp_t fn = (iEpppp_t)fcn; errno = emu->libc_err; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16)); emu->libc_err = errno; } void iFpppp_32(x64emu_t *emu, uintptr_t fcn) { iFpppp_t fn = (iFpppp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16)); } void iESpiL_32(x64emu_t *emu, uintptr_t fcn) { iESpiL_t fn = (iESpiL_t)fcn; errno = emu->libc_err; R_EAX = fn(io_convert32(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16))); emu->libc_err = errno; } void iFXiii_32(x64emu_t *emu, uintptr_t fcn) { iFXiii_t fn = (iFXiii_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); } diff --git a/src/wrapped32/generated/wrapper32.h b/src/wrapped32/generated/wrapper32.h index 51d50e4a..0ac3fc19 100644 --- a/src/wrapped32/generated/wrapper32.h +++ b/src/wrapped32/generated/wrapper32.h @@ -961,6 +961,7 @@ void iFppLi_32(x64emu_t *emu, uintptr_t fnc); void iFpppi_32(x64emu_t *emu, uintptr_t fnc); void iFpppu_32(x64emu_t *emu, uintptr_t fnc); void iEpppL_32(x64emu_t *emu, uintptr_t fnc); +void iEpppp_32(x64emu_t *emu, uintptr_t fnc); void iFpppp_32(x64emu_t *emu, uintptr_t fnc); void iESpiL_32(x64emu_t *emu, uintptr_t fnc); void iFXiii_32(x64emu_t *emu, uintptr_t fnc); |