Update LibreSSL from version 2.4.3 => 2.4.4
[dragonfly.git] / crypto / libressl / include / compat / sys / types.h
1 /*
2  * Public domain
3  * sys/types.h compatibility shim
4  */
5
6 #ifdef _MSC_VER
7 #if _MSC_VER >= 1900
8 #include <../ucrt/sys/types.h>
9 #else
10 #include <../include/sys/types.h>
11 #endif
12 #else
13 #include_next <sys/types.h>
14 #endif
15
16 #ifndef LIBCRYPTOCOMPAT_SYS_TYPES_H
17 #define LIBCRYPTOCOMPAT_SYS_TYPES_H
18
19 #include <stdint.h>
20
21 #ifdef __MINGW32__
22 #include <_bsd_types.h>
23 #endif
24
25 #ifdef _MSC_VER
26 typedef unsigned char   u_char;
27 typedef unsigned short  u_short;
28 typedef unsigned int    u_int;
29
30 #include <basetsd.h>
31 typedef SSIZE_T ssize_t;
32
33 #ifndef SSIZE_MAX
34 #ifdef _WIN64
35 #define SSIZE_MAX _I64_MAX
36 #else
37 #define SSIZE_MAX INT_MAX
38 #endif
39 #endif
40
41 #endif
42
43 #if !defined(HAVE_ATTRIBUTE__BOUNDED__) && !defined(__bounded__)
44 # define __bounded__(x, y, z)
45 #endif
46
47 #endif