about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-03-25 14:41:11 +0100
committerptitSeb <sebastien.chev@gmail.com>2021-03-25 14:41:11 +0100
commitfcdd8fc383cace94ce970bd8af2385ab77d24def (patch)
treed2fbce8fa8d17a475049a72e831add107282bd6e /src
parent0b56f5aebd1eb47a09d3fa11b88d407855b7fa3e (diff)
downloadbox64-fcdd8fc383cace94ce970bd8af2385ab77d24def.tar.gz
box64-fcdd8fc383cace94ce970bd8af2385ab77d24def.zip
Added some more libc wrapped functions
Diffstat (limited to 'src')
-rw-r--r--src/wrapped/generated/functions_list.txt2
-rw-r--r--src/wrapped/generated/wrapper.c4
-rw-r--r--src/wrapped/generated/wrapper.h2
-rwxr-xr-xsrc/wrapped/wrappedlibc_private.h16
4 files changed, 16 insertions, 8 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index b1aa1b05..6f50f01b 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -139,6 +139,7 @@
 #() dFpi
 #() dFpp
 #() lFpi
+#() lFpp
 #() LFpi
 #() LFpL
 #() LFpp
@@ -498,6 +499,7 @@
 #() pFpuup
 #() pFpupi
 #() pFplpp
+#() pFpLip
 #() pFppii
 #() pFppiL
 #() pFppip
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c
index 2bdaddbb..333ba69a 100644
--- a/src/wrapped/generated/wrapper.c
+++ b/src/wrapped/generated/wrapper.c
@@ -172,6 +172,7 @@ typedef double (*dFdp_t)(double, void*);
 typedef double (*dFpi_t)(void*, int32_t);
 typedef double (*dFpp_t)(void*, void*);
 typedef intptr_t (*lFpi_t)(void*, int32_t);
+typedef intptr_t (*lFpp_t)(void*, void*);
 typedef uintptr_t (*LFpi_t)(void*, int32_t);
 typedef uintptr_t (*LFpL_t)(void*, uintptr_t);
 typedef uintptr_t (*LFpp_t)(void*, void*);
@@ -531,6 +532,7 @@ typedef void* (*pFpuuu_t)(void*, uint32_t, uint32_t, uint32_t);
 typedef void* (*pFpuup_t)(void*, uint32_t, uint32_t, void*);
 typedef void* (*pFpupi_t)(void*, uint32_t, void*, int32_t);
 typedef void* (*pFplpp_t)(void*, intptr_t, void*, void*);
+typedef void* (*pFpLip_t)(void*, uintptr_t, int32_t, void*);
 typedef void* (*pFppii_t)(void*, void*, int32_t, int32_t);
 typedef void* (*pFppiL_t)(void*, void*, int32_t, uintptr_t);
 typedef void* (*pFppip_t)(void*, void*, int32_t, void*);
