diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 1 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 2 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 1 | ||||
| -rwxr-xr-x | src/wrapped/wrappedlibc_private.h | 10 |
4 files changed, 9 insertions, 5 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 599a9bca..c4b97fe7 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -42,6 +42,7 @@ #() dFd #() dFp #() lFE +#() lFv #() lFi #() lFl #() lFp diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 9c525227..975ffac0 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -75,6 +75,7 @@ typedef double (*dFu_t)(uint32_t); typedef double (*dFd_t)(double); typedef double (*dFp_t)(void*); typedef intptr_t (*lFE_t)(x64emu_t*); +typedef intptr_t (*lFv_t)(void); typedef intptr_t (*lFi_t)(int32_t); typedef intptr_t (*lFl_t)(intptr_t); typedef intptr_t (*lFp_t)(void*); @@ -1172,6 +1173,7 @@ void dFu(x64emu_t *emu, uintptr_t fcn) { dFu_t fn = (dFu_t)fcn; emu->xmm[0].d[0] void dFd(x64emu_t *emu, uintptr_t fcn) { dFd_t fn = (dFd_t)fcn; emu->xmm[0].d[0]=fn(emu->xmm[0].d[0]); } void dFp(x64emu_t *emu, uintptr_t fcn) { dFp_t fn = (dFp_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI); } void lFE(x64emu_t *emu, uintptr_t fcn) { lFE_t fn = (lFE_t)fcn; R_RAX=(intptr_t)fn(emu); } +void lFv(x64emu_t *emu, uintptr_t fcn) { lFv_t fn = (lFv_t)fcn; R_RAX=(intptr_t)fn(); } void lFi(x64emu_t *emu, uintptr_t fcn) { lFi_t fn = (lFi_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI); } void lFl(x64emu_t *emu, uintptr_t fcn) { lFl_t fn = (lFl_t)fcn; R_RAX=(intptr_t)fn((intptr_t)R_RDI); } void lFp(x64emu_t *emu, uintptr_t fcn) { lFp_t fn = (lFp_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI); } diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 642f68a4..da6e5244 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -72,6 +72,7 @@ void dFu(x64emu_t *emu, uintptr_t fnc); void dFd(x64emu_t *emu, uintptr_t fnc); void dFp(x64emu_t *emu, uintptr_t fnc); void lFE(x64emu_t *emu, uintptr_t fnc); +void lFv(x64emu_t *emu, uintptr_t fnc); void lFi(x64emu_t *emu, uintptr_t fnc); void lFl(x64emu_t *emu, uintptr_t fnc); void lFp(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped/wrappedlibc_private.h b/src/wrapped/wrappedlibc_private.h index bd32a3ad..877a7cd0 100755 --- a/src/wrapped/wrappedlibc_private.h +++ b/src/wrapped/wrappedlibc_private.h @@ -722,7 +722,7 @@ GOW(inet_pton, iFipp) //GO(__inet_pton_length, //GO(initgroups, //GO(init_module, -//GOW(initstate, +GOW(initstate, pFupL) //GOW(initstate_r, //GO(innetgr, GO(inotify_add_watch, iFipu) @@ -1080,7 +1080,7 @@ GOW(localtime_r, pFpp) //GO(lockf, //GOW(lockf64, //DATAB(locs, -//GOW(_longjmp, vFEpi) +GOM(_longjmp, vFEpi) //Weak GOM(longjmp, vFEpi) //weak GOM(__longjmp_chk, vFEpi) //GO(lrand48, @@ -1449,7 +1449,7 @@ GOM(qsort_r, vFEpLLpp) //Weak //GO(quotactl, //GO(raise, GO(rand, iFv) -//GOW(random, +GOW(random, lFv) //GOW(random_r, GO(rand_r, iFp) GO(__rawmemchr, pFpi) @@ -1646,7 +1646,7 @@ GOW(setrlimit64, iFip) GOW(setsockopt, iFiiipu) //GO(setsourcefilter, //GO(setspent, -//GOW(setstate, +GOW(setstate, pFp) //GOW(setstate_r, //GOW(settimeofday, //GOW(setttyent, @@ -1723,7 +1723,7 @@ GOM(__sprintf_chk, iFEpilpV) GOW(srand, vFu) //GO(srand48, //GOW(srand48_r, -//GOW(srandom, +GOW(srandom, vFu) //GOW(srandom_r, GOM(sscanf, iFEppV) //GOW(ssignal, |