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