a9142177990d27e4fb0f5a68c43478b3e58a9b01
[reactos.git] / reactos / include / crt / sec_api / time_s.h
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6 #ifndef _TIME_H__S
7 #define _TIME_H__S
8
9 #include <time.h>
10
11 #if defined(MINGW_HAS_SECURE_API)
12
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16
17 _CRTIMP errno_t __cdecl asctime_s(char *_Buf,size_t _SizeInWords,const struct tm *_Tm);
18 _CRTIMP errno_t __cdecl _ctime32_s(char *_Buf,size_t _SizeInBytes,const __time32_t *_Time);
19 _CRTIMP errno_t __cdecl _gmtime32_s(struct tm *_Tm,const __time32_t *_Time);
20 _CRTIMP errno_t __cdecl _localtime32_s(struct tm *_Tm,const __time32_t *_Time);
21 _CRTIMP errno_t __cdecl _strdate_s(char *_Buf,size_t _SizeInBytes);
22 _CRTIMP errno_t __cdecl _strtime_s(char *_Buf ,size_t _SizeInBytes);
23 #if _INTEGRAL_MAX_BITS >= 64
24 _CRTIMP errno_t __cdecl _ctime64_s(char *_Buf,size_t _SizeInBytes,const __time64_t *_Time);
25 _CRTIMP errno_t __cdecl _gmtime64_s(struct tm *_Tm,const __time64_t *_Time);
26 _CRTIMP errno_t __cdecl _localtime64_s(struct tm *_Tm,const __time64_t *_Time);
27 #endif
28
29 #ifndef _WTIME_S_DEFINED
30 #define _WTIME_S_DEFINED
31 _CRTIMP errno_t __cdecl _wasctime_s(wchar_t *_Buf,size_t _SizeInWords,const struct tm *_Tm);
32 _CRTIMP errno_t __cdecl _wctime32_s(wchar_t *_Buf,size_t _SizeInWords,const __time32_t *_Time);
33 _CRTIMP errno_t __cdecl _wstrdate_s(wchar_t *_Buf,size_t _SizeInWords);
34 _CRTIMP errno_t __cdecl _wstrtime_s(wchar_t *_Buf,size_t _SizeInWords);
35 #if _INTEGRAL_MAX_BITS >= 64
36 _CRTIMP errno_t __cdecl _wctime64_s(wchar_t *_Buf,size_t _SizeInWords,const __time64_t *_Time);
37 #endif
38
39 #if !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL)
40 #define _INC_WTIME_S_INL
41 #ifdef _USE_32BIT_TIME_T
42 __CRT_INLINE errno_t __cdecl _wctime_s(wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime32_s(_Buffer,_SizeInWords,_Time); }
43 #else
44 __CRT_INLINE errno_t __cdecl _wctime_s(wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime64_s(_Buffer,_SizeInWords,_Time); }
45 #endif
46 #endif
47 #endif
48
49 #ifndef RC_INVOKED
50 #ifdef _USE_32BIT_TIME_T
51 __CRT_INLINE errno_t __cdecl localtime_s(struct tm *_Tm,const time_t *_Time) { return _localtime32_s(_Tm,_Time); }
52 #else
53 __CRT_INLINE errno_t __cdecl localtime_s(struct tm *_Tm,const time_t *_Time) { return _localtime64_s(_Tm,_Time); }
54 #endif
55 #endif
56
57 #ifdef __cplusplus
58 }
59 #endif
60
61 #endif
62 #endif