1#include <openssl/opensslv.h>
2#include <openssl/opensslconf.h>
3
4#define VERSION2(n, v) RUST_VERSION_##n##_##v
5#define VERSION(n, v) VERSION2(n, v)
6
7#define NEW_VERSION2(a, b, c) RUST_VERSION_NEW_OPENSSL_##a##_##b##_##c
8#define NEW_VERSION(a, b, c) NEW_VERSION2(a, b, c)
9
10#ifdef LIBRESSL_VERSION_NUMBER
11VERSION(LIBRESSL, LIBRESSL_VERSION_NUMBER)
12#elif defined OPENSSL_VERSION_MAJOR
13NEW_VERSION(OPENSSL_VERSION_MAJOR, OPENSSL_VERSION_MINOR, OPENSSL_VERSION_PATCH)
14#else
15VERSION(OPENSSL, OPENSSL_VERSION_NUMBER)
16#endif
17
18#ifdef OPENSSL_IS_BORINGSSL
19RUST_OPENSSL_IS_BORINGSSL
20#endif
21
22#ifdef OPENSSL_NO_BF
23RUST_CONF_OPENSSL_NO_BF
24#endif
25
26#ifdef OPENSSL_NO_BUF_FREELISTS
27RUST_CONF_OPENSSL_NO_BUF_FREELISTS
28#endif
29
30#ifdef OPENSSL_NO_CHACHA
31RUST_CONF_OPENSSL_NO_CHACHA
32#endif
33
34#ifdef OPENSSL_NO_IDEA
35RUST_CONF_OPENSSL_NO_IDEA
36#endif
37
38#ifdef OPENSSL_NO_CAMELLIA
39RUST_CONF_OPENSSL_NO_CAMELLIA
40#endif
41
42#ifdef OPENSSL_NO_CAST
43RUST_CONF_OPENSSL_NO_CAST
44#endif
45
46#ifdef OPENSSL_NO_CMS
47RUST_CONF_OPENSSL_NO_CMS
48#endif
49
50#ifdef OPENSSL_NO_COMP
51RUST_CONF_OPENSSL_NO_COMP
52#endif
53
54#ifdef OPENSSL_NO_EC
55RUST_CONF_OPENSSL_NO_EC
56#endif
57
58#ifdef OPENSSL_NO_EC2M
59RUST_CONF_OPENSSL_NO_EC2M
60#endif
61
62#ifdef OPENSSL_NO_ENGINE
63RUST_CONF_OPENSSL_NO_ENGINE
64#endif
65
66#ifdef OPENSSL_NO_KRB5
67RUST_CONF_OPENSSL_NO_KRB5
68#endif
69
70#ifdef OPENSSL_NO_NEXTPROTONEG
71RUST_CONF_OPENSSL_NO_NEXTPROTONEG
72#endif
73
74#ifdef OPENSSL_NO_OCSP
75RUST_CONF_OPENSSL_NO_OCSP
76#endif
77
78#ifdef OPENSSL_NO_OCB
79RUST_CONF_OPENSSL_NO_OCB
80#endif
81
82#ifdef OPENSSL_NO_PSK
83RUST_CONF_OPENSSL_NO_PSK
84#endif
85
86#ifdef OPENSSL_NO_RC4
87RUST_CONF_OPENSSL_NO_RC4
88#endif
89
90#ifdef OPENSSL_NO_RFC3779
91RUST_CONF_OPENSSL_NO_RFC3779
92#endif
93
94#ifdef OPENSSL_NO_RMD160
95RUST_CONF_OPENSSL_NO_RMD160
96#endif
97
98#ifdef OPENSSL_NO_SHA
99RUST_CONF_OPENSSL_NO_SHA
100#endif
101
102#ifdef OPENSSL_NO_SRP
103RUST_CONF_OPENSSL_NO_SRP
104#endif
105
106#ifdef OPENSSL_NO_SSL3_METHOD
107RUST_CONF_OPENSSL_NO_SSL3_METHOD
108#endif
109
110#ifdef OPENSSL_NO_TLSEXT
111RUST_CONF_OPENSSL_NO_TLSEXT
112#endif
113
114#ifdef OPENSSL_NO_SOCK
115RUST_CONF_OPENSSL_NO_SOCK
116#endif
117
118#ifdef OPENSSL_NO_STDIO
119RUST_CONF_OPENSSL_NO_STDIO
120#endif
121
122#ifdef OPENSSL_NO_SM3
123RUST_CONF_OPENSSL_NO_SM3
124#endif
125
126#ifdef OPENSSL_NO_SM4
127RUST_CONF_OPENSSL_NO_SM4
128#endif
129
130#ifdef OPENSSL_NO_DEPRECATED_3_0
131RUST_CONF_OPENSSL_NO_DEPRECATED_3_0
132#endif
133
134#ifdef OPENSSL_NO_SEED
135RUST_CONF_OPENSSL_NO_SEED
136#endif
137