mirror of
https://github.com/reactos/reactos.git
synced 2024-11-01 04:11:30 +00:00
345 lines
7.2 KiB
C
345 lines
7.2 KiB
C
/**
|
|
* This file has no copyright assigned and is placed in the Public Domain.
|
|
* This file is part of the w64 mingw-runtime package.
|
|
* No warranty is given; refer to the file DISCLAIMER within this package.
|
|
*/
|
|
#ifndef _INC_STDLIB_S
|
|
#define _INC_STDLIB_S
|
|
|
|
#include <stdlib.h>
|
|
|
|
#if defined(MINGW_HAS_SECURE_API)
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
_Check_return_opt_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_dupenv_s(
|
|
_Outptr_result_buffer_maybenull_(*_PBufferSizeInBytes) _Outptr_result_maybenull_z_ char **_PBuffer,
|
|
_Out_opt_ size_t *_PBufferSizeInBytes,
|
|
_In_z_ const char *_VarName);
|
|
|
|
_Check_return_opt_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_itoa_s(
|
|
_In_ int _Value,
|
|
_Out_writes_z_(_Size) char *_DstBuf,
|
|
_In_ size_t _Size,
|
|
_In_ int _Radix);
|
|
|
|
_Check_return_opt_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_i64toa_s(
|
|
_In_ __int64 _Val,
|
|
_Out_writes_z_(_Size) char *_DstBuf,
|
|
_In_ size_t _Size,
|
|
_In_ int _Radix);
|
|
|
|
_Check_return_opt_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_ui64toa_s(
|
|
_In_ unsigned __int64 _Val,
|
|
_Out_writes_z_(_Size) char *_DstBuf,
|
|
_In_ size_t _Size,
|
|
_In_ int _Radix);
|
|
|
|
_Check_return_opt_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_ltoa_s(
|
|
_In_ long _Val,
|
|
_Out_writes_z_(_Size) char *_DstBuf,
|
|
_In_ size_t _Size,
|
|
_In_ int _Radix);
|
|
|
|
_Success_(return!=EINVAL)
|
|
_Check_return_opt_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
mbstowcs_s(
|
|
_Out_opt_ size_t *pcchConverted,
|
|
_Out_writes_to_opt_(sizeInWords, *pcchConverted) wchar_t *pwcstr,
|
|
_In_ size_t sizeInWords,
|
|
_In_reads_or_z_(count) const char *pmbstr,
|
|
_In_ size_t count);
|
|
|
|
_Check_return_opt_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_mbstowcs_s_l(
|
|
_Out_opt_ size_t *_PtNumOfCharConverted,
|
|
_Out_writes_to_opt_(_SizeInWords, *_PtNumOfCharConverted) wchar_t *_DstBuf,
|
|
_In_ size_t _SizeInWords,
|
|
_In_reads_or_z_(_MaxCount) const char *_SrcBuf,
|
|
_In_ size_t _MaxCount,
|
|
_In_opt_ _locale_t _Locale);
|
|
|
|
_Check_return_opt_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_ultoa_s(
|
|
_In_ unsigned long _Val,
|
|
_Out_writes_z_(_Size) char *_DstBuf,
|
|
_In_ size_t _Size,
|
|
_In_ int _Radix);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_wctomb_s_l(
|
|
_Out_opt_ int *_SizeConverted,
|
|
_Out_writes_opt_z_(_SizeInBytes) char *_MbCh,
|
|
_In_ size_t _SizeInBytes,
|
|
_In_ wchar_t _WCh,
|
|
_In_opt_ _locale_t _Locale);
|
|
|
|
_Success_(return!=EINVAL)
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
wcstombs_s(
|
|
_Out_opt_ size_t *pcchConverted,
|
|
_Out_writes_bytes_to_opt_(cjDstSize, *pcchConverted) char *pmbstrDst,
|
|
_In_ size_t cjDstSize,
|
|
_In_z_ const wchar_t *pwszSrc,
|
|
_In_ size_t cjMaxCount);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_wcstombs_s_l(
|
|
_Out_opt_ size_t *_PtNumOfCharConverted,
|
|
_Out_writes_bytes_to_opt_(_DstSizeInBytes, *_PtNumOfCharConverted) char *_Dst,
|
|
_In_ size_t _DstSizeInBytes,
|
|
_In_z_ const wchar_t *_Src,
|
|
_In_ size_t _MaxCountInBytes,
|
|
_In_opt_ _locale_t _Locale);
|
|
|
|
#ifndef _WSTDLIB_S_DEFINED
|
|
#define _WSTDLIB_S_DEFINED
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_itow_s(
|
|
_In_ int _Val,
|
|
_Out_writes_z_(_SizeInWords) wchar_t *_DstBuf,
|
|
_In_ size_t _SizeInWords,
|
|
_In_ int _Radix);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_ltow_s(
|
|
_In_ long _Val,
|
|
_Out_writes_z_(_SizeInWords) wchar_t *_DstBuf,
|
|
_In_ size_t _SizeInWords,
|
|
_In_ int _Radix);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_ultow_s(
|
|
_In_ unsigned long _Val,
|
|
_Out_writes_z_(_SizeInWords) wchar_t *_DstBuf,
|
|
_In_ size_t _SizeInWords,
|
|
_In_ int _Radix);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_wgetenv_s(
|
|
_Out_ size_t *_ReturnSize,
|
|
_Out_writes_opt_z_(_DstSizeInWords) wchar_t *_DstBuf,
|
|
_In_ size_t _DstSizeInWords,
|
|
_In_z_ const wchar_t *_VarName);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_wdupenv_s(
|
|
_Outptr_result_buffer_maybenull_(*_BufferSizeInWords) _Outptr_result_maybenull_z_ wchar_t **_Buffer,
|
|
_Out_opt_ size_t *_BufferSizeInWords,
|
|
_In_z_ const wchar_t *_VarName);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_i64tow_s(
|
|
_In_ __int64 _Val,
|
|
_Out_writes_z_(_SizeInWords) wchar_t *_DstBuf,
|
|
_In_ size_t _SizeInWords,
|
|
_In_ int _Radix);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_ui64tow_s(
|
|
_In_ unsigned __int64 _Val,
|
|
_Out_writes_z_(_SizeInWords) wchar_t *_DstBuf,
|
|
_In_ size_t _SizeInWords,
|
|
_In_ int _Radix);
|
|
|
|
#endif /* _WSTDLIB_S_DEFINED */
|
|
|
|
#ifndef _POSIX_
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_ecvt_s(
|
|
_Out_writes_z_(_Size) char *_DstBuf,
|
|
_In_ size_t _Size,
|
|
_In_ double _Val,
|
|
_In_ int _NumOfDights,
|
|
_Out_ int *_PtDec,
|
|
_Out_ int *_PtSign);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_fcvt_s(
|
|
_Out_writes_z_(_Size) char *_DstBuf,
|
|
_In_ size_t _Size,
|
|
_In_ double _Val,
|
|
_In_ int _NumOfDec,
|
|
_Out_ int *_PtDec,
|
|
_Out_ int *_PtSign);
|
|
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_gcvt_s(
|
|
_Out_writes_z_(_Size) char *_DstBuf,
|
|
_In_ size_t _Size,
|
|
_In_ double _Val,
|
|
_In_ int _NumOfDigits);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_makepath_s(
|
|
_Out_writes_z_(_Size) char *_PathResult,
|
|
_In_ size_t _Size,
|
|
_In_opt_z_ const char *_Drive,
|
|
_In_opt_z_ const char *_Dir,
|
|
_In_opt_z_ const char *_Filename,
|
|
_In_opt_z_ const char *_Ext);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_putenv_s(
|
|
_In_z_ const char *_Name,
|
|
_In_z_ const char *_Value);
|
|
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_searchenv_s(
|
|
_In_z_ const char *_Filename,
|
|
_In_z_ const char *_EnvVar,
|
|
_Out_writes_z_(_SizeInBytes) char *_ResultPath,
|
|
_In_ size_t _SizeInBytes);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_splitpath_s(
|
|
_In_z_ const char *path,
|
|
_Out_writes_opt_z_(drive_size) char *drive,
|
|
_In_ size_t drive_size,
|
|
_Out_writes_opt_z_(dir_size) char *dir,
|
|
_In_ size_t dir_size,
|
|
_Out_writes_opt_z_(fname_size) char *fname,
|
|
_In_ size_t fname_size,
|
|
_Out_writes_opt_z_(ext_size) char *ext,
|
|
_In_ size_t ext_size);
|
|
|
|
#ifndef _WSTDLIBP_S_DEFINED
|
|
#define _WSTDLIBP_S_DEFINED
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_wmakepath_s(
|
|
_Out_writes_z_(_SizeInWords) wchar_t *_PathResult,
|
|
_In_ size_t _SizeInWords,
|
|
_In_opt_z_ const wchar_t *_Drive,
|
|
_In_opt_z_ const wchar_t *_Dir,
|
|
_In_opt_z_ const wchar_t *_Filename,
|
|
_In_opt_z_ const wchar_t *_Ext);
|
|
|
|
_Check_return_wat_
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_wputenv_s(
|
|
_In_z_ const wchar_t *_Name,
|
|
_In_z_ const wchar_t *_Value);
|
|
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_wsearchenv_s(
|
|
_In_z_ const wchar_t *_Filename,
|
|
_In_z_ const wchar_t *_EnvVar,
|
|
_Out_writes_z_(_SizeInWords) wchar_t *_ResultPath,
|
|
_In_ size_t _SizeInWords);
|
|
|
|
_CRTIMP
|
|
errno_t
|
|
__cdecl
|
|
_wsplitpath_s(
|
|
_In_z_ const wchar_t *path,
|
|
_Out_writes_opt_z_(drive_size) wchar_t *drive,
|
|
_In_ size_t drive_size,
|
|
_Out_writes_opt_z_(dir_size) wchar_t *dir,
|
|
_In_ size_t dir_size,
|
|
_Out_writes_opt_z_(fname_size) wchar_t *fname,
|
|
_In_ size_t fname_size,
|
|
_Out_writes_opt_z_(ext_size) wchar_t *ext,
|
|
_In_ size_t ext_size);
|
|
|
|
#endif /* _WSTDLIBP_S_DEFINED */
|
|
|
|
#endif /* _POSIX_ */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* defined(MINGW_HAS_SECURE_API) */
|
|
|
|
#endif /* _INC_STDLIB_S */
|