diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-09-04 12:19:43 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-09-04 12:19:43 +0200 |
| commit | e8e966cd802f94f6b4012c820ad590bbd78b4a55 (patch) | |
| tree | 1c30d16b78e0bea6c1be80ad2888b6215ea308ed /src/wrapped/generated | |
| parent | 8b80cc328f6501119bacfc1c19a1080d493f5093 (diff) | |
| download | box64-e8e966cd802f94f6b4012c820ad590bbd78b4a55.tar.gz box64-e8e966cd802f94f6b4012c820ad590bbd78b4a55.zip | |
Added wrapped iopl that answer 'unsuported operation' for now
Diffstat (limited to 'src/wrapped/generated')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 3 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedlibctypes.h | 2 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 2 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 1 |
4 files changed, 8 insertions, 0 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index aac9090e..7ff63ed0 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -111,6 +111,7 @@ #() vFpS #() vFSi #() cFpp +#() iFEi #() iFEp #() iFwp #() iFii @@ -1649,6 +1650,8 @@ wrappedlibc: - iFv: - fork - vfork +- iFi: + - iopl - iFp: - _setjmp - getcontext diff --git a/src/wrapped/generated/wrappedlibctypes.h b/src/wrapped/generated/wrappedlibctypes.h index 78962777..1cd6cfec 100644 --- a/src/wrapped/generated/wrappedlibctypes.h +++ b/src/wrapped/generated/wrappedlibctypes.h @@ -14,6 +14,7 @@ typedef void (*vFv_t)(void); typedef void (*vFp_t)(void*); typedef int64_t (*iFv_t)(void); +typedef int64_t (*iFi_t)(int64_t); typedef int64_t (*iFp_t)(void*); typedef intptr_t (*lFv_t)(void); typedef uintptr_t (*LFL_t)(uintptr_t); @@ -81,6 +82,7 @@ typedef int64_t (*iFpippppp_t)(void*, int64_t, void*, void*, void*, void*, void* GO(__cxa_finalize, vFp_t) \ GO(fork, iFv_t) \ GO(vfork, iFv_t) \ + GO(iopl, iFi_t) \ GO(_setjmp, iFp_t) \ GO(getcontext, iFp_t) \ GO(setcontext, iFp_t) \ diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index dde83290..60359ed8 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -145,6 +145,7 @@ typedef void (*vFpp_t)(void*, void*); typedef void (*vFpS_t)(void*, void*); typedef void (*vFSi_t)(void*, int64_t); typedef int8_t (*cFpp_t)(void*, void*); +typedef int64_t (*iFEi_t)(x64emu_t*, int64_t); typedef int64_t (*iFEp_t)(x64emu_t*, void*); typedef int64_t (*iFwp_t)(int16_t, void*); typedef int64_t (*iFii_t)(int64_t, int64_t); @@ -1673,6 +1674,7 @@ void vFpp(x64emu_t *emu, uintptr_t fcn) { vFpp_t fn = (vFpp_t)fcn; fn((void*)R_R void vFpS(x64emu_t *emu, uintptr_t fcn) { vFpS_t fn = (vFpS_t)fcn; fn((void*)R_RDI, io_convert((void*)R_RSI)); } void vFSi(x64emu_t *emu, uintptr_t fcn) { vFSi_t fn = (vFSi_t)fcn; fn(io_convert((void*)R_RDI), (int64_t)R_RSI); } void cFpp(x64emu_t *emu, uintptr_t fcn) { cFpp_t fn = (cFpp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI); } +void iFEi(x64emu_t *emu, uintptr_t fcn) { iFEi_t fn = (iFEi_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI); } void iFEp(x64emu_t *emu, uintptr_t fcn) { iFEp_t fn = (iFEp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI); } void iFwp(x64emu_t *emu, uintptr_t fcn) { iFwp_t fn = (iFwp_t)fcn; R_RAX=(int64_t)fn((int16_t)R_RDI, (void*)R_RSI); } void iFii(x64emu_t *emu, uintptr_t fcn) { iFii_t fn = (iFii_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI); } diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 4b30ecc0..30f0638e 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -144,6 +144,7 @@ void vFpp(x64emu_t *emu, uintptr_t fnc); void vFpS(x64emu_t *emu, uintptr_t fnc); void vFSi(x64emu_t *emu, uintptr_t fnc); void cFpp(x64emu_t *emu, uintptr_t fnc); +void iFEi(x64emu_t *emu, uintptr_t fnc); void iFEp(x64emu_t *emu, uintptr_t fnc); void iFwp(x64emu_t *emu, uintptr_t fnc); void iFii(x64emu_t *emu, uintptr_t fnc); |