@@ -1197,6 +1199,7 @@ void dFdp(x64emu_t *emu, uintptr_t fcn) { dFdp_t fn = (dFdp_t)fcn; emu->xmm[0].d
 void dFpi(x64emu_t *emu, uintptr_t fcn) { dFpi_t fn = (dFpi_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (int32_t)R_RSI); }
 void dFpp(x64emu_t *emu, uintptr_t fcn) { dFpp_t fn = (dFpp_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (void*)R_RSI); }
 void lFpi(x64emu_t *emu, uintptr_t fcn) { lFpi_t fn = (lFpi_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (int32_t)R_RSI); }
+void lFpp(x64emu_t *emu, uintptr_t fcn) { lFpp_t fn = (lFpp_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI); }
 void LFpi(x64emu_t *emu, uintptr_t fcn) { LFpi_t fn = (LFpi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI); }
 void LFpL(x64emu_t *emu, uintptr_t fcn) { LFpL_t fn = (LFpL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI); }
 void LFpp(x64emu_t *emu, uintptr_t fcn) { LFpp_t fn = (LFpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI); }
@@ -1556,6 +1559,7 @@ void pFpuuu(x64emu_t *emu, uintptr_t fcn) { pFpuuu_t fn = (pFpuuu_t)fcn; R_RAX=(
 void pFpuup(x64emu_t *emu, uintptr_t fcn) { pFpuup_t fn = (pFpuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); }
 void pFpupi(x64emu_t *emu, uintptr_t fcn) { pFpupi_t fn = (pFpupi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX); }
 void pFplpp(x64emu_t *emu, uintptr_t fcn) { pFplpp_t fn = (pFplpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
+void pFpLip(x64emu_t *emu, uintptr_t fcn) { pFpLip_t fn = (pFpLip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
 void pFppii(x64emu_t *emu, uintptr_t fcn) { pFppii_t fn = (pFppii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); }
 void pFppiL(x64emu_t *emu, uintptr_t fcn) { pFppiL_t fn = (pFppiL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX); }
 void pFppip(x64emu_t *emu, uintptr_t fcn) { pFppip_t fn = (pFppip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h
index d90dfa9e..3a788013 100644
--- a/src/wrapped/generated/wrapper.h
+++ b/src/wrapped/generated/wrapper.h
@@ -169,6 +169,7 @@ void dFdp(x64emu_t *emu, uintptr_t fnc);
 void dFpi(x64emu_t *emu, uintptr_t fnc);
 void dFpp(x64emu_t *emu, uintptr_t fnc);
 void lFpi(x64emu_t *emu, uintptr_t fnc);
+void lFpp(x64emu_t *emu, uintptr_t fnc);
 void LFpi(x64emu_t *emu, uintptr_t fnc);
 void LFpL(x64emu_t *emu, uintptr_t fnc);
 void LFpp(x64emu_t *emu, uintptr_t fnc);
@@ -528,6 +529,7 @@ void pFpuuu(x64emu_t *emu, uintptr_t fnc);
 void pFpuup(x64emu_t *emu, uintptr_t fnc);
 void pFpupi(x64emu_t *emu, uintptr_t fnc);
 void pFplpp(x64emu_t *emu, uintptr_t fnc);
+void pFpLip(x64emu_t *emu, uintptr_t fnc);
 void pFppii(x64emu_t *emu, uintptr_t fnc);
 void pFppiL(x64emu_t *emu, uintptr_t fnc);
 void pFppip(x64emu_t *emu, uintptr_t fnc);
diff --git a/src/wrapped/wrappedlibc_private.h b/src/wrapped/wrappedlibc_private.h
index 082a1570..fe6389ec 100755
--- a/src/wrapped/wrappedlibc_private.h
+++ b/src/wrapped/wrappedlibc_private.h
@@ -331,12 +331,12 @@ GO(fflush_unlocked, iFp)
 //GOW(fgetc_unlocked, 
 //GO(fgetgrent, 
 //GOW(fgetgrent_r, 
-//GO(fgetpos, 
-//GO(fgetpos64, 
+GO(fgetpos, lFpp)
+GO(fgetpos64, lFpp)
 //GO(fgetpwent, 
 //GOW(fgetpwent_r, 
-//GOW(fgets, 
-//GO(__fgets_chk, 
+GOW(fgets, pFpip)
+GO(__fgets_chk, pFpLip)
 //GO(fgetsgent, 
 //GOW(fgetsgent_r, 
 //GO(fgetspent, 
@@ -482,7 +482,7 @@ GO(getdate, pFp)
 //DATAB(getdate_err, 
 //GOW(getdate_r, 
 GOW(__getdelim, iFppip)
-//GOW(getdelim, 
+GOW(getdelim, iFppip)
 //GOW(getdirentries, 
 //GO(getdirentries64, 
 //GO(getdomainname, 
@@ -2002,9 +2002,9 @@ GOW(tzset, vFv)
 //GO(__uflow, 
 //GOW(ulckpwdf, 
 //GOW(ulimit, 
-//GOW(umask, 
-//GOW(umount, 
-//GOW(umount2, 
+GOW(umask, uFu)
+GOW(umount, iFp)
+GOW(umount2, iFpi)
 GOM(uname, iFp) //Weak
 GO(__underflow, iFp)
 GOW(ungetc, iFip)