xref: /xnu-10063.121.3/EXTERNAL_HEADERS/CoreTrust/CTConfig.h (revision 2c2f96dc2b9a4408a43d3150ae9c105355ca3daa)
1*2c2f96dcSApple OSS Distributions //
2*2c2f96dcSApple OSS Distributions //  CTConfig.h
3*2c2f96dcSApple OSS Distributions //  CoreTrust
4*2c2f96dcSApple OSS Distributions //
5*2c2f96dcSApple OSS Distributions //  Copyright © 2021 Apple. All rights reserved.
6*2c2f96dcSApple OSS Distributions //
7*2c2f96dcSApple OSS Distributions 
8*2c2f96dcSApple OSS Distributions #ifndef _CORETRUST_CONFIG_H_
9*2c2f96dcSApple OSS Distributions #define _CORETRUST_CONFIG_H_
10*2c2f96dcSApple OSS Distributions 
11*2c2f96dcSApple OSS Distributions #if EFI
12*2c2f96dcSApple OSS Distributions // This requires $(SDKROOT)/usr/local/efi/include/Platform to be in your header
13*2c2f96dcSApple OSS Distributions // search path.
14*2c2f96dcSApple OSS Distributions #include <Apple/Common/Library/Include/EfiCompatibility.h>
15*2c2f96dcSApple OSS Distributions #else // !EFI
16*2c2f96dcSApple OSS Distributions #include <stddef.h>
17*2c2f96dcSApple OSS Distributions #include <stdint.h>
18*2c2f96dcSApple OSS Distributions #include <stdbool.h>
19*2c2f96dcSApple OSS Distributions #endif // !EFI
20*2c2f96dcSApple OSS Distributions 
21*2c2f96dcSApple OSS Distributions /* Bounds attributes */
22*2c2f96dcSApple OSS Distributions #if __has_include(<ptrcheck.h>)
23*2c2f96dcSApple OSS Distributions #include <ptrcheck.h>
24*2c2f96dcSApple OSS Distributions #else
25*2c2f96dcSApple OSS Distributions #define __single
26*2c2f96dcSApple OSS Distributions #define __unsafe_indexable
27*2c2f96dcSApple OSS Distributions #define __counted_by(N)
28*2c2f96dcSApple OSS Distributions #define __sized_by(N)
29*2c2f96dcSApple OSS Distributions #define __ended_by(E)
30*2c2f96dcSApple OSS Distributions #define __ptrcheck_abi_assume_single()
31*2c2f96dcSApple OSS Distributions #define __ptrcheck_abi_assume_unsafe_indexable()
32*2c2f96dcSApple OSS Distributions #define __unsafe_forge_bidi_indexable(T, P, S) ((T)(P))
33*2c2f96dcSApple OSS Distributions #define __unsafe_forge_single(T, P) ((T)(P))
34*2c2f96dcSApple OSS Distributions #endif
35*2c2f96dcSApple OSS Distributions 
36*2c2f96dcSApple OSS Distributions #if EFI
37*2c2f96dcSApple OSS Distributions     #if defined(__cplusplus)
38*2c2f96dcSApple OSS Distributions         #define __BEGIN_DECLS extern "C" {
39*2c2f96dcSApple OSS Distributions         #define __END_DECLS }
40*2c2f96dcSApple OSS Distributions     #else
41*2c2f96dcSApple OSS Distributions         #define __BEGIN_DECLS
42*2c2f96dcSApple OSS Distributions         #define __END_DECLS
43*2c2f96dcSApple OSS Distributions     #endif
44*2c2f96dcSApple OSS Distributions #else // !EFI
45*2c2f96dcSApple OSS Distributions #include <sys/cdefs.h>
46*2c2f96dcSApple OSS Distributions #endif // !EFI
47*2c2f96dcSApple OSS Distributions 
48*2c2f96dcSApple OSS Distributions __BEGIN_DECLS
49*2c2f96dcSApple OSS Distributions 
50*2c2f96dcSApple OSS Distributions #if EFI
51*2c2f96dcSApple OSS Distributions typedef UINT8 CT_uint8_t;
52*2c2f96dcSApple OSS Distributions typedef UINT32 CT_uint32_t;
53*2c2f96dcSApple OSS Distributions typedef INT32 CT_int;
54*2c2f96dcSApple OSS Distributions typedef UINT64 CT_uint64_t;
55*2c2f96dcSApple OSS Distributions typedef size_t CT_size_t;
56*2c2f96dcSApple OSS Distributions typedef BOOLEAN CT_bool;
57*2c2f96dcSApple OSS Distributions #else // !EFI
58*2c2f96dcSApple OSS Distributions typedef uint8_t CT_uint8_t;
59*2c2f96dcSApple OSS Distributions typedef uint32_t CT_uint32_t;
60*2c2f96dcSApple OSS Distributions typedef uint64_t CT_uint64_t;
61*2c2f96dcSApple OSS Distributions typedef size_t CT_size_t;
62*2c2f96dcSApple OSS Distributions typedef int CT_int;
63*2c2f96dcSApple OSS Distributions typedef bool CT_bool;
64*2c2f96dcSApple OSS Distributions #endif // !EFI
65*2c2f96dcSApple OSS Distributions 
66*2c2f96dcSApple OSS Distributions __END_DECLS
67*2c2f96dcSApple OSS Distributions 
68*2c2f96dcSApple OSS Distributions #endif /* _CORETRUST_CONFIG_H_ */
69