diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2022-06-11 10:29:46 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2022-06-11 10:29:46 +0200 |
| commit | 72927195fdea77040513c284a91809b00a0cadd9 (patch) | |
| tree | 8a0cc5d8cdbb1fb944c73db1f9c15d9c20b27799 /src/wrapped/generated | |
| parent | e29326d8d048b459b58272a0f88a776852dfe519 (diff) | |
| download | box64-72927195fdea77040513c284a91809b00a0cadd9.tar.gz box64-72927195fdea77040513c284a91809b00a0cadd9.zip | |
Added wrapped __wprintf_chk and wprintf (for #311)
Diffstat (limited to 'src/wrapped/generated')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 4 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedlibctypes.h | 3 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 2 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 1 |
4 files changed, 10 insertions, 0 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 1b90b33d..323b9fc7 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -829,6 +829,7 @@ #() UFppip #() UFpppp #() dFpppp +#() lFEipV #() lFEpip #() lFEppL #() lFEppp @@ -2723,6 +2724,7 @@ wrappedlibc: - execl - execlp - printf + - wprintf - iFpA: - vprintf - iFSp: @@ -2802,6 +2804,8 @@ wrappedlibc: - __open - open - open64 +- lFipV: + - __wprintf_chk - lFppL: - readlink - pFpip: diff --git a/src/wrapped/generated/wrappedlibctypes.h b/src/wrapped/generated/wrappedlibctypes.h index 77974f8b..58d9dad6 100644 --- a/src/wrapped/generated/wrappedlibctypes.h +++ b/src/wrapped/generated/wrappedlibctypes.h @@ -48,6 +48,7 @@ typedef int64_t (*iFppp_t)(void*, void*, void*); typedef int64_t (*iFppV_t)(void*, void*, ...); typedef int64_t (*iFppA_t)(void*, void*, va_list); typedef int64_t (*iFpOu_t)(void*, int32_t, uint64_t); +typedef intptr_t (*lFipV_t)(int64_t, void*, ...); typedef intptr_t (*lFppL_t)(void*, void*, uintptr_t); typedef void* (*pFpip_t)(void*, int64_t, void*); typedef void* (*pFppp_t)(void*, void*, void*); @@ -128,6 +129,7 @@ typedef int64_t (*iFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void* GO(execl, iFpV_t) \ GO(execlp, iFpV_t) \ GO(printf, iFpV_t) \ + GO(wprintf, iFpV_t) \ GO(vprintf, iFpA_t) \ GO(_IO_file_stat, iFSp_t) \ GO(__sysv_signal, pFip_t) \ @@ -188,6 +190,7 @@ typedef int64_t (*iFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void* GO(__open, iFpOu_t) \ GO(open, iFpOu_t) \ GO(open64, iFpOu_t) \ + GO(__wprintf_chk, lFipV_t) \ GO(readlink, lFppL_t) \ GO(fts_open, pFpip_t) \ GO(tsearch, pFppp_t) \ diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 81b81aa9..91192024 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -863,6 +863,7 @@ typedef uint64_t (*UFppii_t)(void*, void*, int64_t, int64_t); typedef uint64_t (*UFppip_t)(void*, void*, int64_t, void*); typedef uint64_t (*UFpppp_t)(void*, void*, void*, void*); typedef double (*dFpppp_t)(void*, void*, void*, void*); +typedef intptr_t (*lFEipV_t)(x64emu_t*, int64_t, void*, void*); typedef intptr_t (*lFEpip_t)(x64emu_t*, void*, int64_t, void*); typedef intptr_t (*lFEppL_t)(x64emu_t*, void*, void*, uintptr_t); typedef intptr_t (*lFEppp_t)(x64emu_t*, void*, void*, void*); @@ -2953,6 +2954,7 @@ void UFppii(x64emu_t *emu, uintptr_t fcn) { UFppii_t fn = (UFppii_t)fcn; R_RAX=f void UFppip(x64emu_t *emu, uintptr_t fcn) { UFppip_t fn = (UFppip_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void UFpppp(x64emu_t *emu, uintptr_t fcn) { UFpppp_t fn = (UFpppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void dFpppp(x64emu_t *emu, uintptr_t fcn) { dFpppp_t fn = (dFpppp_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void lFEipV(x64emu_t *emu, uintptr_t fcn) { lFEipV_t fn = (lFEipV_t)fcn; R_RAX=(intptr_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)(R_RSP + 8)); } void lFEpip(x64emu_t *emu, uintptr_t fcn) { lFEpip_t fn = (lFEpip_t)fcn; R_RAX=(intptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } void lFEppL(x64emu_t *emu, uintptr_t fcn) { lFEppL_t fn = (lFEppL_t)fcn; R_RAX=(intptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void lFEppp(x64emu_t *emu, uintptr_t fcn) { lFEppp_t fn = (lFEppp_t)fcn; R_RAX=(intptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index f4c08cb0..97bd685a 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -862,6 +862,7 @@ void UFppii(x64emu_t *emu, uintptr_t fnc); void UFppip(x64emu_t *emu, uintptr_t fnc); void UFpppp(x64emu_t *emu, uintptr_t fnc); void dFpppp(x64emu_t *emu, uintptr_t fnc); +void lFEipV(x64emu_t *emu, uintptr_t fnc); void lFEpip(x64emu_t *emu, uintptr_t fnc); void lFEppL(x64emu_t *emu, uintptr_t fnc); void lFEppp(x64emu_t *emu, uintptr_t fnc); |