Added some __isoc23_ symbols as synonym on wrapped libc (for #947)

This commit is contained in:
ptitSeb 2024-03-27 15:38:10 +01:00
parent 266392e315
commit 3992ab5931
3 changed files with 34 additions and 0 deletions

View File

@ -3213,6 +3213,9 @@ wrappedlibc:
- iFppp:
- _IO_vfscanf
- iFppV:
- __isoc23_fscanf
- __isoc23_sscanf
- __isoc23_sscanf
- __isoc99_fscanf
- __isoc99_sscanf
- __isoc99_swscanf
@ -3222,12 +3225,18 @@ wrappedlibc:
- iFpOu:
- __libc_open
- iFpOV:
- IFppi:
- __isoc23_strtoll
- UFppi:
- __isoc23_strtoull
- KFppi:
- __strtold_internal
- KFppu:
- strtold_l
- lFipL:
- __read_nocancel
- lFppi:
- __isoc23_strtol
- pFpii:
- pFpip:
- vFiipV:
@ -3258,6 +3267,10 @@ wrappedlibc:
- iFppiV:
- iFpppp:
- _IO_vfprintf
- IFppip:
- __isoc23_strtoll_l
- UFppip:
- __isoc23_strtoull_l
- KFppip:
- __strtold_l
- lFipiI:

View File

@ -64,9 +64,12 @@ typedef int32_t (*iFppp_t)(void*, void*, void*);
typedef int32_t (*iFppV_t)(void*, void*, ...);
typedef int32_t (*iFpOu_t)(void*, int32_t, uint32_t);
typedef int32_t (*iFpOV_t)(void*, int32_t, ...);
typedef int64_t (*IFppi_t)(void*, void*, int32_t);
typedef uint64_t (*UFppi_t)(void*, void*, int32_t);
typedef double (*KFppi_t)(void*, void*, int32_t);
typedef double (*KFppu_t)(void*, void*, uint32_t);
typedef intptr_t (*lFipL_t)(int32_t, void*, uintptr_t);
typedef intptr_t (*lFppi_t)(void*, void*, int32_t);
typedef void* (*pFpii_t)(void*, int32_t, int32_t);
typedef void* (*pFpip_t)(void*, int32_t, void*);
typedef void (*vFiipV_t)(int32_t, int32_t, void*, ...);
@ -91,6 +94,8 @@ typedef int32_t (*iFpLpV_t)(void*, uintptr_t, void*, ...);
typedef int32_t (*iFppii_t)(void*, void*, int32_t, int32_t);
typedef int32_t (*iFppiV_t)(void*, void*, int32_t, ...);
typedef int32_t (*iFpppp_t)(void*, void*, void*, void*);
typedef int64_t (*IFppip_t)(void*, void*, int32_t, void*);
typedef uint64_t (*UFppip_t)(void*, void*, int32_t, void*);
typedef double (*KFppip_t)(void*, void*, int32_t, void*);
typedef intptr_t (*lFipiI_t)(int32_t, void*, int32_t, int64_t);
typedef intptr_t (*lFpupp_t)(void*, uint32_t, void*, void*);
@ -151,6 +156,9 @@ typedef int32_t (*iFpLiLppp_t)(void*, uintptr_t, int32_t, uintptr_t, void*, void
GO(getopt, iFipp_t) \
GO(dprintf, iFipV_t) \
GO(_IO_vfscanf, iFppp_t) \
GO(__isoc23_fscanf, iFppV_t) \
GO(__isoc23_sscanf, iFppV_t) \
GO(__isoc23_sscanf, iFppV_t) \
GO(__isoc99_fscanf, iFppV_t) \
GO(__isoc99_sscanf, iFppV_t) \
GO(__isoc99_swscanf, iFppV_t) \
@ -158,15 +166,20 @@ typedef int32_t (*iFpLiLppp_t)(void*, uintptr_t, int32_t, uintptr_t, void*, void
GO(sscanf, iFppV_t) \
GO(swscanf, iFppV_t) \
GO(__libc_open, iFpOu_t) \
GO(__isoc23_strtoll, IFppi_t) \
GO(__isoc23_strtoull, UFppi_t) \
GO(__strtold_internal, KFppi_t) \
GO(strtold_l, KFppu_t) \
GO(__read_nocancel, lFipL_t) \
GO(__isoc23_strtol, lFppi_t) \
GO(__syslog_chk, vFiipV_t) \
GO(__libc_init, vFpppp_t) \
GO(ptrace, iFiupp_t) \
GO(readlinkat, iFippL_t) \
GO(__vfwprintf_chk, iFpvpp_t) \
GO(_IO_vfprintf, iFpppp_t) \
GO(__isoc23_strtoll_l, IFppip_t) \
GO(__isoc23_strtoull_l, UFppip_t) \
GO(__strtold_l, KFppip_t) \
GO(prctl, iFiLLLL_t) \
GO(getopt_long, iFipppp_t) \

View File

@ -409,6 +409,7 @@ GO(freopen64, pFppp)
// frexpf // Weak
// frexpl // Weak
GO2(fscanf, iFppV, vfscanf)
GO2(__isoc23_fscanf, iFppV, vfscanf)
GO(fseek, iFpli)
GO(fseeko, iFpli)
GO(fseeko64, iFpIi)
@ -910,6 +911,7 @@ GOM(__isoc99_vsscanf, iFEppp) //%% TODO: check if ok
// __isoc99_vswscanf
// __isoc99_vwscanf
// __isoc99_wscanf
GO2(__isoc23_sscanf, iFEppV, my___isoc99_sscanf)
#else
GO2(__isoc99_fscanf, iFppV, __isoc99_vfscanf)
// __isoc99_fwscanf
@ -923,6 +925,7 @@ GO(__isoc99_vsscanf, iFppp)
// __isoc99_vswscanf
// __isoc99_vwscanf
// __isoc99_wscanf
GO2(__isoc23_sscanf, iFppV, __isoc99_sscanf)
#endif
GO(isprint, iFi)
// __isprint_l
@ -1735,6 +1738,7 @@ GO(__strtok_r, pFppp)
GOW(strtok_r, pFppp)
// __strtok_r_1c
GO(strtol, lFppi)
GO2(__isoc23_strtol, lFppi, strtol)
#ifdef HAVE_LD80BITS
GO(strtold, DFpp)
GO(__strtold_internal, DFppi)
@ -1748,19 +1752,23 @@ GOW2(strtold_l, KFppu, strtod_l)
#endif
GO(__strtol_internal, lFppi)
GO(strtoll, IFppi)
GO2(__isoc23_strtoll, IFppi, strtoll)
GO(__strtol_l, lFppiip)
GOW(strtol_l, lFppiip)
GO(__strtoll_internal, IFppii)
GO(__strtoll_l, IFppip)
GOW(strtoll_l, IFppip)
GO2(__isoc23_strtoll_l, IFppip, strtoll_l)
GOW(strtoq, IFppi) // is that ok?
GO(strtoul, LFppi)
GO(__strtoul_internal, LFppii)
GO(strtoull, UFppi)
GO2(__isoc23_strtoull, UFppi, strtoull)
GO(__strtoul_l, uFppip)
GOW(strtoul_l, LFppip)
GO(__strtoull_internal, UFppii)
GO(__strtoull_l, UFppip)
GO2(__isoc23_strtoull_l, UFppip, strtoull_l)
GOW(strtoull_l, UFppip)
GO(strtoumax, UFppi)
GOW(strtouq, UFppi) // ok?