aws_lc_fips_sys/
x86_64_unknown_linux_gnu_crypto.rs

1/* automatically generated by rust-bindgen 0.72.1 */
2
3
4// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
5// SPDX-License-Identifier: Apache-2.0 OR ISC
6
7
8// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
9// SPDX-License-Identifier: Apache-2.0 OR ISC
10
11#![allow(
12    clippy::cast_lossless,
13    clippy::cast_possible_truncation,
14    clippy::cast_possible_wrap,
15    clippy::default_trait_access,
16    clippy::missing_safety_doc,
17    clippy::must_use_candidate,
18    clippy::not_unsafe_ptr_arg_deref,
19    clippy::ptr_as_ptr,
20    clippy::ptr_offset_with_cast,
21    clippy::pub_underscore_fields,
22    clippy::semicolon_if_nothing_returned,
23    clippy::too_many_lines,
24    clippy::unreadable_literal,
25    clippy::used_underscore_binding,
26    clippy::useless_transmute,
27    dead_code,
28    improper_ctypes,
29    non_camel_case_types,
30    non_snake_case,
31    non_upper_case_globals,
32    unpredictable_function_pointer_comparisons,
33    unused_imports
34)]
35
36
37#[repr(C)]
38#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
39pub struct __BindgenBitfieldUnit<Storage> {
40    storage: Storage,
41}
42impl<Storage> __BindgenBitfieldUnit<Storage> {
43    #[inline]
44    pub const fn new(storage: Storage) -> Self {
45        Self { storage }
46    }
47}
48impl<Storage> __BindgenBitfieldUnit<Storage>
49where
50    Storage: AsRef<[u8]> + AsMut<[u8]>,
51{
52    #[inline]
53    fn extract_bit(byte: u8, index: usize) -> bool {
54        let bit_index = if cfg!(target_endian = "big") {
55            7 - (index % 8)
56        } else {
57            index % 8
58        };
59        let mask = 1 << bit_index;
60        byte & mask == mask
61    }
62    #[inline]
63    pub fn get_bit(&self, index: usize) -> bool {
64        debug_assert!(index / 8 < self.storage.as_ref().len());
65        let byte_index = index / 8;
66        let byte = self.storage.as_ref()[byte_index];
67        Self::extract_bit(byte, index)
68    }
69    #[inline]
70    pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool {
71        debug_assert!(index / 8 < core::mem::size_of::<Storage>());
72        let byte_index = index / 8;
73        let byte = unsafe {
74            *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize)
75        };
76        Self::extract_bit(byte, index)
77    }
78    #[inline]
79    fn change_bit(byte: u8, index: usize, val: bool) -> u8 {
80        let bit_index = if cfg!(target_endian = "big") {
81            7 - (index % 8)
82        } else {
83            index % 8
84        };
85        let mask = 1 << bit_index;
86        if val {
87            byte | mask
88        } else {
89            byte & !mask
90        }
91    }
92    #[inline]
93    pub fn set_bit(&mut self, index: usize, val: bool) {
94        debug_assert!(index / 8 < self.storage.as_ref().len());
95        let byte_index = index / 8;
96        let byte = &mut self.storage.as_mut()[byte_index];
97        *byte = Self::change_bit(*byte, index, val);
98    }
99    #[inline]
100    pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) {
101        debug_assert!(index / 8 < core::mem::size_of::<Storage>());
102        let byte_index = index / 8;
103        let byte = unsafe {
104            (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize)
105        };
106        unsafe { *byte = Self::change_bit(*byte, index, val) };
107    }
108    #[inline]
109    pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
110        debug_assert!(bit_width <= 64);
111        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
112        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
113        let mut val = 0;
114        for i in 0..(bit_width as usize) {
115            if self.get_bit(i + bit_offset) {
116                let index = if cfg!(target_endian = "big") {
117                    bit_width as usize - 1 - i
118                } else {
119                    i
120                };
121                val |= 1 << index;
122            }
123        }
124        val
125    }
126    #[inline]
127    pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 {
128        debug_assert!(bit_width <= 64);
129        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
130        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
131        let mut val = 0;
132        for i in 0..(bit_width as usize) {
133            if unsafe { Self::raw_get_bit(this, i + bit_offset) } {
134                let index = if cfg!(target_endian = "big") {
135                    bit_width as usize - 1 - i
136                } else {
137                    i
138                };
139                val |= 1 << index;
140            }
141        }
142        val
143    }
144    #[inline]
145    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
146        debug_assert!(bit_width <= 64);
147        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
148        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
149        for i in 0..(bit_width as usize) {
150            let mask = 1 << i;
151            let val_bit_is_set = val & mask == mask;
152            let index = if cfg!(target_endian = "big") {
153                bit_width as usize - 1 - i
154            } else {
155                i
156            };
157            self.set_bit(index + bit_offset, val_bit_is_set);
158        }
159    }
160    #[inline]
161    pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) {
162        debug_assert!(bit_width <= 64);
163        debug_assert!(bit_offset / 8 < core::mem::size_of::<Storage>());
164        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::<Storage>());
165        for i in 0..(bit_width as usize) {
166            let mask = 1 << i;
167            let val_bit_is_set = val & mask == mask;
168            let index = if cfg!(target_endian = "big") {
169                bit_width as usize - 1 - i
170            } else {
171                i
172            };
173            unsafe { Self::raw_set_bit(this, index + bit_offset, val_bit_is_set) };
174        }
175    }
176}
177pub const AWSLC_VERSION_NAME: &[u8; 7] = b"AWS-LC\0";
178pub const OPENSSL_VERSION_NUMBER: i32 = 269488255;
179pub const SSLEAY_VERSION_NUMBER: i32 = 269488255;
180pub const AWSLC_API_VERSION: i32 = 30;
181pub const AWSLC_VERSION_NUMBER_STRING: &[u8; 6] = b"3.0.0\0";
182pub const AES_ENCRYPT: i32 = 1;
183pub const AES_DECRYPT: i32 = 0;
184pub const AES_MAXNR: i32 = 14;
185pub const AES_BLOCK_SIZE: i32 = 16;
186pub const SHA_CBLOCK: i32 = 64;
187pub const SHA_DIGEST_LENGTH: i32 = 20;
188pub const SHA224_CBLOCK: i32 = 64;
189pub const SHA224_DIGEST_LENGTH: i32 = 28;
190pub const SHA256_CBLOCK: i32 = 64;
191pub const SHA256_DIGEST_LENGTH: i32 = 32;
192pub const SHA384_CBLOCK: i32 = 128;
193pub const SHA384_DIGEST_LENGTH: i32 = 48;
194pub const SHA512_CBLOCK: i32 = 128;
195pub const SHA512_DIGEST_LENGTH: i32 = 64;
196pub const SHA512_224_DIGEST_LENGTH: i32 = 28;
197pub const SHA512_256_DIGEST_LENGTH: i32 = 32;
198pub const CRYPTO_LOCK: i32 = 1;
199pub const CRYPTO_UNLOCK: i32 = 2;
200pub const CRYPTO_READ: i32 = 4;
201pub const CRYPTO_WRITE: i32 = 8;
202pub const OPENSSL_VERSION_TEXT: &[u8; 41] = b"OpenSSL 1.1.1 (compatible; AWS-LC 3.0.0)\0";
203pub const OPENSSL_VERSION: i32 = 0;
204pub const OPENSSL_CFLAGS: i32 = 1;
205pub const OPENSSL_BUILT_ON: i32 = 2;
206pub const OPENSSL_PLATFORM: i32 = 3;
207pub const OPENSSL_DIR: i32 = 4;
208pub const SSLEAY_VERSION: i32 = 0;
209pub const SSLEAY_CFLAGS: i32 = 1;
210pub const SSLEAY_BUILT_ON: i32 = 2;
211pub const SSLEAY_PLATFORM: i32 = 3;
212pub const SSLEAY_DIR: i32 = 4;
213pub const OPENSSL_INIT_NO_LOAD_CRYPTO_STRINGS: i32 = 0;
214pub const OPENSSL_INIT_LOAD_CRYPTO_STRINGS: i32 = 0;
215pub const OPENSSL_INIT_ADD_ALL_CIPHERS: i32 = 0;
216pub const OPENSSL_INIT_ADD_ALL_DIGESTS: i32 = 0;
217pub const OPENSSL_INIT_NO_ADD_ALL_CIPHERS: i32 = 0;
218pub const OPENSSL_INIT_NO_ADD_ALL_DIGESTS: i32 = 0;
219pub const OPENSSL_INIT_LOAD_CONFIG: i32 = 0;
220pub const OPENSSL_INIT_NO_LOAD_CONFIG: i32 = 0;
221pub const OPENSSL_INIT_ENGINE_ALL_BUILTIN: i32 = 0;
222pub const ERR_FLAG_STRING: i32 = 1;
223pub const ERR_FLAG_MALLOCED: i32 = 2;
224pub const ERR_LIB_NONE: i32 = 1;
225pub const ERR_LIB_SYS: i32 = 2;
226pub const ERR_LIB_BN: i32 = 3;
227pub const ERR_LIB_RSA: i32 = 4;
228pub const ERR_LIB_DH: i32 = 5;
229pub const ERR_LIB_EVP: i32 = 6;
230pub const ERR_LIB_BUF: i32 = 7;
231pub const ERR_LIB_OBJ: i32 = 8;
232pub const ERR_LIB_PEM: i32 = 9;
233pub const ERR_LIB_DSA: i32 = 10;
234pub const ERR_LIB_X509: i32 = 11;
235pub const ERR_LIB_ASN1: i32 = 12;
236pub const ERR_LIB_CONF: i32 = 13;
237pub const ERR_LIB_CRYPTO: i32 = 14;
238pub const ERR_LIB_EC: i32 = 15;
239pub const ERR_LIB_SSL: i32 = 16;
240pub const ERR_LIB_BIO: i32 = 17;
241pub const ERR_LIB_PKCS7: i32 = 18;
242pub const ERR_LIB_PKCS8: i32 = 19;
243pub const ERR_LIB_X509V3: i32 = 20;
244pub const ERR_LIB_RAND: i32 = 21;
245pub const ERR_LIB_ENGINE: i32 = 22;
246pub const ERR_LIB_OCSP: i32 = 23;
247pub const ERR_LIB_UI: i32 = 24;
248pub const ERR_LIB_COMP: i32 = 25;
249pub const ERR_LIB_ECDSA: i32 = 26;
250pub const ERR_LIB_ECDH: i32 = 27;
251pub const ERR_LIB_HMAC: i32 = 28;
252pub const ERR_LIB_DIGEST: i32 = 29;
253pub const ERR_LIB_CIPHER: i32 = 30;
254pub const ERR_LIB_HKDF: i32 = 31;
255pub const ERR_LIB_TRUST_TOKEN: i32 = 32;
256pub const ERR_LIB_USER: i32 = 33;
257pub const ERR_NUM_LIBS: i32 = 34;
258pub const ERR_LIB_PKCS12: i32 = 35;
259pub const ERR_LIB_DSO: i32 = 36;
260pub const ERR_LIB_OSSL_STORE: i32 = 37;
261pub const ERR_LIB_FIPS: i32 = 38;
262pub const ERR_LIB_CMS: i32 = 39;
263pub const ERR_LIB_TS: i32 = 40;
264pub const ERR_LIB_CT: i32 = 41;
265pub const ERR_LIB_ASYNC: i32 = 42;
266pub const ERR_LIB_KDF: i32 = 43;
267pub const ERR_LIB_SM2: i32 = 44;
268pub const ERR_R_SYS_LIB: i32 = 2;
269pub const ERR_R_BN_LIB: i32 = 3;
270pub const ERR_R_RSA_LIB: i32 = 4;
271pub const ERR_R_DH_LIB: i32 = 5;
272pub const ERR_R_EVP_LIB: i32 = 6;
273pub const ERR_R_BUF_LIB: i32 = 7;
274pub const ERR_R_OBJ_LIB: i32 = 8;
275pub const ERR_R_PEM_LIB: i32 = 9;
276pub const ERR_R_DSA_LIB: i32 = 10;
277pub const ERR_R_X509_LIB: i32 = 11;
278pub const ERR_R_ASN1_LIB: i32 = 12;
279pub const ERR_R_CONF_LIB: i32 = 13;
280pub const ERR_R_CRYPTO_LIB: i32 = 14;
281pub const ERR_R_EC_LIB: i32 = 15;
282pub const ERR_R_SSL_LIB: i32 = 16;
283pub const ERR_R_BIO_LIB: i32 = 17;
284pub const ERR_R_PKCS7_LIB: i32 = 18;
285pub const ERR_R_PKCS8_LIB: i32 = 19;
286pub const ERR_R_X509V3_LIB: i32 = 20;
287pub const ERR_R_RAND_LIB: i32 = 21;
288pub const ERR_R_DSO_LIB: i32 = 36;
289pub const ERR_R_ENGINE_LIB: i32 = 22;
290pub const ERR_R_OCSP_LIB: i32 = 23;
291pub const ERR_R_UI_LIB: i32 = 24;
292pub const ERR_R_COMP_LIB: i32 = 25;
293pub const ERR_R_ECDSA_LIB: i32 = 26;
294pub const ERR_R_ECDH_LIB: i32 = 27;
295pub const ERR_R_FIPS_LIB: i32 = 38;
296pub const ERR_R_CMS_LIB: i32 = 39;
297pub const ERR_R_TS_LIB: i32 = 40;
298pub const ERR_R_HMAC_LIB: i32 = 28;
299pub const ERR_R_USER_LIB: i32 = 33;
300pub const ERR_R_DIGEST_LIB: i32 = 29;
301pub const ERR_R_CIPHER_LIB: i32 = 30;
302pub const ERR_R_HKDF_LIB: i32 = 31;
303pub const ERR_R_TRUST_TOKEN_LIB: i32 = 32;
304pub const ERR_R_FATAL: i32 = 64;
305pub const ERR_R_MALLOC_FAILURE: i32 = 65;
306pub const ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED: i32 = 66;
307pub const ERR_R_PASSED_NULL_PARAMETER: i32 = 67;
308pub const ERR_R_INTERNAL_ERROR: i32 = 68;
309pub const ERR_R_OVERFLOW: i32 = 69;
310pub const ERR_ERROR_STRING_BUF_LEN: i32 = 120;
311pub const ERR_TXT_STRING: i32 = 1;
312pub const ERR_TXT_MALLOCED: i32 = 2;
313pub const ERR_NUM_ERRORS: i32 = 16;
314pub const BIO_RR_CONNECT: i32 = 2;
315pub const BIO_RR_ACCEPT: i32 = 3;
316pub const BIO_CB_FREE: i32 = 1;
317pub const BIO_CB_READ: i32 = 2;
318pub const BIO_CB_WRITE: i32 = 3;
319pub const BIO_CB_PUTS: i32 = 4;
320pub const BIO_CB_GETS: i32 = 5;
321pub const BIO_CB_CTRL: i32 = 6;
322pub const BIO_CB_RETURN: i32 = 128;
323pub const BIO_NOCLOSE: i32 = 0;
324pub const BIO_CLOSE: i32 = 1;
325pub const BIO_FP_TEXT: i32 = 16;
326pub const BIO_CTRL_DGRAM_QUERY_MTU: i32 = 40;
327pub const BIO_CTRL_DGRAM_SET_MTU: i32 = 42;
328pub const BIO_CTRL_DGRAM_MTU_EXCEEDED: i32 = 43;
329pub const BIO_CTRL_DGRAM_GET_PEER: i32 = 46;
330pub const BIO_CTRL_DGRAM_GET_FALLBACK_MTU: i32 = 47;
331pub const BIO_CTRL_RESET: i32 = 1;
332pub const BIO_CTRL_EOF: i32 = 2;
333pub const BIO_CTRL_INFO: i32 = 3;
334pub const BIO_CTRL_GET_CLOSE: i32 = 8;
335pub const BIO_CTRL_SET_CLOSE: i32 = 9;
336pub const BIO_CTRL_PENDING: i32 = 10;
337pub const BIO_CTRL_FLUSH: i32 = 11;
338pub const BIO_CTRL_WPENDING: i32 = 13;
339pub const BIO_CTRL_SET_CALLBACK: i32 = 14;
340pub const BIO_CTRL_GET_CALLBACK: i32 = 15;
341pub const BIO_CTRL_SET: i32 = 4;
342pub const BIO_CTRL_GET: i32 = 5;
343pub const BIO_CTRL_PUSH: i32 = 6;
344pub const BIO_CTRL_POP: i32 = 7;
345pub const BIO_CTRL_DUP: i32 = 12;
346pub const BIO_CTRL_SET_FILENAME: i32 = 30;
347pub const BIO_FLAGS_READ: i32 = 1;
348pub const BIO_FLAGS_WRITE: i32 = 2;
349pub const BIO_FLAGS_IO_SPECIAL: i32 = 4;
350pub const BIO_FLAGS_RWS: i32 = 7;
351pub const BIO_FLAGS_SHOULD_RETRY: i32 = 8;
352pub const BIO_FLAGS_BASE64_NO_NL: i32 = 256;
353pub const BIO_FLAGS_MEM_RDONLY: i32 = 512;
354pub const BIO_TYPE_NONE: i32 = 0;
355pub const BIO_TYPE_MEM: i32 = 1025;
356pub const BIO_TYPE_FILE: i32 = 1026;
357pub const BIO_TYPE_FD: i32 = 1284;
358pub const BIO_TYPE_SOCKET: i32 = 1285;
359pub const BIO_TYPE_NULL: i32 = 1030;
360pub const BIO_TYPE_SSL: i32 = 519;
361pub const BIO_TYPE_MD: i32 = 520;
362pub const BIO_TYPE_BUFFER: i32 = 521;
363pub const BIO_TYPE_CIPHER: i32 = 522;
364pub const BIO_TYPE_BASE64: i32 = 523;
365pub const BIO_TYPE_CONNECT: i32 = 1292;
366pub const BIO_TYPE_ACCEPT: i32 = 1293;
367pub const BIO_TYPE_PROXY_CLIENT: i32 = 526;
368pub const BIO_TYPE_PROXY_SERVER: i32 = 527;
369pub const BIO_TYPE_NBIO_TEST: i32 = 528;
370pub const BIO_TYPE_NULL_FILTER: i32 = 529;
371pub const BIO_TYPE_BER: i32 = 530;
372pub const BIO_TYPE_BIO: i32 = 1043;
373pub const BIO_TYPE_LINEBUFFER: i32 = 532;
374pub const BIO_TYPE_DGRAM: i32 = 1301;
375pub const BIO_TYPE_ASN1: i32 = 534;
376pub const BIO_TYPE_COMP: i32 = 535;
377pub const BIO_TYPE_DESCRIPTOR: i32 = 256;
378pub const BIO_TYPE_FILTER: i32 = 512;
379pub const BIO_TYPE_SOURCE_SINK: i32 = 1024;
380pub const BIO_TYPE_START: i32 = 128;
381pub const BIO_C_SET_CONNECT: i32 = 100;
382pub const BIO_C_DO_STATE_MACHINE: i32 = 101;
383pub const BIO_C_SET_NBIO: i32 = 102;
384pub const BIO_C_SET_PROXY_PARAM: i32 = 103;
385pub const BIO_C_SET_FD: i32 = 104;
386pub const BIO_C_GET_FD: i32 = 105;
387pub const BIO_C_SET_FILE_PTR: i32 = 106;
388pub const BIO_C_GET_FILE_PTR: i32 = 107;
389pub const BIO_C_SET_FILENAME: i32 = 108;
390pub const BIO_C_SET_SSL: i32 = 109;
391pub const BIO_C_SET_MD: i32 = 111;
392pub const BIO_C_GET_MD: i32 = 112;
393pub const BIO_C_GET_CIPHER_STATUS: i32 = 113;
394pub const BIO_C_SET_BUF_MEM: i32 = 114;
395pub const BIO_C_GET_BUF_MEM_PTR: i32 = 115;
396pub const BIO_C_GET_BUFF_NUM_LINES: i32 = 116;
397pub const BIO_C_SET_BUFF_SIZE: i32 = 117;
398pub const BIO_C_SET_ACCEPT: i32 = 118;
399pub const BIO_C_SSL_MODE: i32 = 119;
400pub const BIO_C_GET_MD_CTX: i32 = 120;
401pub const BIO_C_GET_PROXY_PARAM: i32 = 121;
402pub const BIO_C_SET_BUFF_READ_DATA: i32 = 122;
403pub const BIO_C_GET_ACCEPT: i32 = 124;
404pub const BIO_C_FILE_SEEK: i32 = 128;
405pub const BIO_C_GET_CIPHER_CTX: i32 = 129;
406pub const BIO_C_SET_BUF_MEM_EOF_RETURN: i32 = 130;
407pub const BIO_C_SET_BIND_MODE: i32 = 131;
408pub const BIO_C_GET_BIND_MODE: i32 = 132;
409pub const BIO_C_FILE_TELL: i32 = 133;
410pub const BIO_C_GET_SOCKS: i32 = 134;
411pub const BIO_C_SET_SOCKS: i32 = 135;
412pub const BIO_C_SET_WRITE_BUF_SIZE: i32 = 136;
413pub const BIO_C_GET_WRITE_BUF_SIZE: i32 = 137;
414pub const BIO_C_GET_WRITE_GUARANTEE: i32 = 140;
415pub const BIO_C_GET_READ_REQUEST: i32 = 141;
416pub const BIO_C_SHUTDOWN_WR: i32 = 142;
417pub const BIO_C_NREAD0: i32 = 143;
418pub const BIO_C_NREAD: i32 = 144;
419pub const BIO_C_NWRITE0: i32 = 145;
420pub const BIO_C_NWRITE: i32 = 146;
421pub const BIO_C_RESET_READ_REQUEST: i32 = 147;
422pub const BIO_C_SET_MD_CTX: i32 = 148;
423pub const BIO_C_SET_PREFIX: i32 = 149;
424pub const BIO_C_GET_PREFIX: i32 = 150;
425pub const BIO_C_SET_SUFFIX: i32 = 151;
426pub const BIO_C_GET_SUFFIX: i32 = 152;
427pub const BIO_C_SET_EX_ARG: i32 = 153;
428pub const BIO_C_GET_EX_ARG: i32 = 154;
429pub const BIO_R_BAD_FOPEN_MODE: i32 = 100;
430pub const BIO_R_BROKEN_PIPE: i32 = 101;
431pub const BIO_R_CONNECT_ERROR: i32 = 102;
432pub const BIO_R_ERROR_SETTING_NBIO: i32 = 103;
433pub const BIO_R_INVALID_ARGUMENT: i32 = 104;
434pub const BIO_R_IN_USE: i32 = 105;
435pub const BIO_R_KEEPALIVE: i32 = 106;
436pub const BIO_R_NBIO_CONNECT_ERROR: i32 = 107;
437pub const BIO_R_NO_HOSTNAME_SPECIFIED: i32 = 108;
438pub const BIO_R_NO_PORT_SPECIFIED: i32 = 109;
439pub const BIO_R_NO_SUCH_FILE: i32 = 110;
440pub const BIO_R_NULL_PARAMETER: i32 = 111;
441pub const BIO_R_SYS_LIB: i32 = 112;
442pub const BIO_R_UNABLE_TO_CREATE_SOCKET: i32 = 113;
443pub const BIO_R_UNINITIALIZED: i32 = 114;
444pub const BIO_R_UNSUPPORTED_METHOD: i32 = 115;
445pub const BIO_R_WRITE_TO_READ_ONLY_BIO: i32 = 116;
446pub const BN_BITS2: i32 = 64;
447pub const BN_DEC_FMT1: &[u8; 4] = b"%lu\0";
448pub const BN_HEX_FMT1: &[u8; 4] = b"%lx\0";
449pub const BN_HEX_FMT2: &[u8; 7] = b"%016lx\0";
450pub const BN_RAND_TOP_ANY: i32 = -1;
451pub const BN_RAND_TOP_ONE: i32 = 0;
452pub const BN_RAND_TOP_TWO: i32 = 1;
453pub const BN_RAND_BOTTOM_ANY: i32 = 0;
454pub const BN_RAND_BOTTOM_ODD: i32 = 1;
455pub const BN_GENCB_GENERATED: i32 = 0;
456pub const BN_GENCB_PRIME_TEST: i32 = 1;
457pub const BN_prime_checks_for_validation: i32 = 64;
458pub const BN_prime_checks_for_generation: i32 = 0;
459pub const BN_prime_checks: i32 = 64;
460pub const BN_FLG_MALLOCED: i32 = 1;
461pub const BN_FLG_STATIC_DATA: i32 = 2;
462pub const BN_R_ARG2_LT_ARG3: i32 = 100;
463pub const BN_R_BAD_RECIPROCAL: i32 = 101;
464pub const BN_R_BIGNUM_TOO_LONG: i32 = 102;
465pub const BN_R_BITS_TOO_SMALL: i32 = 103;
466pub const BN_R_CALLED_WITH_EVEN_MODULUS: i32 = 104;
467pub const BN_R_DIV_BY_ZERO: i32 = 105;
468pub const BN_R_EXPAND_ON_STATIC_BIGNUM_DATA: i32 = 106;
469pub const BN_R_INPUT_NOT_REDUCED: i32 = 107;
470pub const BN_R_INVALID_RANGE: i32 = 108;
471pub const BN_R_NEGATIVE_NUMBER: i32 = 109;
472pub const BN_R_NOT_A_SQUARE: i32 = 110;
473pub const BN_R_NOT_INITIALIZED: i32 = 111;
474pub const BN_R_NO_INVERSE: i32 = 112;
475pub const BN_R_PRIVATE_KEY_TOO_LARGE: i32 = 113;
476pub const BN_R_P_IS_NOT_PRIME: i32 = 114;
477pub const BN_R_TOO_MANY_ITERATIONS: i32 = 115;
478pub const BN_R_TOO_MANY_TEMPORARY_VARIABLES: i32 = 116;
479pub const BN_R_BAD_ENCODING: i32 = 117;
480pub const BN_R_ENCODE_ERROR: i32 = 118;
481pub const BN_R_INVALID_INPUT: i32 = 119;
482pub const BN_F_BN_GENERATE_PRIME_EX: i32 = 0;
483pub const V_ASN1_UNIVERSAL: i32 = 0;
484pub const V_ASN1_APPLICATION: i32 = 64;
485pub const V_ASN1_CONTEXT_SPECIFIC: i32 = 128;
486pub const V_ASN1_PRIVATE: i32 = 192;
487pub const V_ASN1_CONSTRUCTED: i32 = 32;
488pub const V_ASN1_PRIMITIVE_TAG: i32 = 31;
489pub const V_ASN1_MAX_UNIVERSAL: i32 = 255;
490pub const V_ASN1_UNDEF: i32 = -1;
491pub const V_ASN1_OTHER: i32 = -3;
492pub const V_ASN1_ANY: i32 = -4;
493pub const V_ASN1_EOC: i32 = 0;
494pub const V_ASN1_BOOLEAN: i32 = 1;
495pub const V_ASN1_INTEGER: i32 = 2;
496pub const V_ASN1_BIT_STRING: i32 = 3;
497pub const V_ASN1_OCTET_STRING: i32 = 4;
498pub const V_ASN1_NULL: i32 = 5;
499pub const V_ASN1_OBJECT: i32 = 6;
500pub const V_ASN1_OBJECT_DESCRIPTOR: i32 = 7;
501pub const V_ASN1_EXTERNAL: i32 = 8;
502pub const V_ASN1_REAL: i32 = 9;
503pub const V_ASN1_ENUMERATED: i32 = 10;
504pub const V_ASN1_UTF8STRING: i32 = 12;
505pub const V_ASN1_SEQUENCE: i32 = 16;
506pub const V_ASN1_SET: i32 = 17;
507pub const V_ASN1_NUMERICSTRING: i32 = 18;
508pub const V_ASN1_PRINTABLESTRING: i32 = 19;
509pub const V_ASN1_T61STRING: i32 = 20;
510pub const V_ASN1_TELETEXSTRING: i32 = 20;
511pub const V_ASN1_VIDEOTEXSTRING: i32 = 21;
512pub const V_ASN1_IA5STRING: i32 = 22;
513pub const V_ASN1_UTCTIME: i32 = 23;
514pub const V_ASN1_GENERALIZEDTIME: i32 = 24;
515pub const V_ASN1_GRAPHICSTRING: i32 = 25;
516pub const V_ASN1_ISO64STRING: i32 = 26;
517pub const V_ASN1_VISIBLESTRING: i32 = 26;
518pub const V_ASN1_GENERALSTRING: i32 = 27;
519pub const V_ASN1_UNIVERSALSTRING: i32 = 28;
520pub const V_ASN1_BMPSTRING: i32 = 30;
521pub const V_ASN1_NEG: i32 = 256;
522pub const V_ASN1_NEG_INTEGER: i32 = 258;
523pub const V_ASN1_NEG_ENUMERATED: i32 = 266;
524pub const B_ASN1_NUMERICSTRING: i32 = 1;
525pub const B_ASN1_PRINTABLESTRING: i32 = 2;
526pub const B_ASN1_T61STRING: i32 = 4;
527pub const B_ASN1_TELETEXSTRING: i32 = 4;
528pub const B_ASN1_VIDEOTEXSTRING: i32 = 8;
529pub const B_ASN1_IA5STRING: i32 = 16;
530pub const B_ASN1_GRAPHICSTRING: i32 = 32;
531pub const B_ASN1_ISO64STRING: i32 = 64;
532pub const B_ASN1_VISIBLESTRING: i32 = 64;
533pub const B_ASN1_GENERALSTRING: i32 = 128;
534pub const B_ASN1_UNIVERSALSTRING: i32 = 256;
535pub const B_ASN1_OCTET_STRING: i32 = 512;
536pub const B_ASN1_BIT_STRING: i32 = 1024;
537pub const B_ASN1_BMPSTRING: i32 = 2048;
538pub const B_ASN1_UNKNOWN: i32 = 4096;
539pub const B_ASN1_UTF8STRING: i32 = 8192;
540pub const B_ASN1_UTCTIME: i32 = 16384;
541pub const B_ASN1_GENERALIZEDTIME: i32 = 32768;
542pub const B_ASN1_SEQUENCE: i32 = 65536;
543pub const ASN1_BOOLEAN_FALSE: i32 = 0;
544pub const ASN1_BOOLEAN_TRUE: i32 = 255;
545pub const ASN1_BOOLEAN_NONE: i32 = -1;
546pub const ASN1_STRING_FLAG_BITS_LEFT: i32 = 8;
547pub const MBSTRING_FLAG: i32 = 4096;
548pub const MBSTRING_UTF8: i32 = 4096;
549pub const MBSTRING_ASC: i32 = 4097;
550pub const MBSTRING_BMP: i32 = 4098;
551pub const MBSTRING_UNIV: i32 = 4100;
552pub const DIRSTRING_TYPE: i32 = 10246;
553pub const PKCS9STRING_TYPE: i32 = 10262;
554pub const STABLE_NO_MASK: i32 = 2;
555pub const B_ASN1_DIRECTORYSTRING: i32 = 10502;
556pub const B_ASN1_DISPLAYTEXT: i32 = 10320;
557pub const B_ASN1_TIME: i32 = 49152;
558pub const ASN1_STRFLGS_ESC_2253: i32 = 1;
559pub const ASN1_STRFLGS_ESC_CTRL: i32 = 2;
560pub const ASN1_STRFLGS_ESC_MSB: i32 = 4;
561pub const ASN1_STRFLGS_ESC_QUOTE: i32 = 8;
562pub const ASN1_STRFLGS_UTF8_CONVERT: i32 = 16;
563pub const ASN1_STRFLGS_IGNORE_TYPE: i32 = 32;
564pub const ASN1_STRFLGS_SHOW_TYPE: i32 = 64;
565pub const ASN1_STRFLGS_DUMP_ALL: i32 = 128;
566pub const ASN1_STRFLGS_DUMP_UNKNOWN: i32 = 256;
567pub const ASN1_STRFLGS_DUMP_DER: i32 = 512;
568pub const ASN1_STRFLGS_RFC2253: i32 = 791;
569pub const B_ASN1_PRINTABLE: i32 = 81175;
570pub const ASN1_R_ASN1_LENGTH_MISMATCH: i32 = 100;
571pub const ASN1_R_AUX_ERROR: i32 = 101;
572pub const ASN1_R_BAD_GET_ASN1_OBJECT_CALL: i32 = 102;
573pub const ASN1_R_BAD_OBJECT_HEADER: i32 = 103;
574pub const ASN1_R_BMPSTRING_IS_WRONG_LENGTH: i32 = 104;
575pub const ASN1_R_BN_LIB: i32 = 105;
576pub const ASN1_R_BOOLEAN_IS_WRONG_LENGTH: i32 = 106;
577pub const ASN1_R_BUFFER_TOO_SMALL: i32 = 107;
578pub const ASN1_R_CONTEXT_NOT_INITIALISED: i32 = 108;
579pub const ASN1_R_DECODE_ERROR: i32 = 109;
580pub const ASN1_R_DEPTH_EXCEEDED: i32 = 110;
581pub const ASN1_R_DIGEST_AND_KEY_TYPE_NOT_SUPPORTED: i32 = 111;
582pub const ASN1_R_ENCODE_ERROR: i32 = 112;
583pub const ASN1_R_ERROR_GETTING_TIME: i32 = 113;
584pub const ASN1_R_EXPECTING_AN_ASN1_SEQUENCE: i32 = 114;
585pub const ASN1_R_EXPECTING_AN_INTEGER: i32 = 115;
586pub const ASN1_R_EXPECTING_AN_OBJECT: i32 = 116;
587pub const ASN1_R_EXPECTING_A_BOOLEAN: i32 = 117;
588pub const ASN1_R_EXPECTING_A_TIME: i32 = 118;
589pub const ASN1_R_EXPLICIT_LENGTH_MISMATCH: i32 = 119;
590pub const ASN1_R_EXPLICIT_TAG_NOT_CONSTRUCTED: i32 = 120;
591pub const ASN1_R_FIELD_MISSING: i32 = 121;
592pub const ASN1_R_FIRST_NUM_TOO_LARGE: i32 = 122;
593pub const ASN1_R_HEADER_TOO_LONG: i32 = 123;
594pub const ASN1_R_ILLEGAL_BITSTRING_FORMAT: i32 = 124;
595pub const ASN1_R_ILLEGAL_BOOLEAN: i32 = 125;
596pub const ASN1_R_ILLEGAL_CHARACTERS: i32 = 126;
597pub const ASN1_R_ILLEGAL_FORMAT: i32 = 127;
598pub const ASN1_R_ILLEGAL_HEX: i32 = 128;
599pub const ASN1_R_ILLEGAL_IMPLICIT_TAG: i32 = 129;
600pub const ASN1_R_ILLEGAL_INTEGER: i32 = 130;
601pub const ASN1_R_ILLEGAL_NESTED_TAGGING: i32 = 131;
602pub const ASN1_R_ILLEGAL_NULL: i32 = 132;
603pub const ASN1_R_ILLEGAL_NULL_VALUE: i32 = 133;
604pub const ASN1_R_ILLEGAL_OBJECT: i32 = 134;
605pub const ASN1_R_ILLEGAL_OPTIONAL_ANY: i32 = 135;
606pub const ASN1_R_ILLEGAL_OPTIONS_ON_ITEM_TEMPLATE: i32 = 136;
607pub const ASN1_R_ILLEGAL_TAGGED_ANY: i32 = 137;
608pub const ASN1_R_ILLEGAL_TIME_VALUE: i32 = 138;
609pub const ASN1_R_INTEGER_NOT_ASCII_FORMAT: i32 = 139;
610pub const ASN1_R_INTEGER_TOO_LARGE_FOR_LONG: i32 = 140;
611pub const ASN1_R_INVALID_BIT_STRING_BITS_LEFT: i32 = 141;
612pub const ASN1_R_INVALID_BMPSTRING: i32 = 142;
613pub const ASN1_R_INVALID_DIGIT: i32 = 143;
614pub const ASN1_R_INVALID_MODIFIER: i32 = 144;
615pub const ASN1_R_INVALID_NUMBER: i32 = 145;
616pub const ASN1_R_INVALID_OBJECT_ENCODING: i32 = 146;
617pub const ASN1_R_INVALID_SEPARATOR: i32 = 147;
618pub const ASN1_R_INVALID_TIME_FORMAT: i32 = 148;
619pub const ASN1_R_INVALID_UNIVERSALSTRING: i32 = 149;
620pub const ASN1_R_INVALID_UTF8STRING: i32 = 150;
621pub const ASN1_R_LIST_ERROR: i32 = 151;
622pub const ASN1_R_MISSING_ASN1_EOS: i32 = 152;
623pub const ASN1_R_MISSING_EOC: i32 = 153;
624pub const ASN1_R_MISSING_SECOND_NUMBER: i32 = 154;
625pub const ASN1_R_MISSING_VALUE: i32 = 155;
626pub const ASN1_R_MSTRING_NOT_UNIVERSAL: i32 = 156;
627pub const ASN1_R_MSTRING_WRONG_TAG: i32 = 157;
628pub const ASN1_R_NESTED_ASN1_ERROR: i32 = 158;
629pub const ASN1_R_NESTED_ASN1_STRING: i32 = 159;
630pub const ASN1_R_NON_HEX_CHARACTERS: i32 = 160;
631pub const ASN1_R_NOT_ASCII_FORMAT: i32 = 161;
632pub const ASN1_R_NOT_ENOUGH_DATA: i32 = 162;
633pub const ASN1_R_NO_MATCHING_CHOICE_TYPE: i32 = 163;
634pub const ASN1_R_NULL_IS_WRONG_LENGTH: i32 = 164;
635pub const ASN1_R_OBJECT_NOT_ASCII_FORMAT: i32 = 165;
636pub const ASN1_R_ODD_NUMBER_OF_CHARS: i32 = 166;
637pub const ASN1_R_SECOND_NUMBER_TOO_LARGE: i32 = 167;
638pub const ASN1_R_SEQUENCE_LENGTH_MISMATCH: i32 = 168;
639pub const ASN1_R_SEQUENCE_NOT_CONSTRUCTED: i32 = 169;
640pub const ASN1_R_SEQUENCE_OR_SET_NEEDS_CONFIG: i32 = 170;
641pub const ASN1_R_SHORT_LINE: i32 = 171;
642pub const ASN1_R_STREAMING_NOT_SUPPORTED: i32 = 172;
643pub const ASN1_R_STRING_TOO_LONG: i32 = 173;
644pub const ASN1_R_STRING_TOO_SHORT: i32 = 174;
645pub const ASN1_R_TAG_VALUE_TOO_HIGH: i32 = 175;
646pub const ASN1_R_TIME_NOT_ASCII_FORMAT: i32 = 176;
647pub const ASN1_R_TOO_LONG: i32 = 177;
648pub const ASN1_R_TYPE_NOT_CONSTRUCTED: i32 = 178;
649pub const ASN1_R_TYPE_NOT_PRIMITIVE: i32 = 179;
650pub const ASN1_R_UNEXPECTED_EOC: i32 = 180;
651pub const ASN1_R_UNIVERSALSTRING_IS_WRONG_LENGTH: i32 = 181;
652pub const ASN1_R_UNKNOWN_FORMAT: i32 = 182;
653pub const ASN1_R_UNKNOWN_MESSAGE_DIGEST_ALGORITHM: i32 = 183;
654pub const ASN1_R_UNKNOWN_SIGNATURE_ALGORITHM: i32 = 184;
655pub const ASN1_R_UNKNOWN_TAG: i32 = 185;
656pub const ASN1_R_UNSUPPORTED_ANY_DEFINED_BY_TYPE: i32 = 186;
657pub const ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE: i32 = 187;
658pub const ASN1_R_UNSUPPORTED_TYPE: i32 = 188;
659pub const ASN1_R_WRONG_PUBLIC_KEY_TYPE: i32 = 189;
660pub const ASN1_R_WRONG_TAG: i32 = 190;
661pub const ASN1_R_WRONG_TYPE: i32 = 191;
662pub const ASN1_R_NESTED_TOO_DEEP: i32 = 192;
663pub const ASN1_R_BAD_TEMPLATE: i32 = 193;
664pub const ASN1_R_INVALID_BIT_STRING_PADDING: i32 = 194;
665pub const ASN1_R_WRONG_INTEGER_TYPE: i32 = 195;
666pub const ASN1_R_INVALID_INTEGER: i32 = 196;
667pub const ASN1_TFLG_OPTIONAL: i32 = 1;
668pub const ASN1_TFLG_SET_OF: i32 = 2;
669pub const ASN1_TFLG_SEQUENCE_OF: i32 = 4;
670pub const ASN1_TFLG_SK_MASK: i32 = 6;
671pub const ASN1_TFLG_IMPTAG: i32 = 8;
672pub const ASN1_TFLG_EXPTAG: i32 = 16;
673pub const ASN1_TFLG_TAG_MASK: i32 = 24;
674pub const ASN1_TFLG_UNIVERSAL: i32 = 0;
675pub const ASN1_TFLG_APPLICATION: i32 = 64;
676pub const ASN1_TFLG_CONTEXT: i32 = 128;
677pub const ASN1_TFLG_PRIVATE: i32 = 192;
678pub const ASN1_TFLG_TAG_CLASS: i32 = 192;
679pub const ASN1_TFLG_ADB_MASK: i32 = 768;
680pub const ASN1_TFLG_ADB_OID: i32 = 256;
681pub const ASN1_TFLG_COMBINE: i32 = 1024;
682pub const ASN1_ITYPE_PRIMITIVE: i32 = 0;
683pub const ASN1_ITYPE_SEQUENCE: i32 = 1;
684pub const ASN1_ITYPE_CHOICE: i32 = 2;
685pub const ASN1_ITYPE_EXTERN: i32 = 4;
686pub const ASN1_ITYPE_MSTRING: i32 = 5;
687pub const ASN1_AFLG_REFCOUNT: i32 = 1;
688pub const ASN1_AFLG_ENCODING: i32 = 2;
689pub const ASN1_OP_NEW_PRE: i32 = 0;
690pub const ASN1_OP_NEW_POST: i32 = 1;
691pub const ASN1_OP_FREE_PRE: i32 = 2;
692pub const ASN1_OP_FREE_POST: i32 = 3;
693pub const ASN1_OP_D2I_PRE: i32 = 4;
694pub const ASN1_OP_D2I_POST: i32 = 5;
695pub const ASN1_OP_PRINT_PRE: i32 = 8;
696pub const ASN1_OP_PRINT_POST: i32 = 9;
697pub const ASN1_OP_STREAM_PRE: i32 = 10;
698pub const ASN1_OP_STREAM_POST: i32 = 11;
699pub const ASN1_OP_DETACHED_PRE: i32 = 12;
700pub const ASN1_OP_DETACHED_POST: i32 = 13;
701pub const BLAKE2B256_DIGEST_LENGTH: i32 = 32;
702pub const BLAKE2B_CBLOCK: i32 = 128;
703pub const BF_ENCRYPT: i32 = 1;
704pub const BF_DECRYPT: i32 = 0;
705pub const BF_ROUNDS: i32 = 16;
706pub const BF_BLOCK: i32 = 8;
707pub const CBS_ASN1_TAG_SHIFT: i32 = 24;
708pub const CBS_ASN1_CONSTRUCTED: i32 = 536870912;
709pub const CBS_ASN1_UNIVERSAL: i32 = 0;
710pub const CBS_ASN1_APPLICATION: i32 = 1073741824;
711pub const CBS_ASN1_CONTEXT_SPECIFIC: i64 = 2147483648;
712pub const CBS_ASN1_PRIVATE: i64 = 3221225472;
713pub const CBS_ASN1_CLASS_MASK: i64 = 3221225472;
714pub const CBS_ASN1_TAG_NUMBER_MASK: i32 = 536870911;
715pub const CBS_ASN1_BOOLEAN: i32 = 1;
716pub const CBS_ASN1_INTEGER: i32 = 2;
717pub const CBS_ASN1_BITSTRING: i32 = 3;
718pub const CBS_ASN1_OCTETSTRING: i32 = 4;
719pub const CBS_ASN1_NULL: i32 = 5;
720pub const CBS_ASN1_OBJECT: i32 = 6;
721pub const CBS_ASN1_ENUMERATED: i32 = 10;
722pub const CBS_ASN1_UTF8STRING: i32 = 12;
723pub const CBS_ASN1_SEQUENCE: i32 = 536870928;
724pub const CBS_ASN1_SET: i32 = 536870929;
725pub const CBS_ASN1_NUMERICSTRING: i32 = 18;
726pub const CBS_ASN1_PRINTABLESTRING: i32 = 19;
727pub const CBS_ASN1_T61STRING: i32 = 20;
728pub const CBS_ASN1_VIDEOTEXSTRING: i32 = 21;
729pub const CBS_ASN1_IA5STRING: i32 = 22;
730pub const CBS_ASN1_UTCTIME: i32 = 23;
731pub const CBS_ASN1_GENERALIZEDTIME: i32 = 24;
732pub const CBS_ASN1_GRAPHICSTRING: i32 = 25;
733pub const CBS_ASN1_VISIBLESTRING: i32 = 26;
734pub const CBS_ASN1_GENERALSTRING: i32 = 27;
735pub const CBS_ASN1_UNIVERSALSTRING: i32 = 28;
736pub const CBS_ASN1_BMPSTRING: i32 = 30;
737pub const EVP_CIPH_STREAM_CIPHER: i32 = 0;
738pub const EVP_CIPH_ECB_MODE: i32 = 1;
739pub const EVP_CIPH_CBC_MODE: i32 = 2;
740pub const EVP_CIPH_CFB_MODE: i32 = 3;
741pub const EVP_CIPH_OFB_MODE: i32 = 4;
742pub const EVP_CIPH_CTR_MODE: i32 = 5;
743pub const EVP_CIPH_GCM_MODE: i32 = 6;
744pub const EVP_CIPH_XTS_MODE: i32 = 7;
745pub const EVP_CIPH_CCM_MODE: i32 = 8;
746pub const EVP_CIPH_FLAG_LENGTH_BITS: i32 = 8192;
747pub const EVP_CIPH_OCB_MODE: i32 = 9;
748pub const EVP_CIPH_WRAP_MODE: i32 = 10;
749pub const EVP_CIPH_VARIABLE_LENGTH: i32 = 64;
750pub const EVP_CIPH_ALWAYS_CALL_INIT: i32 = 128;
751pub const EVP_CIPH_CUSTOM_IV: i32 = 256;
752pub const EVP_CIPH_CTRL_INIT: i32 = 512;
753pub const EVP_CIPH_FLAG_CUSTOM_CIPHER: i32 = 1024;
754pub const EVP_CIPH_FLAG_AEAD_CIPHER: i32 = 2048;
755pub const EVP_CIPH_CUSTOM_COPY: i32 = 4096;
756pub const EVP_CIPH_FLAG_NON_FIPS_ALLOW: i32 = 0;
757pub const EVP_CIPHER_CTX_FLAG_WRAP_ALLOW: i32 = 0;
758pub const EVP_CIPH_NO_PADDING: i32 = 2048;
759pub const EVP_CTRL_INIT: i32 = 0;
760pub const EVP_CTRL_SET_KEY_LENGTH: i32 = 1;
761pub const EVP_CTRL_GET_RC2_KEY_BITS: i32 = 2;
762pub const EVP_CTRL_SET_RC2_KEY_BITS: i32 = 3;
763pub const EVP_CTRL_GET_RC5_ROUNDS: i32 = 4;
764pub const EVP_CTRL_SET_RC5_ROUNDS: i32 = 5;
765pub const EVP_CTRL_RAND_KEY: i32 = 6;
766pub const EVP_CTRL_PBE_PRF_NID: i32 = 7;
767pub const EVP_CTRL_COPY: i32 = 8;
768pub const EVP_CTRL_AEAD_SET_IVLEN: i32 = 9;
769pub const EVP_CTRL_AEAD_GET_TAG: i32 = 16;
770pub const EVP_CTRL_AEAD_SET_TAG: i32 = 17;
771pub const EVP_CTRL_AEAD_SET_IV_FIXED: i32 = 18;
772pub const EVP_CTRL_GCM_IV_GEN: i32 = 19;
773pub const EVP_CTRL_CCM_SET_L: i32 = 20;
774pub const EVP_CTRL_AEAD_SET_MAC_KEY: i32 = 23;
775pub const EVP_CTRL_GCM_SET_IV_INV: i32 = 24;
776pub const EVP_CTRL_GET_IVLEN: i32 = 25;
777pub const EVP_GCM_TLS_FIXED_IV_LEN: i32 = 4;
778pub const EVP_GCM_TLS_EXPLICIT_IV_LEN: i32 = 8;
779pub const EVP_GCM_TLS_TAG_LEN: i32 = 16;
780pub const EVP_CTRL_GCM_SET_IVLEN: i32 = 9;
781pub const EVP_CTRL_GCM_GET_TAG: i32 = 16;
782pub const EVP_CTRL_GCM_SET_TAG: i32 = 17;
783pub const EVP_CTRL_GCM_SET_IV_FIXED: i32 = 18;
784pub const EVP_MAX_KEY_LENGTH: i32 = 64;
785pub const EVP_MAX_IV_LENGTH: i32 = 16;
786pub const EVP_MAX_BLOCK_LENGTH: i32 = 32;
787pub const EVP_CTRL_AEAD_TLS1_AAD: i32 = 22;
788pub const EVP_AEAD_TLS1_AAD_LEN: i32 = 13;
789pub const CIPHER_R_AES_KEY_SETUP_FAILED: i32 = 100;
790pub const CIPHER_R_BAD_DECRYPT: i32 = 101;
791pub const CIPHER_R_BAD_KEY_LENGTH: i32 = 102;
792pub const CIPHER_R_BUFFER_TOO_SMALL: i32 = 103;
793pub const CIPHER_R_CTRL_NOT_IMPLEMENTED: i32 = 104;
794pub const CIPHER_R_CTRL_OPERATION_NOT_IMPLEMENTED: i32 = 105;
795pub const CIPHER_R_DATA_NOT_MULTIPLE_OF_BLOCK_LENGTH: i32 = 106;
796pub const CIPHER_R_INITIALIZATION_ERROR: i32 = 107;
797pub const CIPHER_R_INPUT_NOT_INITIALIZED: i32 = 108;
798pub const CIPHER_R_INVALID_AD_SIZE: i32 = 109;
799pub const CIPHER_R_INVALID_KEY_LENGTH: i32 = 110;
800pub const CIPHER_R_INVALID_NONCE_SIZE: i32 = 111;
801pub const CIPHER_R_INVALID_OPERATION: i32 = 112;
802pub const CIPHER_R_IV_TOO_LARGE: i32 = 113;
803pub const CIPHER_R_NO_CIPHER_SET: i32 = 114;
804pub const CIPHER_R_OUTPUT_ALIASES_INPUT: i32 = 115;
805pub const CIPHER_R_TAG_TOO_LARGE: i32 = 116;
806pub const CIPHER_R_TOO_LARGE: i32 = 117;
807pub const CIPHER_R_UNSUPPORTED_AD_SIZE: i32 = 118;
808pub const CIPHER_R_UNSUPPORTED_INPUT_SIZE: i32 = 119;
809pub const CIPHER_R_UNSUPPORTED_KEY_SIZE: i32 = 120;
810pub const CIPHER_R_UNSUPPORTED_NONCE_SIZE: i32 = 121;
811pub const CIPHER_R_UNSUPPORTED_TAG_SIZE: i32 = 122;
812pub const CIPHER_R_WRONG_FINAL_BLOCK_LENGTH: i32 = 123;
813pub const CIPHER_R_NO_DIRECTION_SET: i32 = 124;
814pub const CIPHER_R_INVALID_NONCE: i32 = 125;
815pub const CIPHER_R_XTS_DUPLICATED_KEYS: i32 = 138;
816pub const CIPHER_R_XTS_DATA_UNIT_IS_TOO_LARGE: i32 = 139;
817pub const CIPHER_R_CTRL_OPERATION_NOT_PERFORMED: i32 = 140;
818pub const CIPHER_R_SERIALIZATION_INVALID_EVP_AEAD_CTX: i32 = 141;
819pub const CIPHER_R_ALIGNMENT_CHANGED: i32 = 142;
820pub const CIPHER_R_SERIALIZATION_INVALID_SERDE_VERSION: i32 = 143;
821pub const CIPHER_R_SERIALIZATION_INVALID_CIPHER_ID: i32 = 144;
822pub const CONF_MFLAGS_DEFAULT_SECTION: i32 = 0;
823pub const CONF_MFLAGS_IGNORE_MISSING_FILE: i32 = 0;
824pub const CONF_R_LIST_CANNOT_BE_NULL: i32 = 100;
825pub const CONF_R_MISSING_CLOSE_SQUARE_BRACKET: i32 = 101;
826pub const CONF_R_MISSING_EQUAL_SIGN: i32 = 102;
827pub const CONF_R_NO_CLOSE_BRACE: i32 = 103;
828pub const CONF_R_UNABLE_TO_CREATE_NEW_SECTION: i32 = 104;
829pub const CONF_R_VARIABLE_HAS_NO_VALUE: i32 = 105;
830pub const CONF_R_VARIABLE_EXPANSION_TOO_LONG: i32 = 106;
831pub const CONF_R_VARIABLE_EXPANSION_NOT_SUPPORTED: i32 = 107;
832pub const CTR_DRBG_ENTROPY_LEN: i32 = 48;
833pub const CTR_DRBG_MAX_GENERATE_LENGTH: i32 = 65536;
834pub const X25519_PRIVATE_KEY_LEN: i32 = 32;
835pub const X25519_PUBLIC_VALUE_LEN: i32 = 32;
836pub const X25519_SHARED_KEY_LEN: i32 = 32;
837pub const ED25519_PRIVATE_KEY_LEN: i32 = 64;
838pub const ED25519_PRIVATE_KEY_SEED_LEN: i32 = 32;
839pub const ED25519_PUBLIC_KEY_LEN: i32 = 32;
840pub const ED25519_SIGNATURE_LEN: i32 = 64;
841pub const ED25519_SEED_LEN: i32 = 32;
842pub const SPAKE2_MAX_MSG_SIZE: i32 = 32;
843pub const SPAKE2_MAX_KEY_SIZE: i32 = 64;
844pub const DES_ENCRYPT: i32 = 1;
845pub const DES_DECRYPT: i32 = 0;
846pub const DES_CBC_MODE: i32 = 0;
847pub const DES_PCBC_MODE: i32 = 1;
848pub const DH_GENERATOR_2: i32 = 2;
849pub const DH_GENERATOR_5: i32 = 5;
850pub const DH_CHECK_P_NOT_PRIME: i32 = 1;
851pub const DH_CHECK_P_NOT_SAFE_PRIME: i32 = 2;
852pub const DH_CHECK_UNABLE_TO_CHECK_GENERATOR: i32 = 4;
853pub const DH_CHECK_NOT_SUITABLE_GENERATOR: i32 = 8;
854pub const DH_CHECK_Q_NOT_PRIME: i32 = 16;
855pub const DH_CHECK_INVALID_Q_VALUE: i32 = 32;
856pub const DH_NOT_SUITABLE_GENERATOR: i32 = 8;
857pub const DH_UNABLE_TO_CHECK_GENERATOR: i32 = 4;
858pub const DH_CHECK_PUBKEY_TOO_SMALL: i32 = 1;
859pub const DH_CHECK_PUBKEY_TOO_LARGE: i32 = 2;
860pub const DH_CHECK_PUBKEY_INVALID: i32 = 4;
861pub const DH_FLAG_CACHE_MONT_P: i32 = 0;
862pub const DH_R_BAD_GENERATOR: i32 = 100;
863pub const DH_R_INVALID_PUBKEY: i32 = 101;
864pub const DH_R_MODULUS_TOO_LARGE: i32 = 102;
865pub const DH_R_NO_PRIVATE_VALUE: i32 = 103;
866pub const DH_R_DECODE_ERROR: i32 = 104;
867pub const DH_R_ENCODE_ERROR: i32 = 105;
868pub const DH_R_INVALID_NID: i32 = 106;
869pub const DH_R_INVALID_PARAMETERS: i32 = 107;
870pub const DH_F_DH_BUILTIN_GENPARAMS: i32 = 0;
871pub const EVP_MAX_MD_SIZE: i32 = 64;
872pub const EVP_MAX_MD_CHAINING_LENGTH: i32 = 64;
873pub const EVP_MAX_MD_BLOCK_SIZE: i32 = 128;
874pub const EVP_MD_FLAG_DIGALGID_ABSENT: i32 = 2;
875pub const EVP_MD_FLAG_XOF: i32 = 4;
876pub const EVP_MD_CTX_FLAG_NON_FIPS_ALLOW: i32 = 0;
877pub const DIGEST_R_INPUT_NOT_INITIALIZED: i32 = 100;
878pub const DIGEST_R_DECODE_ERROR: i32 = 101;
879pub const DIGEST_R_UNKNOWN_HASH: i32 = 102;
880pub const DSA_R_BAD_Q_VALUE: i32 = 100;
881pub const DSA_R_MISSING_PARAMETERS: i32 = 101;
882pub const DSA_R_MODULUS_TOO_LARGE: i32 = 102;
883pub const DSA_R_NEED_NEW_SETUP_VALUES: i32 = 103;
884pub const DSA_R_BAD_VERSION: i32 = 104;
885pub const DSA_R_DECODE_ERROR: i32 = 105;
886pub const DSA_R_ENCODE_ERROR: i32 = 106;
887pub const DSA_R_INVALID_PARAMETERS: i32 = 107;
888pub const DSA_R_TOO_MANY_ITERATIONS: i32 = 108;
889pub const OPENSSL_EC_EXPLICIT_CURVE: i32 = 0;
890pub const OPENSSL_EC_NAMED_CURVE: i32 = 1;
891pub const ENGINE_R_OPERATION_NOT_SUPPORTED: i32 = 100;
892pub const EC_PKEY_NO_PARAMETERS: i32 = 1;
893pub const EC_PKEY_NO_PUBKEY: i32 = 2;
894pub const ECDSA_FLAG_OPAQUE: i32 = 1;
895pub const EC_R_BUFFER_TOO_SMALL: i32 = 100;
896pub const EC_R_COORDINATES_OUT_OF_RANGE: i32 = 101;
897pub const EC_R_D2I_ECPKPARAMETERS_FAILURE: i32 = 102;
898pub const EC_R_EC_GROUP_NEW_BY_NAME_FAILURE: i32 = 103;
899pub const EC_R_GROUP2PKPARAMETERS_FAILURE: i32 = 104;
900pub const EC_R_I2D_ECPKPARAMETERS_FAILURE: i32 = 105;
901pub const EC_R_INCOMPATIBLE_OBJECTS: i32 = 106;
902pub const EC_R_INVALID_COMPRESSED_POINT: i32 = 107;
903pub const EC_R_INVALID_COMPRESSION_BIT: i32 = 108;
904pub const EC_R_INVALID_ENCODING: i32 = 109;
905pub const EC_R_INVALID_FIELD: i32 = 110;
906pub const EC_R_INVALID_FORM: i32 = 111;
907pub const EC_R_INVALID_GROUP_ORDER: i32 = 112;
908pub const EC_R_INVALID_PRIVATE_KEY: i32 = 113;
909pub const EC_R_MISSING_PARAMETERS: i32 = 114;
910pub const EC_R_MISSING_PRIVATE_KEY: i32 = 115;
911pub const EC_R_NON_NAMED_CURVE: i32 = 116;
912pub const EC_R_NOT_INITIALIZED: i32 = 117;
913pub const EC_R_PKPARAMETERS2GROUP_FAILURE: i32 = 118;
914pub const EC_R_POINT_AT_INFINITY: i32 = 119;
915pub const EC_R_POINT_IS_NOT_ON_CURVE: i32 = 120;
916pub const EC_R_SLOT_FULL: i32 = 121;
917pub const EC_R_UNDEFINED_GENERATOR: i32 = 122;
918pub const EC_R_UNKNOWN_GROUP: i32 = 123;
919pub const EC_R_UNKNOWN_ORDER: i32 = 124;
920pub const EC_R_WRONG_ORDER: i32 = 125;
921pub const EC_R_BIGNUM_OUT_OF_RANGE: i32 = 126;
922pub const EC_R_WRONG_CURVE_PARAMETERS: i32 = 127;
923pub const EC_R_DECODE_ERROR: i32 = 128;
924pub const EC_R_ENCODE_ERROR: i32 = 129;
925pub const EC_R_GROUP_MISMATCH: i32 = 130;
926pub const EC_R_INVALID_COFACTOR: i32 = 131;
927pub const EC_R_PUBLIC_KEY_VALIDATION_FAILED: i32 = 132;
928pub const EC_R_INVALID_SCALAR: i32 = 133;
929pub const ECDH_R_KDF_FAILED: i32 = 100;
930pub const ECDH_R_NO_PRIVATE_VALUE: i32 = 101;
931pub const ECDH_R_POINT_ARITHMETIC_FAILURE: i32 = 102;
932pub const ECDH_R_UNKNOWN_DIGEST_LENGTH: i32 = 103;
933pub const ECDSA_R_BAD_SIGNATURE: i32 = 100;
934pub const ECDSA_R_MISSING_PARAMETERS: i32 = 101;
935pub const ECDSA_R_NEED_NEW_SETUP_VALUES: i32 = 102;
936pub const ECDSA_R_NOT_IMPLEMENTED: i32 = 103;
937pub const ECDSA_R_RANDOM_NUMBER_GENERATION_FAILED: i32 = 104;
938pub const ECDSA_R_ENCODE_ERROR: i32 = 105;
939pub const ECDSA_R_MISMATCHED_SIGNATURE: i32 = 205;
940pub const ECDSA_R_TOO_MANY_ITERATIONS: i32 = 106;
941pub const EVP_R_BUFFER_TOO_SMALL: i32 = 100;
942pub const EVP_R_COMMAND_NOT_SUPPORTED: i32 = 101;
943pub const EVP_R_DECODE_ERROR: i32 = 102;
944pub const EVP_R_DIFFERENT_KEY_TYPES: i32 = 103;
945pub const EVP_R_DIFFERENT_PARAMETERS: i32 = 104;
946pub const EVP_R_ENCODE_ERROR: i32 = 105;
947pub const EVP_R_EXPECTING_AN_EC_KEY_KEY: i32 = 106;
948pub const EVP_R_EXPECTING_AN_RSA_KEY: i32 = 107;
949pub const EVP_R_EXPECTING_A_DSA_KEY: i32 = 108;
950pub const EVP_R_ILLEGAL_OR_UNSUPPORTED_PADDING_MODE: i32 = 109;
951pub const EVP_R_INVALID_DIGEST_LENGTH: i32 = 110;
952pub const EVP_R_INVALID_DIGEST_TYPE: i32 = 111;
953pub const EVP_R_INVALID_KEYBITS: i32 = 112;
954pub const EVP_R_INVALID_MGF1_MD: i32 = 113;
955pub const EVP_R_INVALID_OPERATION: i32 = 114;
956pub const EVP_R_INVALID_PADDING_MODE: i32 = 115;
957pub const EVP_R_INVALID_PSS_SALTLEN: i32 = 116;
958pub const EVP_R_KEYS_NOT_SET: i32 = 117;
959pub const EVP_R_MISSING_PARAMETERS: i32 = 118;
960pub const EVP_R_NO_DEFAULT_DIGEST: i32 = 119;
961pub const EVP_R_NO_KEY_SET: i32 = 120;
962pub const EVP_R_NO_MDC2_SUPPORT: i32 = 121;
963pub const EVP_R_NO_NID_FOR_CURVE: i32 = 122;
964pub const EVP_R_NO_OPERATION_SET: i32 = 123;
965pub const EVP_R_NO_PARAMETERS_SET: i32 = 124;
966pub const EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE: i32 = 125;
967pub const EVP_R_OPERATON_NOT_INITIALIZED: i32 = 126;
968pub const EVP_R_UNKNOWN_PUBLIC_KEY_TYPE: i32 = 127;
969pub const EVP_R_UNSUPPORTED_ALGORITHM: i32 = 128;
970pub const EVP_R_UNSUPPORTED_PUBLIC_KEY_TYPE: i32 = 129;
971pub const EVP_R_NOT_A_PRIVATE_KEY: i32 = 130;
972pub const EVP_R_INVALID_SIGNATURE: i32 = 131;
973pub const EVP_R_MEMORY_LIMIT_EXCEEDED: i32 = 132;
974pub const EVP_R_INVALID_PARAMETERS: i32 = 133;
975pub const EVP_R_INVALID_PEER_KEY: i32 = 134;
976pub const EVP_R_NOT_XOF_OR_INVALID_LENGTH: i32 = 135;
977pub const EVP_R_EMPTY_PSK: i32 = 136;
978pub const EVP_R_INVALID_BUFFER_SIZE: i32 = 137;
979pub const EVP_R_BAD_DECRYPT: i32 = 138;
980pub const EVP_R_EXPECTING_A_DH_KEY: i32 = 139;
981pub const EVP_R_INVALID_PSS_MD: i32 = 500;
982pub const EVP_R_INVALID_PSS_SALT_LEN: i32 = 501;
983pub const EVP_R_INVALID_PSS_TRAILER_FIELD: i32 = 502;
984pub const EVP_AEAD_MAX_KEY_LENGTH: i32 = 80;
985pub const EVP_AEAD_MAX_NONCE_LENGTH: i32 = 24;
986pub const EVP_AEAD_MAX_OVERHEAD: i32 = 64;
987pub const EVP_AEAD_DEFAULT_TAG_LENGTH: i32 = 0;
988pub const FIPS_AES_GCM_NONCE_LENGTH: i32 = 12;
989pub const SN_undef: &[u8; 6] = b"UNDEF\0";
990pub const LN_undef: &[u8; 10] = b"undefined\0";
991pub const NID_undef: i32 = 0;
992pub const OBJ_undef: i32 = 0;
993pub const SN_rsadsi: &[u8; 7] = b"rsadsi\0";
994pub const LN_rsadsi: &[u8; 24] = b"RSA Data Security, Inc.\0";
995pub const NID_rsadsi: i32 = 1;
996pub const SN_pkcs: &[u8; 5] = b"pkcs\0";
997pub const LN_pkcs: &[u8; 29] = b"RSA Data Security, Inc. PKCS\0";
998pub const NID_pkcs: i32 = 2;
999pub const SN_md2: &[u8; 4] = b"MD2\0";
1000pub const LN_md2: &[u8; 4] = b"md2\0";
1001pub const NID_md2: i32 = 3;
1002pub const SN_md5: &[u8; 4] = b"MD5\0";
1003pub const LN_md5: &[u8; 4] = b"md5\0";
1004pub const NID_md5: i32 = 4;
1005pub const SN_rc4: &[u8; 4] = b"RC4\0";
1006pub const LN_rc4: &[u8; 4] = b"rc4\0";
1007pub const NID_rc4: i32 = 5;
1008pub const LN_rsaEncryption: &[u8; 14] = b"rsaEncryption\0";
1009pub const NID_rsaEncryption: i32 = 6;
1010pub const SN_md2WithRSAEncryption: &[u8; 8] = b"RSA-MD2\0";
1011pub const LN_md2WithRSAEncryption: &[u8; 21] = b"md2WithRSAEncryption\0";
1012pub const NID_md2WithRSAEncryption: i32 = 7;
1013pub const SN_md5WithRSAEncryption: &[u8; 8] = b"RSA-MD5\0";
1014pub const LN_md5WithRSAEncryption: &[u8; 21] = b"md5WithRSAEncryption\0";
1015pub const NID_md5WithRSAEncryption: i32 = 8;
1016pub const SN_pbeWithMD2AndDES_CBC: &[u8; 12] = b"PBE-MD2-DES\0";
1017pub const LN_pbeWithMD2AndDES_CBC: &[u8; 21] = b"pbeWithMD2AndDES-CBC\0";
1018pub const NID_pbeWithMD2AndDES_CBC: i32 = 9;
1019pub const SN_pbeWithMD5AndDES_CBC: &[u8; 12] = b"PBE-MD5-DES\0";
1020pub const LN_pbeWithMD5AndDES_CBC: &[u8; 21] = b"pbeWithMD5AndDES-CBC\0";
1021pub const NID_pbeWithMD5AndDES_CBC: i32 = 10;
1022pub const SN_X500: &[u8; 5] = b"X500\0";
1023pub const LN_X500: &[u8; 27] = b"directory services (X.500)\0";
1024pub const NID_X500: i32 = 11;
1025pub const SN_X509: &[u8; 5] = b"X509\0";
1026pub const NID_X509: i32 = 12;
1027pub const SN_commonName: &[u8; 3] = b"CN\0";
1028pub const LN_commonName: &[u8; 11] = b"commonName\0";
1029pub const NID_commonName: i32 = 13;
1030pub const SN_countryName: &[u8; 2] = b"C\0";
1031pub const LN_countryName: &[u8; 12] = b"countryName\0";
1032pub const NID_countryName: i32 = 14;
1033pub const SN_localityName: &[u8; 2] = b"L\0";
1034pub const LN_localityName: &[u8; 13] = b"localityName\0";
1035pub const NID_localityName: i32 = 15;
1036pub const SN_stateOrProvinceName: &[u8; 3] = b"ST\0";
1037pub const LN_stateOrProvinceName: &[u8; 20] = b"stateOrProvinceName\0";
1038pub const NID_stateOrProvinceName: i32 = 16;
1039pub const SN_organizationName: &[u8; 2] = b"O\0";
1040pub const LN_organizationName: &[u8; 17] = b"organizationName\0";
1041pub const NID_organizationName: i32 = 17;
1042pub const SN_organizationalUnitName: &[u8; 3] = b"OU\0";
1043pub const LN_organizationalUnitName: &[u8; 23] = b"organizationalUnitName\0";
1044pub const NID_organizationalUnitName: i32 = 18;
1045pub const SN_rsa: &[u8; 4] = b"RSA\0";
1046pub const LN_rsa: &[u8; 4] = b"rsa\0";
1047pub const NID_rsa: i32 = 19;
1048pub const SN_pkcs7: &[u8; 6] = b"pkcs7\0";
1049pub const NID_pkcs7: i32 = 20;
1050pub const LN_pkcs7_data: &[u8; 11] = b"pkcs7-data\0";
1051pub const NID_pkcs7_data: i32 = 21;
1052pub const LN_pkcs7_signed: &[u8; 17] = b"pkcs7-signedData\0";
1053pub const NID_pkcs7_signed: i32 = 22;
1054pub const LN_pkcs7_enveloped: &[u8; 20] = b"pkcs7-envelopedData\0";
1055pub const NID_pkcs7_enveloped: i32 = 23;
1056pub const LN_pkcs7_signedAndEnveloped: &[u8; 29] = b"pkcs7-signedAndEnvelopedData\0";
1057pub const NID_pkcs7_signedAndEnveloped: i32 = 24;
1058pub const LN_pkcs7_digest: &[u8; 17] = b"pkcs7-digestData\0";
1059pub const NID_pkcs7_digest: i32 = 25;
1060pub const LN_pkcs7_encrypted: &[u8; 20] = b"pkcs7-encryptedData\0";
1061pub const NID_pkcs7_encrypted: i32 = 26;
1062pub const SN_pkcs3: &[u8; 6] = b"pkcs3\0";
1063pub const NID_pkcs3: i32 = 27;
1064pub const LN_dhKeyAgreement: &[u8; 15] = b"dhKeyAgreement\0";
1065pub const NID_dhKeyAgreement: i32 = 28;
1066pub const SN_des_ecb: &[u8; 8] = b"DES-ECB\0";
1067pub const LN_des_ecb: &[u8; 8] = b"des-ecb\0";
1068pub const NID_des_ecb: i32 = 29;
1069pub const SN_des_cfb64: &[u8; 8] = b"DES-CFB\0";
1070pub const LN_des_cfb64: &[u8; 8] = b"des-cfb\0";
1071pub const NID_des_cfb64: i32 = 30;
1072pub const SN_des_cbc: &[u8; 8] = b"DES-CBC\0";
1073pub const LN_des_cbc: &[u8; 8] = b"des-cbc\0";
1074pub const NID_des_cbc: i32 = 31;
1075pub const SN_des_ede_ecb: &[u8; 8] = b"DES-EDE\0";
1076pub const LN_des_ede_ecb: &[u8; 8] = b"des-ede\0";
1077pub const NID_des_ede_ecb: i32 = 32;
1078pub const SN_des_ede3_ecb: &[u8; 9] = b"DES-EDE3\0";
1079pub const LN_des_ede3_ecb: &[u8; 9] = b"des-ede3\0";
1080pub const NID_des_ede3_ecb: i32 = 33;
1081pub const SN_idea_cbc: &[u8; 9] = b"IDEA-CBC\0";
1082pub const LN_idea_cbc: &[u8; 9] = b"idea-cbc\0";
1083pub const NID_idea_cbc: i32 = 34;
1084pub const SN_idea_cfb64: &[u8; 9] = b"IDEA-CFB\0";
1085pub const LN_idea_cfb64: &[u8; 9] = b"idea-cfb\0";
1086pub const NID_idea_cfb64: i32 = 35;
1087pub const SN_idea_ecb: &[u8; 9] = b"IDEA-ECB\0";
1088pub const LN_idea_ecb: &[u8; 9] = b"idea-ecb\0";
1089pub const NID_idea_ecb: i32 = 36;
1090pub const SN_rc2_cbc: &[u8; 8] = b"RC2-CBC\0";
1091pub const LN_rc2_cbc: &[u8; 8] = b"rc2-cbc\0";
1092pub const NID_rc2_cbc: i32 = 37;
1093pub const SN_rc2_ecb: &[u8; 8] = b"RC2-ECB\0";
1094pub const LN_rc2_ecb: &[u8; 8] = b"rc2-ecb\0";
1095pub const NID_rc2_ecb: i32 = 38;
1096pub const SN_rc2_cfb64: &[u8; 8] = b"RC2-CFB\0";
1097pub const LN_rc2_cfb64: &[u8; 8] = b"rc2-cfb\0";
1098pub const NID_rc2_cfb64: i32 = 39;
1099pub const SN_rc2_ofb64: &[u8; 8] = b"RC2-OFB\0";
1100pub const LN_rc2_ofb64: &[u8; 8] = b"rc2-ofb\0";
1101pub const NID_rc2_ofb64: i32 = 40;
1102pub const SN_sha: &[u8; 4] = b"SHA\0";
1103pub const LN_sha: &[u8; 4] = b"sha\0";
1104pub const NID_sha: i32 = 41;
1105pub const SN_shaWithRSAEncryption: &[u8; 8] = b"RSA-SHA\0";
1106pub const LN_shaWithRSAEncryption: &[u8; 21] = b"shaWithRSAEncryption\0";
1107pub const NID_shaWithRSAEncryption: i32 = 42;
1108pub const SN_des_ede_cbc: &[u8; 12] = b"DES-EDE-CBC\0";
1109pub const LN_des_ede_cbc: &[u8; 12] = b"des-ede-cbc\0";
1110pub const NID_des_ede_cbc: i32 = 43;
1111pub const SN_des_ede3_cbc: &[u8; 13] = b"DES-EDE3-CBC\0";
1112pub const LN_des_ede3_cbc: &[u8; 13] = b"des-ede3-cbc\0";
1113pub const NID_des_ede3_cbc: i32 = 44;
1114pub const SN_des_ofb64: &[u8; 8] = b"DES-OFB\0";
1115pub const LN_des_ofb64: &[u8; 8] = b"des-ofb\0";
1116pub const NID_des_ofb64: i32 = 45;
1117pub const SN_idea_ofb64: &[u8; 9] = b"IDEA-OFB\0";
1118pub const LN_idea_ofb64: &[u8; 9] = b"idea-ofb\0";
1119pub const NID_idea_ofb64: i32 = 46;
1120pub const SN_pkcs9: &[u8; 6] = b"pkcs9\0";
1121pub const NID_pkcs9: i32 = 47;
1122pub const LN_pkcs9_emailAddress: &[u8; 13] = b"emailAddress\0";
1123pub const NID_pkcs9_emailAddress: i32 = 48;
1124pub const LN_pkcs9_unstructuredName: &[u8; 17] = b"unstructuredName\0";
1125pub const NID_pkcs9_unstructuredName: i32 = 49;
1126pub const LN_pkcs9_contentType: &[u8; 12] = b"contentType\0";
1127pub const NID_pkcs9_contentType: i32 = 50;
1128pub const LN_pkcs9_messageDigest: &[u8; 14] = b"messageDigest\0";
1129pub const NID_pkcs9_messageDigest: i32 = 51;
1130pub const LN_pkcs9_signingTime: &[u8; 12] = b"signingTime\0";
1131pub const NID_pkcs9_signingTime: i32 = 52;
1132pub const LN_pkcs9_countersignature: &[u8; 17] = b"countersignature\0";
1133pub const NID_pkcs9_countersignature: i32 = 53;
1134pub const LN_pkcs9_challengePassword: &[u8; 18] = b"challengePassword\0";
1135pub const NID_pkcs9_challengePassword: i32 = 54;
1136pub const LN_pkcs9_unstructuredAddress: &[u8; 20] = b"unstructuredAddress\0";
1137pub const NID_pkcs9_unstructuredAddress: i32 = 55;
1138pub const LN_pkcs9_extCertAttributes: &[u8; 30] = b"extendedCertificateAttributes\0";
1139pub const NID_pkcs9_extCertAttributes: i32 = 56;
1140pub const SN_netscape: &[u8; 9] = b"Netscape\0";
1141pub const LN_netscape: &[u8; 30] = b"Netscape Communications Corp.\0";
1142pub const NID_netscape: i32 = 57;
1143pub const SN_netscape_cert_extension: &[u8; 10] = b"nsCertExt\0";
1144pub const LN_netscape_cert_extension: &[u8; 31] = b"Netscape Certificate Extension\0";
1145pub const NID_netscape_cert_extension: i32 = 58;
1146pub const SN_netscape_data_type: &[u8; 11] = b"nsDataType\0";
1147pub const LN_netscape_data_type: &[u8; 19] = b"Netscape Data Type\0";
1148pub const NID_netscape_data_type: i32 = 59;
1149pub const SN_des_ede_cfb64: &[u8; 12] = b"DES-EDE-CFB\0";
1150pub const LN_des_ede_cfb64: &[u8; 12] = b"des-ede-cfb\0";
1151pub const NID_des_ede_cfb64: i32 = 60;
1152pub const SN_des_ede3_cfb64: &[u8; 13] = b"DES-EDE3-CFB\0";
1153pub const LN_des_ede3_cfb64: &[u8; 13] = b"des-ede3-cfb\0";
1154pub const NID_des_ede3_cfb64: i32 = 61;
1155pub const SN_des_ede_ofb64: &[u8; 12] = b"DES-EDE-OFB\0";
1156pub const LN_des_ede_ofb64: &[u8; 12] = b"des-ede-ofb\0";
1157pub const NID_des_ede_ofb64: i32 = 62;
1158pub const SN_des_ede3_ofb64: &[u8; 13] = b"DES-EDE3-OFB\0";
1159pub const LN_des_ede3_ofb64: &[u8; 13] = b"des-ede3-ofb\0";
1160pub const NID_des_ede3_ofb64: i32 = 63;
1161pub const SN_sha1: &[u8; 5] = b"SHA1\0";
1162pub const LN_sha1: &[u8; 5] = b"sha1\0";
1163pub const NID_sha1: i32 = 64;
1164pub const SN_sha1WithRSAEncryption: &[u8; 9] = b"RSA-SHA1\0";
1165pub const LN_sha1WithRSAEncryption: &[u8; 22] = b"sha1WithRSAEncryption\0";
1166pub const NID_sha1WithRSAEncryption: i32 = 65;
1167pub const SN_dsaWithSHA: &[u8; 8] = b"DSA-SHA\0";
1168pub const LN_dsaWithSHA: &[u8; 11] = b"dsaWithSHA\0";
1169pub const NID_dsaWithSHA: i32 = 66;
1170pub const SN_dsa_2: &[u8; 8] = b"DSA-old\0";
1171pub const LN_dsa_2: &[u8; 18] = b"dsaEncryption-old\0";
1172pub const NID_dsa_2: i32 = 67;
1173pub const SN_pbeWithSHA1AndRC2_CBC: &[u8; 16] = b"PBE-SHA1-RC2-64\0";
1174pub const LN_pbeWithSHA1AndRC2_CBC: &[u8; 22] = b"pbeWithSHA1AndRC2-CBC\0";
1175pub const NID_pbeWithSHA1AndRC2_CBC: i32 = 68;
1176pub const LN_id_pbkdf2: &[u8; 7] = b"PBKDF2\0";
1177pub const NID_id_pbkdf2: i32 = 69;
1178pub const SN_dsaWithSHA1_2: &[u8; 13] = b"DSA-SHA1-old\0";
1179pub const LN_dsaWithSHA1_2: &[u8; 16] = b"dsaWithSHA1-old\0";
1180pub const NID_dsaWithSHA1_2: i32 = 70;
1181pub const SN_netscape_cert_type: &[u8; 11] = b"nsCertType\0";
1182pub const LN_netscape_cert_type: &[u8; 19] = b"Netscape Cert Type\0";
1183pub const NID_netscape_cert_type: i32 = 71;
1184pub const SN_netscape_base_url: &[u8; 10] = b"nsBaseUrl\0";
1185pub const LN_netscape_base_url: &[u8; 18] = b"Netscape Base Url\0";
1186pub const NID_netscape_base_url: i32 = 72;
1187pub const SN_netscape_revocation_url: &[u8; 16] = b"nsRevocationUrl\0";
1188pub const LN_netscape_revocation_url: &[u8; 24] = b"Netscape Revocation Url\0";
1189pub const NID_netscape_revocation_url: i32 = 73;
1190pub const SN_netscape_ca_revocation_url: &[u8; 18] = b"nsCaRevocationUrl\0";
1191pub const LN_netscape_ca_revocation_url: &[u8; 27] = b"Netscape CA Revocation Url\0";
1192pub const NID_netscape_ca_revocation_url: i32 = 74;
1193pub const SN_netscape_renewal_url: &[u8; 13] = b"nsRenewalUrl\0";
1194pub const LN_netscape_renewal_url: &[u8; 21] = b"Netscape Renewal Url\0";
1195pub const NID_netscape_renewal_url: i32 = 75;
1196pub const SN_netscape_ca_policy_url: &[u8; 14] = b"nsCaPolicyUrl\0";
1197pub const LN_netscape_ca_policy_url: &[u8; 23] = b"Netscape CA Policy Url\0";
1198pub const NID_netscape_ca_policy_url: i32 = 76;
1199pub const SN_netscape_ssl_server_name: &[u8; 16] = b"nsSslServerName\0";
1200pub const LN_netscape_ssl_server_name: &[u8; 25] = b"Netscape SSL Server Name\0";
1201pub const NID_netscape_ssl_server_name: i32 = 77;
1202pub const SN_netscape_comment: &[u8; 10] = b"nsComment\0";
1203pub const LN_netscape_comment: &[u8; 17] = b"Netscape Comment\0";
1204pub const NID_netscape_comment: i32 = 78;
1205pub const SN_netscape_cert_sequence: &[u8; 15] = b"nsCertSequence\0";
1206pub const LN_netscape_cert_sequence: &[u8; 30] = b"Netscape Certificate Sequence\0";
1207pub const NID_netscape_cert_sequence: i32 = 79;
1208pub const SN_desx_cbc: &[u8; 9] = b"DESX-CBC\0";
1209pub const LN_desx_cbc: &[u8; 9] = b"desx-cbc\0";
1210pub const NID_desx_cbc: i32 = 80;
1211pub const SN_id_ce: &[u8; 6] = b"id-ce\0";
1212pub const NID_id_ce: i32 = 81;
1213pub const SN_subject_key_identifier: &[u8; 21] = b"subjectKeyIdentifier\0";
1214pub const LN_subject_key_identifier: &[u8; 30] = b"X509v3 Subject Key Identifier\0";
1215pub const NID_subject_key_identifier: i32 = 82;
1216pub const SN_key_usage: &[u8; 9] = b"keyUsage\0";
1217pub const LN_key_usage: &[u8; 17] = b"X509v3 Key Usage\0";
1218pub const NID_key_usage: i32 = 83;
1219pub const SN_private_key_usage_period: &[u8; 22] = b"privateKeyUsagePeriod\0";
1220pub const LN_private_key_usage_period: &[u8; 32] = b"X509v3 Private Key Usage Period\0";
1221pub const NID_private_key_usage_period: i32 = 84;
1222pub const SN_subject_alt_name: &[u8; 15] = b"subjectAltName\0";
1223pub const LN_subject_alt_name: &[u8; 32] = b"X509v3 Subject Alternative Name\0";
1224pub const NID_subject_alt_name: i32 = 85;
1225pub const SN_issuer_alt_name: &[u8; 14] = b"issuerAltName\0";
1226pub const LN_issuer_alt_name: &[u8; 31] = b"X509v3 Issuer Alternative Name\0";
1227pub const NID_issuer_alt_name: i32 = 86;
1228pub const SN_basic_constraints: &[u8; 17] = b"basicConstraints\0";
1229pub const LN_basic_constraints: &[u8; 25] = b"X509v3 Basic Constraints\0";
1230pub const NID_basic_constraints: i32 = 87;
1231pub const SN_crl_number: &[u8; 10] = b"crlNumber\0";
1232pub const LN_crl_number: &[u8; 18] = b"X509v3 CRL Number\0";
1233pub const NID_crl_number: i32 = 88;
1234pub const SN_certificate_policies: &[u8; 20] = b"certificatePolicies\0";
1235pub const LN_certificate_policies: &[u8; 28] = b"X509v3 Certificate Policies\0";
1236pub const NID_certificate_policies: i32 = 89;
1237pub const SN_authority_key_identifier: &[u8; 23] = b"authorityKeyIdentifier\0";
1238pub const LN_authority_key_identifier: &[u8; 32] = b"X509v3 Authority Key Identifier\0";
1239pub const NID_authority_key_identifier: i32 = 90;
1240pub const SN_bf_cbc: &[u8; 7] = b"BF-CBC\0";
1241pub const LN_bf_cbc: &[u8; 7] = b"bf-cbc\0";
1242pub const NID_bf_cbc: i32 = 91;
1243pub const SN_bf_ecb: &[u8; 7] = b"BF-ECB\0";
1244pub const LN_bf_ecb: &[u8; 7] = b"bf-ecb\0";
1245pub const NID_bf_ecb: i32 = 92;
1246pub const SN_bf_cfb64: &[u8; 7] = b"BF-CFB\0";
1247pub const LN_bf_cfb64: &[u8; 7] = b"bf-cfb\0";
1248pub const NID_bf_cfb64: i32 = 93;
1249pub const SN_bf_ofb64: &[u8; 7] = b"BF-OFB\0";
1250pub const LN_bf_ofb64: &[u8; 7] = b"bf-ofb\0";
1251pub const NID_bf_ofb64: i32 = 94;
1252pub const SN_mdc2: &[u8; 5] = b"MDC2\0";
1253pub const LN_mdc2: &[u8; 5] = b"mdc2\0";
1254pub const NID_mdc2: i32 = 95;
1255pub const SN_mdc2WithRSA: &[u8; 9] = b"RSA-MDC2\0";
1256pub const LN_mdc2WithRSA: &[u8; 12] = b"mdc2WithRSA\0";
1257pub const NID_mdc2WithRSA: i32 = 96;
1258pub const SN_rc4_40: &[u8; 7] = b"RC4-40\0";
1259pub const LN_rc4_40: &[u8; 7] = b"rc4-40\0";
1260pub const NID_rc4_40: i32 = 97;
1261pub const SN_rc2_40_cbc: &[u8; 11] = b"RC2-40-CBC\0";
1262pub const LN_rc2_40_cbc: &[u8; 11] = b"rc2-40-cbc\0";
1263pub const NID_rc2_40_cbc: i32 = 98;
1264pub const SN_givenName: &[u8; 3] = b"GN\0";
1265pub const LN_givenName: &[u8; 10] = b"givenName\0";
1266pub const NID_givenName: i32 = 99;
1267pub const SN_surname: &[u8; 3] = b"SN\0";
1268pub const LN_surname: &[u8; 8] = b"surname\0";
1269pub const NID_surname: i32 = 100;
1270pub const SN_initials: &[u8; 9] = b"initials\0";
1271pub const LN_initials: &[u8; 9] = b"initials\0";
1272pub const NID_initials: i32 = 101;
1273pub const SN_crl_distribution_points: &[u8; 22] = b"crlDistributionPoints\0";
1274pub const LN_crl_distribution_points: &[u8; 31] = b"X509v3 CRL Distribution Points\0";
1275pub const NID_crl_distribution_points: i32 = 103;
1276pub const SN_md5WithRSA: &[u8; 11] = b"RSA-NP-MD5\0";
1277pub const LN_md5WithRSA: &[u8; 11] = b"md5WithRSA\0";
1278pub const NID_md5WithRSA: i32 = 104;
1279pub const LN_serialNumber: &[u8; 13] = b"serialNumber\0";
1280pub const NID_serialNumber: i32 = 105;
1281pub const SN_title: &[u8; 6] = b"title\0";
1282pub const LN_title: &[u8; 6] = b"title\0";
1283pub const NID_title: i32 = 106;
1284pub const LN_description: &[u8; 12] = b"description\0";
1285pub const NID_description: i32 = 107;
1286pub const SN_cast5_cbc: &[u8; 10] = b"CAST5-CBC\0";
1287pub const LN_cast5_cbc: &[u8; 10] = b"cast5-cbc\0";
1288pub const NID_cast5_cbc: i32 = 108;
1289pub const SN_cast5_ecb: &[u8; 10] = b"CAST5-ECB\0";
1290pub const LN_cast5_ecb: &[u8; 10] = b"cast5-ecb\0";
1291pub const NID_cast5_ecb: i32 = 109;
1292pub const SN_cast5_cfb64: &[u8; 10] = b"CAST5-CFB\0";
1293pub const LN_cast5_cfb64: &[u8; 10] = b"cast5-cfb\0";
1294pub const NID_cast5_cfb64: i32 = 110;
1295pub const SN_cast5_ofb64: &[u8; 10] = b"CAST5-OFB\0";
1296pub const LN_cast5_ofb64: &[u8; 10] = b"cast5-ofb\0";
1297pub const NID_cast5_ofb64: i32 = 111;
1298pub const LN_pbeWithMD5AndCast5_CBC: &[u8; 22] = b"pbeWithMD5AndCast5CBC\0";
1299pub const NID_pbeWithMD5AndCast5_CBC: i32 = 112;
1300pub const SN_dsaWithSHA1: &[u8; 9] = b"DSA-SHA1\0";
1301pub const LN_dsaWithSHA1: &[u8; 12] = b"dsaWithSHA1\0";
1302pub const NID_dsaWithSHA1: i32 = 113;
1303pub const SN_md5_sha1: &[u8; 9] = b"MD5-SHA1\0";
1304pub const LN_md5_sha1: &[u8; 9] = b"md5-sha1\0";
1305pub const NID_md5_sha1: i32 = 114;
1306pub const SN_sha1WithRSA: &[u8; 11] = b"RSA-SHA1-2\0";
1307pub const LN_sha1WithRSA: &[u8; 12] = b"sha1WithRSA\0";
1308pub const NID_sha1WithRSA: i32 = 115;
1309pub const SN_dsa: &[u8; 4] = b"DSA\0";
1310pub const LN_dsa: &[u8; 14] = b"dsaEncryption\0";
1311pub const NID_dsa: i32 = 116;
1312pub const SN_ripemd160: &[u8; 10] = b"RIPEMD160\0";
1313pub const LN_ripemd160: &[u8; 10] = b"ripemd160\0";
1314pub const NID_ripemd160: i32 = 117;
1315pub const SN_ripemd160WithRSA: &[u8; 14] = b"RSA-RIPEMD160\0";
1316pub const LN_ripemd160WithRSA: &[u8; 17] = b"ripemd160WithRSA\0";
1317pub const NID_ripemd160WithRSA: i32 = 119;
1318pub const SN_rc5_cbc: &[u8; 8] = b"RC5-CBC\0";
1319pub const LN_rc5_cbc: &[u8; 8] = b"rc5-cbc\0";
1320pub const NID_rc5_cbc: i32 = 120;
1321pub const SN_rc5_ecb: &[u8; 8] = b"RC5-ECB\0";
1322pub const LN_rc5_ecb: &[u8; 8] = b"rc5-ecb\0";
1323pub const NID_rc5_ecb: i32 = 121;
1324pub const SN_rc5_cfb64: &[u8; 8] = b"RC5-CFB\0";
1325pub const LN_rc5_cfb64: &[u8; 8] = b"rc5-cfb\0";
1326pub const NID_rc5_cfb64: i32 = 122;
1327pub const SN_rc5_ofb64: &[u8; 8] = b"RC5-OFB\0";
1328pub const LN_rc5_ofb64: &[u8; 8] = b"rc5-ofb\0";
1329pub const NID_rc5_ofb64: i32 = 123;
1330pub const SN_zlib_compression: &[u8; 5] = b"ZLIB\0";
1331pub const LN_zlib_compression: &[u8; 17] = b"zlib compression\0";
1332pub const NID_zlib_compression: i32 = 125;
1333pub const SN_ext_key_usage: &[u8; 17] = b"extendedKeyUsage\0";
1334pub const LN_ext_key_usage: &[u8; 26] = b"X509v3 Extended Key Usage\0";
1335pub const NID_ext_key_usage: i32 = 126;
1336pub const SN_id_pkix: &[u8; 5] = b"PKIX\0";
1337pub const NID_id_pkix: i32 = 127;
1338pub const SN_id_kp: &[u8; 6] = b"id-kp\0";
1339pub const NID_id_kp: i32 = 128;
1340pub const SN_server_auth: &[u8; 11] = b"serverAuth\0";
1341pub const LN_server_auth: &[u8; 30] = b"TLS Web Server Authentication\0";
1342pub const NID_server_auth: i32 = 129;
1343pub const SN_client_auth: &[u8; 11] = b"clientAuth\0";
1344pub const LN_client_auth: &[u8; 30] = b"TLS Web Client Authentication\0";
1345pub const NID_client_auth: i32 = 130;
1346pub const SN_code_sign: &[u8; 12] = b"codeSigning\0";
1347pub const LN_code_sign: &[u8; 13] = b"Code Signing\0";
1348pub const NID_code_sign: i32 = 131;
1349pub const SN_email_protect: &[u8; 16] = b"emailProtection\0";
1350pub const LN_email_protect: &[u8; 18] = b"E-mail Protection\0";
1351pub const NID_email_protect: i32 = 132;
1352pub const SN_time_stamp: &[u8; 13] = b"timeStamping\0";
1353pub const LN_time_stamp: &[u8; 14] = b"Time Stamping\0";
1354pub const NID_time_stamp: i32 = 133;
1355pub const SN_ms_code_ind: &[u8; 10] = b"msCodeInd\0";
1356pub const LN_ms_code_ind: &[u8; 34] = b"Microsoft Individual Code Signing\0";
1357pub const NID_ms_code_ind: i32 = 134;
1358pub const SN_ms_code_com: &[u8; 10] = b"msCodeCom\0";
1359pub const LN_ms_code_com: &[u8; 34] = b"Microsoft Commercial Code Signing\0";
1360pub const NID_ms_code_com: i32 = 135;
1361pub const SN_ms_ctl_sign: &[u8; 10] = b"msCTLSign\0";
1362pub const LN_ms_ctl_sign: &[u8; 29] = b"Microsoft Trust List Signing\0";
1363pub const NID_ms_ctl_sign: i32 = 136;
1364pub const SN_ms_sgc: &[u8; 6] = b"msSGC\0";
1365pub const LN_ms_sgc: &[u8; 30] = b"Microsoft Server Gated Crypto\0";
1366pub const NID_ms_sgc: i32 = 137;
1367pub const SN_ms_efs: &[u8; 6] = b"msEFS\0";
1368pub const LN_ms_efs: &[u8; 32] = b"Microsoft Encrypted File System\0";
1369pub const NID_ms_efs: i32 = 138;
1370pub const SN_ns_sgc: &[u8; 6] = b"nsSGC\0";
1371pub const LN_ns_sgc: &[u8; 29] = b"Netscape Server Gated Crypto\0";
1372pub const NID_ns_sgc: i32 = 139;
1373pub const SN_delta_crl: &[u8; 9] = b"deltaCRL\0";
1374pub const LN_delta_crl: &[u8; 27] = b"X509v3 Delta CRL Indicator\0";
1375pub const NID_delta_crl: i32 = 140;
1376pub const SN_crl_reason: &[u8; 10] = b"CRLReason\0";
1377pub const LN_crl_reason: &[u8; 23] = b"X509v3 CRL Reason Code\0";
1378pub const NID_crl_reason: i32 = 141;
1379pub const SN_invalidity_date: &[u8; 15] = b"invalidityDate\0";
1380pub const LN_invalidity_date: &[u8; 16] = b"Invalidity Date\0";
1381pub const NID_invalidity_date: i32 = 142;
1382pub const SN_sxnet: &[u8; 8] = b"SXNetID\0";
1383pub const LN_sxnet: &[u8; 19] = b"Strong Extranet ID\0";
1384pub const NID_sxnet: i32 = 143;
1385pub const SN_pbe_WithSHA1And128BitRC4: &[u8; 17] = b"PBE-SHA1-RC4-128\0";
1386pub const LN_pbe_WithSHA1And128BitRC4: &[u8; 24] = b"pbeWithSHA1And128BitRC4\0";
1387pub const NID_pbe_WithSHA1And128BitRC4: i32 = 144;
1388pub const SN_pbe_WithSHA1And40BitRC4: &[u8; 16] = b"PBE-SHA1-RC4-40\0";
1389pub const LN_pbe_WithSHA1And40BitRC4: &[u8; 23] = b"pbeWithSHA1And40BitRC4\0";
1390pub const NID_pbe_WithSHA1And40BitRC4: i32 = 145;
1391pub const SN_pbe_WithSHA1And3_Key_TripleDES_CBC: &[u8; 14] = b"PBE-SHA1-3DES\0";
1392pub const LN_pbe_WithSHA1And3_Key_TripleDES_CBC: &[u8; 33] = b"pbeWithSHA1And3-KeyTripleDES-CBC\0";
1393pub const NID_pbe_WithSHA1And3_Key_TripleDES_CBC: i32 = 146;
1394pub const SN_pbe_WithSHA1And2_Key_TripleDES_CBC: &[u8; 14] = b"PBE-SHA1-2DES\0";
1395pub const LN_pbe_WithSHA1And2_Key_TripleDES_CBC: &[u8; 33] = b"pbeWithSHA1And2-KeyTripleDES-CBC\0";
1396pub const NID_pbe_WithSHA1And2_Key_TripleDES_CBC: i32 = 147;
1397pub const SN_pbe_WithSHA1And128BitRC2_CBC: &[u8; 17] = b"PBE-SHA1-RC2-128\0";
1398pub const LN_pbe_WithSHA1And128BitRC2_CBC: &[u8; 28] = b"pbeWithSHA1And128BitRC2-CBC\0";
1399pub const NID_pbe_WithSHA1And128BitRC2_CBC: i32 = 148;
1400pub const SN_pbe_WithSHA1And40BitRC2_CBC: &[u8; 16] = b"PBE-SHA1-RC2-40\0";
1401pub const LN_pbe_WithSHA1And40BitRC2_CBC: &[u8; 27] = b"pbeWithSHA1And40BitRC2-CBC\0";
1402pub const NID_pbe_WithSHA1And40BitRC2_CBC: i32 = 149;
1403pub const LN_keyBag: &[u8; 7] = b"keyBag\0";
1404pub const NID_keyBag: i32 = 150;
1405pub const LN_pkcs8ShroudedKeyBag: &[u8; 20] = b"pkcs8ShroudedKeyBag\0";
1406pub const NID_pkcs8ShroudedKeyBag: i32 = 151;
1407pub const LN_certBag: &[u8; 8] = b"certBag\0";
1408pub const NID_certBag: i32 = 152;
1409pub const LN_crlBag: &[u8; 7] = b"crlBag\0";
1410pub const NID_crlBag: i32 = 153;
1411pub const LN_secretBag: &[u8; 10] = b"secretBag\0";
1412pub const NID_secretBag: i32 = 154;
1413pub const LN_safeContentsBag: &[u8; 16] = b"safeContentsBag\0";
1414pub const NID_safeContentsBag: i32 = 155;
1415pub const LN_friendlyName: &[u8; 13] = b"friendlyName\0";
1416pub const NID_friendlyName: i32 = 156;
1417pub const LN_localKeyID: &[u8; 11] = b"localKeyID\0";
1418pub const NID_localKeyID: i32 = 157;
1419pub const LN_x509Certificate: &[u8; 16] = b"x509Certificate\0";
1420pub const NID_x509Certificate: i32 = 158;
1421pub const LN_sdsiCertificate: &[u8; 16] = b"sdsiCertificate\0";
1422pub const NID_sdsiCertificate: i32 = 159;
1423pub const LN_x509Crl: &[u8; 8] = b"x509Crl\0";
1424pub const NID_x509Crl: i32 = 160;
1425pub const LN_pbes2: &[u8; 6] = b"PBES2\0";
1426pub const NID_pbes2: i32 = 161;
1427pub const LN_pbmac1: &[u8; 7] = b"PBMAC1\0";
1428pub const NID_pbmac1: i32 = 162;
1429pub const LN_hmacWithSHA1: &[u8; 13] = b"hmacWithSHA1\0";
1430pub const NID_hmacWithSHA1: i32 = 163;
1431pub const SN_id_qt_cps: &[u8; 10] = b"id-qt-cps\0";
1432pub const LN_id_qt_cps: &[u8; 21] = b"Policy Qualifier CPS\0";
1433pub const NID_id_qt_cps: i32 = 164;
1434pub const SN_id_qt_unotice: &[u8; 14] = b"id-qt-unotice\0";
1435pub const LN_id_qt_unotice: &[u8; 29] = b"Policy Qualifier User Notice\0";
1436pub const NID_id_qt_unotice: i32 = 165;
1437pub const SN_rc2_64_cbc: &[u8; 11] = b"RC2-64-CBC\0";
1438pub const LN_rc2_64_cbc: &[u8; 11] = b"rc2-64-cbc\0";
1439pub const NID_rc2_64_cbc: i32 = 166;
1440pub const SN_SMIMECapabilities: &[u8; 11] = b"SMIME-CAPS\0";
1441pub const LN_SMIMECapabilities: &[u8; 20] = b"S/MIME Capabilities\0";
1442pub const NID_SMIMECapabilities: i32 = 167;
1443pub const SN_pbeWithMD2AndRC2_CBC: &[u8; 15] = b"PBE-MD2-RC2-64\0";
1444pub const LN_pbeWithMD2AndRC2_CBC: &[u8; 21] = b"pbeWithMD2AndRC2-CBC\0";
1445pub const NID_pbeWithMD2AndRC2_CBC: i32 = 168;
1446pub const SN_pbeWithMD5AndRC2_CBC: &[u8; 15] = b"PBE-MD5-RC2-64\0";
1447pub const LN_pbeWithMD5AndRC2_CBC: &[u8; 21] = b"pbeWithMD5AndRC2-CBC\0";
1448pub const NID_pbeWithMD5AndRC2_CBC: i32 = 169;
1449pub const SN_pbeWithSHA1AndDES_CBC: &[u8; 13] = b"PBE-SHA1-DES\0";
1450pub const LN_pbeWithSHA1AndDES_CBC: &[u8; 22] = b"pbeWithSHA1AndDES-CBC\0";
1451pub const NID_pbeWithSHA1AndDES_CBC: i32 = 170;
1452pub const SN_ms_ext_req: &[u8; 9] = b"msExtReq\0";
1453pub const LN_ms_ext_req: &[u8; 28] = b"Microsoft Extension Request\0";
1454pub const NID_ms_ext_req: i32 = 171;
1455pub const SN_ext_req: &[u8; 7] = b"extReq\0";
1456pub const LN_ext_req: &[u8; 18] = b"Extension Request\0";
1457pub const NID_ext_req: i32 = 172;
1458pub const SN_name: &[u8; 5] = b"name\0";
1459pub const LN_name: &[u8; 5] = b"name\0";
1460pub const NID_name: i32 = 173;
1461pub const SN_dnQualifier: &[u8; 12] = b"dnQualifier\0";
1462pub const LN_dnQualifier: &[u8; 12] = b"dnQualifier\0";
1463pub const NID_dnQualifier: i32 = 174;
1464pub const SN_id_pe: &[u8; 6] = b"id-pe\0";
1465pub const NID_id_pe: i32 = 175;
1466pub const SN_id_ad: &[u8; 6] = b"id-ad\0";
1467pub const NID_id_ad: i32 = 176;
1468pub const SN_info_access: &[u8; 20] = b"authorityInfoAccess\0";
1469pub const LN_info_access: &[u8; 29] = b"Authority Information Access\0";
1470pub const NID_info_access: i32 = 177;
1471pub const SN_ad_OCSP: &[u8; 5] = b"OCSP\0";
1472pub const LN_ad_OCSP: &[u8; 5] = b"OCSP\0";
1473pub const NID_ad_OCSP: i32 = 178;
1474pub const SN_ad_ca_issuers: &[u8; 10] = b"caIssuers\0";
1475pub const LN_ad_ca_issuers: &[u8; 11] = b"CA Issuers\0";
1476pub const NID_ad_ca_issuers: i32 = 179;
1477pub const SN_OCSP_sign: &[u8; 12] = b"OCSPSigning\0";
1478pub const LN_OCSP_sign: &[u8; 13] = b"OCSP Signing\0";
1479pub const NID_OCSP_sign: i32 = 180;
1480pub const SN_iso: &[u8; 4] = b"ISO\0";
1481pub const LN_iso: &[u8; 4] = b"iso\0";
1482pub const NID_iso: i32 = 181;
1483pub const OBJ_iso: i32 = 1;
1484pub const SN_member_body: &[u8; 12] = b"member-body\0";
1485pub const LN_member_body: &[u8; 16] = b"ISO Member Body\0";
1486pub const NID_member_body: i32 = 182;
1487pub const SN_ISO_US: &[u8; 7] = b"ISO-US\0";
1488pub const LN_ISO_US: &[u8; 19] = b"ISO US Member Body\0";
1489pub const NID_ISO_US: i32 = 183;
1490pub const SN_X9_57: &[u8; 6] = b"X9-57\0";
1491pub const LN_X9_57: &[u8; 6] = b"X9.57\0";
1492pub const NID_X9_57: i32 = 184;
1493pub const SN_X9cm: &[u8; 5] = b"X9cm\0";
1494pub const LN_X9cm: &[u8; 11] = b"X9.57 CM ?\0";
1495pub const NID_X9cm: i32 = 185;
1496pub const SN_pkcs1: &[u8; 6] = b"pkcs1\0";
1497pub const NID_pkcs1: i32 = 186;
1498pub const SN_pkcs5: &[u8; 6] = b"pkcs5\0";
1499pub const NID_pkcs5: i32 = 187;
1500pub const SN_SMIME: &[u8; 6] = b"SMIME\0";
1501pub const LN_SMIME: &[u8; 7] = b"S/MIME\0";
1502pub const NID_SMIME: i32 = 188;
1503pub const SN_id_smime_mod: &[u8; 13] = b"id-smime-mod\0";
1504pub const NID_id_smime_mod: i32 = 189;
1505pub const SN_id_smime_ct: &[u8; 12] = b"id-smime-ct\0";
1506pub const NID_id_smime_ct: i32 = 190;
1507pub const SN_id_smime_aa: &[u8; 12] = b"id-smime-aa\0";
1508pub const NID_id_smime_aa: i32 = 191;
1509pub const SN_id_smime_alg: &[u8; 13] = b"id-smime-alg\0";
1510pub const NID_id_smime_alg: i32 = 192;
1511pub const SN_id_smime_cd: &[u8; 12] = b"id-smime-cd\0";
1512pub const NID_id_smime_cd: i32 = 193;
1513pub const SN_id_smime_spq: &[u8; 13] = b"id-smime-spq\0";
1514pub const NID_id_smime_spq: i32 = 194;
1515pub const SN_id_smime_cti: &[u8; 13] = b"id-smime-cti\0";
1516pub const NID_id_smime_cti: i32 = 195;
1517pub const SN_id_smime_mod_cms: &[u8; 17] = b"id-smime-mod-cms\0";
1518pub const NID_id_smime_mod_cms: i32 = 196;
1519pub const SN_id_smime_mod_ess: &[u8; 17] = b"id-smime-mod-ess\0";
1520pub const NID_id_smime_mod_ess: i32 = 197;
1521pub const SN_id_smime_mod_oid: &[u8; 17] = b"id-smime-mod-oid\0";
1522pub const NID_id_smime_mod_oid: i32 = 198;
1523pub const SN_id_smime_mod_msg_v3: &[u8; 20] = b"id-smime-mod-msg-v3\0";
1524pub const NID_id_smime_mod_msg_v3: i32 = 199;
1525pub const SN_id_smime_mod_ets_eSignature_88: &[u8; 31] = b"id-smime-mod-ets-eSignature-88\0";
1526pub const NID_id_smime_mod_ets_eSignature_88: i32 = 200;
1527pub const SN_id_smime_mod_ets_eSignature_97: &[u8; 31] = b"id-smime-mod-ets-eSignature-97\0";
1528pub const NID_id_smime_mod_ets_eSignature_97: i32 = 201;
1529pub const SN_id_smime_mod_ets_eSigPolicy_88: &[u8; 31] = b"id-smime-mod-ets-eSigPolicy-88\0";
1530pub const NID_id_smime_mod_ets_eSigPolicy_88: i32 = 202;
1531pub const SN_id_smime_mod_ets_eSigPolicy_97: &[u8; 31] = b"id-smime-mod-ets-eSigPolicy-97\0";
1532pub const NID_id_smime_mod_ets_eSigPolicy_97: i32 = 203;
1533pub const SN_id_smime_ct_receipt: &[u8; 20] = b"id-smime-ct-receipt\0";
1534pub const NID_id_smime_ct_receipt: i32 = 204;
1535pub const SN_id_smime_ct_authData: &[u8; 21] = b"id-smime-ct-authData\0";
1536pub const NID_id_smime_ct_authData: i32 = 205;
1537pub const SN_id_smime_ct_publishCert: &[u8; 24] = b"id-smime-ct-publishCert\0";
1538pub const NID_id_smime_ct_publishCert: i32 = 206;
1539pub const SN_id_smime_ct_TSTInfo: &[u8; 20] = b"id-smime-ct-TSTInfo\0";
1540pub const NID_id_smime_ct_TSTInfo: i32 = 207;
1541pub const SN_id_smime_ct_TDTInfo: &[u8; 20] = b"id-smime-ct-TDTInfo\0";
1542pub const NID_id_smime_ct_TDTInfo: i32 = 208;
1543pub const SN_id_smime_ct_contentInfo: &[u8; 24] = b"id-smime-ct-contentInfo\0";
1544pub const NID_id_smime_ct_contentInfo: i32 = 209;
1545pub const SN_id_smime_ct_DVCSRequestData: &[u8; 28] = b"id-smime-ct-DVCSRequestData\0";
1546pub const NID_id_smime_ct_DVCSRequestData: i32 = 210;
1547pub const SN_id_smime_ct_DVCSResponseData: &[u8; 29] = b"id-smime-ct-DVCSResponseData\0";
1548pub const NID_id_smime_ct_DVCSResponseData: i32 = 211;
1549pub const SN_id_smime_aa_receiptRequest: &[u8; 27] = b"id-smime-aa-receiptRequest\0";
1550pub const NID_id_smime_aa_receiptRequest: i32 = 212;
1551pub const SN_id_smime_aa_securityLabel: &[u8; 26] = b"id-smime-aa-securityLabel\0";
1552pub const NID_id_smime_aa_securityLabel: i32 = 213;
1553pub const SN_id_smime_aa_mlExpandHistory: &[u8; 28] = b"id-smime-aa-mlExpandHistory\0";
1554pub const NID_id_smime_aa_mlExpandHistory: i32 = 214;
1555pub const SN_id_smime_aa_contentHint: &[u8; 24] = b"id-smime-aa-contentHint\0";
1556pub const NID_id_smime_aa_contentHint: i32 = 215;
1557pub const SN_id_smime_aa_msgSigDigest: &[u8; 25] = b"id-smime-aa-msgSigDigest\0";
1558pub const NID_id_smime_aa_msgSigDigest: i32 = 216;
1559pub const SN_id_smime_aa_encapContentType: &[u8; 29] = b"id-smime-aa-encapContentType\0";
1560pub const NID_id_smime_aa_encapContentType: i32 = 217;
1561pub const SN_id_smime_aa_contentIdentifier: &[u8; 30] = b"id-smime-aa-contentIdentifier\0";
1562pub const NID_id_smime_aa_contentIdentifier: i32 = 218;
1563pub const SN_id_smime_aa_macValue: &[u8; 21] = b"id-smime-aa-macValue\0";
1564pub const NID_id_smime_aa_macValue: i32 = 219;
1565pub const SN_id_smime_aa_equivalentLabels: &[u8; 29] = b"id-smime-aa-equivalentLabels\0";
1566pub const NID_id_smime_aa_equivalentLabels: i32 = 220;
1567pub const SN_id_smime_aa_contentReference: &[u8; 29] = b"id-smime-aa-contentReference\0";
1568pub const NID_id_smime_aa_contentReference: i32 = 221;
1569pub const SN_id_smime_aa_encrypKeyPref: &[u8; 26] = b"id-smime-aa-encrypKeyPref\0";
1570pub const NID_id_smime_aa_encrypKeyPref: i32 = 222;
1571pub const SN_id_smime_aa_signingCertificate: &[u8; 31] = b"id-smime-aa-signingCertificate\0";
1572pub const NID_id_smime_aa_signingCertificate: i32 = 223;
1573pub const SN_id_smime_aa_smimeEncryptCerts: &[u8; 30] = b"id-smime-aa-smimeEncryptCerts\0";
1574pub const NID_id_smime_aa_smimeEncryptCerts: i32 = 224;
1575pub const SN_id_smime_aa_timeStampToken: &[u8; 27] = b"id-smime-aa-timeStampToken\0";
1576pub const NID_id_smime_aa_timeStampToken: i32 = 225;
1577pub const SN_id_smime_aa_ets_sigPolicyId: &[u8; 28] = b"id-smime-aa-ets-sigPolicyId\0";
1578pub const NID_id_smime_aa_ets_sigPolicyId: i32 = 226;
1579pub const SN_id_smime_aa_ets_commitmentType: &[u8; 31] = b"id-smime-aa-ets-commitmentType\0";
1580pub const NID_id_smime_aa_ets_commitmentType: i32 = 227;
1581pub const SN_id_smime_aa_ets_signerLocation: &[u8; 31] = b"id-smime-aa-ets-signerLocation\0";
1582pub const NID_id_smime_aa_ets_signerLocation: i32 = 228;
1583pub const SN_id_smime_aa_ets_signerAttr: &[u8; 27] = b"id-smime-aa-ets-signerAttr\0";
1584pub const NID_id_smime_aa_ets_signerAttr: i32 = 229;
1585pub const SN_id_smime_aa_ets_otherSigCert: &[u8; 29] = b"id-smime-aa-ets-otherSigCert\0";
1586pub const NID_id_smime_aa_ets_otherSigCert: i32 = 230;
1587pub const SN_id_smime_aa_ets_contentTimestamp: &[u8; 33] = b"id-smime-aa-ets-contentTimestamp\0";
1588pub const NID_id_smime_aa_ets_contentTimestamp: i32 = 231;
1589pub const SN_id_smime_aa_ets_CertificateRefs: &[u8; 32] = b"id-smime-aa-ets-CertificateRefs\0";
1590pub const NID_id_smime_aa_ets_CertificateRefs: i32 = 232;
1591pub const SN_id_smime_aa_ets_RevocationRefs: &[u8; 31] = b"id-smime-aa-ets-RevocationRefs\0";
1592pub const NID_id_smime_aa_ets_RevocationRefs: i32 = 233;
1593pub const SN_id_smime_aa_ets_certValues: &[u8; 27] = b"id-smime-aa-ets-certValues\0";
1594pub const NID_id_smime_aa_ets_certValues: i32 = 234;
1595pub const SN_id_smime_aa_ets_revocationValues: &[u8; 33] = b"id-smime-aa-ets-revocationValues\0";
1596pub const NID_id_smime_aa_ets_revocationValues: i32 = 235;
1597pub const SN_id_smime_aa_ets_escTimeStamp: &[u8; 29] = b"id-smime-aa-ets-escTimeStamp\0";
1598pub const NID_id_smime_aa_ets_escTimeStamp: i32 = 236;
1599pub const SN_id_smime_aa_ets_certCRLTimestamp: &[u8; 33] = b"id-smime-aa-ets-certCRLTimestamp\0";
1600pub const NID_id_smime_aa_ets_certCRLTimestamp: i32 = 237;
1601pub const SN_id_smime_aa_ets_archiveTimeStamp: &[u8; 33] = b"id-smime-aa-ets-archiveTimeStamp\0";
1602pub const NID_id_smime_aa_ets_archiveTimeStamp: i32 = 238;
1603pub const SN_id_smime_aa_signatureType: &[u8; 26] = b"id-smime-aa-signatureType\0";
1604pub const NID_id_smime_aa_signatureType: i32 = 239;
1605pub const SN_id_smime_aa_dvcs_dvc: &[u8; 21] = b"id-smime-aa-dvcs-dvc\0";
1606pub const NID_id_smime_aa_dvcs_dvc: i32 = 240;
1607pub const SN_id_smime_alg_ESDHwith3DES: &[u8; 26] = b"id-smime-alg-ESDHwith3DES\0";
1608pub const NID_id_smime_alg_ESDHwith3DES: i32 = 241;
1609pub const SN_id_smime_alg_ESDHwithRC2: &[u8; 25] = b"id-smime-alg-ESDHwithRC2\0";
1610pub const NID_id_smime_alg_ESDHwithRC2: i32 = 242;
1611pub const SN_id_smime_alg_3DESwrap: &[u8; 22] = b"id-smime-alg-3DESwrap\0";
1612pub const NID_id_smime_alg_3DESwrap: i32 = 243;
1613pub const SN_id_smime_alg_RC2wrap: &[u8; 21] = b"id-smime-alg-RC2wrap\0";
1614pub const NID_id_smime_alg_RC2wrap: i32 = 244;
1615pub const SN_id_smime_alg_ESDH: &[u8; 18] = b"id-smime-alg-ESDH\0";
1616pub const NID_id_smime_alg_ESDH: i32 = 245;
1617pub const SN_id_smime_alg_CMS3DESwrap: &[u8; 25] = b"id-smime-alg-CMS3DESwrap\0";
1618pub const NID_id_smime_alg_CMS3DESwrap: i32 = 246;
1619pub const SN_id_smime_alg_CMSRC2wrap: &[u8; 24] = b"id-smime-alg-CMSRC2wrap\0";
1620pub const NID_id_smime_alg_CMSRC2wrap: i32 = 247;
1621pub const SN_id_smime_cd_ldap: &[u8; 17] = b"id-smime-cd-ldap\0";
1622pub const NID_id_smime_cd_ldap: i32 = 248;
1623pub const SN_id_smime_spq_ets_sqt_uri: &[u8; 25] = b"id-smime-spq-ets-sqt-uri\0";
1624pub const NID_id_smime_spq_ets_sqt_uri: i32 = 249;
1625pub const SN_id_smime_spq_ets_sqt_unotice: &[u8; 29] = b"id-smime-spq-ets-sqt-unotice\0";
1626pub const NID_id_smime_spq_ets_sqt_unotice: i32 = 250;
1627pub const SN_id_smime_cti_ets_proofOfOrigin: &[u8; 31] = b"id-smime-cti-ets-proofOfOrigin\0";
1628pub const NID_id_smime_cti_ets_proofOfOrigin: i32 = 251;
1629pub const SN_id_smime_cti_ets_proofOfReceipt: &[u8; 32] = b"id-smime-cti-ets-proofOfReceipt\0";
1630pub const NID_id_smime_cti_ets_proofOfReceipt: i32 = 252;
1631pub const SN_id_smime_cti_ets_proofOfDelivery: &[u8; 33] = b"id-smime-cti-ets-proofOfDelivery\0";
1632pub const NID_id_smime_cti_ets_proofOfDelivery: i32 = 253;
1633pub const SN_id_smime_cti_ets_proofOfSender: &[u8; 31] = b"id-smime-cti-ets-proofOfSender\0";
1634pub const NID_id_smime_cti_ets_proofOfSender: i32 = 254;
1635pub const SN_id_smime_cti_ets_proofOfApproval: &[u8; 33] = b"id-smime-cti-ets-proofOfApproval\0";
1636pub const NID_id_smime_cti_ets_proofOfApproval: i32 = 255;
1637pub const SN_id_smime_cti_ets_proofOfCreation: &[u8; 33] = b"id-smime-cti-ets-proofOfCreation\0";
1638pub const NID_id_smime_cti_ets_proofOfCreation: i32 = 256;
1639pub const SN_md4: &[u8; 4] = b"MD4\0";
1640pub const LN_md4: &[u8; 4] = b"md4\0";
1641pub const NID_md4: i32 = 257;
1642pub const SN_id_pkix_mod: &[u8; 12] = b"id-pkix-mod\0";
1643pub const NID_id_pkix_mod: i32 = 258;
1644pub const SN_id_qt: &[u8; 6] = b"id-qt\0";
1645pub const NID_id_qt: i32 = 259;
1646pub const SN_id_it: &[u8; 6] = b"id-it\0";
1647pub const NID_id_it: i32 = 260;
1648pub const SN_id_pkip: &[u8; 8] = b"id-pkip\0";
1649pub const NID_id_pkip: i32 = 261;
1650pub const SN_id_alg: &[u8; 7] = b"id-alg\0";
1651pub const NID_id_alg: i32 = 262;
1652pub const SN_id_cmc: &[u8; 7] = b"id-cmc\0";
1653pub const NID_id_cmc: i32 = 263;
1654pub const SN_id_on: &[u8; 6] = b"id-on\0";
1655pub const NID_id_on: i32 = 264;
1656pub const SN_id_pda: &[u8; 7] = b"id-pda\0";
1657pub const NID_id_pda: i32 = 265;
1658pub const SN_id_aca: &[u8; 7] = b"id-aca\0";
1659pub const NID_id_aca: i32 = 266;
1660pub const SN_id_qcs: &[u8; 7] = b"id-qcs\0";
1661pub const NID_id_qcs: i32 = 267;
1662pub const SN_id_cct: &[u8; 7] = b"id-cct\0";
1663pub const NID_id_cct: i32 = 268;
1664pub const SN_id_pkix1_explicit_88: &[u8; 21] = b"id-pkix1-explicit-88\0";
1665pub const NID_id_pkix1_explicit_88: i32 = 269;
1666pub const SN_id_pkix1_implicit_88: &[u8; 21] = b"id-pkix1-implicit-88\0";
1667pub const NID_id_pkix1_implicit_88: i32 = 270;
1668pub const SN_id_pkix1_explicit_93: &[u8; 21] = b"id-pkix1-explicit-93\0";
1669pub const NID_id_pkix1_explicit_93: i32 = 271;
1670pub const SN_id_pkix1_implicit_93: &[u8; 21] = b"id-pkix1-implicit-93\0";
1671pub const NID_id_pkix1_implicit_93: i32 = 272;
1672pub const SN_id_mod_crmf: &[u8; 12] = b"id-mod-crmf\0";
1673pub const NID_id_mod_crmf: i32 = 273;
1674pub const SN_id_mod_cmc: &[u8; 11] = b"id-mod-cmc\0";
1675pub const NID_id_mod_cmc: i32 = 274;
1676pub const SN_id_mod_kea_profile_88: &[u8; 22] = b"id-mod-kea-profile-88\0";
1677pub const NID_id_mod_kea_profile_88: i32 = 275;
1678pub const SN_id_mod_kea_profile_93: &[u8; 22] = b"id-mod-kea-profile-93\0";
1679pub const NID_id_mod_kea_profile_93: i32 = 276;
1680pub const SN_id_mod_cmp: &[u8; 11] = b"id-mod-cmp\0";
1681pub const NID_id_mod_cmp: i32 = 277;
1682pub const SN_id_mod_qualified_cert_88: &[u8; 25] = b"id-mod-qualified-cert-88\0";
1683pub const NID_id_mod_qualified_cert_88: i32 = 278;
1684pub const SN_id_mod_qualified_cert_93: &[u8; 25] = b"id-mod-qualified-cert-93\0";
1685pub const NID_id_mod_qualified_cert_93: i32 = 279;
1686pub const SN_id_mod_attribute_cert: &[u8; 22] = b"id-mod-attribute-cert\0";
1687pub const NID_id_mod_attribute_cert: i32 = 280;
1688pub const SN_id_mod_timestamp_protocol: &[u8; 26] = b"id-mod-timestamp-protocol\0";
1689pub const NID_id_mod_timestamp_protocol: i32 = 281;
1690pub const SN_id_mod_ocsp: &[u8; 12] = b"id-mod-ocsp\0";
1691pub const NID_id_mod_ocsp: i32 = 282;
1692pub const SN_id_mod_dvcs: &[u8; 12] = b"id-mod-dvcs\0";
1693pub const NID_id_mod_dvcs: i32 = 283;
1694pub const SN_id_mod_cmp2000: &[u8; 15] = b"id-mod-cmp2000\0";
1695pub const NID_id_mod_cmp2000: i32 = 284;
1696pub const SN_biometricInfo: &[u8; 14] = b"biometricInfo\0";
1697pub const LN_biometricInfo: &[u8; 15] = b"Biometric Info\0";
1698pub const NID_biometricInfo: i32 = 285;
1699pub const SN_qcStatements: &[u8; 13] = b"qcStatements\0";
1700pub const NID_qcStatements: i32 = 286;
1701pub const SN_ac_auditEntity: &[u8; 15] = b"ac-auditEntity\0";
1702pub const NID_ac_auditEntity: i32 = 287;
1703pub const SN_ac_targeting: &[u8; 13] = b"ac-targeting\0";
1704pub const NID_ac_targeting: i32 = 288;
1705pub const SN_aaControls: &[u8; 11] = b"aaControls\0";
1706pub const NID_aaControls: i32 = 289;
1707pub const SN_sbgp_ipAddrBlock: &[u8; 17] = b"sbgp-ipAddrBlock\0";
1708pub const NID_sbgp_ipAddrBlock: i32 = 290;
1709pub const SN_sbgp_autonomousSysNum: &[u8; 22] = b"sbgp-autonomousSysNum\0";
1710pub const NID_sbgp_autonomousSysNum: i32 = 291;
1711pub const SN_sbgp_routerIdentifier: &[u8; 22] = b"sbgp-routerIdentifier\0";
1712pub const NID_sbgp_routerIdentifier: i32 = 292;
1713pub const SN_textNotice: &[u8; 11] = b"textNotice\0";
1714pub const NID_textNotice: i32 = 293;
1715pub const SN_ipsecEndSystem: &[u8; 15] = b"ipsecEndSystem\0";
1716pub const LN_ipsecEndSystem: &[u8; 17] = b"IPSec End System\0";
1717pub const NID_ipsecEndSystem: i32 = 294;
1718pub const SN_ipsecTunnel: &[u8; 12] = b"ipsecTunnel\0";
1719pub const LN_ipsecTunnel: &[u8; 13] = b"IPSec Tunnel\0";
1720pub const NID_ipsecTunnel: i32 = 295;
1721pub const SN_ipsecUser: &[u8; 10] = b"ipsecUser\0";
1722pub const LN_ipsecUser: &[u8; 11] = b"IPSec User\0";
1723pub const NID_ipsecUser: i32 = 296;
1724pub const SN_dvcs: &[u8; 5] = b"DVCS\0";
1725pub const LN_dvcs: &[u8; 5] = b"dvcs\0";
1726pub const NID_dvcs: i32 = 297;
1727pub const SN_id_it_caProtEncCert: &[u8; 20] = b"id-it-caProtEncCert\0";
1728pub const NID_id_it_caProtEncCert: i32 = 298;
1729pub const SN_id_it_signKeyPairTypes: &[u8; 23] = b"id-it-signKeyPairTypes\0";
1730pub const NID_id_it_signKeyPairTypes: i32 = 299;
1731pub const SN_id_it_encKeyPairTypes: &[u8; 22] = b"id-it-encKeyPairTypes\0";
1732pub const NID_id_it_encKeyPairTypes: i32 = 300;
1733pub const SN_id_it_preferredSymmAlg: &[u8; 23] = b"id-it-preferredSymmAlg\0";
1734pub const NID_id_it_preferredSymmAlg: i32 = 301;
1735pub const SN_id_it_caKeyUpdateInfo: &[u8; 22] = b"id-it-caKeyUpdateInfo\0";
1736pub const NID_id_it_caKeyUpdateInfo: i32 = 302;
1737pub const SN_id_it_currentCRL: &[u8; 17] = b"id-it-currentCRL\0";
1738pub const NID_id_it_currentCRL: i32 = 303;
1739pub const SN_id_it_unsupportedOIDs: &[u8; 22] = b"id-it-unsupportedOIDs\0";
1740pub const NID_id_it_unsupportedOIDs: i32 = 304;
1741pub const SN_id_it_subscriptionRequest: &[u8; 26] = b"id-it-subscriptionRequest\0";
1742pub const NID_id_it_subscriptionRequest: i32 = 305;
1743pub const SN_id_it_subscriptionResponse: &[u8; 27] = b"id-it-subscriptionResponse\0";
1744pub const NID_id_it_subscriptionResponse: i32 = 306;
1745pub const SN_id_it_keyPairParamReq: &[u8; 22] = b"id-it-keyPairParamReq\0";
1746pub const NID_id_it_keyPairParamReq: i32 = 307;
1747pub const SN_id_it_keyPairParamRep: &[u8; 22] = b"id-it-keyPairParamRep\0";
1748pub const NID_id_it_keyPairParamRep: i32 = 308;
1749pub const SN_id_it_revPassphrase: &[u8; 20] = b"id-it-revPassphrase\0";
1750pub const NID_id_it_revPassphrase: i32 = 309;
1751pub const SN_id_it_implicitConfirm: &[u8; 22] = b"id-it-implicitConfirm\0";
1752pub const NID_id_it_implicitConfirm: i32 = 310;
1753pub const SN_id_it_confirmWaitTime: &[u8; 22] = b"id-it-confirmWaitTime\0";
1754pub const NID_id_it_confirmWaitTime: i32 = 311;
1755pub const SN_id_it_origPKIMessage: &[u8; 21] = b"id-it-origPKIMessage\0";
1756pub const NID_id_it_origPKIMessage: i32 = 312;
1757pub const SN_id_regCtrl: &[u8; 11] = b"id-regCtrl\0";
1758pub const NID_id_regCtrl: i32 = 313;
1759pub const SN_id_regInfo: &[u8; 11] = b"id-regInfo\0";
1760pub const NID_id_regInfo: i32 = 314;
1761pub const SN_id_regCtrl_regToken: &[u8; 20] = b"id-regCtrl-regToken\0";
1762pub const NID_id_regCtrl_regToken: i32 = 315;
1763pub const SN_id_regCtrl_authenticator: &[u8; 25] = b"id-regCtrl-authenticator\0";
1764pub const NID_id_regCtrl_authenticator: i32 = 316;
1765pub const SN_id_regCtrl_pkiPublicationInfo: &[u8; 30] = b"id-regCtrl-pkiPublicationInfo\0";
1766pub const NID_id_regCtrl_pkiPublicationInfo: i32 = 317;
1767pub const SN_id_regCtrl_pkiArchiveOptions: &[u8; 29] = b"id-regCtrl-pkiArchiveOptions\0";
1768pub const NID_id_regCtrl_pkiArchiveOptions: i32 = 318;
1769pub const SN_id_regCtrl_oldCertID: &[u8; 21] = b"id-regCtrl-oldCertID\0";
1770pub const NID_id_regCtrl_oldCertID: i32 = 319;
1771pub const SN_id_regCtrl_protocolEncrKey: &[u8; 27] = b"id-regCtrl-protocolEncrKey\0";
1772pub const NID_id_regCtrl_protocolEncrKey: i32 = 320;
1773pub const SN_id_regInfo_utf8Pairs: &[u8; 21] = b"id-regInfo-utf8Pairs\0";
1774pub const NID_id_regInfo_utf8Pairs: i32 = 321;
1775pub const SN_id_regInfo_certReq: &[u8; 19] = b"id-regInfo-certReq\0";
1776pub const NID_id_regInfo_certReq: i32 = 322;
1777pub const SN_id_alg_des40: &[u8; 13] = b"id-alg-des40\0";
1778pub const NID_id_alg_des40: i32 = 323;
1779pub const SN_id_alg_noSignature: &[u8; 19] = b"id-alg-noSignature\0";
1780pub const NID_id_alg_noSignature: i32 = 324;
1781pub const SN_id_alg_dh_sig_hmac_sha1: &[u8; 24] = b"id-alg-dh-sig-hmac-sha1\0";
1782pub const NID_id_alg_dh_sig_hmac_sha1: i32 = 325;
1783pub const SN_id_alg_dh_pop: &[u8; 14] = b"id-alg-dh-pop\0";
1784pub const NID_id_alg_dh_pop: i32 = 326;
1785pub const SN_id_cmc_statusInfo: &[u8; 18] = b"id-cmc-statusInfo\0";
1786pub const NID_id_cmc_statusInfo: i32 = 327;
1787pub const SN_id_cmc_identification: &[u8; 22] = b"id-cmc-identification\0";
1788pub const NID_id_cmc_identification: i32 = 328;
1789pub const SN_id_cmc_identityProof: &[u8; 21] = b"id-cmc-identityProof\0";
1790pub const NID_id_cmc_identityProof: i32 = 329;
1791pub const SN_id_cmc_dataReturn: &[u8; 18] = b"id-cmc-dataReturn\0";
1792pub const NID_id_cmc_dataReturn: i32 = 330;
1793pub const SN_id_cmc_transactionId: &[u8; 21] = b"id-cmc-transactionId\0";
1794pub const NID_id_cmc_transactionId: i32 = 331;
1795pub const SN_id_cmc_senderNonce: &[u8; 19] = b"id-cmc-senderNonce\0";
1796pub const NID_id_cmc_senderNonce: i32 = 332;
1797pub const SN_id_cmc_recipientNonce: &[u8; 22] = b"id-cmc-recipientNonce\0";
1798pub const NID_id_cmc_recipientNonce: i32 = 333;
1799pub const SN_id_cmc_addExtensions: &[u8; 21] = b"id-cmc-addExtensions\0";
1800pub const NID_id_cmc_addExtensions: i32 = 334;
1801pub const SN_id_cmc_encryptedPOP: &[u8; 20] = b"id-cmc-encryptedPOP\0";
1802pub const NID_id_cmc_encryptedPOP: i32 = 335;
1803pub const SN_id_cmc_decryptedPOP: &[u8; 20] = b"id-cmc-decryptedPOP\0";
1804pub const NID_id_cmc_decryptedPOP: i32 = 336;
1805pub const SN_id_cmc_lraPOPWitness: &[u8; 21] = b"id-cmc-lraPOPWitness\0";
1806pub const NID_id_cmc_lraPOPWitness: i32 = 337;
1807pub const SN_id_cmc_getCert: &[u8; 15] = b"id-cmc-getCert\0";
1808pub const NID_id_cmc_getCert: i32 = 338;
1809pub const SN_id_cmc_getCRL: &[u8; 14] = b"id-cmc-getCRL\0";
1810pub const NID_id_cmc_getCRL: i32 = 339;
1811pub const SN_id_cmc_revokeRequest: &[u8; 21] = b"id-cmc-revokeRequest\0";
1812pub const NID_id_cmc_revokeRequest: i32 = 340;
1813pub const SN_id_cmc_regInfo: &[u8; 15] = b"id-cmc-regInfo\0";
1814pub const NID_id_cmc_regInfo: i32 = 341;
1815pub const SN_id_cmc_responseInfo: &[u8; 20] = b"id-cmc-responseInfo\0";
1816pub const NID_id_cmc_responseInfo: i32 = 342;
1817pub const SN_id_cmc_queryPending: &[u8; 20] = b"id-cmc-queryPending\0";
1818pub const NID_id_cmc_queryPending: i32 = 343;
1819pub const SN_id_cmc_popLinkRandom: &[u8; 21] = b"id-cmc-popLinkRandom\0";
1820pub const NID_id_cmc_popLinkRandom: i32 = 344;
1821pub const SN_id_cmc_popLinkWitness: &[u8; 22] = b"id-cmc-popLinkWitness\0";
1822pub const NID_id_cmc_popLinkWitness: i32 = 345;
1823pub const SN_id_cmc_confirmCertAcceptance: &[u8; 29] = b"id-cmc-confirmCertAcceptance\0";
1824pub const NID_id_cmc_confirmCertAcceptance: i32 = 346;
1825pub const SN_id_on_personalData: &[u8; 19] = b"id-on-personalData\0";
1826pub const NID_id_on_personalData: i32 = 347;
1827pub const SN_id_pda_dateOfBirth: &[u8; 19] = b"id-pda-dateOfBirth\0";
1828pub const NID_id_pda_dateOfBirth: i32 = 348;
1829pub const SN_id_pda_placeOfBirth: &[u8; 20] = b"id-pda-placeOfBirth\0";
1830pub const NID_id_pda_placeOfBirth: i32 = 349;
1831pub const SN_id_pda_gender: &[u8; 14] = b"id-pda-gender\0";
1832pub const NID_id_pda_gender: i32 = 351;
1833pub const SN_id_pda_countryOfCitizenship: &[u8; 28] = b"id-pda-countryOfCitizenship\0";
1834pub const NID_id_pda_countryOfCitizenship: i32 = 352;
1835pub const SN_id_pda_countryOfResidence: &[u8; 26] = b"id-pda-countryOfResidence\0";
1836pub const NID_id_pda_countryOfResidence: i32 = 353;
1837pub const SN_id_aca_authenticationInfo: &[u8; 26] = b"id-aca-authenticationInfo\0";
1838pub const NID_id_aca_authenticationInfo: i32 = 354;
1839pub const SN_id_aca_accessIdentity: &[u8; 22] = b"id-aca-accessIdentity\0";
1840pub const NID_id_aca_accessIdentity: i32 = 355;
1841pub const SN_id_aca_chargingIdentity: &[u8; 24] = b"id-aca-chargingIdentity\0";
1842pub const NID_id_aca_chargingIdentity: i32 = 356;
1843pub const SN_id_aca_group: &[u8; 13] = b"id-aca-group\0";
1844pub const NID_id_aca_group: i32 = 357;
1845pub const SN_id_aca_role: &[u8; 12] = b"id-aca-role\0";
1846pub const NID_id_aca_role: i32 = 358;
1847pub const SN_id_qcs_pkixQCSyntax_v1: &[u8; 23] = b"id-qcs-pkixQCSyntax-v1\0";
1848pub const NID_id_qcs_pkixQCSyntax_v1: i32 = 359;
1849pub const SN_id_cct_crs: &[u8; 11] = b"id-cct-crs\0";
1850pub const NID_id_cct_crs: i32 = 360;
1851pub const SN_id_cct_PKIData: &[u8; 15] = b"id-cct-PKIData\0";
1852pub const NID_id_cct_PKIData: i32 = 361;
1853pub const SN_id_cct_PKIResponse: &[u8; 19] = b"id-cct-PKIResponse\0";
1854pub const NID_id_cct_PKIResponse: i32 = 362;
1855pub const SN_ad_timeStamping: &[u8; 16] = b"ad_timestamping\0";
1856pub const LN_ad_timeStamping: &[u8; 17] = b"AD Time Stamping\0";
1857pub const NID_ad_timeStamping: i32 = 363;
1858pub const SN_ad_dvcs: &[u8; 8] = b"AD_DVCS\0";
1859pub const LN_ad_dvcs: &[u8; 8] = b"ad dvcs\0";
1860pub const NID_ad_dvcs: i32 = 364;
1861pub const SN_id_pkix_OCSP_basic: &[u8; 18] = b"basicOCSPResponse\0";
1862pub const LN_id_pkix_OCSP_basic: &[u8; 20] = b"Basic OCSP Response\0";
1863pub const NID_id_pkix_OCSP_basic: i32 = 365;
1864pub const SN_id_pkix_OCSP_Nonce: &[u8; 6] = b"Nonce\0";
1865pub const LN_id_pkix_OCSP_Nonce: &[u8; 11] = b"OCSP Nonce\0";
1866pub const NID_id_pkix_OCSP_Nonce: i32 = 366;
1867pub const SN_id_pkix_OCSP_CrlID: &[u8; 6] = b"CrlID\0";
1868pub const LN_id_pkix_OCSP_CrlID: &[u8; 12] = b"OCSP CRL ID\0";
1869pub const NID_id_pkix_OCSP_CrlID: i32 = 367;
1870pub const SN_id_pkix_OCSP_acceptableResponses: &[u8; 20] = b"acceptableResponses\0";
1871pub const LN_id_pkix_OCSP_acceptableResponses: &[u8; 26] = b"Acceptable OCSP Responses\0";
1872pub const NID_id_pkix_OCSP_acceptableResponses: i32 = 368;
1873pub const SN_id_pkix_OCSP_noCheck: &[u8; 8] = b"noCheck\0";
1874pub const LN_id_pkix_OCSP_noCheck: &[u8; 14] = b"OCSP No Check\0";
1875pub const NID_id_pkix_OCSP_noCheck: i32 = 369;
1876pub const SN_id_pkix_OCSP_archiveCutoff: &[u8; 14] = b"archiveCutoff\0";
1877pub const LN_id_pkix_OCSP_archiveCutoff: &[u8; 20] = b"OCSP Archive Cutoff\0";
1878pub const NID_id_pkix_OCSP_archiveCutoff: i32 = 370;
1879pub const SN_id_pkix_OCSP_serviceLocator: &[u8; 15] = b"serviceLocator\0";
1880pub const LN_id_pkix_OCSP_serviceLocator: &[u8; 21] = b"OCSP Service Locator\0";
1881pub const NID_id_pkix_OCSP_serviceLocator: i32 = 371;
1882pub const SN_id_pkix_OCSP_extendedStatus: &[u8; 15] = b"extendedStatus\0";
1883pub const LN_id_pkix_OCSP_extendedStatus: &[u8; 21] = b"Extended OCSP Status\0";
1884pub const NID_id_pkix_OCSP_extendedStatus: i32 = 372;
1885pub const SN_id_pkix_OCSP_valid: &[u8; 6] = b"valid\0";
1886pub const NID_id_pkix_OCSP_valid: i32 = 373;
1887pub const SN_id_pkix_OCSP_path: &[u8; 5] = b"path\0";
1888pub const NID_id_pkix_OCSP_path: i32 = 374;
1889pub const SN_id_pkix_OCSP_trustRoot: &[u8; 10] = b"trustRoot\0";
1890pub const LN_id_pkix_OCSP_trustRoot: &[u8; 11] = b"Trust Root\0";
1891pub const NID_id_pkix_OCSP_trustRoot: i32 = 375;
1892pub const SN_algorithm: &[u8; 10] = b"algorithm\0";
1893pub const LN_algorithm: &[u8; 10] = b"algorithm\0";
1894pub const NID_algorithm: i32 = 376;
1895pub const SN_rsaSignature: &[u8; 13] = b"rsaSignature\0";
1896pub const NID_rsaSignature: i32 = 377;
1897pub const SN_X500algorithms: &[u8; 15] = b"X500algorithms\0";
1898pub const LN_X500algorithms: &[u8; 32] = b"directory services - algorithms\0";
1899pub const NID_X500algorithms: i32 = 378;
1900pub const SN_org: &[u8; 4] = b"ORG\0";
1901pub const LN_org: &[u8; 4] = b"org\0";
1902pub const NID_org: i32 = 379;
1903pub const SN_dod: &[u8; 4] = b"DOD\0";
1904pub const LN_dod: &[u8; 4] = b"dod\0";
1905pub const NID_dod: i32 = 380;
1906pub const SN_iana: &[u8; 5] = b"IANA\0";
1907pub const LN_iana: &[u8; 5] = b"iana\0";
1908pub const NID_iana: i32 = 381;
1909pub const SN_Directory: &[u8; 10] = b"directory\0";
1910pub const LN_Directory: &[u8; 10] = b"Directory\0";
1911pub const NID_Directory: i32 = 382;
1912pub const SN_Management: &[u8; 5] = b"mgmt\0";
1913pub const LN_Management: &[u8; 11] = b"Management\0";
1914pub const NID_Management: i32 = 383;
1915pub const SN_Experimental: &[u8; 13] = b"experimental\0";
1916pub const LN_Experimental: &[u8; 13] = b"Experimental\0";
1917pub const NID_Experimental: i32 = 384;
1918pub const SN_Private: &[u8; 8] = b"private\0";
1919pub const LN_Private: &[u8; 8] = b"Private\0";
1920pub const NID_Private: i32 = 385;
1921pub const SN_Security: &[u8; 9] = b"security\0";
1922pub const LN_Security: &[u8; 9] = b"Security\0";
1923pub const NID_Security: i32 = 386;
1924pub const SN_SNMPv2: &[u8; 7] = b"snmpv2\0";
1925pub const LN_SNMPv2: &[u8; 7] = b"SNMPv2\0";
1926pub const NID_SNMPv2: i32 = 387;
1927pub const LN_Mail: &[u8; 5] = b"Mail\0";
1928pub const NID_Mail: i32 = 388;
1929pub const SN_Enterprises: &[u8; 12] = b"enterprises\0";
1930pub const LN_Enterprises: &[u8; 12] = b"Enterprises\0";
1931pub const NID_Enterprises: i32 = 389;
1932pub const SN_dcObject: &[u8; 9] = b"dcobject\0";
1933pub const LN_dcObject: &[u8; 9] = b"dcObject\0";
1934pub const NID_dcObject: i32 = 390;
1935pub const SN_domainComponent: &[u8; 3] = b"DC\0";
1936pub const LN_domainComponent: &[u8; 16] = b"domainComponent\0";
1937pub const NID_domainComponent: i32 = 391;
1938pub const SN_Domain: &[u8; 7] = b"domain\0";
1939pub const LN_Domain: &[u8; 7] = b"Domain\0";
1940pub const NID_Domain: i32 = 392;
1941pub const SN_selected_attribute_types: &[u8; 25] = b"selected-attribute-types\0";
1942pub const LN_selected_attribute_types: &[u8; 25] = b"Selected Attribute Types\0";
1943pub const NID_selected_attribute_types: i32 = 394;
1944pub const SN_clearance: &[u8; 10] = b"clearance\0";
1945pub const NID_clearance: i32 = 395;
1946pub const SN_md4WithRSAEncryption: &[u8; 8] = b"RSA-MD4\0";
1947pub const LN_md4WithRSAEncryption: &[u8; 21] = b"md4WithRSAEncryption\0";
1948pub const NID_md4WithRSAEncryption: i32 = 396;
1949pub const SN_ac_proxying: &[u8; 12] = b"ac-proxying\0";
1950pub const NID_ac_proxying: i32 = 397;
1951pub const SN_sinfo_access: &[u8; 18] = b"subjectInfoAccess\0";
1952pub const LN_sinfo_access: &[u8; 27] = b"Subject Information Access\0";
1953pub const NID_sinfo_access: i32 = 398;
1954pub const SN_id_aca_encAttrs: &[u8; 16] = b"id-aca-encAttrs\0";
1955pub const NID_id_aca_encAttrs: i32 = 399;
1956pub const SN_role: &[u8; 5] = b"role\0";
1957pub const LN_role: &[u8; 5] = b"role\0";
1958pub const NID_role: i32 = 400;
1959pub const SN_policy_constraints: &[u8; 18] = b"policyConstraints\0";
1960pub const LN_policy_constraints: &[u8; 26] = b"X509v3 Policy Constraints\0";
1961pub const NID_policy_constraints: i32 = 401;
1962pub const SN_target_information: &[u8; 18] = b"targetInformation\0";
1963pub const LN_target_information: &[u8; 20] = b"X509v3 AC Targeting\0";
1964pub const NID_target_information: i32 = 402;
1965pub const SN_no_rev_avail: &[u8; 11] = b"noRevAvail\0";
1966pub const LN_no_rev_avail: &[u8; 31] = b"X509v3 No Revocation Available\0";
1967pub const NID_no_rev_avail: i32 = 403;
1968pub const SN_ansi_X9_62: &[u8; 11] = b"ansi-X9-62\0";
1969pub const LN_ansi_X9_62: &[u8; 11] = b"ANSI X9.62\0";
1970pub const NID_ansi_X9_62: i32 = 405;
1971pub const SN_X9_62_prime_field: &[u8; 12] = b"prime-field\0";
1972pub const NID_X9_62_prime_field: i32 = 406;
1973pub const SN_X9_62_characteristic_two_field: &[u8; 25] = b"characteristic-two-field\0";
1974pub const NID_X9_62_characteristic_two_field: i32 = 407;
1975pub const SN_X9_62_id_ecPublicKey: &[u8; 15] = b"id-ecPublicKey\0";
1976pub const NID_X9_62_id_ecPublicKey: i32 = 408;
1977pub const SN_X9_62_prime192v1: &[u8; 11] = b"prime192v1\0";
1978pub const NID_X9_62_prime192v1: i32 = 409;
1979pub const SN_X9_62_prime192v2: &[u8; 11] = b"prime192v2\0";
1980pub const NID_X9_62_prime192v2: i32 = 410;
1981pub const SN_X9_62_prime192v3: &[u8; 11] = b"prime192v3\0";
1982pub const NID_X9_62_prime192v3: i32 = 411;
1983pub const SN_X9_62_prime239v1: &[u8; 11] = b"prime239v1\0";
1984pub const NID_X9_62_prime239v1: i32 = 412;
1985pub const SN_X9_62_prime239v2: &[u8; 11] = b"prime239v2\0";
1986pub const NID_X9_62_prime239v2: i32 = 413;
1987pub const SN_X9_62_prime239v3: &[u8; 11] = b"prime239v3\0";
1988pub const NID_X9_62_prime239v3: i32 = 414;
1989pub const SN_X9_62_prime256v1: &[u8; 11] = b"prime256v1\0";
1990pub const NID_X9_62_prime256v1: i32 = 415;
1991pub const SN_ecdsa_with_SHA1: &[u8; 16] = b"ecdsa-with-SHA1\0";
1992pub const NID_ecdsa_with_SHA1: i32 = 416;
1993pub const SN_ms_csp_name: &[u8; 8] = b"CSPName\0";
1994pub const LN_ms_csp_name: &[u8; 19] = b"Microsoft CSP Name\0";
1995pub const NID_ms_csp_name: i32 = 417;
1996pub const SN_aes_128_ecb: &[u8; 12] = b"AES-128-ECB\0";
1997pub const LN_aes_128_ecb: &[u8; 12] = b"aes-128-ecb\0";
1998pub const NID_aes_128_ecb: i32 = 418;
1999pub const SN_aes_128_cbc: &[u8; 12] = b"AES-128-CBC\0";
2000pub const LN_aes_128_cbc: &[u8; 12] = b"aes-128-cbc\0";
2001pub const NID_aes_128_cbc: i32 = 419;
2002pub const SN_aes_128_ofb128: &[u8; 12] = b"AES-128-OFB\0";
2003pub const LN_aes_128_ofb128: &[u8; 12] = b"aes-128-ofb\0";
2004pub const NID_aes_128_ofb128: i32 = 420;
2005pub const SN_aes_128_cfb128: &[u8; 12] = b"AES-128-CFB\0";
2006pub const LN_aes_128_cfb128: &[u8; 12] = b"aes-128-cfb\0";
2007pub const NID_aes_128_cfb128: i32 = 421;
2008pub const SN_aes_192_ecb: &[u8; 12] = b"AES-192-ECB\0";
2009pub const LN_aes_192_ecb: &[u8; 12] = b"aes-192-ecb\0";
2010pub const NID_aes_192_ecb: i32 = 422;
2011pub const SN_aes_192_cbc: &[u8; 12] = b"AES-192-CBC\0";
2012pub const LN_aes_192_cbc: &[u8; 12] = b"aes-192-cbc\0";
2013pub const NID_aes_192_cbc: i32 = 423;
2014pub const SN_aes_192_ofb128: &[u8; 12] = b"AES-192-OFB\0";
2015pub const LN_aes_192_ofb128: &[u8; 12] = b"aes-192-ofb\0";
2016pub const NID_aes_192_ofb128: i32 = 424;
2017pub const SN_aes_192_cfb128: &[u8; 12] = b"AES-192-CFB\0";
2018pub const LN_aes_192_cfb128: &[u8; 12] = b"aes-192-cfb\0";
2019pub const NID_aes_192_cfb128: i32 = 425;
2020pub const SN_aes_256_ecb: &[u8; 12] = b"AES-256-ECB\0";
2021pub const LN_aes_256_ecb: &[u8; 12] = b"aes-256-ecb\0";
2022pub const NID_aes_256_ecb: i32 = 426;
2023pub const SN_aes_256_cbc: &[u8; 12] = b"AES-256-CBC\0";
2024pub const LN_aes_256_cbc: &[u8; 12] = b"aes-256-cbc\0";
2025pub const NID_aes_256_cbc: i32 = 427;
2026pub const SN_aes_256_ofb128: &[u8; 12] = b"AES-256-OFB\0";
2027pub const LN_aes_256_ofb128: &[u8; 12] = b"aes-256-ofb\0";
2028pub const NID_aes_256_ofb128: i32 = 428;
2029pub const SN_aes_256_cfb128: &[u8; 12] = b"AES-256-CFB\0";
2030pub const LN_aes_256_cfb128: &[u8; 12] = b"aes-256-cfb\0";
2031pub const NID_aes_256_cfb128: i32 = 429;
2032pub const SN_hold_instruction_code: &[u8; 20] = b"holdInstructionCode\0";
2033pub const LN_hold_instruction_code: &[u8; 22] = b"Hold Instruction Code\0";
2034pub const NID_hold_instruction_code: i32 = 430;
2035pub const SN_hold_instruction_none: &[u8; 20] = b"holdInstructionNone\0";
2036pub const LN_hold_instruction_none: &[u8; 22] = b"Hold Instruction None\0";
2037pub const NID_hold_instruction_none: i32 = 431;
2038pub const SN_hold_instruction_call_issuer: &[u8; 26] = b"holdInstructionCallIssuer\0";
2039pub const LN_hold_instruction_call_issuer: &[u8; 29] = b"Hold Instruction Call Issuer\0";
2040pub const NID_hold_instruction_call_issuer: i32 = 432;
2041pub const SN_hold_instruction_reject: &[u8; 22] = b"holdInstructionReject\0";
2042pub const LN_hold_instruction_reject: &[u8; 24] = b"Hold Instruction Reject\0";
2043pub const NID_hold_instruction_reject: i32 = 433;
2044pub const SN_data: &[u8; 5] = b"data\0";
2045pub const NID_data: i32 = 434;
2046pub const SN_pss: &[u8; 4] = b"pss\0";
2047pub const NID_pss: i32 = 435;
2048pub const SN_ucl: &[u8; 4] = b"ucl\0";
2049pub const NID_ucl: i32 = 436;
2050pub const SN_pilot: &[u8; 6] = b"pilot\0";
2051pub const NID_pilot: i32 = 437;
2052pub const LN_pilotAttributeType: &[u8; 19] = b"pilotAttributeType\0";
2053pub const NID_pilotAttributeType: i32 = 438;
2054pub const LN_pilotAttributeSyntax: &[u8; 21] = b"pilotAttributeSyntax\0";
2055pub const NID_pilotAttributeSyntax: i32 = 439;
2056pub const LN_pilotObjectClass: &[u8; 17] = b"pilotObjectClass\0";
2057pub const NID_pilotObjectClass: i32 = 440;
2058pub const LN_pilotGroups: &[u8; 12] = b"pilotGroups\0";
2059pub const NID_pilotGroups: i32 = 441;
2060pub const LN_iA5StringSyntax: &[u8; 16] = b"iA5StringSyntax\0";
2061pub const NID_iA5StringSyntax: i32 = 442;
2062pub const LN_caseIgnoreIA5StringSyntax: &[u8; 26] = b"caseIgnoreIA5StringSyntax\0";
2063pub const NID_caseIgnoreIA5StringSyntax: i32 = 443;
2064pub const LN_pilotObject: &[u8; 12] = b"pilotObject\0";
2065pub const NID_pilotObject: i32 = 444;
2066pub const LN_pilotPerson: &[u8; 12] = b"pilotPerson\0";
2067pub const NID_pilotPerson: i32 = 445;
2068pub const SN_account: &[u8; 8] = b"account\0";
2069pub const NID_account: i32 = 446;
2070pub const SN_document: &[u8; 9] = b"document\0";
2071pub const NID_document: i32 = 447;
2072pub const SN_room: &[u8; 5] = b"room\0";
2073pub const NID_room: i32 = 448;
2074pub const LN_documentSeries: &[u8; 15] = b"documentSeries\0";
2075pub const NID_documentSeries: i32 = 449;
2076pub const LN_rFC822localPart: &[u8; 16] = b"rFC822localPart\0";
2077pub const NID_rFC822localPart: i32 = 450;
2078pub const LN_dNSDomain: &[u8; 10] = b"dNSDomain\0";
2079pub const NID_dNSDomain: i32 = 451;
2080pub const LN_domainRelatedObject: &[u8; 20] = b"domainRelatedObject\0";
2081pub const NID_domainRelatedObject: i32 = 452;
2082pub const LN_friendlyCountry: &[u8; 16] = b"friendlyCountry\0";
2083pub const NID_friendlyCountry: i32 = 453;
2084pub const LN_simpleSecurityObject: &[u8; 21] = b"simpleSecurityObject\0";
2085pub const NID_simpleSecurityObject: i32 = 454;
2086pub const LN_pilotOrganization: &[u8; 18] = b"pilotOrganization\0";
2087pub const NID_pilotOrganization: i32 = 455;
2088pub const LN_pilotDSA: &[u8; 9] = b"pilotDSA\0";
2089pub const NID_pilotDSA: i32 = 456;
2090pub const LN_qualityLabelledData: &[u8; 20] = b"qualityLabelledData\0";
2091pub const NID_qualityLabelledData: i32 = 457;
2092pub const SN_userId: &[u8; 4] = b"UID\0";
2093pub const LN_userId: &[u8; 7] = b"userId\0";
2094pub const NID_userId: i32 = 458;
2095pub const LN_textEncodedORAddress: &[u8; 21] = b"textEncodedORAddress\0";
2096pub const NID_textEncodedORAddress: i32 = 459;
2097pub const SN_rfc822Mailbox: &[u8; 5] = b"mail\0";
2098pub const LN_rfc822Mailbox: &[u8; 14] = b"rfc822Mailbox\0";
2099pub const NID_rfc822Mailbox: i32 = 460;
2100pub const SN_info: &[u8; 5] = b"info\0";
2101pub const NID_info: i32 = 461;
2102pub const LN_favouriteDrink: &[u8; 15] = b"favouriteDrink\0";
2103pub const NID_favouriteDrink: i32 = 462;
2104pub const LN_roomNumber: &[u8; 11] = b"roomNumber\0";
2105pub const NID_roomNumber: i32 = 463;
2106pub const SN_photo: &[u8; 6] = b"photo\0";
2107pub const NID_photo: i32 = 464;
2108pub const LN_userClass: &[u8; 10] = b"userClass\0";
2109pub const NID_userClass: i32 = 465;
2110pub const SN_host: &[u8; 5] = b"host\0";
2111pub const NID_host: i32 = 466;
2112pub const SN_manager: &[u8; 8] = b"manager\0";
2113pub const NID_manager: i32 = 467;
2114pub const LN_documentIdentifier: &[u8; 19] = b"documentIdentifier\0";
2115pub const NID_documentIdentifier: i32 = 468;
2116pub const LN_documentTitle: &[u8; 14] = b"documentTitle\0";
2117pub const NID_documentTitle: i32 = 469;
2118pub const LN_documentVersion: &[u8; 16] = b"documentVersion\0";
2119pub const NID_documentVersion: i32 = 470;
2120pub const LN_documentAuthor: &[u8; 15] = b"documentAuthor\0";
2121pub const NID_documentAuthor: i32 = 471;
2122pub const LN_documentLocation: &[u8; 17] = b"documentLocation\0";
2123pub const NID_documentLocation: i32 = 472;
2124pub const LN_homeTelephoneNumber: &[u8; 20] = b"homeTelephoneNumber\0";
2125pub const NID_homeTelephoneNumber: i32 = 473;
2126pub const SN_secretary: &[u8; 10] = b"secretary\0";
2127pub const NID_secretary: i32 = 474;
2128pub const LN_otherMailbox: &[u8; 13] = b"otherMailbox\0";
2129pub const NID_otherMailbox: i32 = 475;
2130pub const LN_lastModifiedTime: &[u8; 17] = b"lastModifiedTime\0";
2131pub const NID_lastModifiedTime: i32 = 476;
2132pub const LN_lastModifiedBy: &[u8; 15] = b"lastModifiedBy\0";
2133pub const NID_lastModifiedBy: i32 = 477;
2134pub const LN_aRecord: &[u8; 8] = b"aRecord\0";
2135pub const NID_aRecord: i32 = 478;
2136pub const LN_pilotAttributeType27: &[u8; 21] = b"pilotAttributeType27\0";
2137pub const NID_pilotAttributeType27: i32 = 479;
2138pub const LN_mXRecord: &[u8; 9] = b"mXRecord\0";
2139pub const NID_mXRecord: i32 = 480;
2140pub const LN_nSRecord: &[u8; 9] = b"nSRecord\0";
2141pub const NID_nSRecord: i32 = 481;
2142pub const LN_sOARecord: &[u8; 10] = b"sOARecord\0";
2143pub const NID_sOARecord: i32 = 482;
2144pub const LN_cNAMERecord: &[u8; 12] = b"cNAMERecord\0";
2145pub const NID_cNAMERecord: i32 = 483;
2146pub const LN_associatedDomain: &[u8; 17] = b"associatedDomain\0";
2147pub const NID_associatedDomain: i32 = 484;
2148pub const LN_associatedName: &[u8; 15] = b"associatedName\0";
2149pub const NID_associatedName: i32 = 485;
2150pub const LN_homePostalAddress: &[u8; 18] = b"homePostalAddress\0";
2151pub const NID_homePostalAddress: i32 = 486;
2152pub const LN_personalTitle: &[u8; 14] = b"personalTitle\0";
2153pub const NID_personalTitle: i32 = 487;
2154pub const LN_mobileTelephoneNumber: &[u8; 22] = b"mobileTelephoneNumber\0";
2155pub const NID_mobileTelephoneNumber: i32 = 488;
2156pub const LN_pagerTelephoneNumber: &[u8; 21] = b"pagerTelephoneNumber\0";
2157pub const NID_pagerTelephoneNumber: i32 = 489;
2158pub const LN_friendlyCountryName: &[u8; 20] = b"friendlyCountryName\0";
2159pub const NID_friendlyCountryName: i32 = 490;
2160pub const LN_organizationalStatus: &[u8; 21] = b"organizationalStatus\0";
2161pub const NID_organizationalStatus: i32 = 491;
2162pub const LN_janetMailbox: &[u8; 13] = b"janetMailbox\0";
2163pub const NID_janetMailbox: i32 = 492;
2164pub const LN_mailPreferenceOption: &[u8; 21] = b"mailPreferenceOption\0";
2165pub const NID_mailPreferenceOption: i32 = 493;
2166pub const LN_buildingName: &[u8; 13] = b"buildingName\0";
2167pub const NID_buildingName: i32 = 494;
2168pub const LN_dSAQuality: &[u8; 11] = b"dSAQuality\0";
2169pub const NID_dSAQuality: i32 = 495;
2170pub const LN_singleLevelQuality: &[u8; 19] = b"singleLevelQuality\0";
2171pub const NID_singleLevelQuality: i32 = 496;
2172pub const LN_subtreeMinimumQuality: &[u8; 22] = b"subtreeMinimumQuality\0";
2173pub const NID_subtreeMinimumQuality: i32 = 497;
2174pub const LN_subtreeMaximumQuality: &[u8; 22] = b"subtreeMaximumQuality\0";
2175pub const NID_subtreeMaximumQuality: i32 = 498;
2176pub const LN_personalSignature: &[u8; 18] = b"personalSignature\0";
2177pub const NID_personalSignature: i32 = 499;
2178pub const LN_dITRedirect: &[u8; 12] = b"dITRedirect\0";
2179pub const NID_dITRedirect: i32 = 500;
2180pub const SN_audio: &[u8; 6] = b"audio\0";
2181pub const NID_audio: i32 = 501;
2182pub const LN_documentPublisher: &[u8; 18] = b"documentPublisher\0";
2183pub const NID_documentPublisher: i32 = 502;
2184pub const LN_x500UniqueIdentifier: &[u8; 21] = b"x500UniqueIdentifier\0";
2185pub const NID_x500UniqueIdentifier: i32 = 503;
2186pub const SN_mime_mhs: &[u8; 9] = b"mime-mhs\0";
2187pub const LN_mime_mhs: &[u8; 9] = b"MIME MHS\0";
2188pub const NID_mime_mhs: i32 = 504;
2189pub const SN_mime_mhs_headings: &[u8; 18] = b"mime-mhs-headings\0";
2190pub const LN_mime_mhs_headings: &[u8; 18] = b"mime-mhs-headings\0";
2191pub const NID_mime_mhs_headings: i32 = 505;
2192pub const SN_mime_mhs_bodies: &[u8; 16] = b"mime-mhs-bodies\0";
2193pub const LN_mime_mhs_bodies: &[u8; 16] = b"mime-mhs-bodies\0";
2194pub const NID_mime_mhs_bodies: i32 = 506;
2195pub const SN_id_hex_partial_message: &[u8; 23] = b"id-hex-partial-message\0";
2196pub const LN_id_hex_partial_message: &[u8; 23] = b"id-hex-partial-message\0";
2197pub const NID_id_hex_partial_message: i32 = 507;
2198pub const SN_id_hex_multipart_message: &[u8; 25] = b"id-hex-multipart-message\0";
2199pub const LN_id_hex_multipart_message: &[u8; 25] = b"id-hex-multipart-message\0";
2200pub const NID_id_hex_multipart_message: i32 = 508;
2201pub const LN_generationQualifier: &[u8; 20] = b"generationQualifier\0";
2202pub const NID_generationQualifier: i32 = 509;
2203pub const LN_pseudonym: &[u8; 10] = b"pseudonym\0";
2204pub const NID_pseudonym: i32 = 510;
2205pub const SN_id_set: &[u8; 7] = b"id-set\0";
2206pub const LN_id_set: &[u8; 31] = b"Secure Electronic Transactions\0";
2207pub const NID_id_set: i32 = 512;
2208pub const SN_set_ctype: &[u8; 10] = b"set-ctype\0";
2209pub const LN_set_ctype: &[u8; 14] = b"content types\0";
2210pub const NID_set_ctype: i32 = 513;
2211pub const SN_set_msgExt: &[u8; 11] = b"set-msgExt\0";
2212pub const LN_set_msgExt: &[u8; 19] = b"message extensions\0";
2213pub const NID_set_msgExt: i32 = 514;
2214pub const SN_set_attr: &[u8; 9] = b"set-attr\0";
2215pub const NID_set_attr: i32 = 515;
2216pub const SN_set_policy: &[u8; 11] = b"set-policy\0";
2217pub const NID_set_policy: i32 = 516;
2218pub const SN_set_certExt: &[u8; 12] = b"set-certExt\0";
2219pub const LN_set_certExt: &[u8; 23] = b"certificate extensions\0";
2220pub const NID_set_certExt: i32 = 517;
2221pub const SN_set_brand: &[u8; 10] = b"set-brand\0";
2222pub const NID_set_brand: i32 = 518;
2223pub const SN_setct_PANData: &[u8; 14] = b"setct-PANData\0";
2224pub const NID_setct_PANData: i32 = 519;
2225pub const SN_setct_PANToken: &[u8; 15] = b"setct-PANToken\0";
2226pub const NID_setct_PANToken: i32 = 520;
2227pub const SN_setct_PANOnly: &[u8; 14] = b"setct-PANOnly\0";
2228pub const NID_setct_PANOnly: i32 = 521;
2229pub const SN_setct_OIData: &[u8; 13] = b"setct-OIData\0";
2230pub const NID_setct_OIData: i32 = 522;
2231pub const SN_setct_PI: &[u8; 9] = b"setct-PI\0";
2232pub const NID_setct_PI: i32 = 523;
2233pub const SN_setct_PIData: &[u8; 13] = b"setct-PIData\0";
2234pub const NID_setct_PIData: i32 = 524;
2235pub const SN_setct_PIDataUnsigned: &[u8; 21] = b"setct-PIDataUnsigned\0";
2236pub const NID_setct_PIDataUnsigned: i32 = 525;
2237pub const SN_setct_HODInput: &[u8; 15] = b"setct-HODInput\0";
2238pub const NID_setct_HODInput: i32 = 526;
2239pub const SN_setct_AuthResBaggage: &[u8; 21] = b"setct-AuthResBaggage\0";
2240pub const NID_setct_AuthResBaggage: i32 = 527;
2241pub const SN_setct_AuthRevReqBaggage: &[u8; 24] = b"setct-AuthRevReqBaggage\0";
2242pub const NID_setct_AuthRevReqBaggage: i32 = 528;
2243pub const SN_setct_AuthRevResBaggage: &[u8; 24] = b"setct-AuthRevResBaggage\0";
2244pub const NID_setct_AuthRevResBaggage: i32 = 529;
2245pub const SN_setct_CapTokenSeq: &[u8; 18] = b"setct-CapTokenSeq\0";
2246pub const NID_setct_CapTokenSeq: i32 = 530;
2247pub const SN_setct_PInitResData: &[u8; 19] = b"setct-PInitResData\0";
2248pub const NID_setct_PInitResData: i32 = 531;
2249pub const SN_setct_PI_TBS: &[u8; 13] = b"setct-PI-TBS\0";
2250pub const NID_setct_PI_TBS: i32 = 532;
2251pub const SN_setct_PResData: &[u8; 15] = b"setct-PResData\0";
2252pub const NID_setct_PResData: i32 = 533;
2253pub const SN_setct_AuthReqTBS: &[u8; 17] = b"setct-AuthReqTBS\0";
2254pub const NID_setct_AuthReqTBS: i32 = 534;
2255pub const SN_setct_AuthResTBS: &[u8; 17] = b"setct-AuthResTBS\0";
2256pub const NID_setct_AuthResTBS: i32 = 535;
2257pub const SN_setct_AuthResTBSX: &[u8; 18] = b"setct-AuthResTBSX\0";
2258pub const NID_setct_AuthResTBSX: i32 = 536;
2259pub const SN_setct_AuthTokenTBS: &[u8; 19] = b"setct-AuthTokenTBS\0";
2260pub const NID_setct_AuthTokenTBS: i32 = 537;
2261pub const SN_setct_CapTokenData: &[u8; 19] = b"setct-CapTokenData\0";
2262pub const NID_setct_CapTokenData: i32 = 538;
2263pub const SN_setct_CapTokenTBS: &[u8; 18] = b"setct-CapTokenTBS\0";
2264pub const NID_setct_CapTokenTBS: i32 = 539;
2265pub const SN_setct_AcqCardCodeMsg: &[u8; 21] = b"setct-AcqCardCodeMsg\0";
2266pub const NID_setct_AcqCardCodeMsg: i32 = 540;
2267pub const SN_setct_AuthRevReqTBS: &[u8; 20] = b"setct-AuthRevReqTBS\0";
2268pub const NID_setct_AuthRevReqTBS: i32 = 541;
2269pub const SN_setct_AuthRevResData: &[u8; 21] = b"setct-AuthRevResData\0";
2270pub const NID_setct_AuthRevResData: i32 = 542;
2271pub const SN_setct_AuthRevResTBS: &[u8; 20] = b"setct-AuthRevResTBS\0";
2272pub const NID_setct_AuthRevResTBS: i32 = 543;
2273pub const SN_setct_CapReqTBS: &[u8; 16] = b"setct-CapReqTBS\0";
2274pub const NID_setct_CapReqTBS: i32 = 544;
2275pub const SN_setct_CapReqTBSX: &[u8; 17] = b"setct-CapReqTBSX\0";
2276pub const NID_setct_CapReqTBSX: i32 = 545;
2277pub const SN_setct_CapResData: &[u8; 17] = b"setct-CapResData\0";
2278pub const NID_setct_CapResData: i32 = 546;
2279pub const SN_setct_CapRevReqTBS: &[u8; 19] = b"setct-CapRevReqTBS\0";
2280pub const NID_setct_CapRevReqTBS: i32 = 547;
2281pub const SN_setct_CapRevReqTBSX: &[u8; 20] = b"setct-CapRevReqTBSX\0";
2282pub const NID_setct_CapRevReqTBSX: i32 = 548;
2283pub const SN_setct_CapRevResData: &[u8; 20] = b"setct-CapRevResData\0";
2284pub const NID_setct_CapRevResData: i32 = 549;
2285pub const SN_setct_CredReqTBS: &[u8; 17] = b"setct-CredReqTBS\0";
2286pub const NID_setct_CredReqTBS: i32 = 550;
2287pub const SN_setct_CredReqTBSX: &[u8; 18] = b"setct-CredReqTBSX\0";
2288pub const NID_setct_CredReqTBSX: i32 = 551;
2289pub const SN_setct_CredResData: &[u8; 18] = b"setct-CredResData\0";
2290pub const NID_setct_CredResData: i32 = 552;
2291pub const SN_setct_CredRevReqTBS: &[u8; 20] = b"setct-CredRevReqTBS\0";
2292pub const NID_setct_CredRevReqTBS: i32 = 553;
2293pub const SN_setct_CredRevReqTBSX: &[u8; 21] = b"setct-CredRevReqTBSX\0";
2294pub const NID_setct_CredRevReqTBSX: i32 = 554;
2295pub const SN_setct_CredRevResData: &[u8; 21] = b"setct-CredRevResData\0";
2296pub const NID_setct_CredRevResData: i32 = 555;
2297pub const SN_setct_PCertReqData: &[u8; 19] = b"setct-PCertReqData\0";
2298pub const NID_setct_PCertReqData: i32 = 556;
2299pub const SN_setct_PCertResTBS: &[u8; 18] = b"setct-PCertResTBS\0";
2300pub const NID_setct_PCertResTBS: i32 = 557;
2301pub const SN_setct_BatchAdminReqData: &[u8; 24] = b"setct-BatchAdminReqData\0";
2302pub const NID_setct_BatchAdminReqData: i32 = 558;
2303pub const SN_setct_BatchAdminResData: &[u8; 24] = b"setct-BatchAdminResData\0";
2304pub const NID_setct_BatchAdminResData: i32 = 559;
2305pub const SN_setct_CardCInitResTBS: &[u8; 22] = b"setct-CardCInitResTBS\0";
2306pub const NID_setct_CardCInitResTBS: i32 = 560;
2307pub const SN_setct_MeAqCInitResTBS: &[u8; 22] = b"setct-MeAqCInitResTBS\0";
2308pub const NID_setct_MeAqCInitResTBS: i32 = 561;
2309pub const SN_setct_RegFormResTBS: &[u8; 20] = b"setct-RegFormResTBS\0";
2310pub const NID_setct_RegFormResTBS: i32 = 562;
2311pub const SN_setct_CertReqData: &[u8; 18] = b"setct-CertReqData\0";
2312pub const NID_setct_CertReqData: i32 = 563;
2313pub const SN_setct_CertReqTBS: &[u8; 17] = b"setct-CertReqTBS\0";
2314pub const NID_setct_CertReqTBS: i32 = 564;
2315pub const SN_setct_CertResData: &[u8; 18] = b"setct-CertResData\0";
2316pub const NID_setct_CertResData: i32 = 565;
2317pub const SN_setct_CertInqReqTBS: &[u8; 20] = b"setct-CertInqReqTBS\0";
2318pub const NID_setct_CertInqReqTBS: i32 = 566;
2319pub const SN_setct_ErrorTBS: &[u8; 15] = b"setct-ErrorTBS\0";
2320pub const NID_setct_ErrorTBS: i32 = 567;
2321pub const SN_setct_PIDualSignedTBE: &[u8; 22] = b"setct-PIDualSignedTBE\0";
2322pub const NID_setct_PIDualSignedTBE: i32 = 568;
2323pub const SN_setct_PIUnsignedTBE: &[u8; 20] = b"setct-PIUnsignedTBE\0";
2324pub const NID_setct_PIUnsignedTBE: i32 = 569;
2325pub const SN_setct_AuthReqTBE: &[u8; 17] = b"setct-AuthReqTBE\0";
2326pub const NID_setct_AuthReqTBE: i32 = 570;
2327pub const SN_setct_AuthResTBE: &[u8; 17] = b"setct-AuthResTBE\0";
2328pub const NID_setct_AuthResTBE: i32 = 571;
2329pub const SN_setct_AuthResTBEX: &[u8; 18] = b"setct-AuthResTBEX\0";
2330pub const NID_setct_AuthResTBEX: i32 = 572;
2331pub const SN_setct_AuthTokenTBE: &[u8; 19] = b"setct-AuthTokenTBE\0";
2332pub const NID_setct_AuthTokenTBE: i32 = 573;
2333pub const SN_setct_CapTokenTBE: &[u8; 18] = b"setct-CapTokenTBE\0";
2334pub const NID_setct_CapTokenTBE: i32 = 574;
2335pub const SN_setct_CapTokenTBEX: &[u8; 19] = b"setct-CapTokenTBEX\0";
2336pub const NID_setct_CapTokenTBEX: i32 = 575;
2337pub const SN_setct_AcqCardCodeMsgTBE: &[u8; 24] = b"setct-AcqCardCodeMsgTBE\0";
2338pub const NID_setct_AcqCardCodeMsgTBE: i32 = 576;
2339pub const SN_setct_AuthRevReqTBE: &[u8; 20] = b"setct-AuthRevReqTBE\0";
2340pub const NID_setct_AuthRevReqTBE: i32 = 577;
2341pub const SN_setct_AuthRevResTBE: &[u8; 20] = b"setct-AuthRevResTBE\0";
2342pub const NID_setct_AuthRevResTBE: i32 = 578;
2343pub const SN_setct_AuthRevResTBEB: &[u8; 21] = b"setct-AuthRevResTBEB\0";
2344pub const NID_setct_AuthRevResTBEB: i32 = 579;
2345pub const SN_setct_CapReqTBE: &[u8; 16] = b"setct-CapReqTBE\0";
2346pub const NID_setct_CapReqTBE: i32 = 580;
2347pub const SN_setct_CapReqTBEX: &[u8; 17] = b"setct-CapReqTBEX\0";
2348pub const NID_setct_CapReqTBEX: i32 = 581;
2349pub const SN_setct_CapResTBE: &[u8; 16] = b"setct-CapResTBE\0";
2350pub const NID_setct_CapResTBE: i32 = 582;
2351pub const SN_setct_CapRevReqTBE: &[u8; 19] = b"setct-CapRevReqTBE\0";
2352pub const NID_setct_CapRevReqTBE: i32 = 583;
2353pub const SN_setct_CapRevReqTBEX: &[u8; 20] = b"setct-CapRevReqTBEX\0";
2354pub const NID_setct_CapRevReqTBEX: i32 = 584;
2355pub const SN_setct_CapRevResTBE: &[u8; 19] = b"setct-CapRevResTBE\0";
2356pub const NID_setct_CapRevResTBE: i32 = 585;
2357pub const SN_setct_CredReqTBE: &[u8; 17] = b"setct-CredReqTBE\0";
2358pub const NID_setct_CredReqTBE: i32 = 586;
2359pub const SN_setct_CredReqTBEX: &[u8; 18] = b"setct-CredReqTBEX\0";
2360pub const NID_setct_CredReqTBEX: i32 = 587;
2361pub const SN_setct_CredResTBE: &[u8; 17] = b"setct-CredResTBE\0";
2362pub const NID_setct_CredResTBE: i32 = 588;
2363pub const SN_setct_CredRevReqTBE: &[u8; 20] = b"setct-CredRevReqTBE\0";
2364pub const NID_setct_CredRevReqTBE: i32 = 589;
2365pub const SN_setct_CredRevReqTBEX: &[u8; 21] = b"setct-CredRevReqTBEX\0";
2366pub const NID_setct_CredRevReqTBEX: i32 = 590;
2367pub const SN_setct_CredRevResTBE: &[u8; 20] = b"setct-CredRevResTBE\0";
2368pub const NID_setct_CredRevResTBE: i32 = 591;
2369pub const SN_setct_BatchAdminReqTBE: &[u8; 23] = b"setct-BatchAdminReqTBE\0";
2370pub const NID_setct_BatchAdminReqTBE: i32 = 592;
2371pub const SN_setct_BatchAdminResTBE: &[u8; 23] = b"setct-BatchAdminResTBE\0";
2372pub const NID_setct_BatchAdminResTBE: i32 = 593;
2373pub const SN_setct_RegFormReqTBE: &[u8; 20] = b"setct-RegFormReqTBE\0";
2374pub const NID_setct_RegFormReqTBE: i32 = 594;
2375pub const SN_setct_CertReqTBE: &[u8; 17] = b"setct-CertReqTBE\0";
2376pub const NID_setct_CertReqTBE: i32 = 595;
2377pub const SN_setct_CertReqTBEX: &[u8; 18] = b"setct-CertReqTBEX\0";
2378pub const NID_setct_CertReqTBEX: i32 = 596;
2379pub const SN_setct_CertResTBE: &[u8; 17] = b"setct-CertResTBE\0";
2380pub const NID_setct_CertResTBE: i32 = 597;
2381pub const SN_setct_CRLNotificationTBS: &[u8; 25] = b"setct-CRLNotificationTBS\0";
2382pub const NID_setct_CRLNotificationTBS: i32 = 598;
2383pub const SN_setct_CRLNotificationResTBS: &[u8; 28] = b"setct-CRLNotificationResTBS\0";
2384pub const NID_setct_CRLNotificationResTBS: i32 = 599;
2385pub const SN_setct_BCIDistributionTBS: &[u8; 25] = b"setct-BCIDistributionTBS\0";
2386pub const NID_setct_BCIDistributionTBS: i32 = 600;
2387pub const SN_setext_genCrypt: &[u8; 16] = b"setext-genCrypt\0";
2388pub const LN_setext_genCrypt: &[u8; 19] = b"generic cryptogram\0";
2389pub const NID_setext_genCrypt: i32 = 601;
2390pub const SN_setext_miAuth: &[u8; 14] = b"setext-miAuth\0";
2391pub const LN_setext_miAuth: &[u8; 24] = b"merchant initiated auth\0";
2392pub const NID_setext_miAuth: i32 = 602;
2393pub const SN_setext_pinSecure: &[u8; 17] = b"setext-pinSecure\0";
2394pub const NID_setext_pinSecure: i32 = 603;
2395pub const SN_setext_pinAny: &[u8; 14] = b"setext-pinAny\0";
2396pub const NID_setext_pinAny: i32 = 604;
2397pub const SN_setext_track2: &[u8; 14] = b"setext-track2\0";
2398pub const NID_setext_track2: i32 = 605;
2399pub const SN_setext_cv: &[u8; 10] = b"setext-cv\0";
2400pub const LN_setext_cv: &[u8; 24] = b"additional verification\0";
2401pub const NID_setext_cv: i32 = 606;
2402pub const SN_set_policy_root: &[u8; 16] = b"set-policy-root\0";
2403pub const NID_set_policy_root: i32 = 607;
2404pub const SN_setCext_hashedRoot: &[u8; 19] = b"setCext-hashedRoot\0";
2405pub const NID_setCext_hashedRoot: i32 = 608;
2406pub const SN_setCext_certType: &[u8; 17] = b"setCext-certType\0";
2407pub const NID_setCext_certType: i32 = 609;
2408pub const SN_setCext_merchData: &[u8; 18] = b"setCext-merchData\0";
2409pub const NID_setCext_merchData: i32 = 610;
2410pub const SN_setCext_cCertRequired: &[u8; 22] = b"setCext-cCertRequired\0";
2411pub const NID_setCext_cCertRequired: i32 = 611;
2412pub const SN_setCext_tunneling: &[u8; 18] = b"setCext-tunneling\0";
2413pub const NID_setCext_tunneling: i32 = 612;
2414pub const SN_setCext_setExt: &[u8; 15] = b"setCext-setExt\0";
2415pub const NID_setCext_setExt: i32 = 613;
2416pub const SN_setCext_setQualf: &[u8; 17] = b"setCext-setQualf\0";
2417pub const NID_setCext_setQualf: i32 = 614;
2418pub const SN_setCext_PGWYcapabilities: &[u8; 25] = b"setCext-PGWYcapabilities\0";
2419pub const NID_setCext_PGWYcapabilities: i32 = 615;
2420pub const SN_setCext_TokenIdentifier: &[u8; 24] = b"setCext-TokenIdentifier\0";
2421pub const NID_setCext_TokenIdentifier: i32 = 616;
2422pub const SN_setCext_Track2Data: &[u8; 19] = b"setCext-Track2Data\0";
2423pub const NID_setCext_Track2Data: i32 = 617;
2424pub const SN_setCext_TokenType: &[u8; 18] = b"setCext-TokenType\0";
2425pub const NID_setCext_TokenType: i32 = 618;
2426pub const SN_setCext_IssuerCapabilities: &[u8; 27] = b"setCext-IssuerCapabilities\0";
2427pub const NID_setCext_IssuerCapabilities: i32 = 619;
2428pub const SN_setAttr_Cert: &[u8; 13] = b"setAttr-Cert\0";
2429pub const NID_setAttr_Cert: i32 = 620;
2430pub const SN_setAttr_PGWYcap: &[u8; 16] = b"setAttr-PGWYcap\0";
2431pub const LN_setAttr_PGWYcap: &[u8; 29] = b"payment gateway capabilities\0";
2432pub const NID_setAttr_PGWYcap: i32 = 621;
2433pub const SN_setAttr_TokenType: &[u8; 18] = b"setAttr-TokenType\0";
2434pub const NID_setAttr_TokenType: i32 = 622;
2435pub const SN_setAttr_IssCap: &[u8; 15] = b"setAttr-IssCap\0";
2436pub const LN_setAttr_IssCap: &[u8; 20] = b"issuer capabilities\0";
2437pub const NID_setAttr_IssCap: i32 = 623;
2438pub const SN_set_rootKeyThumb: &[u8; 17] = b"set-rootKeyThumb\0";
2439pub const NID_set_rootKeyThumb: i32 = 624;
2440pub const SN_set_addPolicy: &[u8; 14] = b"set-addPolicy\0";
2441pub const NID_set_addPolicy: i32 = 625;
2442pub const SN_setAttr_Token_EMV: &[u8; 18] = b"setAttr-Token-EMV\0";
2443pub const NID_setAttr_Token_EMV: i32 = 626;
2444pub const SN_setAttr_Token_B0Prime: &[u8; 22] = b"setAttr-Token-B0Prime\0";
2445pub const NID_setAttr_Token_B0Prime: i32 = 627;
2446pub const SN_setAttr_IssCap_CVM: &[u8; 19] = b"setAttr-IssCap-CVM\0";
2447pub const NID_setAttr_IssCap_CVM: i32 = 628;
2448pub const SN_setAttr_IssCap_T2: &[u8; 18] = b"setAttr-IssCap-T2\0";
2449pub const NID_setAttr_IssCap_T2: i32 = 629;
2450pub const SN_setAttr_IssCap_Sig: &[u8; 19] = b"setAttr-IssCap-Sig\0";
2451pub const NID_setAttr_IssCap_Sig: i32 = 630;
2452pub const SN_setAttr_GenCryptgrm: &[u8; 20] = b"setAttr-GenCryptgrm\0";
2453pub const LN_setAttr_GenCryptgrm: &[u8; 20] = b"generate cryptogram\0";
2454pub const NID_setAttr_GenCryptgrm: i32 = 631;
2455pub const SN_setAttr_T2Enc: &[u8; 14] = b"setAttr-T2Enc\0";
2456pub const LN_setAttr_T2Enc: &[u8; 18] = b"encrypted track 2\0";
2457pub const NID_setAttr_T2Enc: i32 = 632;
2458pub const SN_setAttr_T2cleartxt: &[u8; 19] = b"setAttr-T2cleartxt\0";
2459pub const LN_setAttr_T2cleartxt: &[u8; 18] = b"cleartext track 2\0";
2460pub const NID_setAttr_T2cleartxt: i32 = 633;
2461pub const SN_setAttr_TokICCsig: &[u8; 18] = b"setAttr-TokICCsig\0";
2462pub const LN_setAttr_TokICCsig: &[u8; 23] = b"ICC or token signature\0";
2463pub const NID_setAttr_TokICCsig: i32 = 634;
2464pub const SN_setAttr_SecDevSig: &[u8; 18] = b"setAttr-SecDevSig\0";
2465pub const LN_setAttr_SecDevSig: &[u8; 24] = b"secure device signature\0";
2466pub const NID_setAttr_SecDevSig: i32 = 635;
2467pub const SN_set_brand_IATA_ATA: &[u8; 19] = b"set-brand-IATA-ATA\0";
2468pub const NID_set_brand_IATA_ATA: i32 = 636;
2469pub const SN_set_brand_Diners: &[u8; 17] = b"set-brand-Diners\0";
2470pub const NID_set_brand_Diners: i32 = 637;
2471pub const SN_set_brand_AmericanExpress: &[u8; 26] = b"set-brand-AmericanExpress\0";
2472pub const NID_set_brand_AmericanExpress: i32 = 638;
2473pub const SN_set_brand_JCB: &[u8; 14] = b"set-brand-JCB\0";
2474pub const NID_set_brand_JCB: i32 = 639;
2475pub const SN_set_brand_Visa: &[u8; 15] = b"set-brand-Visa\0";
2476pub const NID_set_brand_Visa: i32 = 640;
2477pub const SN_set_brand_MasterCard: &[u8; 21] = b"set-brand-MasterCard\0";
2478pub const NID_set_brand_MasterCard: i32 = 641;
2479pub const SN_set_brand_Novus: &[u8; 16] = b"set-brand-Novus\0";
2480pub const NID_set_brand_Novus: i32 = 642;
2481pub const SN_des_cdmf: &[u8; 9] = b"DES-CDMF\0";
2482pub const LN_des_cdmf: &[u8; 9] = b"des-cdmf\0";
2483pub const NID_des_cdmf: i32 = 643;
2484pub const SN_rsaOAEPEncryptionSET: &[u8; 21] = b"rsaOAEPEncryptionSET\0";
2485pub const NID_rsaOAEPEncryptionSET: i32 = 644;
2486pub const SN_itu_t: &[u8; 6] = b"ITU-T\0";
2487pub const LN_itu_t: &[u8; 6] = b"itu-t\0";
2488pub const NID_itu_t: i32 = 645;
2489pub const OBJ_itu_t: i32 = 0;
2490pub const SN_joint_iso_itu_t: &[u8; 16] = b"JOINT-ISO-ITU-T\0";
2491pub const LN_joint_iso_itu_t: &[u8; 16] = b"joint-iso-itu-t\0";
2492pub const NID_joint_iso_itu_t: i32 = 646;
2493pub const OBJ_joint_iso_itu_t: i32 = 2;
2494pub const SN_international_organizations: &[u8; 28] = b"international-organizations\0";
2495pub const LN_international_organizations: &[u8; 28] = b"International Organizations\0";
2496pub const NID_international_organizations: i32 = 647;
2497pub const SN_ms_smartcard_login: &[u8; 17] = b"msSmartcardLogin\0";
2498pub const LN_ms_smartcard_login: &[u8; 25] = b"Microsoft Smartcardlogin\0";
2499pub const NID_ms_smartcard_login: i32 = 648;
2500pub const SN_ms_upn: &[u8; 6] = b"msUPN\0";
2501pub const LN_ms_upn: &[u8; 35] = b"Microsoft Universal Principal Name\0";
2502pub const NID_ms_upn: i32 = 649;
2503pub const SN_aes_128_cfb1: &[u8; 13] = b"AES-128-CFB1\0";
2504pub const LN_aes_128_cfb1: &[u8; 13] = b"aes-128-cfb1\0";
2505pub const NID_aes_128_cfb1: i32 = 650;
2506pub const SN_aes_192_cfb1: &[u8; 13] = b"AES-192-CFB1\0";
2507pub const LN_aes_192_cfb1: &[u8; 13] = b"aes-192-cfb1\0";
2508pub const NID_aes_192_cfb1: i32 = 651;
2509pub const SN_aes_256_cfb1: &[u8; 13] = b"AES-256-CFB1\0";
2510pub const LN_aes_256_cfb1: &[u8; 13] = b"aes-256-cfb1\0";
2511pub const NID_aes_256_cfb1: i32 = 652;
2512pub const SN_aes_128_cfb8: &[u8; 13] = b"AES-128-CFB8\0";
2513pub const LN_aes_128_cfb8: &[u8; 13] = b"aes-128-cfb8\0";
2514pub const NID_aes_128_cfb8: i32 = 653;
2515pub const SN_aes_192_cfb8: &[u8; 13] = b"AES-192-CFB8\0";
2516pub const LN_aes_192_cfb8: &[u8; 13] = b"aes-192-cfb8\0";
2517pub const NID_aes_192_cfb8: i32 = 654;
2518pub const SN_aes_256_cfb8: &[u8; 13] = b"AES-256-CFB8\0";
2519pub const LN_aes_256_cfb8: &[u8; 13] = b"aes-256-cfb8\0";
2520pub const NID_aes_256_cfb8: i32 = 655;
2521pub const SN_des_cfb1: &[u8; 9] = b"DES-CFB1\0";
2522pub const LN_des_cfb1: &[u8; 9] = b"des-cfb1\0";
2523pub const NID_des_cfb1: i32 = 656;
2524pub const SN_des_cfb8: &[u8; 9] = b"DES-CFB8\0";
2525pub const LN_des_cfb8: &[u8; 9] = b"des-cfb8\0";
2526pub const NID_des_cfb8: i32 = 657;
2527pub const SN_des_ede3_cfb1: &[u8; 14] = b"DES-EDE3-CFB1\0";
2528pub const LN_des_ede3_cfb1: &[u8; 14] = b"des-ede3-cfb1\0";
2529pub const NID_des_ede3_cfb1: i32 = 658;
2530pub const SN_des_ede3_cfb8: &[u8; 14] = b"DES-EDE3-CFB8\0";
2531pub const LN_des_ede3_cfb8: &[u8; 14] = b"des-ede3-cfb8\0";
2532pub const NID_des_ede3_cfb8: i32 = 659;
2533pub const SN_streetAddress: &[u8; 7] = b"street\0";
2534pub const LN_streetAddress: &[u8; 14] = b"streetAddress\0";
2535pub const NID_streetAddress: i32 = 660;
2536pub const LN_postalCode: &[u8; 11] = b"postalCode\0";
2537pub const NID_postalCode: i32 = 661;
2538pub const SN_id_ppl: &[u8; 7] = b"id-ppl\0";
2539pub const NID_id_ppl: i32 = 662;
2540pub const SN_proxyCertInfo: &[u8; 14] = b"proxyCertInfo\0";
2541pub const LN_proxyCertInfo: &[u8; 30] = b"Proxy Certificate Information\0";
2542pub const NID_proxyCertInfo: i32 = 663;
2543pub const SN_id_ppl_anyLanguage: &[u8; 19] = b"id-ppl-anyLanguage\0";
2544pub const LN_id_ppl_anyLanguage: &[u8; 13] = b"Any language\0";
2545pub const NID_id_ppl_anyLanguage: i32 = 664;
2546pub const SN_id_ppl_inheritAll: &[u8; 18] = b"id-ppl-inheritAll\0";
2547pub const LN_id_ppl_inheritAll: &[u8; 12] = b"Inherit all\0";
2548pub const NID_id_ppl_inheritAll: i32 = 665;
2549pub const SN_name_constraints: &[u8; 16] = b"nameConstraints\0";
2550pub const LN_name_constraints: &[u8; 24] = b"X509v3 Name Constraints\0";
2551pub const NID_name_constraints: i32 = 666;
2552pub const SN_Independent: &[u8; 19] = b"id-ppl-independent\0";
2553pub const LN_Independent: &[u8; 12] = b"Independent\0";
2554pub const NID_Independent: i32 = 667;
2555pub const SN_sha256WithRSAEncryption: &[u8; 11] = b"RSA-SHA256\0";
2556pub const LN_sha256WithRSAEncryption: &[u8; 24] = b"sha256WithRSAEncryption\0";
2557pub const NID_sha256WithRSAEncryption: i32 = 668;
2558pub const SN_sha384WithRSAEncryption: &[u8; 11] = b"RSA-SHA384\0";
2559pub const LN_sha384WithRSAEncryption: &[u8; 24] = b"sha384WithRSAEncryption\0";
2560pub const NID_sha384WithRSAEncryption: i32 = 669;
2561pub const SN_sha512WithRSAEncryption: &[u8; 11] = b"RSA-SHA512\0";
2562pub const LN_sha512WithRSAEncryption: &[u8; 24] = b"sha512WithRSAEncryption\0";
2563pub const NID_sha512WithRSAEncryption: i32 = 670;
2564pub const SN_sha224WithRSAEncryption: &[u8; 11] = b"RSA-SHA224\0";
2565pub const LN_sha224WithRSAEncryption: &[u8; 24] = b"sha224WithRSAEncryption\0";
2566pub const NID_sha224WithRSAEncryption: i32 = 671;
2567pub const SN_sha256: &[u8; 7] = b"SHA256\0";
2568pub const LN_sha256: &[u8; 7] = b"sha256\0";
2569pub const NID_sha256: i32 = 672;
2570pub const SN_sha384: &[u8; 7] = b"SHA384\0";
2571pub const LN_sha384: &[u8; 7] = b"sha384\0";
2572pub const NID_sha384: i32 = 673;
2573pub const SN_sha512: &[u8; 7] = b"SHA512\0";
2574pub const LN_sha512: &[u8; 7] = b"sha512\0";
2575pub const NID_sha512: i32 = 674;
2576pub const SN_sha224: &[u8; 7] = b"SHA224\0";
2577pub const LN_sha224: &[u8; 7] = b"sha224\0";
2578pub const NID_sha224: i32 = 675;
2579pub const SN_identified_organization: &[u8; 24] = b"identified-organization\0";
2580pub const NID_identified_organization: i32 = 676;
2581pub const SN_certicom_arc: &[u8; 13] = b"certicom-arc\0";
2582pub const NID_certicom_arc: i32 = 677;
2583pub const SN_wap: &[u8; 4] = b"wap\0";
2584pub const NID_wap: i32 = 678;
2585pub const SN_wap_wsg: &[u8; 8] = b"wap-wsg\0";
2586pub const NID_wap_wsg: i32 = 679;
2587pub const SN_X9_62_id_characteristic_two_basis: &[u8; 28] = b"id-characteristic-two-basis\0";
2588pub const NID_X9_62_id_characteristic_two_basis: i32 = 680;
2589pub const SN_X9_62_onBasis: &[u8; 8] = b"onBasis\0";
2590pub const NID_X9_62_onBasis: i32 = 681;
2591pub const SN_X9_62_tpBasis: &[u8; 8] = b"tpBasis\0";
2592pub const NID_X9_62_tpBasis: i32 = 682;
2593pub const SN_X9_62_ppBasis: &[u8; 8] = b"ppBasis\0";
2594pub const NID_X9_62_ppBasis: i32 = 683;
2595pub const SN_X9_62_c2pnb163v1: &[u8; 11] = b"c2pnb163v1\0";
2596pub const NID_X9_62_c2pnb163v1: i32 = 684;
2597pub const SN_X9_62_c2pnb163v2: &[u8; 11] = b"c2pnb163v2\0";
2598pub const NID_X9_62_c2pnb163v2: i32 = 685;
2599pub const SN_X9_62_c2pnb163v3: &[u8; 11] = b"c2pnb163v3\0";
2600pub const NID_X9_62_c2pnb163v3: i32 = 686;
2601pub const SN_X9_62_c2pnb176v1: &[u8; 11] = b"c2pnb176v1\0";
2602pub const NID_X9_62_c2pnb176v1: i32 = 687;
2603pub const SN_X9_62_c2tnb191v1: &[u8; 11] = b"c2tnb191v1\0";
2604pub const NID_X9_62_c2tnb191v1: i32 = 688;
2605pub const SN_X9_62_c2tnb191v2: &[u8; 11] = b"c2tnb191v2\0";
2606pub const NID_X9_62_c2tnb191v2: i32 = 689;
2607pub const SN_X9_62_c2tnb191v3: &[u8; 11] = b"c2tnb191v3\0";
2608pub const NID_X9_62_c2tnb191v3: i32 = 690;
2609pub const SN_X9_62_c2onb191v4: &[u8; 11] = b"c2onb191v4\0";
2610pub const NID_X9_62_c2onb191v4: i32 = 691;
2611pub const SN_X9_62_c2onb191v5: &[u8; 11] = b"c2onb191v5\0";
2612pub const NID_X9_62_c2onb191v5: i32 = 692;
2613pub const SN_X9_62_c2pnb208w1: &[u8; 11] = b"c2pnb208w1\0";
2614pub const NID_X9_62_c2pnb208w1: i32 = 693;
2615pub const SN_X9_62_c2tnb239v1: &[u8; 11] = b"c2tnb239v1\0";
2616pub const NID_X9_62_c2tnb239v1: i32 = 694;
2617pub const SN_X9_62_c2tnb239v2: &[u8; 11] = b"c2tnb239v2\0";
2618pub const NID_X9_62_c2tnb239v2: i32 = 695;
2619pub const SN_X9_62_c2tnb239v3: &[u8; 11] = b"c2tnb239v3\0";
2620pub const NID_X9_62_c2tnb239v3: i32 = 696;
2621pub const SN_X9_62_c2onb239v4: &[u8; 11] = b"c2onb239v4\0";
2622pub const NID_X9_62_c2onb239v4: i32 = 697;
2623pub const SN_X9_62_c2onb239v5: &[u8; 11] = b"c2onb239v5\0";
2624pub const NID_X9_62_c2onb239v5: i32 = 698;
2625pub const SN_X9_62_c2pnb272w1: &[u8; 11] = b"c2pnb272w1\0";
2626pub const NID_X9_62_c2pnb272w1: i32 = 699;
2627pub const SN_X9_62_c2pnb304w1: &[u8; 11] = b"c2pnb304w1\0";
2628pub const NID_X9_62_c2pnb304w1: i32 = 700;
2629pub const SN_X9_62_c2tnb359v1: &[u8; 11] = b"c2tnb359v1\0";
2630pub const NID_X9_62_c2tnb359v1: i32 = 701;
2631pub const SN_X9_62_c2pnb368w1: &[u8; 11] = b"c2pnb368w1\0";
2632pub const NID_X9_62_c2pnb368w1: i32 = 702;
2633pub const SN_X9_62_c2tnb431r1: &[u8; 11] = b"c2tnb431r1\0";
2634pub const NID_X9_62_c2tnb431r1: i32 = 703;
2635pub const SN_secp112r1: &[u8; 10] = b"secp112r1\0";
2636pub const NID_secp112r1: i32 = 704;
2637pub const SN_secp112r2: &[u8; 10] = b"secp112r2\0";
2638pub const NID_secp112r2: i32 = 705;
2639pub const SN_secp128r1: &[u8; 10] = b"secp128r1\0";
2640pub const NID_secp128r1: i32 = 706;
2641pub const SN_secp128r2: &[u8; 10] = b"secp128r2\0";
2642pub const NID_secp128r2: i32 = 707;
2643pub const SN_secp160k1: &[u8; 10] = b"secp160k1\0";
2644pub const NID_secp160k1: i32 = 708;
2645pub const SN_secp160r1: &[u8; 10] = b"secp160r1\0";
2646pub const NID_secp160r1: i32 = 709;
2647pub const SN_secp160r2: &[u8; 10] = b"secp160r2\0";
2648pub const NID_secp160r2: i32 = 710;
2649pub const SN_secp192k1: &[u8; 10] = b"secp192k1\0";
2650pub const NID_secp192k1: i32 = 711;
2651pub const SN_secp224k1: &[u8; 10] = b"secp224k1\0";
2652pub const NID_secp224k1: i32 = 712;
2653pub const SN_secp224r1: &[u8; 10] = b"secp224r1\0";
2654pub const NID_secp224r1: i32 = 713;
2655pub const SN_secp256k1: &[u8; 10] = b"secp256k1\0";
2656pub const NID_secp256k1: i32 = 714;
2657pub const SN_secp384r1: &[u8; 10] = b"secp384r1\0";
2658pub const NID_secp384r1: i32 = 715;
2659pub const SN_secp521r1: &[u8; 10] = b"secp521r1\0";
2660pub const NID_secp521r1: i32 = 716;
2661pub const SN_sect113r1: &[u8; 10] = b"sect113r1\0";
2662pub const NID_sect113r1: i32 = 717;
2663pub const SN_sect113r2: &[u8; 10] = b"sect113r2\0";
2664pub const NID_sect113r2: i32 = 718;
2665pub const SN_sect131r1: &[u8; 10] = b"sect131r1\0";
2666pub const NID_sect131r1: i32 = 719;
2667pub const SN_sect131r2: &[u8; 10] = b"sect131r2\0";
2668pub const NID_sect131r2: i32 = 720;
2669pub const SN_sect163k1: &[u8; 10] = b"sect163k1\0";
2670pub const NID_sect163k1: i32 = 721;
2671pub const SN_sect163r1: &[u8; 10] = b"sect163r1\0";
2672pub const NID_sect163r1: i32 = 722;
2673pub const SN_sect163r2: &[u8; 10] = b"sect163r2\0";
2674pub const NID_sect163r2: i32 = 723;
2675pub const SN_sect193r1: &[u8; 10] = b"sect193r1\0";
2676pub const NID_sect193r1: i32 = 724;
2677pub const SN_sect193r2: &[u8; 10] = b"sect193r2\0";
2678pub const NID_sect193r2: i32 = 725;
2679pub const SN_sect233k1: &[u8; 10] = b"sect233k1\0";
2680pub const NID_sect233k1: i32 = 726;
2681pub const SN_sect233r1: &[u8; 10] = b"sect233r1\0";
2682pub const NID_sect233r1: i32 = 727;
2683pub const SN_sect239k1: &[u8; 10] = b"sect239k1\0";
2684pub const NID_sect239k1: i32 = 728;
2685pub const SN_sect283k1: &[u8; 10] = b"sect283k1\0";
2686pub const NID_sect283k1: i32 = 729;
2687pub const SN_sect283r1: &[u8; 10] = b"sect283r1\0";
2688pub const NID_sect283r1: i32 = 730;
2689pub const SN_sect409k1: &[u8; 10] = b"sect409k1\0";
2690pub const NID_sect409k1: i32 = 731;
2691pub const SN_sect409r1: &[u8; 10] = b"sect409r1\0";
2692pub const NID_sect409r1: i32 = 732;
2693pub const SN_sect571k1: &[u8; 10] = b"sect571k1\0";
2694pub const NID_sect571k1: i32 = 733;
2695pub const SN_sect571r1: &[u8; 10] = b"sect571r1\0";
2696pub const NID_sect571r1: i32 = 734;
2697pub const SN_wap_wsg_idm_ecid_wtls1: &[u8; 23] = b"wap-wsg-idm-ecid-wtls1\0";
2698pub const NID_wap_wsg_idm_ecid_wtls1: i32 = 735;
2699pub const SN_wap_wsg_idm_ecid_wtls3: &[u8; 23] = b"wap-wsg-idm-ecid-wtls3\0";
2700pub const NID_wap_wsg_idm_ecid_wtls3: i32 = 736;
2701pub const SN_wap_wsg_idm_ecid_wtls4: &[u8; 23] = b"wap-wsg-idm-ecid-wtls4\0";
2702pub const NID_wap_wsg_idm_ecid_wtls4: i32 = 737;
2703pub const SN_wap_wsg_idm_ecid_wtls5: &[u8; 23] = b"wap-wsg-idm-ecid-wtls5\0";
2704pub const NID_wap_wsg_idm_ecid_wtls5: i32 = 738;
2705pub const SN_wap_wsg_idm_ecid_wtls6: &[u8; 23] = b"wap-wsg-idm-ecid-wtls6\0";
2706pub const NID_wap_wsg_idm_ecid_wtls6: i32 = 739;
2707pub const SN_wap_wsg_idm_ecid_wtls7: &[u8; 23] = b"wap-wsg-idm-ecid-wtls7\0";
2708pub const NID_wap_wsg_idm_ecid_wtls7: i32 = 740;
2709pub const SN_wap_wsg_idm_ecid_wtls8: &[u8; 23] = b"wap-wsg-idm-ecid-wtls8\0";
2710pub const NID_wap_wsg_idm_ecid_wtls8: i32 = 741;
2711pub const SN_wap_wsg_idm_ecid_wtls9: &[u8; 23] = b"wap-wsg-idm-ecid-wtls9\0";
2712pub const NID_wap_wsg_idm_ecid_wtls9: i32 = 742;
2713pub const SN_wap_wsg_idm_ecid_wtls10: &[u8; 24] = b"wap-wsg-idm-ecid-wtls10\0";
2714pub const NID_wap_wsg_idm_ecid_wtls10: i32 = 743;
2715pub const SN_wap_wsg_idm_ecid_wtls11: &[u8; 24] = b"wap-wsg-idm-ecid-wtls11\0";
2716pub const NID_wap_wsg_idm_ecid_wtls11: i32 = 744;
2717pub const SN_wap_wsg_idm_ecid_wtls12: &[u8; 24] = b"wap-wsg-idm-ecid-wtls12\0";
2718pub const NID_wap_wsg_idm_ecid_wtls12: i32 = 745;
2719pub const SN_any_policy: &[u8; 10] = b"anyPolicy\0";
2720pub const LN_any_policy: &[u8; 18] = b"X509v3 Any Policy\0";
2721pub const NID_any_policy: i32 = 746;
2722pub const SN_policy_mappings: &[u8; 15] = b"policyMappings\0";
2723pub const LN_policy_mappings: &[u8; 23] = b"X509v3 Policy Mappings\0";
2724pub const NID_policy_mappings: i32 = 747;
2725pub const SN_inhibit_any_policy: &[u8; 17] = b"inhibitAnyPolicy\0";
2726pub const LN_inhibit_any_policy: &[u8; 26] = b"X509v3 Inhibit Any Policy\0";
2727pub const NID_inhibit_any_policy: i32 = 748;
2728pub const SN_ipsec3: &[u8; 14] = b"Oakley-EC2N-3\0";
2729pub const LN_ipsec3: &[u8; 7] = b"ipsec3\0";
2730pub const NID_ipsec3: i32 = 749;
2731pub const SN_ipsec4: &[u8; 14] = b"Oakley-EC2N-4\0";
2732pub const LN_ipsec4: &[u8; 7] = b"ipsec4\0";
2733pub const NID_ipsec4: i32 = 750;
2734pub const SN_camellia_128_cbc: &[u8; 17] = b"CAMELLIA-128-CBC\0";
2735pub const LN_camellia_128_cbc: &[u8; 17] = b"camellia-128-cbc\0";
2736pub const NID_camellia_128_cbc: i32 = 751;
2737pub const SN_camellia_192_cbc: &[u8; 17] = b"CAMELLIA-192-CBC\0";
2738pub const LN_camellia_192_cbc: &[u8; 17] = b"camellia-192-cbc\0";
2739pub const NID_camellia_192_cbc: i32 = 752;
2740pub const SN_camellia_256_cbc: &[u8; 17] = b"CAMELLIA-256-CBC\0";
2741pub const LN_camellia_256_cbc: &[u8; 17] = b"camellia-256-cbc\0";
2742pub const NID_camellia_256_cbc: i32 = 753;
2743pub const SN_camellia_128_ecb: &[u8; 17] = b"CAMELLIA-128-ECB\0";
2744pub const LN_camellia_128_ecb: &[u8; 17] = b"camellia-128-ecb\0";
2745pub const NID_camellia_128_ecb: i32 = 754;
2746pub const SN_camellia_192_ecb: &[u8; 17] = b"CAMELLIA-192-ECB\0";
2747pub const LN_camellia_192_ecb: &[u8; 17] = b"camellia-192-ecb\0";
2748pub const NID_camellia_192_ecb: i32 = 755;
2749pub const SN_camellia_256_ecb: &[u8; 17] = b"CAMELLIA-256-ECB\0";
2750pub const LN_camellia_256_ecb: &[u8; 17] = b"camellia-256-ecb\0";
2751pub const NID_camellia_256_ecb: i32 = 756;
2752pub const SN_camellia_128_cfb128: &[u8; 17] = b"CAMELLIA-128-CFB\0";
2753pub const LN_camellia_128_cfb128: &[u8; 17] = b"camellia-128-cfb\0";
2754pub const NID_camellia_128_cfb128: i32 = 757;
2755pub const SN_camellia_192_cfb128: &[u8; 17] = b"CAMELLIA-192-CFB\0";
2756pub const LN_camellia_192_cfb128: &[u8; 17] = b"camellia-192-cfb\0";
2757pub const NID_camellia_192_cfb128: i32 = 758;
2758pub const SN_camellia_256_cfb128: &[u8; 17] = b"CAMELLIA-256-CFB\0";
2759pub const LN_camellia_256_cfb128: &[u8; 17] = b"camellia-256-cfb\0";
2760pub const NID_camellia_256_cfb128: i32 = 759;
2761pub const SN_camellia_128_cfb1: &[u8; 18] = b"CAMELLIA-128-CFB1\0";
2762pub const LN_camellia_128_cfb1: &[u8; 18] = b"camellia-128-cfb1\0";
2763pub const NID_camellia_128_cfb1: i32 = 760;
2764pub const SN_camellia_192_cfb1: &[u8; 18] = b"CAMELLIA-192-CFB1\0";
2765pub const LN_camellia_192_cfb1: &[u8; 18] = b"camellia-192-cfb1\0";
2766pub const NID_camellia_192_cfb1: i32 = 761;
2767pub const SN_camellia_256_cfb1: &[u8; 18] = b"CAMELLIA-256-CFB1\0";
2768pub const LN_camellia_256_cfb1: &[u8; 18] = b"camellia-256-cfb1\0";
2769pub const NID_camellia_256_cfb1: i32 = 762;
2770pub const SN_camellia_128_cfb8: &[u8; 18] = b"CAMELLIA-128-CFB8\0";
2771pub const LN_camellia_128_cfb8: &[u8; 18] = b"camellia-128-cfb8\0";
2772pub const NID_camellia_128_cfb8: i32 = 763;
2773pub const SN_camellia_192_cfb8: &[u8; 18] = b"CAMELLIA-192-CFB8\0";
2774pub const LN_camellia_192_cfb8: &[u8; 18] = b"camellia-192-cfb8\0";
2775pub const NID_camellia_192_cfb8: i32 = 764;
2776pub const SN_camellia_256_cfb8: &[u8; 18] = b"CAMELLIA-256-CFB8\0";
2777pub const LN_camellia_256_cfb8: &[u8; 18] = b"camellia-256-cfb8\0";
2778pub const NID_camellia_256_cfb8: i32 = 765;
2779pub const SN_camellia_128_ofb128: &[u8; 17] = b"CAMELLIA-128-OFB\0";
2780pub const LN_camellia_128_ofb128: &[u8; 17] = b"camellia-128-ofb\0";
2781pub const NID_camellia_128_ofb128: i32 = 766;
2782pub const SN_camellia_192_ofb128: &[u8; 17] = b"CAMELLIA-192-OFB\0";
2783pub const LN_camellia_192_ofb128: &[u8; 17] = b"camellia-192-ofb\0";
2784pub const NID_camellia_192_ofb128: i32 = 767;
2785pub const SN_camellia_256_ofb128: &[u8; 17] = b"CAMELLIA-256-OFB\0";
2786pub const LN_camellia_256_ofb128: &[u8; 17] = b"camellia-256-ofb\0";
2787pub const NID_camellia_256_ofb128: i32 = 768;
2788pub const SN_subject_directory_attributes: &[u8; 27] = b"subjectDirectoryAttributes\0";
2789pub const LN_subject_directory_attributes: &[u8; 36] = b"X509v3 Subject Directory Attributes\0";
2790pub const NID_subject_directory_attributes: i32 = 769;
2791pub const SN_issuing_distribution_point: &[u8; 25] = b"issuingDistributionPoint\0";
2792pub const LN_issuing_distribution_point: &[u8; 34] = b"X509v3 Issuing Distribution Point\0";
2793pub const NID_issuing_distribution_point: i32 = 770;
2794pub const SN_certificate_issuer: &[u8; 18] = b"certificateIssuer\0";
2795pub const LN_certificate_issuer: &[u8; 26] = b"X509v3 Certificate Issuer\0";
2796pub const NID_certificate_issuer: i32 = 771;
2797pub const SN_kisa: &[u8; 5] = b"KISA\0";
2798pub const LN_kisa: &[u8; 5] = b"kisa\0";
2799pub const NID_kisa: i32 = 773;
2800pub const SN_seed_ecb: &[u8; 9] = b"SEED-ECB\0";
2801pub const LN_seed_ecb: &[u8; 9] = b"seed-ecb\0";
2802pub const NID_seed_ecb: i32 = 776;
2803pub const SN_seed_cbc: &[u8; 9] = b"SEED-CBC\0";
2804pub const LN_seed_cbc: &[u8; 9] = b"seed-cbc\0";
2805pub const NID_seed_cbc: i32 = 777;
2806pub const SN_seed_ofb128: &[u8; 9] = b"SEED-OFB\0";
2807pub const LN_seed_ofb128: &[u8; 9] = b"seed-ofb\0";
2808pub const NID_seed_ofb128: i32 = 778;
2809pub const SN_seed_cfb128: &[u8; 9] = b"SEED-CFB\0";
2810pub const LN_seed_cfb128: &[u8; 9] = b"seed-cfb\0";
2811pub const NID_seed_cfb128: i32 = 779;
2812pub const SN_hmac_md5: &[u8; 9] = b"HMAC-MD5\0";
2813pub const LN_hmac_md5: &[u8; 9] = b"hmac-md5\0";
2814pub const NID_hmac_md5: i32 = 780;
2815pub const SN_hmac_sha1: &[u8; 10] = b"HMAC-SHA1\0";
2816pub const LN_hmac_sha1: &[u8; 10] = b"hmac-sha1\0";
2817pub const NID_hmac_sha1: i32 = 781;
2818pub const SN_id_PasswordBasedMAC: &[u8; 20] = b"id-PasswordBasedMAC\0";
2819pub const LN_id_PasswordBasedMAC: &[u8; 19] = b"password based MAC\0";
2820pub const NID_id_PasswordBasedMAC: i32 = 782;
2821pub const SN_id_DHBasedMac: &[u8; 14] = b"id-DHBasedMac\0";
2822pub const LN_id_DHBasedMac: &[u8; 25] = b"Diffie-Hellman based MAC\0";
2823pub const NID_id_DHBasedMac: i32 = 783;
2824pub const SN_id_it_suppLangTags: &[u8; 19] = b"id-it-suppLangTags\0";
2825pub const NID_id_it_suppLangTags: i32 = 784;
2826pub const SN_caRepository: &[u8; 13] = b"caRepository\0";
2827pub const LN_caRepository: &[u8; 14] = b"CA Repository\0";
2828pub const NID_caRepository: i32 = 785;
2829pub const SN_id_smime_ct_compressedData: &[u8; 27] = b"id-smime-ct-compressedData\0";
2830pub const NID_id_smime_ct_compressedData: i32 = 786;
2831pub const SN_id_ct_asciiTextWithCRLF: &[u8; 24] = b"id-ct-asciiTextWithCRLF\0";
2832pub const NID_id_ct_asciiTextWithCRLF: i32 = 787;
2833pub const SN_id_aes128_wrap: &[u8; 15] = b"id-aes128-wrap\0";
2834pub const NID_id_aes128_wrap: i32 = 788;
2835pub const SN_id_aes192_wrap: &[u8; 15] = b"id-aes192-wrap\0";
2836pub const NID_id_aes192_wrap: i32 = 789;
2837pub const SN_id_aes256_wrap: &[u8; 15] = b"id-aes256-wrap\0";
2838pub const NID_id_aes256_wrap: i32 = 790;
2839pub const SN_ecdsa_with_Recommended: &[u8; 23] = b"ecdsa-with-Recommended\0";
2840pub const NID_ecdsa_with_Recommended: i32 = 791;
2841pub const SN_ecdsa_with_Specified: &[u8; 21] = b"ecdsa-with-Specified\0";
2842pub const NID_ecdsa_with_Specified: i32 = 792;
2843pub const SN_ecdsa_with_SHA224: &[u8; 18] = b"ecdsa-with-SHA224\0";
2844pub const NID_ecdsa_with_SHA224: i32 = 793;
2845pub const SN_ecdsa_with_SHA256: &[u8; 18] = b"ecdsa-with-SHA256\0";
2846pub const NID_ecdsa_with_SHA256: i32 = 794;
2847pub const SN_ecdsa_with_SHA384: &[u8; 18] = b"ecdsa-with-SHA384\0";
2848pub const NID_ecdsa_with_SHA384: i32 = 795;
2849pub const SN_ecdsa_with_SHA512: &[u8; 18] = b"ecdsa-with-SHA512\0";
2850pub const NID_ecdsa_with_SHA512: i32 = 796;
2851pub const LN_hmacWithMD5: &[u8; 12] = b"hmacWithMD5\0";
2852pub const NID_hmacWithMD5: i32 = 797;
2853pub const LN_hmacWithSHA224: &[u8; 15] = b"hmacWithSHA224\0";
2854pub const NID_hmacWithSHA224: i32 = 798;
2855pub const LN_hmacWithSHA256: &[u8; 15] = b"hmacWithSHA256\0";
2856pub const NID_hmacWithSHA256: i32 = 799;
2857pub const LN_hmacWithSHA384: &[u8; 15] = b"hmacWithSHA384\0";
2858pub const NID_hmacWithSHA384: i32 = 800;
2859pub const LN_hmacWithSHA512: &[u8; 15] = b"hmacWithSHA512\0";
2860pub const NID_hmacWithSHA512: i32 = 801;
2861pub const SN_dsa_with_SHA224: &[u8; 16] = b"dsa_with_SHA224\0";
2862pub const NID_dsa_with_SHA224: i32 = 802;
2863pub const SN_dsa_with_SHA256: &[u8; 16] = b"dsa_with_SHA256\0";
2864pub const NID_dsa_with_SHA256: i32 = 803;
2865pub const SN_whirlpool: &[u8; 10] = b"whirlpool\0";
2866pub const NID_whirlpool: i32 = 804;
2867pub const SN_cryptopro: &[u8; 10] = b"cryptopro\0";
2868pub const NID_cryptopro: i32 = 805;
2869pub const SN_cryptocom: &[u8; 10] = b"cryptocom\0";
2870pub const NID_cryptocom: i32 = 806;
2871pub const SN_id_GostR3411_94_with_GostR3410_2001: &[u8; 36] =
2872    b"id-GostR3411-94-with-GostR3410-2001\0";
2873pub const LN_id_GostR3411_94_with_GostR3410_2001: &[u8; 39] =
2874    b"GOST R 34.11-94 with GOST R 34.10-2001\0";
2875pub const NID_id_GostR3411_94_with_GostR3410_2001: i32 = 807;
2876pub const SN_id_GostR3411_94_with_GostR3410_94: &[u8; 34] = b"id-GostR3411-94-with-GostR3410-94\0";
2877pub const LN_id_GostR3411_94_with_GostR3410_94: &[u8; 37] =
2878    b"GOST R 34.11-94 with GOST R 34.10-94\0";
2879pub const NID_id_GostR3411_94_with_GostR3410_94: i32 = 808;
2880pub const SN_id_GostR3411_94: &[u8; 10] = b"md_gost94\0";
2881pub const LN_id_GostR3411_94: &[u8; 16] = b"GOST R 34.11-94\0";
2882pub const NID_id_GostR3411_94: i32 = 809;
2883pub const SN_id_HMACGostR3411_94: &[u8; 20] = b"id-HMACGostR3411-94\0";
2884pub const LN_id_HMACGostR3411_94: &[u8; 19] = b"HMAC GOST 34.11-94\0";
2885pub const NID_id_HMACGostR3411_94: i32 = 810;
2886pub const SN_id_GostR3410_2001: &[u8; 9] = b"gost2001\0";
2887pub const LN_id_GostR3410_2001: &[u8; 18] = b"GOST R 34.10-2001\0";
2888pub const NID_id_GostR3410_2001: i32 = 811;
2889pub const SN_id_GostR3410_94: &[u8; 7] = b"gost94\0";
2890pub const LN_id_GostR3410_94: &[u8; 16] = b"GOST R 34.10-94\0";
2891pub const NID_id_GostR3410_94: i32 = 812;
2892pub const SN_id_Gost28147_89: &[u8; 7] = b"gost89\0";
2893pub const LN_id_Gost28147_89: &[u8; 14] = b"GOST 28147-89\0";
2894pub const NID_id_Gost28147_89: i32 = 813;
2895pub const SN_gost89_cnt: &[u8; 11] = b"gost89-cnt\0";
2896pub const NID_gost89_cnt: i32 = 814;
2897pub const SN_id_Gost28147_89_MAC: &[u8; 9] = b"gost-mac\0";
2898pub const LN_id_Gost28147_89_MAC: &[u8; 18] = b"GOST 28147-89 MAC\0";
2899pub const NID_id_Gost28147_89_MAC: i32 = 815;
2900pub const SN_id_GostR3411_94_prf: &[u8; 17] = b"prf-gostr3411-94\0";
2901pub const LN_id_GostR3411_94_prf: &[u8; 20] = b"GOST R 34.11-94 PRF\0";
2902pub const NID_id_GostR3411_94_prf: i32 = 816;
2903pub const SN_id_GostR3410_2001DH: &[u8; 20] = b"id-GostR3410-2001DH\0";
2904pub const LN_id_GostR3410_2001DH: &[u8; 21] = b"GOST R 34.10-2001 DH\0";
2905pub const NID_id_GostR3410_2001DH: i32 = 817;
2906pub const SN_id_GostR3410_94DH: &[u8; 18] = b"id-GostR3410-94DH\0";
2907pub const LN_id_GostR3410_94DH: &[u8; 19] = b"GOST R 34.10-94 DH\0";
2908pub const NID_id_GostR3410_94DH: i32 = 818;
2909pub const SN_id_Gost28147_89_CryptoPro_KeyMeshing: &[u8; 37] =
2910    b"id-Gost28147-89-CryptoPro-KeyMeshing\0";
2911pub const NID_id_Gost28147_89_CryptoPro_KeyMeshing: i32 = 819;
2912pub const SN_id_Gost28147_89_None_KeyMeshing: &[u8; 32] = b"id-Gost28147-89-None-KeyMeshing\0";
2913pub const NID_id_Gost28147_89_None_KeyMeshing: i32 = 820;
2914pub const SN_id_GostR3411_94_TestParamSet: &[u8; 29] = b"id-GostR3411-94-TestParamSet\0";
2915pub const NID_id_GostR3411_94_TestParamSet: i32 = 821;
2916pub const SN_id_GostR3411_94_CryptoProParamSet: &[u8; 34] = b"id-GostR3411-94-CryptoProParamSet\0";
2917pub const NID_id_GostR3411_94_CryptoProParamSet: i32 = 822;
2918pub const SN_id_Gost28147_89_TestParamSet: &[u8; 29] = b"id-Gost28147-89-TestParamSet\0";
2919pub const NID_id_Gost28147_89_TestParamSet: i32 = 823;
2920pub const SN_id_Gost28147_89_CryptoPro_A_ParamSet: &[u8; 37] =
2921    b"id-Gost28147-89-CryptoPro-A-ParamSet\0";
2922pub const NID_id_Gost28147_89_CryptoPro_A_ParamSet: i32 = 824;
2923pub const SN_id_Gost28147_89_CryptoPro_B_ParamSet: &[u8; 37] =
2924    b"id-Gost28147-89-CryptoPro-B-ParamSet\0";
2925pub const NID_id_Gost28147_89_CryptoPro_B_ParamSet: i32 = 825;
2926pub const SN_id_Gost28147_89_CryptoPro_C_ParamSet: &[u8; 37] =
2927    b"id-Gost28147-89-CryptoPro-C-ParamSet\0";
2928pub const NID_id_Gost28147_89_CryptoPro_C_ParamSet: i32 = 826;
2929pub const SN_id_Gost28147_89_CryptoPro_D_ParamSet: &[u8; 37] =
2930    b"id-Gost28147-89-CryptoPro-D-ParamSet\0";
2931pub const NID_id_Gost28147_89_CryptoPro_D_ParamSet: i32 = 827;
2932pub const SN_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet: &[u8; 45] =
2933    b"id-Gost28147-89-CryptoPro-Oscar-1-1-ParamSet\0";
2934pub const NID_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet: i32 = 828;
2935pub const SN_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet: &[u8; 45] =
2936    b"id-Gost28147-89-CryptoPro-Oscar-1-0-ParamSet\0";
2937pub const NID_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet: i32 = 829;
2938pub const SN_id_Gost28147_89_CryptoPro_RIC_1_ParamSet: &[u8; 41] =
2939    b"id-Gost28147-89-CryptoPro-RIC-1-ParamSet\0";
2940pub const NID_id_Gost28147_89_CryptoPro_RIC_1_ParamSet: i32 = 830;
2941pub const SN_id_GostR3410_94_TestParamSet: &[u8; 29] = b"id-GostR3410-94-TestParamSet\0";
2942pub const NID_id_GostR3410_94_TestParamSet: i32 = 831;
2943pub const SN_id_GostR3410_94_CryptoPro_A_ParamSet: &[u8; 37] =
2944    b"id-GostR3410-94-CryptoPro-A-ParamSet\0";
2945pub const NID_id_GostR3410_94_CryptoPro_A_ParamSet: i32 = 832;
2946pub const SN_id_GostR3410_94_CryptoPro_B_ParamSet: &[u8; 37] =
2947    b"id-GostR3410-94-CryptoPro-B-ParamSet\0";
2948pub const NID_id_GostR3410_94_CryptoPro_B_ParamSet: i32 = 833;
2949pub const SN_id_GostR3410_94_CryptoPro_C_ParamSet: &[u8; 37] =
2950    b"id-GostR3410-94-CryptoPro-C-ParamSet\0";
2951pub const NID_id_GostR3410_94_CryptoPro_C_ParamSet: i32 = 834;
2952pub const SN_id_GostR3410_94_CryptoPro_D_ParamSet: &[u8; 37] =
2953    b"id-GostR3410-94-CryptoPro-D-ParamSet\0";
2954pub const NID_id_GostR3410_94_CryptoPro_D_ParamSet: i32 = 835;
2955pub const SN_id_GostR3410_94_CryptoPro_XchA_ParamSet: &[u8; 40] =
2956    b"id-GostR3410-94-CryptoPro-XchA-ParamSet\0";
2957pub const NID_id_GostR3410_94_CryptoPro_XchA_ParamSet: i32 = 836;
2958pub const SN_id_GostR3410_94_CryptoPro_XchB_ParamSet: &[u8; 40] =
2959    b"id-GostR3410-94-CryptoPro-XchB-ParamSet\0";
2960pub const NID_id_GostR3410_94_CryptoPro_XchB_ParamSet: i32 = 837;
2961pub const SN_id_GostR3410_94_CryptoPro_XchC_ParamSet: &[u8; 40] =
2962    b"id-GostR3410-94-CryptoPro-XchC-ParamSet\0";
2963pub const NID_id_GostR3410_94_CryptoPro_XchC_ParamSet: i32 = 838;
2964pub const SN_id_GostR3410_2001_TestParamSet: &[u8; 31] = b"id-GostR3410-2001-TestParamSet\0";
2965pub const NID_id_GostR3410_2001_TestParamSet: i32 = 839;
2966pub const SN_id_GostR3410_2001_CryptoPro_A_ParamSet: &[u8; 39] =
2967    b"id-GostR3410-2001-CryptoPro-A-ParamSet\0";
2968pub const NID_id_GostR3410_2001_CryptoPro_A_ParamSet: i32 = 840;
2969pub const SN_id_GostR3410_2001_CryptoPro_B_ParamSet: &[u8; 39] =
2970    b"id-GostR3410-2001-CryptoPro-B-ParamSet\0";
2971pub const NID_id_GostR3410_2001_CryptoPro_B_ParamSet: i32 = 841;
2972pub const SN_id_GostR3410_2001_CryptoPro_C_ParamSet: &[u8; 39] =
2973    b"id-GostR3410-2001-CryptoPro-C-ParamSet\0";
2974pub const NID_id_GostR3410_2001_CryptoPro_C_ParamSet: i32 = 842;
2975pub const SN_id_GostR3410_2001_CryptoPro_XchA_ParamSet: &[u8; 42] =
2976    b"id-GostR3410-2001-CryptoPro-XchA-ParamSet\0";
2977pub const NID_id_GostR3410_2001_CryptoPro_XchA_ParamSet: i32 = 843;
2978pub const SN_id_GostR3410_2001_CryptoPro_XchB_ParamSet: &[u8; 42] =
2979    b"id-GostR3410-2001-CryptoPro-XchB-ParamSet\0";
2980pub const NID_id_GostR3410_2001_CryptoPro_XchB_ParamSet: i32 = 844;
2981pub const SN_id_GostR3410_94_a: &[u8; 18] = b"id-GostR3410-94-a\0";
2982pub const NID_id_GostR3410_94_a: i32 = 845;
2983pub const SN_id_GostR3410_94_aBis: &[u8; 21] = b"id-GostR3410-94-aBis\0";
2984pub const NID_id_GostR3410_94_aBis: i32 = 846;
2985pub const SN_id_GostR3410_94_b: &[u8; 18] = b"id-GostR3410-94-b\0";
2986pub const NID_id_GostR3410_94_b: i32 = 847;
2987pub const SN_id_GostR3410_94_bBis: &[u8; 21] = b"id-GostR3410-94-bBis\0";
2988pub const NID_id_GostR3410_94_bBis: i32 = 848;
2989pub const SN_id_Gost28147_89_cc: &[u8; 19] = b"id-Gost28147-89-cc\0";
2990pub const LN_id_Gost28147_89_cc: &[u8; 33] = b"GOST 28147-89 Cryptocom ParamSet\0";
2991pub const NID_id_Gost28147_89_cc: i32 = 849;
2992pub const SN_id_GostR3410_94_cc: &[u8; 9] = b"gost94cc\0";
2993pub const LN_id_GostR3410_94_cc: &[u8; 24] = b"GOST 34.10-94 Cryptocom\0";
2994pub const NID_id_GostR3410_94_cc: i32 = 850;
2995pub const SN_id_GostR3410_2001_cc: &[u8; 11] = b"gost2001cc\0";
2996pub const LN_id_GostR3410_2001_cc: &[u8; 26] = b"GOST 34.10-2001 Cryptocom\0";
2997pub const NID_id_GostR3410_2001_cc: i32 = 851;
2998pub const SN_id_GostR3411_94_with_GostR3410_94_cc: &[u8; 37] =
2999    b"id-GostR3411-94-with-GostR3410-94-cc\0";
3000pub const LN_id_GostR3411_94_with_GostR3410_94_cc: &[u8; 47] =
3001    b"GOST R 34.11-94 with GOST R 34.10-94 Cryptocom\0";
3002pub const NID_id_GostR3411_94_with_GostR3410_94_cc: i32 = 852;
3003pub const SN_id_GostR3411_94_with_GostR3410_2001_cc: &[u8; 39] =
3004    b"id-GostR3411-94-with-GostR3410-2001-cc\0";
3005pub const LN_id_GostR3411_94_with_GostR3410_2001_cc: &[u8; 49] =
3006    b"GOST R 34.11-94 with GOST R 34.10-2001 Cryptocom\0";
3007pub const NID_id_GostR3411_94_with_GostR3410_2001_cc: i32 = 853;
3008pub const SN_id_GostR3410_2001_ParamSet_cc: &[u8; 30] = b"id-GostR3410-2001-ParamSet-cc\0";
3009pub const LN_id_GostR3410_2001_ParamSet_cc: &[u8; 41] =
3010    b"GOST R 3410-2001 Parameter Set Cryptocom\0";
3011pub const NID_id_GostR3410_2001_ParamSet_cc: i32 = 854;
3012pub const SN_hmac: &[u8; 5] = b"HMAC\0";
3013pub const LN_hmac: &[u8; 5] = b"hmac\0";
3014pub const NID_hmac: i32 = 855;
3015pub const SN_LocalKeySet: &[u8; 12] = b"LocalKeySet\0";
3016pub const LN_LocalKeySet: &[u8; 24] = b"Microsoft Local Key set\0";
3017pub const NID_LocalKeySet: i32 = 856;
3018pub const SN_freshest_crl: &[u8; 12] = b"freshestCRL\0";
3019pub const LN_freshest_crl: &[u8; 20] = b"X509v3 Freshest CRL\0";
3020pub const NID_freshest_crl: i32 = 857;
3021pub const SN_id_on_permanentIdentifier: &[u8; 26] = b"id-on-permanentIdentifier\0";
3022pub const LN_id_on_permanentIdentifier: &[u8; 21] = b"Permanent Identifier\0";
3023pub const NID_id_on_permanentIdentifier: i32 = 858;
3024pub const LN_searchGuide: &[u8; 12] = b"searchGuide\0";
3025pub const NID_searchGuide: i32 = 859;
3026pub const LN_businessCategory: &[u8; 17] = b"businessCategory\0";
3027pub const NID_businessCategory: i32 = 860;
3028pub const LN_postalAddress: &[u8; 14] = b"postalAddress\0";
3029pub const NID_postalAddress: i32 = 861;
3030pub const LN_postOfficeBox: &[u8; 14] = b"postOfficeBox\0";
3031pub const NID_postOfficeBox: i32 = 862;
3032pub const LN_physicalDeliveryOfficeName: &[u8; 27] = b"physicalDeliveryOfficeName\0";
3033pub const NID_physicalDeliveryOfficeName: i32 = 863;
3034pub const LN_telephoneNumber: &[u8; 16] = b"telephoneNumber\0";
3035pub const NID_telephoneNumber: i32 = 864;
3036pub const LN_telexNumber: &[u8; 12] = b"telexNumber\0";
3037pub const NID_telexNumber: i32 = 865;
3038pub const LN_teletexTerminalIdentifier: &[u8; 26] = b"teletexTerminalIdentifier\0";
3039pub const NID_teletexTerminalIdentifier: i32 = 866;
3040pub const LN_facsimileTelephoneNumber: &[u8; 25] = b"facsimileTelephoneNumber\0";
3041pub const NID_facsimileTelephoneNumber: i32 = 867;
3042pub const LN_x121Address: &[u8; 12] = b"x121Address\0";
3043pub const NID_x121Address: i32 = 868;
3044pub const LN_internationaliSDNNumber: &[u8; 24] = b"internationaliSDNNumber\0";
3045pub const NID_internationaliSDNNumber: i32 = 869;
3046pub const LN_registeredAddress: &[u8; 18] = b"registeredAddress\0";
3047pub const NID_registeredAddress: i32 = 870;
3048pub const LN_destinationIndicator: &[u8; 21] = b"destinationIndicator\0";
3049pub const NID_destinationIndicator: i32 = 871;
3050pub const LN_preferredDeliveryMethod: &[u8; 24] = b"preferredDeliveryMethod\0";
3051pub const NID_preferredDeliveryMethod: i32 = 872;
3052pub const LN_presentationAddress: &[u8; 20] = b"presentationAddress\0";
3053pub const NID_presentationAddress: i32 = 873;
3054pub const LN_supportedApplicationContext: &[u8; 28] = b"supportedApplicationContext\0";
3055pub const NID_supportedApplicationContext: i32 = 874;
3056pub const SN_member: &[u8; 7] = b"member\0";
3057pub const NID_member: i32 = 875;
3058pub const SN_owner: &[u8; 6] = b"owner\0";
3059pub const NID_owner: i32 = 876;
3060pub const LN_roleOccupant: &[u8; 13] = b"roleOccupant\0";
3061pub const NID_roleOccupant: i32 = 877;
3062pub const SN_seeAlso: &[u8; 8] = b"seeAlso\0";
3063pub const NID_seeAlso: i32 = 878;
3064pub const LN_userPassword: &[u8; 13] = b"userPassword\0";
3065pub const NID_userPassword: i32 = 879;
3066pub const LN_userCertificate: &[u8; 16] = b"userCertificate\0";
3067pub const NID_userCertificate: i32 = 880;
3068pub const LN_cACertificate: &[u8; 14] = b"cACertificate\0";
3069pub const NID_cACertificate: i32 = 881;
3070pub const LN_authorityRevocationList: &[u8; 24] = b"authorityRevocationList\0";
3071pub const NID_authorityRevocationList: i32 = 882;
3072pub const LN_certificateRevocationList: &[u8; 26] = b"certificateRevocationList\0";
3073pub const NID_certificateRevocationList: i32 = 883;
3074pub const LN_crossCertificatePair: &[u8; 21] = b"crossCertificatePair\0";
3075pub const NID_crossCertificatePair: i32 = 884;
3076pub const LN_enhancedSearchGuide: &[u8; 20] = b"enhancedSearchGuide\0";
3077pub const NID_enhancedSearchGuide: i32 = 885;
3078pub const LN_protocolInformation: &[u8; 20] = b"protocolInformation\0";
3079pub const NID_protocolInformation: i32 = 886;
3080pub const LN_distinguishedName: &[u8; 18] = b"distinguishedName\0";
3081pub const NID_distinguishedName: i32 = 887;
3082pub const LN_uniqueMember: &[u8; 13] = b"uniqueMember\0";
3083pub const NID_uniqueMember: i32 = 888;
3084pub const LN_houseIdentifier: &[u8; 16] = b"houseIdentifier\0";
3085pub const NID_houseIdentifier: i32 = 889;
3086pub const LN_supportedAlgorithms: &[u8; 20] = b"supportedAlgorithms\0";
3087pub const NID_supportedAlgorithms: i32 = 890;
3088pub const LN_deltaRevocationList: &[u8; 20] = b"deltaRevocationList\0";
3089pub const NID_deltaRevocationList: i32 = 891;
3090pub const SN_dmdName: &[u8; 8] = b"dmdName\0";
3091pub const NID_dmdName: i32 = 892;
3092pub const SN_id_alg_PWRI_KEK: &[u8; 16] = b"id-alg-PWRI-KEK\0";
3093pub const NID_id_alg_PWRI_KEK: i32 = 893;
3094pub const SN_cmac: &[u8; 5] = b"CMAC\0";
3095pub const LN_cmac: &[u8; 5] = b"cmac\0";
3096pub const NID_cmac: i32 = 894;
3097pub const SN_aes_128_gcm: &[u8; 14] = b"id-aes128-GCM\0";
3098pub const LN_aes_128_gcm: &[u8; 12] = b"aes-128-gcm\0";
3099pub const NID_aes_128_gcm: i32 = 895;
3100pub const SN_aes_128_ccm: &[u8; 14] = b"id-aes128-CCM\0";
3101pub const LN_aes_128_ccm: &[u8; 12] = b"aes-128-ccm\0";
3102pub const NID_aes_128_ccm: i32 = 896;
3103pub const SN_id_aes128_wrap_pad: &[u8; 19] = b"id-aes128-wrap-pad\0";
3104pub const NID_id_aes128_wrap_pad: i32 = 897;
3105pub const SN_aes_192_gcm: &[u8; 14] = b"id-aes192-GCM\0";
3106pub const LN_aes_192_gcm: &[u8; 12] = b"aes-192-gcm\0";
3107pub const NID_aes_192_gcm: i32 = 898;
3108pub const SN_aes_192_ccm: &[u8; 14] = b"id-aes192-CCM\0";
3109pub const LN_aes_192_ccm: &[u8; 12] = b"aes-192-ccm\0";
3110pub const NID_aes_192_ccm: i32 = 899;
3111pub const SN_id_aes192_wrap_pad: &[u8; 19] = b"id-aes192-wrap-pad\0";
3112pub const NID_id_aes192_wrap_pad: i32 = 900;
3113pub const SN_aes_256_gcm: &[u8; 14] = b"id-aes256-GCM\0";
3114pub const LN_aes_256_gcm: &[u8; 12] = b"aes-256-gcm\0";
3115pub const NID_aes_256_gcm: i32 = 901;
3116pub const SN_aes_256_ccm: &[u8; 14] = b"id-aes256-CCM\0";
3117pub const LN_aes_256_ccm: &[u8; 12] = b"aes-256-ccm\0";
3118pub const NID_aes_256_ccm: i32 = 902;
3119pub const SN_id_aes256_wrap_pad: &[u8; 19] = b"id-aes256-wrap-pad\0";
3120pub const NID_id_aes256_wrap_pad: i32 = 903;
3121pub const SN_aes_128_ctr: &[u8; 12] = b"AES-128-CTR\0";
3122pub const LN_aes_128_ctr: &[u8; 12] = b"aes-128-ctr\0";
3123pub const NID_aes_128_ctr: i32 = 904;
3124pub const SN_aes_192_ctr: &[u8; 12] = b"AES-192-CTR\0";
3125pub const LN_aes_192_ctr: &[u8; 12] = b"aes-192-ctr\0";
3126pub const NID_aes_192_ctr: i32 = 905;
3127pub const SN_aes_256_ctr: &[u8; 12] = b"AES-256-CTR\0";
3128pub const LN_aes_256_ctr: &[u8; 12] = b"aes-256-ctr\0";
3129pub const NID_aes_256_ctr: i32 = 906;
3130pub const SN_id_camellia128_wrap: &[u8; 20] = b"id-camellia128-wrap\0";
3131pub const NID_id_camellia128_wrap: i32 = 907;
3132pub const SN_id_camellia192_wrap: &[u8; 20] = b"id-camellia192-wrap\0";
3133pub const NID_id_camellia192_wrap: i32 = 908;
3134pub const SN_id_camellia256_wrap: &[u8; 20] = b"id-camellia256-wrap\0";
3135pub const NID_id_camellia256_wrap: i32 = 909;
3136pub const SN_anyExtendedKeyUsage: &[u8; 20] = b"anyExtendedKeyUsage\0";
3137pub const LN_anyExtendedKeyUsage: &[u8; 23] = b"Any Extended Key Usage\0";
3138pub const NID_anyExtendedKeyUsage: i32 = 910;
3139pub const SN_mgf1: &[u8; 5] = b"MGF1\0";
3140pub const LN_mgf1: &[u8; 5] = b"mgf1\0";
3141pub const NID_mgf1: i32 = 911;
3142pub const SN_rsassaPss: &[u8; 11] = b"RSASSA-PSS\0";
3143pub const LN_rsassaPss: &[u8; 10] = b"rsassaPss\0";
3144pub const NID_rsassaPss: i32 = 912;
3145pub const SN_aes_128_xts: &[u8; 12] = b"AES-128-XTS\0";
3146pub const LN_aes_128_xts: &[u8; 12] = b"aes-128-xts\0";
3147pub const NID_aes_128_xts: i32 = 913;
3148pub const SN_aes_256_xts: &[u8; 12] = b"AES-256-XTS\0";
3149pub const LN_aes_256_xts: &[u8; 12] = b"aes-256-xts\0";
3150pub const NID_aes_256_xts: i32 = 914;
3151pub const SN_rc4_hmac_md5: &[u8; 13] = b"RC4-HMAC-MD5\0";
3152pub const LN_rc4_hmac_md5: &[u8; 13] = b"rc4-hmac-md5\0";
3153pub const NID_rc4_hmac_md5: i32 = 915;
3154pub const SN_aes_128_cbc_hmac_sha1: &[u8; 22] = b"AES-128-CBC-HMAC-SHA1\0";
3155pub const LN_aes_128_cbc_hmac_sha1: &[u8; 22] = b"aes-128-cbc-hmac-sha1\0";
3156pub const NID_aes_128_cbc_hmac_sha1: i32 = 916;
3157pub const SN_aes_192_cbc_hmac_sha1: &[u8; 22] = b"AES-192-CBC-HMAC-SHA1\0";
3158pub const LN_aes_192_cbc_hmac_sha1: &[u8; 22] = b"aes-192-cbc-hmac-sha1\0";
3159pub const NID_aes_192_cbc_hmac_sha1: i32 = 917;
3160pub const SN_aes_256_cbc_hmac_sha1: &[u8; 22] = b"AES-256-CBC-HMAC-SHA1\0";
3161pub const LN_aes_256_cbc_hmac_sha1: &[u8; 22] = b"aes-256-cbc-hmac-sha1\0";
3162pub const NID_aes_256_cbc_hmac_sha1: i32 = 918;
3163pub const SN_rsaesOaep: &[u8; 11] = b"RSAES-OAEP\0";
3164pub const LN_rsaesOaep: &[u8; 10] = b"rsaesOaep\0";
3165pub const NID_rsaesOaep: i32 = 919;
3166pub const SN_dhpublicnumber: &[u8; 15] = b"dhpublicnumber\0";
3167pub const LN_dhpublicnumber: &[u8; 9] = b"X9.42 DH\0";
3168pub const NID_dhpublicnumber: i32 = 920;
3169pub const SN_brainpoolP160r1: &[u8; 16] = b"brainpoolP160r1\0";
3170pub const NID_brainpoolP160r1: i32 = 921;
3171pub const SN_brainpoolP160t1: &[u8; 16] = b"brainpoolP160t1\0";
3172pub const NID_brainpoolP160t1: i32 = 922;
3173pub const SN_brainpoolP192r1: &[u8; 16] = b"brainpoolP192r1\0";
3174pub const NID_brainpoolP192r1: i32 = 923;
3175pub const SN_brainpoolP192t1: &[u8; 16] = b"brainpoolP192t1\0";
3176pub const NID_brainpoolP192t1: i32 = 924;
3177pub const SN_brainpoolP224r1: &[u8; 16] = b"brainpoolP224r1\0";
3178pub const NID_brainpoolP224r1: i32 = 925;
3179pub const SN_brainpoolP224t1: &[u8; 16] = b"brainpoolP224t1\0";
3180pub const NID_brainpoolP224t1: i32 = 926;
3181pub const SN_brainpoolP256r1: &[u8; 16] = b"brainpoolP256r1\0";
3182pub const NID_brainpoolP256r1: i32 = 927;
3183pub const SN_brainpoolP256t1: &[u8; 16] = b"brainpoolP256t1\0";
3184pub const NID_brainpoolP256t1: i32 = 928;
3185pub const SN_brainpoolP320r1: &[u8; 16] = b"brainpoolP320r1\0";
3186pub const NID_brainpoolP320r1: i32 = 929;
3187pub const SN_brainpoolP320t1: &[u8; 16] = b"brainpoolP320t1\0";
3188pub const NID_brainpoolP320t1: i32 = 930;
3189pub const SN_brainpoolP384r1: &[u8; 16] = b"brainpoolP384r1\0";
3190pub const NID_brainpoolP384r1: i32 = 931;
3191pub const SN_brainpoolP384t1: &[u8; 16] = b"brainpoolP384t1\0";
3192pub const NID_brainpoolP384t1: i32 = 932;
3193pub const SN_brainpoolP512r1: &[u8; 16] = b"brainpoolP512r1\0";
3194pub const NID_brainpoolP512r1: i32 = 933;
3195pub const SN_brainpoolP512t1: &[u8; 16] = b"brainpoolP512t1\0";
3196pub const NID_brainpoolP512t1: i32 = 934;
3197pub const SN_pSpecified: &[u8; 11] = b"PSPECIFIED\0";
3198pub const LN_pSpecified: &[u8; 11] = b"pSpecified\0";
3199pub const NID_pSpecified: i32 = 935;
3200pub const SN_dhSinglePass_stdDH_sha1kdf_scheme: &[u8; 34] = b"dhSinglePass-stdDH-sha1kdf-scheme\0";
3201pub const NID_dhSinglePass_stdDH_sha1kdf_scheme: i32 = 936;
3202pub const SN_dhSinglePass_stdDH_sha224kdf_scheme: &[u8; 36] =
3203    b"dhSinglePass-stdDH-sha224kdf-scheme\0";
3204pub const NID_dhSinglePass_stdDH_sha224kdf_scheme: i32 = 937;
3205pub const SN_dhSinglePass_stdDH_sha256kdf_scheme: &[u8; 36] =
3206    b"dhSinglePass-stdDH-sha256kdf-scheme\0";
3207pub const NID_dhSinglePass_stdDH_sha256kdf_scheme: i32 = 938;
3208pub const SN_dhSinglePass_stdDH_sha384kdf_scheme: &[u8; 36] =
3209    b"dhSinglePass-stdDH-sha384kdf-scheme\0";
3210pub const NID_dhSinglePass_stdDH_sha384kdf_scheme: i32 = 939;
3211pub const SN_dhSinglePass_stdDH_sha512kdf_scheme: &[u8; 36] =
3212    b"dhSinglePass-stdDH-sha512kdf-scheme\0";
3213pub const NID_dhSinglePass_stdDH_sha512kdf_scheme: i32 = 940;
3214pub const SN_dhSinglePass_cofactorDH_sha1kdf_scheme: &[u8; 39] =
3215    b"dhSinglePass-cofactorDH-sha1kdf-scheme\0";
3216pub const NID_dhSinglePass_cofactorDH_sha1kdf_scheme: i32 = 941;
3217pub const SN_dhSinglePass_cofactorDH_sha224kdf_scheme: &[u8; 41] =
3218    b"dhSinglePass-cofactorDH-sha224kdf-scheme\0";
3219pub const NID_dhSinglePass_cofactorDH_sha224kdf_scheme: i32 = 942;
3220pub const SN_dhSinglePass_cofactorDH_sha256kdf_scheme: &[u8; 41] =
3221    b"dhSinglePass-cofactorDH-sha256kdf-scheme\0";
3222pub const NID_dhSinglePass_cofactorDH_sha256kdf_scheme: i32 = 943;
3223pub const SN_dhSinglePass_cofactorDH_sha384kdf_scheme: &[u8; 41] =
3224    b"dhSinglePass-cofactorDH-sha384kdf-scheme\0";
3225pub const NID_dhSinglePass_cofactorDH_sha384kdf_scheme: i32 = 944;
3226pub const SN_dhSinglePass_cofactorDH_sha512kdf_scheme: &[u8; 41] =
3227    b"dhSinglePass-cofactorDH-sha512kdf-scheme\0";
3228pub const NID_dhSinglePass_cofactorDH_sha512kdf_scheme: i32 = 945;
3229pub const SN_dh_std_kdf: &[u8; 11] = b"dh-std-kdf\0";
3230pub const NID_dh_std_kdf: i32 = 946;
3231pub const SN_dh_cofactor_kdf: &[u8; 16] = b"dh-cofactor-kdf\0";
3232pub const NID_dh_cofactor_kdf: i32 = 947;
3233pub const SN_X25519: &[u8; 7] = b"X25519\0";
3234pub const NID_X25519: i32 = 948;
3235pub const SN_ED25519: &[u8; 8] = b"ED25519\0";
3236pub const NID_ED25519: i32 = 949;
3237pub const SN_chacha20_poly1305: &[u8; 18] = b"ChaCha20-Poly1305\0";
3238pub const LN_chacha20_poly1305: &[u8; 18] = b"chacha20-poly1305\0";
3239pub const NID_chacha20_poly1305: i32 = 950;
3240pub const SN_kx_rsa: &[u8; 6] = b"KxRSA\0";
3241pub const LN_kx_rsa: &[u8; 7] = b"kx-rsa\0";
3242pub const NID_kx_rsa: i32 = 951;
3243pub const SN_kx_ecdhe: &[u8; 8] = b"KxECDHE\0";
3244pub const LN_kx_ecdhe: &[u8; 9] = b"kx-ecdhe\0";
3245pub const NID_kx_ecdhe: i32 = 952;
3246pub const SN_kx_psk: &[u8; 6] = b"KxPSK\0";
3247pub const LN_kx_psk: &[u8; 7] = b"kx-psk\0";
3248pub const NID_kx_psk: i32 = 953;
3249pub const SN_auth_rsa: &[u8; 8] = b"AuthRSA\0";
3250pub const LN_auth_rsa: &[u8; 9] = b"auth-rsa\0";
3251pub const NID_auth_rsa: i32 = 954;
3252pub const SN_auth_ecdsa: &[u8; 10] = b"AuthECDSA\0";
3253pub const LN_auth_ecdsa: &[u8; 11] = b"auth-ecdsa\0";
3254pub const NID_auth_ecdsa: i32 = 955;
3255pub const SN_auth_psk: &[u8; 8] = b"AuthPSK\0";
3256pub const LN_auth_psk: &[u8; 9] = b"auth-psk\0";
3257pub const NID_auth_psk: i32 = 956;
3258pub const SN_kx_any: &[u8; 6] = b"KxANY\0";
3259pub const LN_kx_any: &[u8; 7] = b"kx-any\0";
3260pub const NID_kx_any: i32 = 957;
3261pub const SN_auth_any: &[u8; 8] = b"AuthANY\0";
3262pub const LN_auth_any: &[u8; 9] = b"auth-any\0";
3263pub const NID_auth_any: i32 = 958;
3264pub const SN_ED448: &[u8; 6] = b"ED448\0";
3265pub const NID_ED448: i32 = 960;
3266pub const SN_X448: &[u8; 5] = b"X448\0";
3267pub const NID_X448: i32 = 961;
3268pub const SN_sha512_256: &[u8; 11] = b"SHA512-256\0";
3269pub const LN_sha512_256: &[u8; 11] = b"sha512-256\0";
3270pub const NID_sha512_256: i32 = 962;
3271pub const SN_aes_128_cbc_hmac_sha256: &[u8; 24] = b"AES-128-CBC-HMAC-SHA256\0";
3272pub const LN_aes_128_cbc_hmac_sha256: &[u8; 24] = b"aes-128-cbc-hmac-sha256\0";
3273pub const NID_aes_128_cbc_hmac_sha256: i32 = 963;
3274pub const SN_aes_256_cbc_hmac_sha256: &[u8; 24] = b"AES-256-CBC-HMAC-SHA256\0";
3275pub const LN_aes_256_cbc_hmac_sha256: &[u8; 24] = b"aes-256-cbc-hmac-sha256\0";
3276pub const NID_aes_256_cbc_hmac_sha256: i32 = 964;
3277pub const SN_sha3_224: &[u8; 9] = b"SHA3-224\0";
3278pub const LN_sha3_224: &[u8; 9] = b"sha3-224\0";
3279pub const NID_sha3_224: i32 = 965;
3280pub const SN_sha3_256: &[u8; 9] = b"SHA3-256\0";
3281pub const LN_sha3_256: &[u8; 9] = b"sha3-256\0";
3282pub const NID_sha3_256: i32 = 966;
3283pub const SN_sha3_384: &[u8; 9] = b"SHA3-384\0";
3284pub const LN_sha3_384: &[u8; 9] = b"sha3-384\0";
3285pub const NID_sha3_384: i32 = 967;
3286pub const SN_sha3_512: &[u8; 9] = b"SHA3-512\0";
3287pub const LN_sha3_512: &[u8; 9] = b"sha3-512\0";
3288pub const NID_sha3_512: i32 = 968;
3289pub const SN_hkdf: &[u8; 5] = b"HKDF\0";
3290pub const LN_hkdf: &[u8; 5] = b"hkdf\0";
3291pub const NID_hkdf: i32 = 969;
3292pub const SN_kem: &[u8; 4] = b"KEM\0";
3293pub const LN_kem: &[u8; 4] = b"kem\0";
3294pub const NID_kem: i32 = 970;
3295pub const SN_KYBER512: &[u8; 9] = b"KYBER512\0";
3296pub const NID_KYBER512: i32 = 971;
3297pub const SN_KYBER512_R3: &[u8; 12] = b"KYBER512_R3\0";
3298pub const NID_KYBER512_R3: i32 = 972;
3299pub const SN_KYBER768_R3: &[u8; 12] = b"KYBER768_R3\0";
3300pub const NID_KYBER768_R3: i32 = 973;
3301pub const SN_KYBER1024_R3: &[u8; 13] = b"KYBER1024_R3\0";
3302pub const NID_KYBER1024_R3: i32 = 974;
3303pub const SN_DILITHIUM3_R3: &[u8; 14] = b"DILITHIUM3_R3\0";
3304pub const NID_DILITHIUM3_R3: i32 = 975;
3305pub const SN_ffdhe2048: &[u8; 10] = b"ffdhe2048\0";
3306pub const NID_ffdhe2048: i32 = 976;
3307pub const SN_ffdhe4096: &[u8; 10] = b"ffdhe4096\0";
3308pub const NID_ffdhe4096: i32 = 977;
3309pub const SN_sha512_224: &[u8; 11] = b"SHA512-224\0";
3310pub const LN_sha512_224: &[u8; 11] = b"sha512-224\0";
3311pub const NID_sha512_224: i32 = 978;
3312pub const SN_shake128: &[u8; 9] = b"SHAKE128\0";
3313pub const LN_shake128: &[u8; 9] = b"shake128\0";
3314pub const NID_shake128: i32 = 979;
3315pub const SN_shake256: &[u8; 9] = b"SHAKE256\0";
3316pub const LN_shake256: &[u8; 9] = b"shake256\0";
3317pub const NID_shake256: i32 = 980;
3318pub const SN_SecP256r1Kyber768Draft00: &[u8; 25] = b"SecP256r1Kyber768Draft00\0";
3319pub const NID_SecP256r1Kyber768Draft00: i32 = 981;
3320pub const SN_X25519Kyber768Draft00: &[u8; 22] = b"X25519Kyber768Draft00\0";
3321pub const NID_X25519Kyber768Draft00: i32 = 982;
3322pub const SN_ffdhe3072: &[u8; 10] = b"ffdhe3072\0";
3323pub const NID_ffdhe3072: i32 = 983;
3324pub const SN_ffdhe8192: &[u8; 10] = b"ffdhe8192\0";
3325pub const NID_ffdhe8192: i32 = 984;
3326pub const SN_MLKEM512IPD: &[u8; 12] = b"MLKEM512IPD\0";
3327pub const NID_MLKEM512IPD: i32 = 985;
3328pub const SN_MLKEM768IPD: &[u8; 12] = b"MLKEM768IPD\0";
3329pub const NID_MLKEM768IPD: i32 = 986;
3330pub const SN_MLKEM1024IPD: &[u8; 13] = b"MLKEM1024IPD\0";
3331pub const NID_MLKEM1024IPD: i32 = 987;
3332pub const SN_MLKEM512: &[u8; 9] = b"MLKEM512\0";
3333pub const NID_MLKEM512: i32 = 988;
3334pub const SN_MLKEM768: &[u8; 9] = b"MLKEM768\0";
3335pub const NID_MLKEM768: i32 = 989;
3336pub const SN_MLKEM1024: &[u8; 10] = b"MLKEM1024\0";
3337pub const NID_MLKEM1024: i32 = 990;
3338pub const SN_X25519MLKEM768: &[u8; 15] = b"X25519MLKEM768\0";
3339pub const NID_X25519MLKEM768: i32 = 991;
3340pub const SN_SecP256r1MLKEM768: &[u8; 18] = b"SecP256r1MLKEM768\0";
3341pub const NID_SecP256r1MLKEM768: i32 = 992;
3342pub const OBJ_NAME_TYPE_MD_METH: i32 = 1;
3343pub const OBJ_NAME_TYPE_CIPHER_METH: i32 = 2;
3344pub const OBJ_R_UNKNOWN_NID: i32 = 100;
3345pub const OBJ_R_INVALID_OID_STRING: i32 = 101;
3346pub const EVP_PKEY_NONE: i32 = 0;
3347pub const EVP_PKEY_RSA: i32 = 6;
3348pub const EVP_PKEY_RSA_PSS: i32 = 912;
3349pub const EVP_PKEY_EC: i32 = 408;
3350pub const EVP_PKEY_ED25519: i32 = 949;
3351pub const EVP_PKEY_X25519: i32 = 948;
3352pub const EVP_PKEY_HKDF: i32 = 969;
3353pub const EVP_PKEY_HMAC: i32 = 855;
3354pub const EVP_PKEY_DH: i32 = 28;
3355pub const EVP_PKEY_KEM: i32 = 970;
3356pub const PKCS5_SALT_LEN: i32 = 8;
3357pub const EVP_PKEY_RSA2: i32 = 19;
3358pub const EVP_PKEY_X448: i32 = 961;
3359pub const EVP_PKEY_ED448: i32 = 960;
3360pub const EVP_PKEY_DSA: i32 = 116;
3361pub const HKDF_R_OUTPUT_TOO_LARGE: i32 = 100;
3362pub const MD5_CBLOCK: i32 = 64;
3363pub const MD5_DIGEST_LENGTH: i32 = 16;
3364pub const HMAC_MD5_PRECOMPUTED_KEY_SIZE: i32 = 32;
3365pub const HMAC_SHA1_PRECOMPUTED_KEY_SIZE: i32 = 40;
3366pub const HMAC_SHA224_PRECOMPUTED_KEY_SIZE: i32 = 64;
3367pub const HMAC_SHA256_PRECOMPUTED_KEY_SIZE: i32 = 64;
3368pub const HMAC_SHA384_PRECOMPUTED_KEY_SIZE: i32 = 128;
3369pub const HMAC_SHA512_PRECOMPUTED_KEY_SIZE: i32 = 128;
3370pub const HMAC_SHA512_224_PRECOMPUTED_KEY_SIZE: i32 = 128;
3371pub const HMAC_SHA512_256_PRECOMPUTED_KEY_SIZE: i32 = 128;
3372pub const HMAC_MAX_PRECOMPUTED_KEY_SIZE: i32 = 128;
3373pub const HMAC_R_MISSING_PARAMETERS: i32 = 100;
3374pub const HMAC_R_BUFFER_TOO_SMALL: i32 = 102;
3375pub const HMAC_R_SET_PRECOMPUTED_KEY_EXPORT_NOT_CALLED: i32 = 103;
3376pub const HMAC_R_NOT_CALLED_JUST_AFTER_INIT: i32 = 104;
3377pub const EVP_HPKE_DHKEM_X25519_HKDF_SHA256: i32 = 32;
3378pub const EVP_HPKE_MAX_PUBLIC_KEY_LENGTH: i32 = 32;
3379pub const EVP_HPKE_MAX_PRIVATE_KEY_LENGTH: i32 = 32;
3380pub const EVP_HPKE_MAX_ENC_LENGTH: i32 = 32;
3381pub const EVP_HPKE_HKDF_SHA256: i32 = 1;
3382pub const EVP_HPKE_AES_128_GCM: i32 = 1;
3383pub const EVP_HPKE_AES_256_GCM: i32 = 2;
3384pub const EVP_HPKE_CHACHA20_POLY1305: i32 = 3;
3385pub const EVP_HPKE_MAX_OVERHEAD: i32 = 64;
3386pub const HRSS_SAMPLE_BYTES: i32 = 700;
3387pub const HRSS_GENERATE_KEY_BYTES: i32 = 1432;
3388pub const HRSS_ENCAP_BYTES: i32 = 1400;
3389pub const HRSS_PUBLIC_KEY_BYTES: i32 = 1138;
3390pub const HRSS_CIPHERTEXT_BYTES: i32 = 1138;
3391pub const HRSS_KEY_BYTES: i32 = 32;
3392pub const HRSS_POLY3_BYTES: i32 = 140;
3393pub const HRSS_PRIVATE_KEY_BYTES: i32 = 1452;
3394pub const EVP_PKEY_HKDEF_MODE_EXTRACT_AND_EXPAND: i32 = 0;
3395pub const EVP_PKEY_HKDEF_MODE_EXTRACT_ONLY: i32 = 1;
3396pub const EVP_PKEY_HKDEF_MODE_EXPAND_ONLY: i32 = 2;
3397pub const MD4_CBLOCK: i32 = 64;
3398pub const MD4_DIGEST_LENGTH: i32 = 16;
3399pub const PKCS7_DETACHED: i32 = 64;
3400pub const PKCS7_BINARY: i32 = 128;
3401pub const PKCS7_NOATTR: i32 = 256;
3402pub const PKCS7_PARTIAL: i32 = 16384;
3403pub const PKCS7_TEXT: i32 = 1;
3404pub const PKCS7_NOCERTS: i32 = 2;
3405pub const PKCS7_NOSMIMECAP: i32 = 512;
3406pub const PKCS7_STREAM: i32 = 4096;
3407pub const PKCS7_NOSIGS: i32 = 4;
3408pub const PKCS7_NOCHAIN: i32 = 8;
3409pub const PKCS7_NOINTERN: i32 = 16;
3410pub const PKCS7_NOVERIFY: i32 = 32;
3411pub const PKCS7_R_BAD_PKCS7_VERSION: i32 = 100;
3412pub const PKCS7_R_NOT_PKCS7_SIGNED_DATA: i32 = 101;
3413pub const PKCS7_R_NO_CERTIFICATES_INCLUDED: i32 = 102;
3414pub const PKCS7_R_NO_CRLS_INCLUDED: i32 = 103;
3415pub const PKCS7_R_UNSUPPORTED_CONTENT_TYPE: i32 = 104;
3416pub const PKCS7_R_WRONG_CONTENT_TYPE: i32 = 105;
3417pub const PKCS7_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER: i32 = 106;
3418pub const PKCS7_R_SIGNING_NOT_SUPPORTED_FOR_THIS_KEY_TYPE: i32 = 107;
3419pub const RSA_PKCS1_PADDING: i32 = 1;
3420pub const RSA_NO_PADDING: i32 = 3;
3421pub const RSA_PKCS1_OAEP_PADDING: i32 = 4;
3422pub const RSA_PKCS1_PSS_PADDING: i32 = 6;
3423pub const RSA_PSS_SALTLEN_DIGEST: i32 = -1;
3424pub const RSA_FLAG_OPAQUE: i32 = 1;
3425pub const RSA_FLAG_NO_BLINDING: i32 = 8;
3426pub const RSA_FLAG_EXT_PKEY: i32 = 32;
3427pub const RSA_FLAG_NO_PUBLIC_EXPONENT: i32 = 64;
3428pub const RSA_FLAG_LARGE_PUBLIC_EXPONENT: i32 = 128;
3429pub const RSA_3: i32 = 3;
3430pub const RSA_F4: i32 = 65537;
3431pub const RSA_METHOD_FLAG_NO_CHECK: i32 = 1;
3432pub const RSA_R_BAD_ENCODING: i32 = 100;
3433pub const RSA_R_BAD_E_VALUE: i32 = 101;
3434pub const RSA_R_BAD_FIXED_HEADER_DECRYPT: i32 = 102;
3435pub const RSA_R_BAD_PAD_BYTE_COUNT: i32 = 103;
3436pub const RSA_R_BAD_RSA_PARAMETERS: i32 = 104;
3437pub const RSA_R_BAD_SIGNATURE: i32 = 105;
3438pub const RSA_R_BAD_VERSION: i32 = 106;
3439pub const RSA_R_BLOCK_TYPE_IS_NOT_01: i32 = 107;
3440pub const RSA_R_BN_NOT_INITIALIZED: i32 = 108;
3441pub const RSA_R_CANNOT_RECOVER_MULTI_PRIME_KEY: i32 = 109;
3442pub const RSA_R_CRT_PARAMS_ALREADY_GIVEN: i32 = 110;
3443pub const RSA_R_CRT_VALUES_INCORRECT: i32 = 111;
3444pub const RSA_R_DATA_LEN_NOT_EQUAL_TO_MOD_LEN: i32 = 112;
3445pub const RSA_R_DATA_TOO_LARGE: i32 = 113;
3446pub const RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE: i32 = 114;
3447pub const RSA_R_DATA_TOO_LARGE_FOR_MODULUS: i32 = 115;
3448pub const RSA_R_DATA_TOO_SMALL: i32 = 116;
3449pub const RSA_R_DATA_TOO_SMALL_FOR_KEY_SIZE: i32 = 117;
3450pub const RSA_R_DIGEST_TOO_BIG_FOR_RSA_KEY: i32 = 118;
3451pub const RSA_R_D_E_NOT_CONGRUENT_TO_1: i32 = 119;
3452pub const RSA_R_EMPTY_PUBLIC_KEY: i32 = 120;
3453pub const RSA_R_ENCODE_ERROR: i32 = 121;
3454pub const RSA_R_FIRST_OCTET_INVALID: i32 = 122;
3455pub const RSA_R_INCONSISTENT_SET_OF_CRT_VALUES: i32 = 123;
3456pub const RSA_R_INTERNAL_ERROR: i32 = 124;
3457pub const RSA_R_INVALID_MESSAGE_LENGTH: i32 = 125;
3458pub const RSA_R_KEY_SIZE_TOO_SMALL: i32 = 126;
3459pub const RSA_R_LAST_OCTET_INVALID: i32 = 127;
3460pub const RSA_R_MODULUS_TOO_LARGE: i32 = 128;
3461pub const RSA_R_MUST_HAVE_AT_LEAST_TWO_PRIMES: i32 = 129;
3462pub const RSA_R_NO_PUBLIC_EXPONENT: i32 = 130;
3463pub const RSA_R_NULL_BEFORE_BLOCK_MISSING: i32 = 131;
3464pub const RSA_R_N_NOT_EQUAL_P_Q: i32 = 132;
3465pub const RSA_R_OAEP_DECODING_ERROR: i32 = 133;
3466pub const RSA_R_ONLY_ONE_OF_P_Q_GIVEN: i32 = 134;
3467pub const RSA_R_OUTPUT_BUFFER_TOO_SMALL: i32 = 135;
3468pub const RSA_R_PADDING_CHECK_FAILED: i32 = 136;
3469pub const RSA_R_PKCS_DECODING_ERROR: i32 = 137;
3470pub const RSA_R_SLEN_CHECK_FAILED: i32 = 138;
3471pub const RSA_R_SLEN_RECOVERY_FAILED: i32 = 139;
3472pub const RSA_R_TOO_LONG: i32 = 140;
3473pub const RSA_R_TOO_MANY_ITERATIONS: i32 = 141;
3474pub const RSA_R_UNKNOWN_ALGORITHM_TYPE: i32 = 142;
3475pub const RSA_R_UNKNOWN_PADDING_TYPE: i32 = 143;
3476pub const RSA_R_VALUE_MISSING: i32 = 144;
3477pub const RSA_R_WRONG_SIGNATURE_LENGTH: i32 = 145;
3478pub const RSA_R_PUBLIC_KEY_VALIDATION_FAILED: i32 = 146;
3479pub const RSA_R_D_OUT_OF_RANGE: i32 = 147;
3480pub const RSA_R_BLOCK_TYPE_IS_NOT_02: i32 = 148;
3481pub const RSA_R_MISMATCHED_SIGNATURE: i32 = 248;
3482pub const RSA_F_RSA_OSSL_PRIVATE_ENCRYPT: i32 = 0;
3483pub const X509V3_R_BAD_IP_ADDRESS: i32 = 100;
3484pub const X509V3_R_BAD_OBJECT: i32 = 101;
3485pub const X509V3_R_BN_DEC2BN_ERROR: i32 = 102;
3486pub const X509V3_R_BN_TO_ASN1_INTEGER_ERROR: i32 = 103;
3487pub const X509V3_R_CANNOT_FIND_FREE_FUNCTION: i32 = 104;
3488pub const X509V3_R_DIRNAME_ERROR: i32 = 105;
3489pub const X509V3_R_DISTPOINT_ALREADY_SET: i32 = 106;
3490pub const X509V3_R_DUPLICATE_ZONE_ID: i32 = 107;
3491pub const X509V3_R_ERROR_CONVERTING_ZONE: i32 = 108;
3492pub const X509V3_R_ERROR_CREATING_EXTENSION: i32 = 109;
3493pub const X509V3_R_ERROR_IN_EXTENSION: i32 = 110;
3494pub const X509V3_R_EXPECTED_A_SECTION_NAME: i32 = 111;
3495pub const X509V3_R_EXTENSION_EXISTS: i32 = 112;
3496pub const X509V3_R_EXTENSION_NAME_ERROR: i32 = 113;
3497pub const X509V3_R_EXTENSION_NOT_FOUND: i32 = 114;
3498pub const X509V3_R_EXTENSION_SETTING_NOT_SUPPORTED: i32 = 115;
3499pub const X509V3_R_EXTENSION_VALUE_ERROR: i32 = 116;
3500pub const X509V3_R_ILLEGAL_EMPTY_EXTENSION: i32 = 117;
3501pub const X509V3_R_ILLEGAL_HEX_DIGIT: i32 = 118;
3502pub const X509V3_R_INCORRECT_POLICY_SYNTAX_TAG: i32 = 119;
3503pub const X509V3_R_INVALID_BOOLEAN_STRING: i32 = 120;
3504pub const X509V3_R_INVALID_EXTENSION_STRING: i32 = 121;
3505pub const X509V3_R_INVALID_MULTIPLE_RDNS: i32 = 122;
3506pub const X509V3_R_INVALID_NAME: i32 = 123;
3507pub const X509V3_R_INVALID_NULL_ARGUMENT: i32 = 124;
3508pub const X509V3_R_INVALID_NULL_NAME: i32 = 125;
3509pub const X509V3_R_INVALID_NULL_VALUE: i32 = 126;
3510pub const X509V3_R_INVALID_NUMBER: i32 = 127;
3511pub const X509V3_R_INVALID_NUMBERS: i32 = 128;
3512pub const X509V3_R_INVALID_OBJECT_IDENTIFIER: i32 = 129;
3513pub const X509V3_R_INVALID_OPTION: i32 = 130;
3514pub const X509V3_R_INVALID_POLICY_IDENTIFIER: i32 = 131;
3515pub const X509V3_R_INVALID_PROXY_POLICY_SETTING: i32 = 132;
3516pub const X509V3_R_INVALID_PURPOSE: i32 = 133;
3517pub const X509V3_R_INVALID_SECTION: i32 = 134;
3518pub const X509V3_R_INVALID_SYNTAX: i32 = 135;
3519pub const X509V3_R_ISSUER_DECODE_ERROR: i32 = 136;
3520pub const X509V3_R_MISSING_VALUE: i32 = 137;
3521pub const X509V3_R_NEED_ORGANIZATION_AND_NUMBERS: i32 = 138;
3522pub const X509V3_R_NO_CONFIG_DATABASE: i32 = 139;
3523pub const X509V3_R_NO_ISSUER_CERTIFICATE: i32 = 140;
3524pub const X509V3_R_NO_ISSUER_DETAILS: i32 = 141;
3525pub const X509V3_R_NO_POLICY_IDENTIFIER: i32 = 142;
3526pub const X509V3_R_NO_PROXY_CERT_POLICY_LANGUAGE_DEFINED: i32 = 143;
3527pub const X509V3_R_NO_PUBLIC_KEY: i32 = 144;
3528pub const X509V3_R_NO_SUBJECT_DETAILS: i32 = 145;
3529pub const X509V3_R_ODD_NUMBER_OF_DIGITS: i32 = 146;
3530pub const X509V3_R_OPERATION_NOT_DEFINED: i32 = 147;
3531pub const X509V3_R_OTHERNAME_ERROR: i32 = 148;
3532pub const X509V3_R_POLICY_LANGUAGE_ALREADY_DEFINED: i32 = 149;
3533pub const X509V3_R_POLICY_PATH_LENGTH: i32 = 150;
3534pub const X509V3_R_POLICY_PATH_LENGTH_ALREADY_DEFINED: i32 = 151;
3535pub const X509V3_R_POLICY_WHEN_PROXY_LANGUAGE_REQUIRES_NO_POLICY: i32 = 152;
3536pub const X509V3_R_SECTION_NOT_FOUND: i32 = 153;
3537pub const X509V3_R_UNABLE_TO_GET_ISSUER_DETAILS: i32 = 154;
3538pub const X509V3_R_UNABLE_TO_GET_ISSUER_KEYID: i32 = 155;
3539pub const X509V3_R_UNKNOWN_BIT_STRING_ARGUMENT: i32 = 156;
3540pub const X509V3_R_UNKNOWN_EXTENSION: i32 = 157;
3541pub const X509V3_R_UNKNOWN_EXTENSION_NAME: i32 = 158;
3542pub const X509V3_R_UNKNOWN_OPTION: i32 = 159;
3543pub const X509V3_R_UNSUPPORTED_OPTION: i32 = 160;
3544pub const X509V3_R_UNSUPPORTED_TYPE: i32 = 161;
3545pub const X509V3_R_USER_TOO_LONG: i32 = 162;
3546pub const X509V3_R_INVALID_VALUE: i32 = 163;
3547pub const X509V3_R_TRAILING_DATA_IN_EXTENSION: i32 = 164;
3548pub const X509_VERSION_1: i32 = 0;
3549pub const X509_VERSION_2: i32 = 1;
3550pub const X509_VERSION_3: i32 = 2;
3551pub const EXFLAG_BCONS: i32 = 1;
3552pub const EXFLAG_KUSAGE: i32 = 2;
3553pub const EXFLAG_XKUSAGE: i32 = 4;
3554pub const EXFLAG_NSCERT: i32 = 8;
3555pub const EXFLAG_CA: i32 = 16;
3556pub const EXFLAG_SI: i32 = 32;
3557pub const EXFLAG_V1: i32 = 64;
3558pub const EXFLAG_INVALID: i32 = 128;
3559pub const EXFLAG_SET: i32 = 256;
3560pub const EXFLAG_CRITICAL: i32 = 512;
3561pub const EXFLAG_SS: i32 = 8192;
3562pub const X509v3_KU_DIGITAL_SIGNATURE: i32 = 128;
3563pub const X509v3_KU_NON_REPUDIATION: i32 = 64;
3564pub const X509v3_KU_KEY_ENCIPHERMENT: i32 = 32;
3565pub const X509v3_KU_DATA_ENCIPHERMENT: i32 = 16;
3566pub const X509v3_KU_KEY_AGREEMENT: i32 = 8;
3567pub const X509v3_KU_KEY_CERT_SIGN: i32 = 4;
3568pub const X509v3_KU_CRL_SIGN: i32 = 2;
3569pub const X509v3_KU_ENCIPHER_ONLY: i32 = 1;
3570pub const X509v3_KU_DECIPHER_ONLY: i32 = 32768;
3571pub const XKU_SSL_SERVER: i32 = 1;
3572pub const XKU_SSL_CLIENT: i32 = 2;
3573pub const XKU_SMIME: i32 = 4;
3574pub const XKU_CODE_SIGN: i32 = 8;
3575pub const XKU_SGC: i32 = 16;
3576pub const XKU_OCSP_SIGN: i32 = 32;
3577pub const XKU_TIMESTAMP: i32 = 64;
3578pub const XKU_DVCS: i32 = 128;
3579pub const XKU_ANYEKU: i32 = 256;
3580pub const X509_SIG_INFO_VALID: i32 = 1;
3581pub const X509_SIG_INFO_TLS: i32 = 2;
3582pub const X509_CRL_VERSION_1: i32 = 0;
3583pub const X509_CRL_VERSION_2: i32 = 1;
3584pub const X509_REQ_VERSION_1: i32 = 0;
3585pub const GEN_OTHERNAME: i32 = 0;
3586pub const GEN_EMAIL: i32 = 1;
3587pub const GEN_DNS: i32 = 2;
3588pub const GEN_X400: i32 = 3;
3589pub const GEN_DIRNAME: i32 = 4;
3590pub const GEN_EDIPARTY: i32 = 5;
3591pub const GEN_URI: i32 = 6;
3592pub const GEN_IPADD: i32 = 7;
3593pub const GEN_RID: i32 = 8;
3594pub const X509_V_OK: i32 = 0;
3595pub const X509_V_ERR_UNSPECIFIED: i32 = 1;
3596pub const X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT: i32 = 2;
3597pub const X509_V_ERR_UNABLE_TO_GET_CRL: i32 = 3;
3598pub const X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: i32 = 4;
3599pub const X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: i32 = 5;
3600pub const X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: i32 = 6;
3601pub const X509_V_ERR_CERT_SIGNATURE_FAILURE: i32 = 7;
3602pub const X509_V_ERR_CRL_SIGNATURE_FAILURE: i32 = 8;
3603pub const X509_V_ERR_CERT_NOT_YET_VALID: i32 = 9;
3604pub const X509_V_ERR_CERT_HAS_EXPIRED: i32 = 10;
3605pub const X509_V_ERR_CRL_NOT_YET_VALID: i32 = 11;
3606pub const X509_V_ERR_CRL_HAS_EXPIRED: i32 = 12;
3607pub const X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: i32 = 13;
3608pub const X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: i32 = 14;
3609pub const X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: i32 = 15;
3610pub const X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: i32 = 16;
3611pub const X509_V_ERR_OUT_OF_MEM: i32 = 17;
3612pub const X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT: i32 = 18;
3613pub const X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: i32 = 19;
3614pub const X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: i32 = 20;
3615pub const X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: i32 = 21;
3616pub const X509_V_ERR_CERT_CHAIN_TOO_LONG: i32 = 22;
3617pub const X509_V_ERR_CERT_REVOKED: i32 = 23;
3618pub const X509_V_ERR_INVALID_CA: i32 = 24;
3619pub const X509_V_ERR_PATH_LENGTH_EXCEEDED: i32 = 25;
3620pub const X509_V_ERR_INVALID_PURPOSE: i32 = 26;
3621pub const X509_V_ERR_CERT_UNTRUSTED: i32 = 27;
3622pub const X509_V_ERR_CERT_REJECTED: i32 = 28;
3623pub const X509_V_ERR_SUBJECT_ISSUER_MISMATCH: i32 = 29;
3624pub const X509_V_ERR_AKID_SKID_MISMATCH: i32 = 30;
3625pub const X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH: i32 = 31;
3626pub const X509_V_ERR_KEYUSAGE_NO_CERTSIGN: i32 = 32;
3627pub const X509_V_ERR_UNABLE_TO_GET_CRL_ISSUER: i32 = 33;
3628pub const X509_V_ERR_UNHANDLED_CRITICAL_EXTENSION: i32 = 34;
3629pub const X509_V_ERR_KEYUSAGE_NO_CRL_SIGN: i32 = 35;
3630pub const X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION: i32 = 36;
3631pub const X509_V_ERR_INVALID_NON_CA: i32 = 37;
3632pub const X509_V_ERR_PROXY_PATH_LENGTH_EXCEEDED: i32 = 38;
3633pub const X509_V_ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE: i32 = 39;
3634pub const X509_V_ERR_PROXY_CERTIFICATES_NOT_ALLOWED: i32 = 40;
3635pub const X509_V_ERR_INVALID_EXTENSION: i32 = 41;
3636pub const X509_V_ERR_INVALID_POLICY_EXTENSION: i32 = 42;
3637pub const X509_V_ERR_NO_EXPLICIT_POLICY: i32 = 43;
3638pub const X509_V_ERR_DIFFERENT_CRL_SCOPE: i32 = 44;
3639pub const X509_V_ERR_UNSUPPORTED_EXTENSION_FEATURE: i32 = 45;
3640pub const X509_V_ERR_UNNESTED_RESOURCE: i32 = 46;
3641pub const X509_V_ERR_PERMITTED_VIOLATION: i32 = 47;
3642pub const X509_V_ERR_EXCLUDED_VIOLATION: i32 = 48;
3643pub const X509_V_ERR_SUBTREE_MINMAX: i32 = 49;
3644pub const X509_V_ERR_APPLICATION_VERIFICATION: i32 = 50;
3645pub const X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE: i32 = 51;
3646pub const X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX: i32 = 52;
3647pub const X509_V_ERR_UNSUPPORTED_NAME_SYNTAX: i32 = 53;
3648pub const X509_V_ERR_CRL_PATH_VALIDATION_ERROR: i32 = 54;
3649pub const X509_V_ERR_HOSTNAME_MISMATCH: i32 = 62;
3650pub const X509_V_ERR_EMAIL_MISMATCH: i32 = 63;
3651pub const X509_V_ERR_IP_ADDRESS_MISMATCH: i32 = 64;
3652pub const X509_V_ERR_INVALID_CALL: i32 = 65;
3653pub const X509_V_ERR_STORE_LOOKUP: i32 = 66;
3654pub const X509_V_ERR_NAME_CONSTRAINTS_WITHOUT_SANS: i32 = 67;
3655pub const X509_CHECK_FLAG_NO_WILDCARDS: i32 = 2;
3656pub const X509_CHECK_FLAG_NEVER_CHECK_SUBJECT: i32 = 32;
3657pub const X509_PURPOSE_SSL_CLIENT: i32 = 1;
3658pub const X509_PURPOSE_SSL_SERVER: i32 = 2;
3659pub const X509_PURPOSE_NS_SSL_SERVER: i32 = 3;
3660pub const X509_PURPOSE_SMIME_SIGN: i32 = 4;
3661pub const X509_PURPOSE_SMIME_ENCRYPT: i32 = 5;
3662pub const X509_PURPOSE_CRL_SIGN: i32 = 6;
3663pub const X509_PURPOSE_ANY: i32 = 7;
3664pub const X509_PURPOSE_OCSP_HELPER: i32 = 8;
3665pub const X509_PURPOSE_TIMESTAMP_SIGN: i32 = 9;
3666pub const X509_TRUST_COMPAT: i32 = 1;
3667pub const X509_TRUST_SSL_CLIENT: i32 = 2;
3668pub const X509_TRUST_SSL_SERVER: i32 = 3;
3669pub const X509_TRUST_EMAIL: i32 = 4;
3670pub const X509_TRUST_OBJECT_SIGN: i32 = 5;
3671pub const X509_TRUST_TSA: i32 = 8;
3672pub const X509_FLAG_COMPAT: i32 = 0;
3673pub const X509_FLAG_NO_HEADER: i32 = 1;
3674pub const X509_FLAG_NO_VERSION: i32 = 2;
3675pub const X509_FLAG_NO_SERIAL: i32 = 4;
3676pub const X509_FLAG_NO_SIGNAME: i32 = 8;
3677pub const X509_FLAG_NO_ISSUER: i32 = 16;
3678pub const X509_FLAG_NO_VALIDITY: i32 = 32;
3679pub const X509_FLAG_NO_SUBJECT: i32 = 64;
3680pub const X509_FLAG_NO_PUBKEY: i32 = 128;
3681pub const X509_FLAG_NO_EXTENSIONS: i32 = 256;
3682pub const X509_FLAG_NO_SIGDUMP: i32 = 512;
3683pub const X509_FLAG_NO_AUX: i32 = 1024;
3684pub const X509_FLAG_NO_ATTRIBUTES: i32 = 2048;
3685pub const X509_FLAG_NO_IDS: i32 = 4096;
3686pub const X509V3_EXT_UNKNOWN_MASK: i32 = 983040;
3687pub const X509V3_EXT_DEFAULT: i32 = 0;
3688pub const X509V3_EXT_ERROR_UNKNOWN: i32 = 65536;
3689pub const X509V3_EXT_PARSE_UNKNOWN: i32 = 131072;
3690pub const X509V3_EXT_DUMP_UNKNOWN: i32 = 196608;
3691pub const XN_FLAG_COMPAT: i32 = 0;
3692pub const XN_FLAG_SEP_MASK: i32 = 983040;
3693pub const XN_FLAG_SEP_COMMA_PLUS: i32 = 65536;
3694pub const XN_FLAG_SEP_CPLUS_SPC: i32 = 131072;
3695pub const XN_FLAG_SEP_SPLUS_SPC: i32 = 196608;
3696pub const XN_FLAG_SEP_MULTILINE: i32 = 262144;
3697pub const XN_FLAG_DN_REV: i32 = 1048576;
3698pub const XN_FLAG_FN_MASK: i32 = 6291456;
3699pub const XN_FLAG_FN_SN: i32 = 0;
3700pub const XN_FLAG_FN_LN: i32 = 2097152;
3701pub const XN_FLAG_FN_OID: i32 = 4194304;
3702pub const XN_FLAG_FN_NONE: i32 = 6291456;
3703pub const XN_FLAG_SPC_EQ: i32 = 8388608;
3704pub const XN_FLAG_DUMP_UNKNOWN_FIELDS: i32 = 16777216;
3705pub const XN_FLAG_FN_ALIGN: i32 = 33554432;
3706pub const XN_FLAG_RFC2253: i32 = 17892119;
3707pub const XN_FLAG_ONELINE: i32 = 8520479;
3708pub const XN_FLAG_MULTILINE: i32 = 44302342;
3709pub const X509_TRUST_TRUSTED: i32 = 1;
3710pub const X509_TRUST_REJECTED: i32 = 2;
3711pub const X509_TRUST_UNTRUSTED: i32 = 3;
3712pub const X509V3_CTX_TEST: i32 = 1;
3713pub const X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT: i32 = 0;
3714pub const X509_CHECK_FLAG_MULTI_LABEL_WILDCARDS: i32 = 0;
3715pub const X509_CHECK_FLAG_SINGLE_LABEL_SUBDOMAINS: i32 = 0;
3716pub const X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS: i32 = 0;
3717pub const X509_TRUST_DEFAULT: i32 = -1;
3718pub const X509_LU_NONE: i32 = 0;
3719pub const X509_LU_X509: i32 = 1;
3720pub const X509_LU_CRL: i32 = 2;
3721pub const X509_LU_PKEY: i32 = 3;
3722pub const X509_L_FILE_LOAD: i32 = 1;
3723pub const X509_L_ADD_DIR: i32 = 2;
3724pub const X509_FILETYPE_PEM: i32 = 1;
3725pub const X509_FILETYPE_ASN1: i32 = 2;
3726pub const X509_FILETYPE_DEFAULT: i32 = 3;
3727pub const X509_V_FLAG_CB_ISSUER_CHECK: i32 = 1;
3728pub const X509_V_FLAG_USE_CHECK_TIME: i32 = 2;
3729pub const X509_V_FLAG_CRL_CHECK: i32 = 4;
3730pub const X509_V_FLAG_CRL_CHECK_ALL: i32 = 8;
3731pub const X509_V_FLAG_IGNORE_CRITICAL: i32 = 16;
3732pub const X509_V_FLAG_X509_STRICT: i32 = 0;
3733pub const X509_V_FLAG_ALLOW_PROXY_CERTS: i32 = 64;
3734pub const X509_V_FLAG_POLICY_CHECK: i32 = 128;
3735pub const X509_V_FLAG_EXPLICIT_POLICY: i32 = 256;
3736pub const X509_V_FLAG_INHIBIT_ANY: i32 = 512;
3737pub const X509_V_FLAG_INHIBIT_MAP: i32 = 1024;
3738pub const X509_V_FLAG_NOTIFY_POLICY: i32 = 2048;
3739pub const X509_V_FLAG_EXTENDED_CRL_SUPPORT: i32 = 4096;
3740pub const X509_V_FLAG_USE_DELTAS: i32 = 8192;
3741pub const X509_V_FLAG_CHECK_SS_SIGNATURE: i32 = 16384;
3742pub const X509_V_FLAG_TRUSTED_FIRST: i32 = 32768;
3743pub const X509_V_FLAG_PARTIAL_CHAIN: i32 = 524288;
3744pub const X509_V_FLAG_NO_ALT_CHAINS: i32 = 1048576;
3745pub const X509_V_FLAG_NO_CHECK_TIME: i32 = 2097152;
3746pub const X509_V_FLAG_POLICY_MASK: i32 = 1920;
3747pub const X509V3_EXT_CTX_DEP: i32 = 2;
3748pub const X509V3_EXT_MULTILINE: i32 = 4;
3749pub const CRLDP_ALL_REASONS: i32 = 32895;
3750pub const NS_SSL_CLIENT: i32 = 128;
3751pub const NS_SSL_SERVER: i32 = 64;
3752pub const NS_SMIME: i32 = 32;
3753pub const NS_OBJSIGN: i32 = 16;
3754pub const NS_SSL_CA: i32 = 4;
3755pub const NS_SMIME_CA: i32 = 2;
3756pub const NS_OBJSIGN_CA: i32 = 1;
3757pub const NS_ANY_CA: i32 = 7;
3758pub const X509V3_ADD_OP_MASK: i32 = 15;
3759pub const X509V3_ADD_DEFAULT: i32 = 0;
3760pub const X509V3_ADD_APPEND: i32 = 1;
3761pub const X509V3_ADD_REPLACE: i32 = 2;
3762pub const X509V3_ADD_REPLACE_EXISTING: i32 = 3;
3763pub const X509V3_ADD_KEEP_EXISTING: i32 = 4;
3764pub const X509V3_ADD_DELETE: i32 = 5;
3765pub const X509V3_ADD_SILENT: i32 = 16;
3766pub const X509_R_AKID_MISMATCH: i32 = 100;
3767pub const X509_R_BAD_PKCS7_VERSION: i32 = 101;
3768pub const X509_R_BAD_X509_FILETYPE: i32 = 102;
3769pub const X509_R_BASE64_DECODE_ERROR: i32 = 103;
3770pub const X509_R_CANT_CHECK_DH_KEY: i32 = 104;
3771pub const X509_R_CERT_ALREADY_IN_HASH_TABLE: i32 = 105;
3772pub const X509_R_CRL_ALREADY_DELTA: i32 = 106;
3773pub const X509_R_CRL_VERIFY_FAILURE: i32 = 107;
3774pub const X509_R_IDP_MISMATCH: i32 = 108;
3775pub const X509_R_INVALID_BIT_STRING_BITS_LEFT: i32 = 109;
3776pub const X509_R_INVALID_DIRECTORY: i32 = 110;
3777pub const X509_R_INVALID_FIELD_NAME: i32 = 111;
3778pub const X509_R_INVALID_PSS_PARAMETERS: i32 = 112;
3779pub const X509_R_INVALID_TRUST: i32 = 113;
3780pub const X509_R_ISSUER_MISMATCH: i32 = 114;
3781pub const X509_R_KEY_TYPE_MISMATCH: i32 = 115;
3782pub const X509_R_KEY_VALUES_MISMATCH: i32 = 116;
3783pub const X509_R_LOADING_CERT_DIR: i32 = 117;
3784pub const X509_R_LOADING_DEFAULTS: i32 = 118;
3785pub const X509_R_NEWER_CRL_NOT_NEWER: i32 = 119;
3786pub const X509_R_NOT_PKCS7_SIGNED_DATA: i32 = 120;
3787pub const X509_R_NO_CERTIFICATES_INCLUDED: i32 = 121;
3788pub const X509_R_NO_CERT_SET_FOR_US_TO_VERIFY: i32 = 122;
3789pub const X509_R_NO_CRLS_INCLUDED: i32 = 123;
3790pub const X509_R_NO_CRL_NUMBER: i32 = 124;
3791pub const X509_R_PUBLIC_KEY_DECODE_ERROR: i32 = 125;
3792pub const X509_R_PUBLIC_KEY_ENCODE_ERROR: i32 = 126;
3793pub const X509_R_SHOULD_RETRY: i32 = 127;
3794pub const X509_R_UNKNOWN_KEY_TYPE: i32 = 128;
3795pub const X509_R_UNKNOWN_NID: i32 = 129;
3796pub const X509_R_UNKNOWN_PURPOSE_ID: i32 = 130;
3797pub const X509_R_UNKNOWN_TRUST_ID: i32 = 131;
3798pub const X509_R_UNSUPPORTED_ALGORITHM: i32 = 132;
3799pub const X509_R_WRONG_LOOKUP_TYPE: i32 = 133;
3800pub const X509_R_WRONG_TYPE: i32 = 134;
3801pub const X509_R_NAME_TOO_LONG: i32 = 135;
3802pub const X509_R_INVALID_PARAMETER: i32 = 136;
3803pub const X509_R_SIGNATURE_ALGORITHM_MISMATCH: i32 = 137;
3804pub const X509_R_DELTA_CRL_WITHOUT_CRL_NUMBER: i32 = 138;
3805pub const X509_R_INVALID_FIELD_FOR_VERSION: i32 = 139;
3806pub const X509_R_INVALID_VERSION: i32 = 140;
3807pub const X509_R_NO_CERTIFICATE_FOUND: i32 = 141;
3808pub const X509_R_NO_CERTIFICATE_OR_CRL_FOUND: i32 = 142;
3809pub const X509_R_NO_CRL_FOUND: i32 = 143;
3810pub const X509_R_INVALID_POLICY_EXTENSION: i32 = 144;
3811pub const X509_R_UNKNOWN_SIGID_ALGS: i32 = 145;
3812pub const CRL_REASON_NONE: i32 = -1;
3813pub const CRL_REASON_UNSPECIFIED: i32 = 0;
3814pub const CRL_REASON_KEY_COMPROMISE: i32 = 1;
3815pub const CRL_REASON_CA_COMPROMISE: i32 = 2;
3816pub const CRL_REASON_AFFILIATION_CHANGED: i32 = 3;
3817pub const CRL_REASON_SUPERSEDED: i32 = 4;
3818pub const CRL_REASON_CESSATION_OF_OPERATION: i32 = 5;
3819pub const CRL_REASON_CERTIFICATE_HOLD: i32 = 6;
3820pub const CRL_REASON_REMOVE_FROM_CRL: i32 = 8;
3821pub const CRL_REASON_PRIVILEGE_WITHDRAWN: i32 = 9;
3822pub const CRL_REASON_AA_COMPROMISE: i32 = 10;
3823pub const KU_DIGITAL_SIGNATURE: i32 = 128;
3824pub const KU_NON_REPUDIATION: i32 = 64;
3825pub const KU_KEY_ENCIPHERMENT: i32 = 32;
3826pub const KU_DATA_ENCIPHERMENT: i32 = 16;
3827pub const KU_KEY_AGREEMENT: i32 = 8;
3828pub const KU_KEY_CERT_SIGN: i32 = 4;
3829pub const KU_CRL_SIGN: i32 = 2;
3830pub const KU_ENCIPHER_ONLY: i32 = 1;
3831pub const KU_DECIPHER_ONLY: i32 = 32768;
3832pub const OCSP_REVOKED_STATUS_UNSPECIFIED: i32 = 0;
3833pub const OCSP_REVOKED_STATUS_KEYCOMPROMISE: i32 = 1;
3834pub const OCSP_REVOKED_STATUS_CACOMPROMISE: i32 = 2;
3835pub const OCSP_REVOKED_STATUS_AFFILIATIONCHANGED: i32 = 3;
3836pub const OCSP_REVOKED_STATUS_SUPERSEDED: i32 = 4;
3837pub const OCSP_REVOKED_STATUS_CESSATIONOFOPERATION: i32 = 5;
3838pub const OCSP_REVOKED_STATUS_CERTIFICATEHOLD: i32 = 6;
3839pub const OCSP_REVOKED_STATUS_REMOVEFROMCRL: i32 = 8;
3840pub const OCSP_REVOKED_STATUS_PRIVILEGEWITHDRAWN: i32 = 9;
3841pub const OCSP_REVOKED_STATUS_AACOMPROMISE: i32 = 10;
3842pub const OCSP_NOCERTS: i32 = 1;
3843pub const OCSP_NOINTERN: i32 = 2;
3844pub const OCSP_NOCHAIN: i32 = 8;
3845pub const OCSP_NOVERIFY: i32 = 16;
3846pub const OCSP_NOEXPLICIT: i32 = 32;
3847pub const OCSP_TRUSTOTHER: i32 = 512;
3848pub const OCSP_RESPID_KEY: i32 = 1024;
3849pub const OCSP_NOTIME: i32 = 2048;
3850pub const OCSP_RESPONSE_STATUS_SUCCESSFUL: i32 = 0;
3851pub const OCSP_RESPONSE_STATUS_MALFORMEDREQUEST: i32 = 1;
3852pub const OCSP_RESPONSE_STATUS_INTERNALERROR: i32 = 2;
3853pub const OCSP_RESPONSE_STATUS_TRYLATER: i32 = 3;
3854pub const OCSP_RESPONSE_STATUS_SIGREQUIRED: i32 = 5;
3855pub const OCSP_RESPONSE_STATUS_UNAUTHORIZED: i32 = 6;
3856pub const V_OCSP_RESPID_NAME: i32 = 0;
3857pub const V_OCSP_RESPID_KEY: i32 = 1;
3858pub const V_OCSP_CERTSTATUS_GOOD: i32 = 0;
3859pub const V_OCSP_CERTSTATUS_REVOKED: i32 = 1;
3860pub const V_OCSP_CERTSTATUS_UNKNOWN: i32 = 2;
3861pub const OCSP_NONCE_EQUAL: i32 = 1;
3862pub const OCSP_NONCE_BOTH_ABSENT: i32 = 2;
3863pub const OCSP_NONCE_RESPONSE_ONLY: i32 = 3;
3864pub const OCSP_NONCE_NOT_EQUAL: i32 = 0;
3865pub const OCSP_NONCE_REQUEST_ONLY: i32 = -1;
3866pub const OCSP_R_CERTIFICATE_VERIFY_ERROR: i32 = 101;
3867pub const OCSP_R_DIGEST_ERR: i32 = 102;
3868pub const OCSP_R_MISSING_OCSPSIGNING_USAGE: i32 = 103;
3869pub const OCSP_R_NOT_BASIC_RESPONSE: i32 = 104;
3870pub const OCSP_R_NO_CERTIFICATES_IN_CHAIN: i32 = 105;
3871pub const OCSP_R_NO_RESPONSE_DATA: i32 = 108;
3872pub const OCSP_R_NO_REVOKED_TIME: i32 = 109;
3873pub const OCSP_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE: i32 = 110;
3874pub const OCSP_R_RESPONSE_CONTAINS_NO_REVOCATION_DATA: i32 = 111;
3875pub const OCSP_R_ROOT_CA_NOT_TRUSTED: i32 = 112;
3876pub const OCSP_R_SERVER_RESPONSE_PARSE_ERROR: i32 = 115;
3877pub const OCSP_R_SIGNATURE_FAILURE: i32 = 117;
3878pub const OCSP_R_SIGNER_CERTIFICATE_NOT_FOUND: i32 = 118;
3879pub const OCSP_R_UNKNOWN_MESSAGE_DIGEST: i32 = 119;
3880pub const OCSP_R_UNKNOWN_NID: i32 = 120;
3881pub const OCSP_R_ERROR_PARSING_URL: i32 = 121;
3882pub const OCSP_R_ERROR_IN_NEXTUPDATE_FIELD: i32 = 122;
3883pub const OCSP_R_ERROR_IN_THISUPDATE_FIELD: i32 = 123;
3884pub const OCSP_R_NEXTUPDATE_BEFORE_THISUPDATE: i32 = 124;
3885pub const OCSP_R_STATUS_EXPIRED: i32 = 125;
3886pub const OCSP_R_STATUS_NOT_YET_VALID: i32 = 126;
3887pub const OCSP_R_STATUS_TOO_OLD: i32 = 127;
3888pub const OCSP_R_REQUEST_NOT_SIGNED: i32 = 128;
3889pub const OCSP_R_UNSUPPORTED_REQUESTORNAME_TYPE: i32 = 129;
3890pub const OCSP_R_NO_SIGNER_KEY: i32 = 130;
3891pub const OCSP_R_OCSP_REQUEST_DUPLICATE_SIGNATURE: i32 = 131;
3892pub const OCSP_R_UNKNOWN_FIELD_VALUE: i32 = 132;
3893pub const PEM_BUFSIZE: i32 = 1024;
3894pub const PEM_STRING_X509_OLD: &[u8; 17] = b"X509 CERTIFICATE\0";
3895pub const PEM_STRING_X509: &[u8; 12] = b"CERTIFICATE\0";
3896pub const PEM_STRING_X509_PAIR: &[u8; 17] = b"CERTIFICATE PAIR\0";
3897pub const PEM_STRING_X509_TRUSTED: &[u8; 20] = b"TRUSTED CERTIFICATE\0";
3898pub const PEM_STRING_X509_REQ_OLD: &[u8; 24] = b"NEW CERTIFICATE REQUEST\0";
3899pub const PEM_STRING_X509_REQ: &[u8; 20] = b"CERTIFICATE REQUEST\0";
3900pub const PEM_STRING_X509_CRL: &[u8; 9] = b"X509 CRL\0";
3901pub const PEM_STRING_EVP_PKEY: &[u8; 16] = b"ANY PRIVATE KEY\0";
3902pub const PEM_STRING_PUBLIC: &[u8; 11] = b"PUBLIC KEY\0";
3903pub const PEM_STRING_RSA: &[u8; 16] = b"RSA PRIVATE KEY\0";
3904pub const PEM_STRING_RSA_PUBLIC: &[u8; 15] = b"RSA PUBLIC KEY\0";
3905pub const PEM_STRING_DSA: &[u8; 16] = b"DSA PRIVATE KEY\0";
3906pub const PEM_STRING_DSA_PUBLIC: &[u8; 15] = b"DSA PUBLIC KEY\0";
3907pub const PEM_STRING_EC: &[u8; 15] = b"EC PRIVATE KEY\0";
3908pub const PEM_STRING_PKCS7: &[u8; 6] = b"PKCS7\0";
3909pub const PEM_STRING_PKCS7_SIGNED: &[u8; 20] = b"PKCS #7 SIGNED DATA\0";
3910pub const PEM_STRING_PKCS8: &[u8; 22] = b"ENCRYPTED PRIVATE KEY\0";
3911pub const PEM_STRING_PKCS8INF: &[u8; 12] = b"PRIVATE KEY\0";
3912pub const PEM_STRING_DHPARAMS: &[u8; 14] = b"DH PARAMETERS\0";
3913pub const PEM_STRING_SSL_SESSION: &[u8; 23] = b"SSL SESSION PARAMETERS\0";
3914pub const PEM_STRING_DSAPARAMS: &[u8; 15] = b"DSA PARAMETERS\0";
3915pub const PEM_STRING_ECDSA_PUBLIC: &[u8; 17] = b"ECDSA PUBLIC KEY\0";
3916pub const PEM_STRING_ECPARAMETERS: &[u8; 14] = b"EC PARAMETERS\0";
3917pub const PEM_STRING_ECPRIVATEKEY: &[u8; 15] = b"EC PRIVATE KEY\0";
3918pub const PEM_STRING_PARAMETERS: &[u8; 11] = b"PARAMETERS\0";
3919pub const PEM_STRING_CMS: &[u8; 4] = b"CMS\0";
3920pub const PEM_TYPE_ENCRYPTED: i32 = 10;
3921pub const PEM_TYPE_MIC_ONLY: i32 = 20;
3922pub const PEM_TYPE_MIC_CLEAR: i32 = 30;
3923pub const PEM_TYPE_CLEAR: i32 = 40;
3924pub const PEM_R_BAD_BASE64_DECODE: i32 = 100;
3925pub const PEM_R_BAD_DECRYPT: i32 = 101;
3926pub const PEM_R_BAD_END_LINE: i32 = 102;
3927pub const PEM_R_BAD_IV_CHARS: i32 = 103;
3928pub const PEM_R_BAD_PASSWORD_READ: i32 = 104;
3929pub const PEM_R_CIPHER_IS_NULL: i32 = 105;
3930pub const PEM_R_ERROR_CONVERTING_PRIVATE_KEY: i32 = 106;
3931pub const PEM_R_NOT_DEK_INFO: i32 = 107;
3932pub const PEM_R_NOT_ENCRYPTED: i32 = 108;
3933pub const PEM_R_NOT_PROC_TYPE: i32 = 109;
3934pub const PEM_R_NO_START_LINE: i32 = 110;
3935pub const PEM_R_READ_KEY: i32 = 111;
3936pub const PEM_R_SHORT_HEADER: i32 = 112;
3937pub const PEM_R_UNSUPPORTED_CIPHER: i32 = 113;
3938pub const PEM_R_UNSUPPORTED_ENCRYPTION: i32 = 114;
3939pub const PEM_R_PROBLEMS_GETTING_PASSWORD: i32 = 115;
3940pub const PKCS12_DEFAULT_ITER: i32 = 2048;
3941pub const PKCS8_R_BAD_PKCS12_DATA: i32 = 100;
3942pub const PKCS8_R_BAD_PKCS12_VERSION: i32 = 101;
3943pub const PKCS8_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER: i32 = 102;
3944pub const PKCS8_R_CRYPT_ERROR: i32 = 103;
3945pub const PKCS8_R_DECODE_ERROR: i32 = 104;
3946pub const PKCS8_R_ENCODE_ERROR: i32 = 105;
3947pub const PKCS8_R_ENCRYPT_ERROR: i32 = 106;
3948pub const PKCS8_R_ERROR_SETTING_CIPHER_PARAMS: i32 = 107;
3949pub const PKCS8_R_INCORRECT_PASSWORD: i32 = 108;
3950pub const PKCS8_R_KEYGEN_FAILURE: i32 = 109;
3951pub const PKCS8_R_KEY_GEN_ERROR: i32 = 110;
3952pub const PKCS8_R_METHOD_NOT_SUPPORTED: i32 = 111;
3953pub const PKCS8_R_MISSING_MAC: i32 = 112;
3954pub const PKCS8_R_MULTIPLE_PRIVATE_KEYS_IN_PKCS12: i32 = 113;
3955pub const PKCS8_R_PKCS12_PUBLIC_KEY_INTEGRITY_NOT_SUPPORTED: i32 = 114;
3956pub const PKCS8_R_PKCS12_TOO_DEEPLY_NESTED: i32 = 115;
3957pub const PKCS8_R_PRIVATE_KEY_DECODE_ERROR: i32 = 116;
3958pub const PKCS8_R_PRIVATE_KEY_ENCODE_ERROR: i32 = 117;
3959pub const PKCS8_R_TOO_LONG: i32 = 118;
3960pub const PKCS8_R_UNKNOWN_ALGORITHM: i32 = 119;
3961pub const PKCS8_R_UNKNOWN_CIPHER: i32 = 120;
3962pub const PKCS8_R_UNKNOWN_CIPHER_ALGORITHM: i32 = 121;
3963pub const PKCS8_R_UNKNOWN_DIGEST: i32 = 122;
3964pub const PKCS8_R_UNKNOWN_HASH: i32 = 123;
3965pub const PKCS8_R_UNSUPPORTED_PRIVATE_KEY_ALGORITHM: i32 = 124;
3966pub const PKCS8_R_UNSUPPORTED_KEYLENGTH: i32 = 125;
3967pub const PKCS8_R_UNSUPPORTED_SALT_TYPE: i32 = 126;
3968pub const PKCS8_R_UNSUPPORTED_CIPHER: i32 = 127;
3969pub const PKCS8_R_UNSUPPORTED_KEY_DERIVATION_FUNCTION: i32 = 128;
3970pub const PKCS8_R_BAD_ITERATION_COUNT: i32 = 129;
3971pub const PKCS8_R_UNSUPPORTED_PRF: i32 = 130;
3972pub const PKCS8_R_INVALID_CHARACTERS: i32 = 131;
3973pub const PKCS8_R_UNSUPPORTED_OPTIONS: i32 = 132;
3974pub const PKCS8_R_AMBIGUOUS_FRIENDLY_NAME: i32 = 133;
3975pub const PKCS12_R_MAC_VERIFY_FAILURE: i32 = 108;
3976pub const RIPEMD160_CBLOCK: i32 = 64;
3977pub const RIPEMD160_LBLOCK: i32 = 16;
3978pub const RIPEMD160_DIGEST_LENGTH: i32 = 20;
3979pub const AWSLC_MODE_STRING: &[u8; 8] = b"AWS-LC \0";
3980pub const AWSLC_VERSION_STRING: &[u8; 13] = b"AWS-LC 3.0.0\0";
3981pub const TRUST_TOKEN_MAX_PRIVATE_KEY_SIZE: i32 = 512;
3982pub const TRUST_TOKEN_MAX_PUBLIC_KEY_SIZE: i32 = 512;
3983pub const TRUST_TOKEN_R_KEYGEN_FAILURE: i32 = 100;
3984pub const TRUST_TOKEN_R_BUFFER_TOO_SMALL: i32 = 101;
3985pub const TRUST_TOKEN_R_OVER_BATCHSIZE: i32 = 102;
3986pub const TRUST_TOKEN_R_DECODE_ERROR: i32 = 103;
3987pub const TRUST_TOKEN_R_SRR_SIGNATURE_ERROR: i32 = 104;
3988pub const TRUST_TOKEN_R_DECODE_FAILURE: i32 = 105;
3989pub const TRUST_TOKEN_R_INVALID_METADATA: i32 = 106;
3990pub const TRUST_TOKEN_R_TOO_MANY_KEYS: i32 = 107;
3991pub const TRUST_TOKEN_R_NO_KEYS_CONFIGURED: i32 = 108;
3992pub const TRUST_TOKEN_R_INVALID_KEY_ID: i32 = 109;
3993pub const TRUST_TOKEN_R_INVALID_TOKEN: i32 = 110;
3994pub const TRUST_TOKEN_R_BAD_VALIDITY_CHECK: i32 = 111;
3995pub const TRUST_TOKEN_R_NO_SRR_KEY_CONFIGURED: i32 = 112;
3996pub const TRUST_TOKEN_R_INVALID_METADATA_KEY: i32 = 113;
3997pub const TRUST_TOKEN_R_INVALID_PROOF: i32 = 114;
3998pub type __off_t = ::std::os::raw::c_long;
3999pub type __off64_t = ::std::os::raw::c_long;
4000pub type __time_t = ::std::os::raw::c_long;
4001pub type time_t = __time_t;
4002pub type ossl_ssize_t = isize;
4003pub type CBS_ASN1_TAG = u32;
4004pub type CRYPTO_THREADID = ::std::os::raw::c_int;
4005#[repr(C)]
4006#[derive(Debug, Copy, Clone)]
4007pub struct asn1_null_st {
4008    _unused: [u8; 0],
4009}
4010pub type ASN1_NULL = asn1_null_st;
4011pub type ASN1_BOOLEAN = ::std::os::raw::c_int;
4012pub type ASN1_ITEM = ASN1_ITEM_st;
4013#[repr(C)]
4014#[derive(Debug, Copy, Clone)]
4015pub struct asn1_object_st {
4016    _unused: [u8; 0],
4017}
4018pub type ASN1_OBJECT = asn1_object_st;
4019#[repr(C)]
4020#[derive(Debug, Copy, Clone)]
4021pub struct asn1_pctx_st {
4022    _unused: [u8; 0],
4023}
4024pub type ASN1_PCTX = asn1_pctx_st;
4025pub type ASN1_BIT_STRING = asn1_string_st;
4026pub type ASN1_BMPSTRING = asn1_string_st;
4027pub type ASN1_ENUMERATED = asn1_string_st;
4028pub type ASN1_GENERALIZEDTIME = asn1_string_st;
4029pub type ASN1_GENERALSTRING = asn1_string_st;
4030pub type ASN1_IA5STRING = asn1_string_st;
4031pub type ASN1_INTEGER = asn1_string_st;
4032pub type ASN1_OCTET_STRING = asn1_string_st;
4033pub type ASN1_PRINTABLESTRING = asn1_string_st;
4034pub type ASN1_STRING = asn1_string_st;
4035pub type ASN1_T61STRING = asn1_string_st;
4036pub type ASN1_TIME = asn1_string_st;
4037pub type ASN1_UNIVERSALSTRING = asn1_string_st;
4038pub type ASN1_UTCTIME = asn1_string_st;
4039pub type ASN1_UTF8STRING = asn1_string_st;
4040pub type ASN1_VISIBLESTRING = asn1_string_st;
4041pub type ASN1_TYPE = asn1_type_st;
4042pub type AUTHORITY_KEYID = AUTHORITY_KEYID_st;
4043pub type BASIC_CONSTRAINTS = BASIC_CONSTRAINTS_st;
4044pub type DIST_POINT = DIST_POINT_st;
4045pub type DSA_SIG = DSA_SIG_st;
4046pub type GENERAL_NAME = GENERAL_NAME_st;
4047pub type ISSUING_DIST_POINT = ISSUING_DIST_POINT_st;
4048pub type NAME_CONSTRAINTS = NAME_CONSTRAINTS_st;
4049pub type NETSCAPE_SPKAC = Netscape_spkac_st;
4050pub type NETSCAPE_SPKI = Netscape_spki_st;
4051pub type RIPEMD160_CTX = RIPEMD160state_st;
4052#[repr(C)]
4053#[derive(Debug, Copy, Clone)]
4054pub struct X509_VERIFY_PARAM_st {
4055    _unused: [u8; 0],
4056}
4057pub type X509_VERIFY_PARAM = X509_VERIFY_PARAM_st;
4058pub type X509_ALGOR = X509_algor_st;
4059#[repr(C)]
4060#[derive(Debug, Copy, Clone)]
4061pub struct X509_crl_st {
4062    _unused: [u8; 0],
4063}
4064pub type X509_CRL = X509_crl_st;
4065#[repr(C)]
4066#[derive(Debug, Copy, Clone)]
4067pub struct X509_extension_st {
4068    _unused: [u8; 0],
4069}
4070pub type X509_EXTENSION = X509_extension_st;
4071pub type X509_INFO = X509_info_st;
4072#[repr(C)]
4073#[derive(Debug, Copy, Clone)]
4074pub struct X509_name_entry_st {
4075    _unused: [u8; 0],
4076}
4077pub type X509_NAME_ENTRY = X509_name_entry_st;
4078#[repr(C)]
4079#[derive(Debug, Copy, Clone)]
4080pub struct X509_name_st {
4081    _unused: [u8; 0],
4082}
4083pub type X509_NAME = X509_name_st;
4084#[repr(C)]
4085#[derive(Debug, Copy, Clone)]
4086pub struct X509_pubkey_st {
4087    _unused: [u8; 0],
4088}
4089pub type X509_PUBKEY = X509_pubkey_st;
4090#[repr(C)]
4091#[derive(Debug, Copy, Clone)]
4092pub struct X509_req_st {
4093    _unused: [u8; 0],
4094}
4095pub type X509_REQ = X509_req_st;
4096#[repr(C)]
4097#[derive(Debug, Copy, Clone)]
4098pub struct x509_sig_info_st {
4099    _unused: [u8; 0],
4100}
4101pub type X509_SIG_INFO = x509_sig_info_st;
4102#[repr(C)]
4103#[derive(Debug, Copy, Clone)]
4104pub struct X509_sig_st {
4105    _unused: [u8; 0],
4106}
4107pub type X509_SIG = X509_sig_st;
4108#[repr(C)]
4109#[derive(Debug, Copy, Clone)]
4110pub struct bignum_ctx {
4111    _unused: [u8; 0],
4112}
4113pub type BN_CTX = bignum_ctx;
4114pub type BIGNUM = bignum_st;
4115pub type BIO_METHOD = bio_method_st;
4116pub type BIO = bio_st;
4117pub type BLAKE2B_CTX = blake2b_state_st;
4118pub type BN_GENCB = bn_gencb_st;
4119pub type BN_MONT_CTX = bn_mont_ctx_st;
4120pub type BUF_MEM = buf_mem_st;
4121#[repr(C)]
4122#[derive(Debug, Copy, Clone)]
4123pub struct cast_key_st {
4124    _unused: [u8; 0],
4125}
4126pub type CAST_KEY = cast_key_st;
4127pub type CBB = cbb_st;
4128pub type CBS = cbs_st;
4129#[repr(C)]
4130#[derive(Debug, Copy, Clone)]
4131pub struct cmac_ctx_st {
4132    _unused: [u8; 0],
4133}
4134pub type CMAC_CTX = cmac_ctx_st;
4135#[repr(C)]
4136#[derive(Debug, Copy, Clone)]
4137pub struct conf_st {
4138    _unused: [u8; 0],
4139}
4140pub type CONF = conf_st;
4141pub type CONF_VALUE = conf_value_st;
4142#[repr(C)]
4143#[derive(Debug, Copy, Clone)]
4144pub struct crypto_buffer_pool_st {
4145    _unused: [u8; 0],
4146}
4147pub type CRYPTO_BUFFER_POOL = crypto_buffer_pool_st;
4148#[repr(C)]
4149#[derive(Debug, Copy, Clone)]
4150pub struct crypto_buffer_st {
4151    _unused: [u8; 0],
4152}
4153pub type CRYPTO_BUFFER = crypto_buffer_st;
4154#[repr(C)]
4155#[derive(Debug, Copy, Clone)]
4156pub struct ctr_drbg_state_st {
4157    _unused: [u8; 0],
4158}
4159pub type CTR_DRBG_STATE = ctr_drbg_state_st;
4160#[repr(C)]
4161#[derive(Debug, Copy, Clone)]
4162pub struct dh_st {
4163    _unused: [u8; 0],
4164}
4165pub type DH = dh_st;
4166#[repr(C)]
4167#[derive(Debug, Copy, Clone)]
4168pub struct dsa_st {
4169    _unused: [u8; 0],
4170}
4171pub type DSA = dsa_st;
4172#[repr(C)]
4173#[derive(Debug, Copy, Clone)]
4174pub struct ec_group_st {
4175    _unused: [u8; 0],
4176}
4177pub type EC_GROUP = ec_group_st;
4178#[repr(C)]
4179#[derive(Debug, Copy, Clone)]
4180pub struct ec_key_st {
4181    _unused: [u8; 0],
4182}
4183pub type EC_KEY = ec_key_st;
4184#[repr(C)]
4185#[derive(Debug, Copy, Clone)]
4186pub struct ec_point_st {
4187    _unused: [u8; 0],
4188}
4189pub type EC_POINT = ec_point_st;
4190#[repr(C)]
4191#[derive(Debug, Copy, Clone)]
4192pub struct ec_key_method_st {
4193    _unused: [u8; 0],
4194}
4195pub type EC_KEY_METHOD = ec_key_method_st;
4196pub type ECDSA_SIG = ecdsa_sig_st;
4197#[repr(C)]
4198#[derive(Debug, Copy, Clone)]
4199pub struct engine_st {
4200    _unused: [u8; 0],
4201}
4202pub type ENGINE = engine_st;
4203pub type EVP_MD_CTX = env_md_ctx_st;
4204#[repr(C)]
4205#[derive(Debug, Copy, Clone)]
4206pub struct env_md_st {
4207    _unused: [u8; 0],
4208}
4209pub type EVP_MD = env_md_st;
4210#[repr(C)]
4211#[derive(Debug, Copy, Clone)]
4212pub struct evp_aead_st {
4213    _unused: [u8; 0],
4214}
4215pub type EVP_AEAD = evp_aead_st;
4216pub type EVP_AEAD_CTX = evp_aead_ctx_st;
4217pub type EVP_CIPHER_CTX = evp_cipher_ctx_st;
4218#[repr(C)]
4219#[derive(Debug, Copy, Clone)]
4220pub struct evp_cipher_st {
4221    _unused: [u8; 0],
4222}
4223pub type EVP_CIPHER = evp_cipher_st;
4224pub type EVP_ENCODE_CTX = evp_encode_ctx_st;
4225#[repr(C)]
4226#[derive(Debug, Copy, Clone)]
4227pub struct evp_hpke_aead_st {
4228    _unused: [u8; 0],
4229}
4230pub type EVP_HPKE_AEAD = evp_hpke_aead_st;
4231pub type EVP_HPKE_CTX = evp_hpke_ctx_st;
4232#[repr(C)]
4233#[derive(Debug, Copy, Clone)]
4234pub struct evp_hpke_kdf_st {
4235    _unused: [u8; 0],
4236}
4237pub type EVP_HPKE_KDF = evp_hpke_kdf_st;
4238#[repr(C)]
4239#[derive(Debug, Copy, Clone)]
4240pub struct evp_hpke_kem_st {
4241    _unused: [u8; 0],
4242}
4243pub type EVP_HPKE_KEM = evp_hpke_kem_st;
4244pub type EVP_HPKE_KEY = evp_hpke_key_st;
4245#[repr(C)]
4246#[derive(Debug, Copy, Clone)]
4247pub struct evp_kem_st {
4248    _unused: [u8; 0],
4249}
4250pub type EVP_KEM = evp_kem_st;
4251#[repr(C)]
4252#[derive(Debug, Copy, Clone)]
4253pub struct kem_key_st {
4254    _unused: [u8; 0],
4255}
4256pub type KEM_KEY = kem_key_st;
4257#[repr(C)]
4258#[derive(Debug, Copy, Clone)]
4259pub struct evp_pkey_ctx_st {
4260    _unused: [u8; 0],
4261}
4262pub type EVP_PKEY_CTX = evp_pkey_ctx_st;
4263#[repr(C)]
4264#[derive(Debug, Copy, Clone)]
4265pub struct evp_pkey_asn1_method_st {
4266    _unused: [u8; 0],
4267}
4268pub type EVP_PKEY_ASN1_METHOD = evp_pkey_asn1_method_st;
4269#[repr(C)]
4270#[derive(Debug, Copy, Clone)]
4271pub struct evp_pkey_st {
4272    _unused: [u8; 0],
4273}
4274pub type EVP_PKEY = evp_pkey_st;
4275pub type HMAC_CTX = hmac_ctx_st;
4276pub type MD4_CTX = md4_state_st;
4277pub type MD5_CTX = md5_state_st;
4278#[repr(C)]
4279#[derive(Debug, Copy, Clone)]
4280pub struct ocsp_req_ctx_st {
4281    _unused: [u8; 0],
4282}
4283pub type OCSP_REQ_CTX = ocsp_req_ctx_st;
4284#[repr(C)]
4285#[derive(Debug, Copy, Clone)]
4286pub struct ossl_init_settings_st {
4287    _unused: [u8; 0],
4288}
4289pub type OPENSSL_INIT_SETTINGS = ossl_init_settings_st;
4290pub type PKCS7 = pkcs7_st;
4291pub type PKCS7_SIGNED = pkcs7_signed_st;
4292#[repr(C)]
4293#[derive(Debug, Copy, Clone)]
4294pub struct pkcs7_envelope_st {
4295    _unused: [u8; 0],
4296}
4297pub type PKCS7_ENVELOPE = pkcs7_envelope_st;
4298#[repr(C)]
4299#[derive(Debug, Copy, Clone)]
4300pub struct pkcs7_sign_envelope_st {
4301    _unused: [u8; 0],
4302}
4303pub type PKCS7_SIGN_ENVELOPE = pkcs7_sign_envelope_st;
4304#[repr(C)]
4305#[derive(Debug, Copy, Clone)]
4306pub struct pkcs7_digest_st {
4307    _unused: [u8; 0],
4308}
4309pub type PKCS7_DIGEST = pkcs7_digest_st;
4310#[repr(C)]
4311#[derive(Debug, Copy, Clone)]
4312pub struct pkcs7_encrypt_st {
4313    _unused: [u8; 0],
4314}
4315pub type PKCS7_ENCRYPT = pkcs7_encrypt_st;
4316#[repr(C)]
4317#[derive(Debug, Copy, Clone)]
4318pub struct pkcs7_recip_info_st {
4319    _unused: [u8; 0],
4320}
4321pub type PKCS7_RECIP_INFO = pkcs7_recip_info_st;
4322#[repr(C)]
4323#[derive(Debug, Copy, Clone)]
4324pub struct pkcs7_signer_info_st {
4325    _unused: [u8; 0],
4326}
4327pub type PKCS7_SIGNER_INFO = pkcs7_signer_info_st;
4328#[repr(C)]
4329#[derive(Debug, Copy, Clone)]
4330pub struct pkcs12_st {
4331    _unused: [u8; 0],
4332}
4333pub type PKCS12 = pkcs12_st;
4334#[repr(C)]
4335#[derive(Debug, Copy, Clone)]
4336pub struct pkcs8_priv_key_info_st {
4337    _unused: [u8; 0],
4338}
4339pub type PKCS8_PRIV_KEY_INFO = pkcs8_priv_key_info_st;
4340pub type X509_PKEY = private_key_st;
4341pub type RAND_METHOD = rand_meth_st;
4342pub type RC4_KEY = rc4_key_st;
4343#[repr(C)]
4344#[derive(Debug, Copy, Clone)]
4345pub struct rsa_meth_st {
4346    _unused: [u8; 0],
4347}
4348pub type RSA_METHOD = rsa_meth_st;
4349#[repr(C)]
4350#[derive(Debug, Copy, Clone)]
4351pub struct rsassa_pss_params_st {
4352    _unused: [u8; 0],
4353}
4354pub type RSASSA_PSS_PARAMS = rsassa_pss_params_st;
4355pub type RSA_PSS_PARAMS = rsa_pss_params_st;
4356#[repr(C)]
4357#[derive(Debug, Copy, Clone)]
4358pub struct rsa_st {
4359    _unused: [u8; 0],
4360}
4361pub type RSA = rsa_st;
4362pub type SHA256_CTX = sha256_state_st;
4363pub type SHA512_CTX = sha512_state_st;
4364pub type SHA_CTX = sha_state_st;
4365#[repr(C)]
4366#[derive(Debug, Copy, Clone)]
4367pub struct spake2_ctx_st {
4368    _unused: [u8; 0],
4369}
4370pub type SPAKE2_CTX = spake2_ctx_st;
4371#[repr(C)]
4372#[derive(Debug, Copy, Clone)]
4373pub struct srtp_protection_profile_st {
4374    _unused: [u8; 0],
4375}
4376pub type SRTP_PROTECTION_PROFILE = srtp_protection_profile_st;
4377#[repr(C)]
4378#[derive(Debug, Copy, Clone)]
4379pub struct ssl_cipher_st {
4380    _unused: [u8; 0],
4381}
4382pub type SSL_CIPHER = ssl_cipher_st;
4383#[repr(C)]
4384#[derive(Debug, Copy, Clone)]
4385pub struct ssl_ctx_st {
4386    _unused: [u8; 0],
4387}
4388pub type SSL_CTX = ssl_ctx_st;
4389#[repr(C)]
4390#[derive(Debug, Copy, Clone)]
4391pub struct ssl_early_callback_ctx {
4392    _unused: [u8; 0],
4393}
4394pub type SSL_CLIENT_HELLO = ssl_early_callback_ctx;
4395#[repr(C)]
4396#[derive(Debug, Copy, Clone)]
4397pub struct ssl_ech_keys_st {
4398    _unused: [u8; 0],
4399}
4400pub type SSL_ECH_KEYS = ssl_ech_keys_st;
4401#[repr(C)]
4402#[derive(Debug, Copy, Clone)]
4403pub struct ssl_method_st {
4404    _unused: [u8; 0],
4405}
4406pub type SSL_METHOD = ssl_method_st;
4407#[repr(C)]
4408#[derive(Debug, Copy, Clone)]
4409pub struct ssl_private_key_method_st {
4410    _unused: [u8; 0],
4411}
4412pub type SSL_PRIVATE_KEY_METHOD = ssl_private_key_method_st;
4413#[repr(C)]
4414#[derive(Debug, Copy, Clone)]
4415pub struct ssl_quic_method_st {
4416    _unused: [u8; 0],
4417}
4418pub type SSL_QUIC_METHOD = ssl_quic_method_st;
4419#[repr(C)]
4420#[derive(Debug, Copy, Clone)]
4421pub struct ssl_session_st {
4422    _unused: [u8; 0],
4423}
4424pub type SSL_SESSION = ssl_session_st;
4425#[repr(C)]
4426#[derive(Debug, Copy, Clone)]
4427pub struct ssl_st {
4428    _unused: [u8; 0],
4429}
4430pub type SSL = ssl_st;
4431#[repr(C)]
4432#[derive(Debug, Copy, Clone)]
4433pub struct ssl_ticket_aead_method_st {
4434    _unused: [u8; 0],
4435}
4436pub type SSL_TICKET_AEAD_METHOD = ssl_ticket_aead_method_st;
4437#[repr(C)]
4438#[derive(Debug, Copy, Clone)]
4439pub struct st_ERR_FNS {
4440    _unused: [u8; 0],
4441}
4442pub type ERR_FNS = st_ERR_FNS;
4443pub type TRUST_TOKEN = trust_token_st;
4444#[repr(C)]
4445#[derive(Debug, Copy, Clone)]
4446pub struct trust_token_client_st {
4447    _unused: [u8; 0],
4448}
4449pub type TRUST_TOKEN_CLIENT = trust_token_client_st;
4450#[repr(C)]
4451#[derive(Debug, Copy, Clone)]
4452pub struct trust_token_issuer_st {
4453    _unused: [u8; 0],
4454}
4455pub type TRUST_TOKEN_ISSUER = trust_token_issuer_st;
4456#[repr(C)]
4457#[derive(Debug, Copy, Clone)]
4458pub struct trust_token_method_st {
4459    _unused: [u8; 0],
4460}
4461pub type TRUST_TOKEN_METHOD = trust_token_method_st;
4462pub type X509V3_CTX = v3_ext_ctx;
4463pub type X509V3_EXT_METHOD = v3_ext_method;
4464#[repr(C)]
4465#[derive(Debug, Copy, Clone)]
4466pub struct x509_attributes_st {
4467    _unused: [u8; 0],
4468}
4469pub type X509_ATTRIBUTE = x509_attributes_st;
4470#[repr(C)]
4471#[derive(Debug, Copy, Clone)]
4472pub struct x509_lookup_st {
4473    _unused: [u8; 0],
4474}
4475pub type X509_LOOKUP = x509_lookup_st;
4476#[repr(C)]
4477#[derive(Debug, Copy, Clone)]
4478pub struct x509_lookup_method_st {
4479    _unused: [u8; 0],
4480}
4481pub type X509_LOOKUP_METHOD = x509_lookup_method_st;
4482#[repr(C)]
4483#[derive(Debug, Copy, Clone)]
4484pub struct x509_object_st {
4485    _unused: [u8; 0],
4486}
4487pub type X509_OBJECT = x509_object_st;
4488#[repr(C)]
4489#[derive(Debug, Copy, Clone)]
4490pub struct x509_revoked_st {
4491    _unused: [u8; 0],
4492}
4493pub type X509_REVOKED = x509_revoked_st;
4494#[repr(C)]
4495#[derive(Debug, Copy, Clone)]
4496pub struct x509_st {
4497    _unused: [u8; 0],
4498}
4499pub type X509 = x509_st;
4500#[repr(C)]
4501#[derive(Debug, Copy, Clone)]
4502pub struct x509_store_ctx_st {
4503    _unused: [u8; 0],
4504}
4505pub type X509_STORE_CTX = x509_store_ctx_st;
4506#[repr(C)]
4507#[derive(Debug, Copy, Clone)]
4508pub struct x509_store_st {
4509    _unused: [u8; 0],
4510}
4511pub type X509_STORE = x509_store_st;
4512pub type X509_TRUST = x509_trust_st;
4513pub type OPENSSL_BLOCK = *mut ::std::os::raw::c_void;
4514#[repr(C)]
4515#[derive(Debug, Copy, Clone, PartialEq, Eq)]
4516pub struct aes_key_st {
4517    pub rd_key: [u32; 60usize],
4518    pub rounds: ::std::os::raw::c_uint,
4519}
4520#[test]
4521fn bindgen_test_layout_aes_key_st() {
4522    const UNINIT: ::std::mem::MaybeUninit<aes_key_st> = ::std::mem::MaybeUninit::uninit();
4523    let ptr = UNINIT.as_ptr();
4524    assert_eq!(
4525        ::std::mem::size_of::<aes_key_st>(),
4526        244usize,
4527        "Size of aes_key_st"
4528    );
4529    assert_eq!(
4530        ::std::mem::align_of::<aes_key_st>(),
4531        4usize,
4532        "Alignment of aes_key_st"
4533    );
4534    assert_eq!(
4535        unsafe { ::std::ptr::addr_of!((*ptr).rd_key) as usize - ptr as usize },
4536        0usize,
4537        "Offset of field: aes_key_st::rd_key"
4538    );
4539    assert_eq!(
4540        unsafe { ::std::ptr::addr_of!((*ptr).rounds) as usize - ptr as usize },
4541        240usize,
4542        "Offset of field: aes_key_st::rounds"
4543    );
4544}
4545impl Default for aes_key_st {
4546    fn default() -> Self {
4547        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4548        unsafe {
4549            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4550            s.assume_init()
4551        }
4552    }
4553}
4554pub type AES_KEY = aes_key_st;
4555extern "C" {
4556    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_set_encrypt_key"]
4557    pub fn AES_set_encrypt_key(
4558        key: *const u8,
4559        bits: ::std::os::raw::c_uint,
4560        aeskey: *mut AES_KEY,
4561    ) -> ::std::os::raw::c_int;
4562}
4563extern "C" {
4564    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_set_decrypt_key"]
4565    pub fn AES_set_decrypt_key(
4566        key: *const u8,
4567        bits: ::std::os::raw::c_uint,
4568        aeskey: *mut AES_KEY,
4569    ) -> ::std::os::raw::c_int;
4570}
4571extern "C" {
4572    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_encrypt"]
4573    pub fn AES_encrypt(in_: *const u8, out: *mut u8, key: *const AES_KEY);
4574}
4575extern "C" {
4576    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_decrypt"]
4577    pub fn AES_decrypt(in_: *const u8, out: *mut u8, key: *const AES_KEY);
4578}
4579extern "C" {
4580    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_ctr128_encrypt"]
4581    pub fn AES_ctr128_encrypt(
4582        in_: *const u8,
4583        out: *mut u8,
4584        len: usize,
4585        key: *const AES_KEY,
4586        ivec: *mut u8,
4587        ecount_buf: *mut u8,
4588        num: *mut ::std::os::raw::c_uint,
4589    );
4590}
4591extern "C" {
4592    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_ecb_encrypt"]
4593    pub fn AES_ecb_encrypt(
4594        in_: *const u8,
4595        out: *mut u8,
4596        key: *const AES_KEY,
4597        enc: ::std::os::raw::c_int,
4598    );
4599}
4600extern "C" {
4601    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_cbc_encrypt"]
4602    pub fn AES_cbc_encrypt(
4603        in_: *const u8,
4604        out: *mut u8,
4605        len: usize,
4606        key: *const AES_KEY,
4607        ivec: *mut u8,
4608        enc: ::std::os::raw::c_int,
4609    );
4610}
4611extern "C" {
4612    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_ofb128_encrypt"]
4613    pub fn AES_ofb128_encrypt(
4614        in_: *const u8,
4615        out: *mut u8,
4616        len: usize,
4617        key: *const AES_KEY,
4618        ivec: *mut u8,
4619        num: *mut ::std::os::raw::c_int,
4620    );
4621}
4622extern "C" {
4623    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_cfb128_encrypt"]
4624    pub fn AES_cfb128_encrypt(
4625        in_: *const u8,
4626        out: *mut u8,
4627        len: usize,
4628        key: *const AES_KEY,
4629        ivec: *mut u8,
4630        num: *mut ::std::os::raw::c_int,
4631        enc: ::std::os::raw::c_int,
4632    );
4633}
4634extern "C" {
4635    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_wrap_key"]
4636    pub fn AES_wrap_key(
4637        key: *const AES_KEY,
4638        iv: *const u8,
4639        out: *mut u8,
4640        in_: *const u8,
4641        in_len: usize,
4642    ) -> ::std::os::raw::c_int;
4643}
4644extern "C" {
4645    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_unwrap_key"]
4646    pub fn AES_unwrap_key(
4647        key: *const AES_KEY,
4648        iv: *const u8,
4649        out: *mut u8,
4650        in_: *const u8,
4651        in_len: usize,
4652    ) -> ::std::os::raw::c_int;
4653}
4654extern "C" {
4655    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_wrap_key_padded"]
4656    pub fn AES_wrap_key_padded(
4657        key: *const AES_KEY,
4658        out: *mut u8,
4659        out_len: *mut usize,
4660        max_out: usize,
4661        in_: *const u8,
4662        in_len: usize,
4663    ) -> ::std::os::raw::c_int;
4664}
4665extern "C" {
4666    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_unwrap_key_padded"]
4667    pub fn AES_unwrap_key_padded(
4668        key: *const AES_KEY,
4669        out: *mut u8,
4670        out_len: *mut usize,
4671        max_out: usize,
4672        in_: *const u8,
4673        in_len: usize,
4674    ) -> ::std::os::raw::c_int;
4675}
4676#[repr(C)]
4677#[derive(Debug, Copy, Clone, PartialEq, Eq)]
4678pub struct tm {
4679    pub tm_sec: ::std::os::raw::c_int,
4680    pub tm_min: ::std::os::raw::c_int,
4681    pub tm_hour: ::std::os::raw::c_int,
4682    pub tm_mday: ::std::os::raw::c_int,
4683    pub tm_mon: ::std::os::raw::c_int,
4684    pub tm_year: ::std::os::raw::c_int,
4685    pub tm_wday: ::std::os::raw::c_int,
4686    pub tm_yday: ::std::os::raw::c_int,
4687    pub tm_isdst: ::std::os::raw::c_int,
4688    pub tm_gmtoff: ::std::os::raw::c_long,
4689    pub tm_zone: *const ::std::os::raw::c_char,
4690}
4691#[test]
4692fn bindgen_test_layout_tm() {
4693    const UNINIT: ::std::mem::MaybeUninit<tm> = ::std::mem::MaybeUninit::uninit();
4694    let ptr = UNINIT.as_ptr();
4695    assert_eq!(::std::mem::size_of::<tm>(), 56usize, "Size of tm");
4696    assert_eq!(::std::mem::align_of::<tm>(), 8usize, "Alignment of tm");
4697    assert_eq!(
4698        unsafe { ::std::ptr::addr_of!((*ptr).tm_sec) as usize - ptr as usize },
4699        0usize,
4700        "Offset of field: tm::tm_sec"
4701    );
4702    assert_eq!(
4703        unsafe { ::std::ptr::addr_of!((*ptr).tm_min) as usize - ptr as usize },
4704        4usize,
4705        "Offset of field: tm::tm_min"
4706    );
4707    assert_eq!(
4708        unsafe { ::std::ptr::addr_of!((*ptr).tm_hour) as usize - ptr as usize },
4709        8usize,
4710        "Offset of field: tm::tm_hour"
4711    );
4712    assert_eq!(
4713        unsafe { ::std::ptr::addr_of!((*ptr).tm_mday) as usize - ptr as usize },
4714        12usize,
4715        "Offset of field: tm::tm_mday"
4716    );
4717    assert_eq!(
4718        unsafe { ::std::ptr::addr_of!((*ptr).tm_mon) as usize - ptr as usize },
4719        16usize,
4720        "Offset of field: tm::tm_mon"
4721    );
4722    assert_eq!(
4723        unsafe { ::std::ptr::addr_of!((*ptr).tm_year) as usize - ptr as usize },
4724        20usize,
4725        "Offset of field: tm::tm_year"
4726    );
4727    assert_eq!(
4728        unsafe { ::std::ptr::addr_of!((*ptr).tm_wday) as usize - ptr as usize },
4729        24usize,
4730        "Offset of field: tm::tm_wday"
4731    );
4732    assert_eq!(
4733        unsafe { ::std::ptr::addr_of!((*ptr).tm_yday) as usize - ptr as usize },
4734        28usize,
4735        "Offset of field: tm::tm_yday"
4736    );
4737    assert_eq!(
4738        unsafe { ::std::ptr::addr_of!((*ptr).tm_isdst) as usize - ptr as usize },
4739        32usize,
4740        "Offset of field: tm::tm_isdst"
4741    );
4742    assert_eq!(
4743        unsafe { ::std::ptr::addr_of!((*ptr).tm_gmtoff) as usize - ptr as usize },
4744        40usize,
4745        "Offset of field: tm::tm_gmtoff"
4746    );
4747    assert_eq!(
4748        unsafe { ::std::ptr::addr_of!((*ptr).tm_zone) as usize - ptr as usize },
4749        48usize,
4750        "Offset of field: tm::tm_zone"
4751    );
4752}
4753impl Default for tm {
4754    fn default() -> Self {
4755        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4756        unsafe {
4757            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4758            s.assume_init()
4759        }
4760    }
4761}
4762pub type __gnuc_va_list = __builtin_va_list;
4763pub type FILE = _IO_FILE;
4764#[repr(C)]
4765#[derive(Debug, Copy, Clone)]
4766pub struct _IO_marker {
4767    _unused: [u8; 0],
4768}
4769#[repr(C)]
4770#[derive(Debug, Copy, Clone)]
4771pub struct _IO_codecvt {
4772    _unused: [u8; 0],
4773}
4774#[repr(C)]
4775#[derive(Debug, Copy, Clone)]
4776pub struct _IO_wide_data {
4777    _unused: [u8; 0],
4778}
4779pub type _IO_lock_t = ::std::os::raw::c_void;
4780#[repr(C)]
4781#[derive(Debug, Copy, Clone, PartialEq, Eq)]
4782pub struct _IO_FILE {
4783    pub _flags: ::std::os::raw::c_int,
4784    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
4785    pub _IO_read_end: *mut ::std::os::raw::c_char,
4786    pub _IO_read_base: *mut ::std::os::raw::c_char,
4787    pub _IO_write_base: *mut ::std::os::raw::c_char,
4788    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
4789    pub _IO_write_end: *mut ::std::os::raw::c_char,
4790    pub _IO_buf_base: *mut ::std::os::raw::c_char,
4791    pub _IO_buf_end: *mut ::std::os::raw::c_char,
4792    pub _IO_save_base: *mut ::std::os::raw::c_char,
4793    pub _IO_backup_base: *mut ::std::os::raw::c_char,
4794    pub _IO_save_end: *mut ::std::os::raw::c_char,
4795    pub _markers: *mut _IO_marker,
4796    pub _chain: *mut _IO_FILE,
4797    pub _fileno: ::std::os::raw::c_int,
4798    pub _flags2: ::std::os::raw::c_int,
4799    pub _old_offset: __off_t,
4800    pub _cur_column: ::std::os::raw::c_ushort,
4801    pub _vtable_offset: ::std::os::raw::c_schar,
4802    pub _shortbuf: [::std::os::raw::c_char; 1usize],
4803    pub _lock: *mut _IO_lock_t,
4804    pub _offset: __off64_t,
4805    pub _codecvt: *mut _IO_codecvt,
4806    pub _wide_data: *mut _IO_wide_data,
4807    pub _freeres_list: *mut _IO_FILE,
4808    pub _freeres_buf: *mut ::std::os::raw::c_void,
4809    pub __pad5: usize,
4810    pub _mode: ::std::os::raw::c_int,
4811    pub _unused2: [::std::os::raw::c_char; 20usize],
4812}
4813#[test]
4814fn bindgen_test_layout__IO_FILE() {
4815    const UNINIT: ::std::mem::MaybeUninit<_IO_FILE> = ::std::mem::MaybeUninit::uninit();
4816    let ptr = UNINIT.as_ptr();
4817    assert_eq!(
4818        ::std::mem::size_of::<_IO_FILE>(),
4819        216usize,
4820        "Size of _IO_FILE"
4821    );
4822    assert_eq!(
4823        ::std::mem::align_of::<_IO_FILE>(),
4824        8usize,
4825        "Alignment of _IO_FILE"
4826    );
4827    assert_eq!(
4828        unsafe { ::std::ptr::addr_of!((*ptr)._flags) as usize - ptr as usize },
4829        0usize,
4830        "Offset of field: _IO_FILE::_flags"
4831    );
4832    assert_eq!(
4833        unsafe { ::std::ptr::addr_of!((*ptr)._IO_read_ptr) as usize - ptr as usize },
4834        8usize,
4835        "Offset of field: _IO_FILE::_IO_read_ptr"
4836    );
4837    assert_eq!(
4838        unsafe { ::std::ptr::addr_of!((*ptr)._IO_read_end) as usize - ptr as usize },
4839        16usize,
4840        "Offset of field: _IO_FILE::_IO_read_end"
4841    );
4842    assert_eq!(
4843        unsafe { ::std::ptr::addr_of!((*ptr)._IO_read_base) as usize - ptr as usize },
4844        24usize,
4845        "Offset of field: _IO_FILE::_IO_read_base"
4846    );
4847    assert_eq!(
4848        unsafe { ::std::ptr::addr_of!((*ptr)._IO_write_base) as usize - ptr as usize },
4849        32usize,
4850        "Offset of field: _IO_FILE::_IO_write_base"
4851    );
4852    assert_eq!(
4853        unsafe { ::std::ptr::addr_of!((*ptr)._IO_write_ptr) as usize - ptr as usize },
4854        40usize,
4855        "Offset of field: _IO_FILE::_IO_write_ptr"
4856    );
4857    assert_eq!(
4858        unsafe { ::std::ptr::addr_of!((*ptr)._IO_write_end) as usize - ptr as usize },
4859        48usize,
4860        "Offset of field: _IO_FILE::_IO_write_end"
4861    );
4862    assert_eq!(
4863        unsafe { ::std::ptr::addr_of!((*ptr)._IO_buf_base) as usize - ptr as usize },
4864        56usize,
4865        "Offset of field: _IO_FILE::_IO_buf_base"
4866    );
4867    assert_eq!(
4868        unsafe { ::std::ptr::addr_of!((*ptr)._IO_buf_end) as usize - ptr as usize },
4869        64usize,
4870        "Offset of field: _IO_FILE::_IO_buf_end"
4871    );
4872    assert_eq!(
4873        unsafe { ::std::ptr::addr_of!((*ptr)._IO_save_base) as usize - ptr as usize },
4874        72usize,
4875        "Offset of field: _IO_FILE::_IO_save_base"
4876    );
4877    assert_eq!(
4878        unsafe { ::std::ptr::addr_of!((*ptr)._IO_backup_base) as usize - ptr as usize },
4879        80usize,
4880        "Offset of field: _IO_FILE::_IO_backup_base"
4881    );
4882    assert_eq!(
4883        unsafe { ::std::ptr::addr_of!((*ptr)._IO_save_end) as usize - ptr as usize },
4884        88usize,
4885        "Offset of field: _IO_FILE::_IO_save_end"
4886    );
4887    assert_eq!(
4888        unsafe { ::std::ptr::addr_of!((*ptr)._markers) as usize - ptr as usize },
4889        96usize,
4890        "Offset of field: _IO_FILE::_markers"
4891    );
4892    assert_eq!(
4893        unsafe { ::std::ptr::addr_of!((*ptr)._chain) as usize - ptr as usize },
4894        104usize,
4895        "Offset of field: _IO_FILE::_chain"
4896    );
4897    assert_eq!(
4898        unsafe { ::std::ptr::addr_of!((*ptr)._fileno) as usize - ptr as usize },
4899        112usize,
4900        "Offset of field: _IO_FILE::_fileno"
4901    );
4902    assert_eq!(
4903        unsafe { ::std::ptr::addr_of!((*ptr)._flags2) as usize - ptr as usize },
4904        116usize,
4905        "Offset of field: _IO_FILE::_flags2"
4906    );
4907    assert_eq!(
4908        unsafe { ::std::ptr::addr_of!((*ptr)._old_offset) as usize - ptr as usize },
4909        120usize,
4910        "Offset of field: _IO_FILE::_old_offset"
4911    );
4912    assert_eq!(
4913        unsafe { ::std::ptr::addr_of!((*ptr)._cur_column) as usize - ptr as usize },
4914        128usize,
4915        "Offset of field: _IO_FILE::_cur_column"
4916    );
4917    assert_eq!(
4918        unsafe { ::std::ptr::addr_of!((*ptr)._vtable_offset) as usize - ptr as usize },
4919        130usize,
4920        "Offset of field: _IO_FILE::_vtable_offset"
4921    );
4922    assert_eq!(
4923        unsafe { ::std::ptr::addr_of!((*ptr)._shortbuf) as usize - ptr as usize },
4924        131usize,
4925        "Offset of field: _IO_FILE::_shortbuf"
4926    );
4927    assert_eq!(
4928        unsafe { ::std::ptr::addr_of!((*ptr)._lock) as usize - ptr as usize },
4929        136usize,
4930        "Offset of field: _IO_FILE::_lock"
4931    );
4932    assert_eq!(
4933        unsafe { ::std::ptr::addr_of!((*ptr)._offset) as usize - ptr as usize },
4934        144usize,
4935        "Offset of field: _IO_FILE::_offset"
4936    );
4937    assert_eq!(
4938        unsafe { ::std::ptr::addr_of!((*ptr)._codecvt) as usize - ptr as usize },
4939        152usize,
4940        "Offset of field: _IO_FILE::_codecvt"
4941    );
4942    assert_eq!(
4943        unsafe { ::std::ptr::addr_of!((*ptr)._wide_data) as usize - ptr as usize },
4944        160usize,
4945        "Offset of field: _IO_FILE::_wide_data"
4946    );
4947    assert_eq!(
4948        unsafe { ::std::ptr::addr_of!((*ptr)._freeres_list) as usize - ptr as usize },
4949        168usize,
4950        "Offset of field: _IO_FILE::_freeres_list"
4951    );
4952    assert_eq!(
4953        unsafe { ::std::ptr::addr_of!((*ptr)._freeres_buf) as usize - ptr as usize },
4954        176usize,
4955        "Offset of field: _IO_FILE::_freeres_buf"
4956    );
4957    assert_eq!(
4958        unsafe { ::std::ptr::addr_of!((*ptr).__pad5) as usize - ptr as usize },
4959        184usize,
4960        "Offset of field: _IO_FILE::__pad5"
4961    );
4962    assert_eq!(
4963        unsafe { ::std::ptr::addr_of!((*ptr)._mode) as usize - ptr as usize },
4964        192usize,
4965        "Offset of field: _IO_FILE::_mode"
4966    );
4967    assert_eq!(
4968        unsafe { ::std::ptr::addr_of!((*ptr)._unused2) as usize - ptr as usize },
4969        196usize,
4970        "Offset of field: _IO_FILE::_unused2"
4971    );
4972}
4973impl Default for _IO_FILE {
4974    fn default() -> Self {
4975        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
4976        unsafe {
4977            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
4978            s.assume_init()
4979        }
4980    }
4981}
4982pub type va_list = __gnuc_va_list;
4983#[repr(C)]
4984#[derive(Debug, Copy, Clone, PartialEq, Eq)]
4985pub struct buf_mem_st {
4986    pub length: usize,
4987    pub data: *mut ::std::os::raw::c_char,
4988    pub max: usize,
4989}
4990#[test]
4991fn bindgen_test_layout_buf_mem_st() {
4992    const UNINIT: ::std::mem::MaybeUninit<buf_mem_st> = ::std::mem::MaybeUninit::uninit();
4993    let ptr = UNINIT.as_ptr();
4994    assert_eq!(
4995        ::std::mem::size_of::<buf_mem_st>(),
4996        24usize,
4997        "Size of buf_mem_st"
4998    );
4999    assert_eq!(
5000        ::std::mem::align_of::<buf_mem_st>(),
5001        8usize,
5002        "Alignment of buf_mem_st"
5003    );
5004    assert_eq!(
5005        unsafe { ::std::ptr::addr_of!((*ptr).length) as usize - ptr as usize },
5006        0usize,
5007        "Offset of field: buf_mem_st::length"
5008    );
5009    assert_eq!(
5010        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
5011        8usize,
5012        "Offset of field: buf_mem_st::data"
5013    );
5014    assert_eq!(
5015        unsafe { ::std::ptr::addr_of!((*ptr).max) as usize - ptr as usize },
5016        16usize,
5017        "Offset of field: buf_mem_st::max"
5018    );
5019}
5020impl Default for buf_mem_st {
5021    fn default() -> Self {
5022        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5023        unsafe {
5024            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5025            s.assume_init()
5026        }
5027    }
5028}
5029extern "C" {
5030    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_MEM_new"]
5031    pub fn BUF_MEM_new() -> *mut BUF_MEM;
5032}
5033extern "C" {
5034    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_MEM_free"]
5035    pub fn BUF_MEM_free(buf: *mut BUF_MEM);
5036}
5037extern "C" {
5038    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_MEM_reserve"]
5039    pub fn BUF_MEM_reserve(buf: *mut BUF_MEM, cap: usize) -> ::std::os::raw::c_int;
5040}
5041extern "C" {
5042    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_MEM_grow"]
5043    pub fn BUF_MEM_grow(buf: *mut BUF_MEM, len: usize) -> usize;
5044}
5045extern "C" {
5046    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_MEM_grow_clean"]
5047    pub fn BUF_MEM_grow_clean(buf: *mut BUF_MEM, len: usize) -> usize;
5048}
5049extern "C" {
5050    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_MEM_append"]
5051    pub fn BUF_MEM_append(
5052        buf: *mut BUF_MEM,
5053        in_: *const ::std::os::raw::c_void,
5054        len: usize,
5055    ) -> ::std::os::raw::c_int;
5056}
5057extern "C" {
5058    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_strdup"]
5059    pub fn BUF_strdup(str_: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
5060}
5061extern "C" {
5062    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_strnlen"]
5063    pub fn BUF_strnlen(str_: *const ::std::os::raw::c_char, max_len: usize) -> usize;
5064}
5065extern "C" {
5066    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_strndup"]
5067    pub fn BUF_strndup(
5068        str_: *const ::std::os::raw::c_char,
5069        size: usize,
5070    ) -> *mut ::std::os::raw::c_char;
5071}
5072extern "C" {
5073    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_memdup"]
5074    pub fn BUF_memdup(
5075        data: *const ::std::os::raw::c_void,
5076        size: usize,
5077    ) -> *mut ::std::os::raw::c_void;
5078}
5079extern "C" {
5080    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_strlcpy"]
5081    pub fn BUF_strlcpy(
5082        dst: *mut ::std::os::raw::c_char,
5083        src: *const ::std::os::raw::c_char,
5084        dst_size: usize,
5085    ) -> usize;
5086}
5087extern "C" {
5088    #[link_name = "\u{1}aws_lc_fips_0_13_10_BUF_strlcat"]
5089    pub fn BUF_strlcat(
5090        dst: *mut ::std::os::raw::c_char,
5091        src: *const ::std::os::raw::c_char,
5092        dst_size: usize,
5093    ) -> usize;
5094}
5095extern "C" {
5096    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA1_Init"]
5097    pub fn SHA1_Init(sha: *mut SHA_CTX) -> ::std::os::raw::c_int;
5098}
5099extern "C" {
5100    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA1_Update"]
5101    pub fn SHA1_Update(
5102        sha: *mut SHA_CTX,
5103        data: *const ::std::os::raw::c_void,
5104        len: usize,
5105    ) -> ::std::os::raw::c_int;
5106}
5107extern "C" {
5108    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA1_Final"]
5109    pub fn SHA1_Final(out: *mut u8, sha: *mut SHA_CTX) -> ::std::os::raw::c_int;
5110}
5111extern "C" {
5112    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA1"]
5113    pub fn SHA1(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
5114}
5115extern "C" {
5116    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA1_Transform"]
5117    pub fn SHA1_Transform(sha: *mut SHA_CTX, block: *const u8);
5118}
5119#[repr(C)]
5120#[derive(Debug, Copy, Clone, PartialEq, Eq)]
5121pub struct sha_state_st {
5122    pub h: [u32; 5usize],
5123    pub Nl: u32,
5124    pub Nh: u32,
5125    pub data: [u8; 64usize],
5126    pub num: ::std::os::raw::c_uint,
5127}
5128#[test]
5129fn bindgen_test_layout_sha_state_st() {
5130    const UNINIT: ::std::mem::MaybeUninit<sha_state_st> = ::std::mem::MaybeUninit::uninit();
5131    let ptr = UNINIT.as_ptr();
5132    assert_eq!(
5133        ::std::mem::size_of::<sha_state_st>(),
5134        96usize,
5135        "Size of sha_state_st"
5136    );
5137    assert_eq!(
5138        ::std::mem::align_of::<sha_state_st>(),
5139        4usize,
5140        "Alignment of sha_state_st"
5141    );
5142    assert_eq!(
5143        unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
5144        0usize,
5145        "Offset of field: sha_state_st::h"
5146    );
5147    assert_eq!(
5148        unsafe { ::std::ptr::addr_of!((*ptr).Nl) as usize - ptr as usize },
5149        20usize,
5150        "Offset of field: sha_state_st::Nl"
5151    );
5152    assert_eq!(
5153        unsafe { ::std::ptr::addr_of!((*ptr).Nh) as usize - ptr as usize },
5154        24usize,
5155        "Offset of field: sha_state_st::Nh"
5156    );
5157    assert_eq!(
5158        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
5159        28usize,
5160        "Offset of field: sha_state_st::data"
5161    );
5162    assert_eq!(
5163        unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
5164        92usize,
5165        "Offset of field: sha_state_st::num"
5166    );
5167}
5168impl Default for sha_state_st {
5169    fn default() -> Self {
5170        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5171        unsafe {
5172            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5173            s.assume_init()
5174        }
5175    }
5176}
5177extern "C" {
5178    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA224_Init"]
5179    pub fn SHA224_Init(sha: *mut SHA256_CTX) -> ::std::os::raw::c_int;
5180}
5181extern "C" {
5182    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA224_Update"]
5183    pub fn SHA224_Update(
5184        sha: *mut SHA256_CTX,
5185        data: *const ::std::os::raw::c_void,
5186        len: usize,
5187    ) -> ::std::os::raw::c_int;
5188}
5189extern "C" {
5190    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA224_Final"]
5191    pub fn SHA224_Final(out: *mut u8, sha: *mut SHA256_CTX) -> ::std::os::raw::c_int;
5192}
5193extern "C" {
5194    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA224"]
5195    pub fn SHA224(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
5196}
5197extern "C" {
5198    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA256_Init"]
5199    pub fn SHA256_Init(sha: *mut SHA256_CTX) -> ::std::os::raw::c_int;
5200}
5201extern "C" {
5202    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA256_Update"]
5203    pub fn SHA256_Update(
5204        sha: *mut SHA256_CTX,
5205        data: *const ::std::os::raw::c_void,
5206        len: usize,
5207    ) -> ::std::os::raw::c_int;
5208}
5209extern "C" {
5210    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA256_Final"]
5211    pub fn SHA256_Final(out: *mut u8, sha: *mut SHA256_CTX) -> ::std::os::raw::c_int;
5212}
5213extern "C" {
5214    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA256"]
5215    pub fn SHA256(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
5216}
5217extern "C" {
5218    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA256_Transform"]
5219    pub fn SHA256_Transform(sha: *mut SHA256_CTX, block: *const u8);
5220}
5221extern "C" {
5222    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA256_TransformBlocks"]
5223    pub fn SHA256_TransformBlocks(state: *mut u32, data: *const u8, num_blocks: usize);
5224}
5225#[repr(C)]
5226#[derive(Debug, Copy, Clone, PartialEq, Eq)]
5227pub struct sha256_state_st {
5228    pub h: [u32; 8usize],
5229    pub Nl: u32,
5230    pub Nh: u32,
5231    pub data: [u8; 64usize],
5232    pub num: ::std::os::raw::c_uint,
5233    pub md_len: ::std::os::raw::c_uint,
5234}
5235#[test]
5236fn bindgen_test_layout_sha256_state_st() {
5237    const UNINIT: ::std::mem::MaybeUninit<sha256_state_st> = ::std::mem::MaybeUninit::uninit();
5238    let ptr = UNINIT.as_ptr();
5239    assert_eq!(
5240        ::std::mem::size_of::<sha256_state_st>(),
5241        112usize,
5242        "Size of sha256_state_st"
5243    );
5244    assert_eq!(
5245        ::std::mem::align_of::<sha256_state_st>(),
5246        4usize,
5247        "Alignment of sha256_state_st"
5248    );
5249    assert_eq!(
5250        unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
5251        0usize,
5252        "Offset of field: sha256_state_st::h"
5253    );
5254    assert_eq!(
5255        unsafe { ::std::ptr::addr_of!((*ptr).Nl) as usize - ptr as usize },
5256        32usize,
5257        "Offset of field: sha256_state_st::Nl"
5258    );
5259    assert_eq!(
5260        unsafe { ::std::ptr::addr_of!((*ptr).Nh) as usize - ptr as usize },
5261        36usize,
5262        "Offset of field: sha256_state_st::Nh"
5263    );
5264    assert_eq!(
5265        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
5266        40usize,
5267        "Offset of field: sha256_state_st::data"
5268    );
5269    assert_eq!(
5270        unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
5271        104usize,
5272        "Offset of field: sha256_state_st::num"
5273    );
5274    assert_eq!(
5275        unsafe { ::std::ptr::addr_of!((*ptr).md_len) as usize - ptr as usize },
5276        108usize,
5277        "Offset of field: sha256_state_st::md_len"
5278    );
5279}
5280impl Default for sha256_state_st {
5281    fn default() -> Self {
5282        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5283        unsafe {
5284            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5285            s.assume_init()
5286        }
5287    }
5288}
5289extern "C" {
5290    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA384_Init"]
5291    pub fn SHA384_Init(sha: *mut SHA512_CTX) -> ::std::os::raw::c_int;
5292}
5293extern "C" {
5294    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA384_Update"]
5295    pub fn SHA384_Update(
5296        sha: *mut SHA512_CTX,
5297        data: *const ::std::os::raw::c_void,
5298        len: usize,
5299    ) -> ::std::os::raw::c_int;
5300}
5301extern "C" {
5302    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA384_Final"]
5303    pub fn SHA384_Final(out: *mut u8, sha: *mut SHA512_CTX) -> ::std::os::raw::c_int;
5304}
5305extern "C" {
5306    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA384"]
5307    pub fn SHA384(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
5308}
5309extern "C" {
5310    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_Init"]
5311    pub fn SHA512_Init(sha: *mut SHA512_CTX) -> ::std::os::raw::c_int;
5312}
5313extern "C" {
5314    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_Update"]
5315    pub fn SHA512_Update(
5316        sha: *mut SHA512_CTX,
5317        data: *const ::std::os::raw::c_void,
5318        len: usize,
5319    ) -> ::std::os::raw::c_int;
5320}
5321extern "C" {
5322    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_Final"]
5323    pub fn SHA512_Final(out: *mut u8, sha: *mut SHA512_CTX) -> ::std::os::raw::c_int;
5324}
5325extern "C" {
5326    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512"]
5327    pub fn SHA512(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
5328}
5329extern "C" {
5330    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_Transform"]
5331    pub fn SHA512_Transform(sha: *mut SHA512_CTX, block: *const u8);
5332}
5333#[repr(C)]
5334#[derive(Debug, Copy, Clone, PartialEq, Eq)]
5335pub struct sha512_state_st {
5336    pub h: [u64; 8usize],
5337    pub Nl: u64,
5338    pub Nh: u64,
5339    pub p: [u8; 128usize],
5340    pub num: ::std::os::raw::c_uint,
5341    pub md_len: ::std::os::raw::c_uint,
5342}
5343#[test]
5344fn bindgen_test_layout_sha512_state_st() {
5345    const UNINIT: ::std::mem::MaybeUninit<sha512_state_st> = ::std::mem::MaybeUninit::uninit();
5346    let ptr = UNINIT.as_ptr();
5347    assert_eq!(
5348        ::std::mem::size_of::<sha512_state_st>(),
5349        216usize,
5350        "Size of sha512_state_st"
5351    );
5352    assert_eq!(
5353        ::std::mem::align_of::<sha512_state_st>(),
5354        8usize,
5355        "Alignment of sha512_state_st"
5356    );
5357    assert_eq!(
5358        unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
5359        0usize,
5360        "Offset of field: sha512_state_st::h"
5361    );
5362    assert_eq!(
5363        unsafe { ::std::ptr::addr_of!((*ptr).Nl) as usize - ptr as usize },
5364        64usize,
5365        "Offset of field: sha512_state_st::Nl"
5366    );
5367    assert_eq!(
5368        unsafe { ::std::ptr::addr_of!((*ptr).Nh) as usize - ptr as usize },
5369        72usize,
5370        "Offset of field: sha512_state_st::Nh"
5371    );
5372    assert_eq!(
5373        unsafe { ::std::ptr::addr_of!((*ptr).p) as usize - ptr as usize },
5374        80usize,
5375        "Offset of field: sha512_state_st::p"
5376    );
5377    assert_eq!(
5378        unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
5379        208usize,
5380        "Offset of field: sha512_state_st::num"
5381    );
5382    assert_eq!(
5383        unsafe { ::std::ptr::addr_of!((*ptr).md_len) as usize - ptr as usize },
5384        212usize,
5385        "Offset of field: sha512_state_st::md_len"
5386    );
5387}
5388impl Default for sha512_state_st {
5389    fn default() -> Self {
5390        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5391        unsafe {
5392            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5393            s.assume_init()
5394        }
5395    }
5396}
5397extern "C" {
5398    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_224_Init"]
5399    pub fn SHA512_224_Init(sha: *mut SHA512_CTX) -> ::std::os::raw::c_int;
5400}
5401extern "C" {
5402    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_224_Update"]
5403    pub fn SHA512_224_Update(
5404        sha: *mut SHA512_CTX,
5405        data: *const ::std::os::raw::c_void,
5406        len: usize,
5407    ) -> ::std::os::raw::c_int;
5408}
5409extern "C" {
5410    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_224_Final"]
5411    pub fn SHA512_224_Final(out: *mut u8, sha: *mut SHA512_CTX) -> ::std::os::raw::c_int;
5412}
5413extern "C" {
5414    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_224"]
5415    pub fn SHA512_224(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
5416}
5417extern "C" {
5418    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_256_Init"]
5419    pub fn SHA512_256_Init(sha: *mut SHA512_CTX) -> ::std::os::raw::c_int;
5420}
5421extern "C" {
5422    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_256_Update"]
5423    pub fn SHA512_256_Update(
5424        sha: *mut SHA512_CTX,
5425        data: *const ::std::os::raw::c_void,
5426        len: usize,
5427    ) -> ::std::os::raw::c_int;
5428}
5429extern "C" {
5430    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_256_Final"]
5431    pub fn SHA512_256_Final(out: *mut u8, sha: *mut SHA512_CTX) -> ::std::os::raw::c_int;
5432}
5433extern "C" {
5434    #[link_name = "\u{1}aws_lc_fips_0_13_10_SHA512_256"]
5435    pub fn SHA512_256(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
5436}
5437extern "C" {
5438    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_malloc"]
5439    pub fn OPENSSL_malloc(size: usize) -> *mut ::std::os::raw::c_void;
5440}
5441extern "C" {
5442    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_zalloc"]
5443    pub fn OPENSSL_zalloc(size: usize) -> *mut ::std::os::raw::c_void;
5444}
5445extern "C" {
5446    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_calloc"]
5447    pub fn OPENSSL_calloc(num: usize, size: usize) -> *mut ::std::os::raw::c_void;
5448}
5449extern "C" {
5450    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_realloc"]
5451    pub fn OPENSSL_realloc(
5452        ptr: *mut ::std::os::raw::c_void,
5453        new_size: usize,
5454    ) -> *mut ::std::os::raw::c_void;
5455}
5456extern "C" {
5457    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_free"]
5458    pub fn OPENSSL_free(ptr: *mut ::std::os::raw::c_void);
5459}
5460extern "C" {
5461    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_cleanse"]
5462    pub fn OPENSSL_cleanse(ptr: *mut ::std::os::raw::c_void, len: usize);
5463}
5464extern "C" {
5465    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_memcmp"]
5466    pub fn CRYPTO_memcmp(
5467        a: *const ::std::os::raw::c_void,
5468        b: *const ::std::os::raw::c_void,
5469        len: usize,
5470    ) -> ::std::os::raw::c_int;
5471}
5472extern "C" {
5473    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_hash32"]
5474    pub fn OPENSSL_hash32(ptr: *const ::std::os::raw::c_void, len: usize) -> u32;
5475}
5476extern "C" {
5477    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_strhash"]
5478    pub fn OPENSSL_strhash(s: *const ::std::os::raw::c_char) -> u32;
5479}
5480extern "C" {
5481    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_strdup"]
5482    pub fn OPENSSL_strdup(s: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
5483}
5484extern "C" {
5485    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_strnlen"]
5486    pub fn OPENSSL_strnlen(s: *const ::std::os::raw::c_char, len: usize) -> usize;
5487}
5488extern "C" {
5489    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_isalpha"]
5490    pub fn OPENSSL_isalpha(c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
5491}
5492extern "C" {
5493    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_isdigit"]
5494    pub fn OPENSSL_isdigit(c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
5495}
5496extern "C" {
5497    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_isxdigit"]
5498    pub fn OPENSSL_isxdigit(c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
5499}
5500extern "C" {
5501    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_fromxdigit"]
5502    pub fn OPENSSL_fromxdigit(out: *mut u8, c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
5503}
5504extern "C" {
5505    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_hexstr2buf"]
5506    pub fn OPENSSL_hexstr2buf(str_: *const ::std::os::raw::c_char, len: *mut usize) -> *mut u8;
5507}
5508extern "C" {
5509    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_isalnum"]
5510    pub fn OPENSSL_isalnum(c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
5511}
5512extern "C" {
5513    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_tolower"]
5514    pub fn OPENSSL_tolower(c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
5515}
5516extern "C" {
5517    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_isspace"]
5518    pub fn OPENSSL_isspace(c: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
5519}
5520extern "C" {
5521    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_strcasecmp"]
5522    pub fn OPENSSL_strcasecmp(
5523        a: *const ::std::os::raw::c_char,
5524        b: *const ::std::os::raw::c_char,
5525    ) -> ::std::os::raw::c_int;
5526}
5527extern "C" {
5528    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_strncasecmp"]
5529    pub fn OPENSSL_strncasecmp(
5530        a: *const ::std::os::raw::c_char,
5531        b: *const ::std::os::raw::c_char,
5532        n: usize,
5533    ) -> ::std::os::raw::c_int;
5534}
5535extern "C" {
5536    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_snprintf"]
5537    pub fn BIO_snprintf(
5538        buf: *mut ::std::os::raw::c_char,
5539        n: usize,
5540        format: *const ::std::os::raw::c_char,
5541        ...
5542    ) -> ::std::os::raw::c_int;
5543}
5544extern "C" {
5545    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_vsnprintf"]
5546    pub fn BIO_vsnprintf(
5547        buf: *mut ::std::os::raw::c_char,
5548        n: usize,
5549        format: *const ::std::os::raw::c_char,
5550        args: *mut __va_list_tag,
5551    ) -> ::std::os::raw::c_int;
5552}
5553extern "C" {
5554    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_vasprintf"]
5555    pub fn OPENSSL_vasprintf(
5556        str_: *mut *mut ::std::os::raw::c_char,
5557        format: *const ::std::os::raw::c_char,
5558        args: *mut __va_list_tag,
5559    ) -> ::std::os::raw::c_int;
5560}
5561extern "C" {
5562    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_asprintf"]
5563    pub fn OPENSSL_asprintf(
5564        str_: *mut *mut ::std::os::raw::c_char,
5565        format: *const ::std::os::raw::c_char,
5566        ...
5567    ) -> ::std::os::raw::c_int;
5568}
5569extern "C" {
5570    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_strndup"]
5571    pub fn OPENSSL_strndup(
5572        str_: *const ::std::os::raw::c_char,
5573        size: usize,
5574    ) -> *mut ::std::os::raw::c_char;
5575}
5576extern "C" {
5577    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_memdup"]
5578    pub fn OPENSSL_memdup(
5579        data: *const ::std::os::raw::c_void,
5580        size: usize,
5581    ) -> *mut ::std::os::raw::c_void;
5582}
5583extern "C" {
5584    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_strlcpy"]
5585    pub fn OPENSSL_strlcpy(
5586        dst: *mut ::std::os::raw::c_char,
5587        src: *const ::std::os::raw::c_char,
5588        dst_size: usize,
5589    ) -> usize;
5590}
5591extern "C" {
5592    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_strlcat"]
5593    pub fn OPENSSL_strlcat(
5594        dst: *mut ::std::os::raw::c_char,
5595        src: *const ::std::os::raw::c_char,
5596        dst_size: usize,
5597    ) -> usize;
5598}
5599extern "C" {
5600    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_malloc"]
5601    pub fn CRYPTO_malloc(
5602        size: usize,
5603        file: *const ::std::os::raw::c_char,
5604        line: ::std::os::raw::c_int,
5605    ) -> *mut ::std::os::raw::c_void;
5606}
5607extern "C" {
5608    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_realloc"]
5609    pub fn CRYPTO_realloc(
5610        ptr: *mut ::std::os::raw::c_void,
5611        new_size: usize,
5612        file: *const ::std::os::raw::c_char,
5613        line: ::std::os::raw::c_int,
5614    ) -> *mut ::std::os::raw::c_void;
5615}
5616extern "C" {
5617    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_free"]
5618    pub fn CRYPTO_free(
5619        ptr: *mut ::std::os::raw::c_void,
5620        file: *const ::std::os::raw::c_char,
5621        line: ::std::os::raw::c_int,
5622    );
5623}
5624extern "C" {
5625    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_clear_free"]
5626    pub fn OPENSSL_clear_free(ptr: *mut ::std::os::raw::c_void, len: usize);
5627}
5628extern "C" {
5629    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_set_mem_functions"]
5630    pub fn CRYPTO_set_mem_functions(
5631        m: ::std::option::Option<
5632            unsafe extern "C" fn(
5633                arg1: usize,
5634                arg2: *const ::std::os::raw::c_char,
5635                arg3: ::std::os::raw::c_int,
5636            ) -> *mut ::std::os::raw::c_void,
5637        >,
5638        r: ::std::option::Option<
5639            unsafe extern "C" fn(
5640                arg1: *mut ::std::os::raw::c_void,
5641                arg2: usize,
5642                arg3: *const ::std::os::raw::c_char,
5643                arg4: ::std::os::raw::c_int,
5644            ) -> *mut ::std::os::raw::c_void,
5645        >,
5646        f: ::std::option::Option<
5647            unsafe extern "C" fn(
5648                arg1: *mut ::std::os::raw::c_void,
5649                arg2: *const ::std::os::raw::c_char,
5650                arg3: ::std::os::raw::c_int,
5651            ),
5652        >,
5653    ) -> ::std::os::raw::c_int;
5654}
5655extern "C" {
5656    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_secure_malloc_init"]
5657    pub fn CRYPTO_secure_malloc_init(size: usize, min_size: usize) -> ::std::os::raw::c_int;
5658}
5659extern "C" {
5660    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_secure_malloc_initialized"]
5661    pub fn CRYPTO_secure_malloc_initialized() -> ::std::os::raw::c_int;
5662}
5663extern "C" {
5664    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_secure_used"]
5665    pub fn CRYPTO_secure_used() -> usize;
5666}
5667extern "C" {
5668    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_secure_malloc"]
5669    pub fn OPENSSL_secure_malloc(size: usize) -> *mut ::std::os::raw::c_void;
5670}
5671extern "C" {
5672    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_secure_zalloc"]
5673    pub fn OPENSSL_secure_zalloc(size: usize) -> *mut ::std::os::raw::c_void;
5674}
5675extern "C" {
5676    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_secure_clear_free"]
5677    pub fn OPENSSL_secure_clear_free(ptr: *mut ::std::os::raw::c_void, len: usize);
5678}
5679#[repr(C)]
5680#[derive(Copy, Clone)]
5681pub union crypto_mutex_st {
5682    pub alignment: f64,
5683    pub padding: [u8; 56usize],
5684}
5685#[test]
5686fn bindgen_test_layout_crypto_mutex_st() {
5687    const UNINIT: ::std::mem::MaybeUninit<crypto_mutex_st> = ::std::mem::MaybeUninit::uninit();
5688    let ptr = UNINIT.as_ptr();
5689    assert_eq!(
5690        ::std::mem::size_of::<crypto_mutex_st>(),
5691        56usize,
5692        "Size of crypto_mutex_st"
5693    );
5694    assert_eq!(
5695        ::std::mem::align_of::<crypto_mutex_st>(),
5696        8usize,
5697        "Alignment of crypto_mutex_st"
5698    );
5699    assert_eq!(
5700        unsafe { ::std::ptr::addr_of!((*ptr).alignment) as usize - ptr as usize },
5701        0usize,
5702        "Offset of field: crypto_mutex_st::alignment"
5703    );
5704    assert_eq!(
5705        unsafe { ::std::ptr::addr_of!((*ptr).padding) as usize - ptr as usize },
5706        0usize,
5707        "Offset of field: crypto_mutex_st::padding"
5708    );
5709}
5710impl Default for crypto_mutex_st {
5711    fn default() -> Self {
5712        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5713        unsafe {
5714            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5715            s.assume_init()
5716        }
5717    }
5718}
5719pub type CRYPTO_MUTEX = crypto_mutex_st;
5720pub type CRYPTO_refcount_t = u32;
5721extern "C" {
5722    #[link_name = "\u{1}aws_lc_fips_0_13_10_AWSLC_thread_local_clear"]
5723    pub fn AWSLC_thread_local_clear() -> ::std::os::raw::c_int;
5724}
5725extern "C" {
5726    #[link_name = "\u{1}aws_lc_fips_0_13_10_AWSLC_thread_local_shutdown"]
5727    pub fn AWSLC_thread_local_shutdown() -> ::std::os::raw::c_int;
5728}
5729extern "C" {
5730    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_num_locks"]
5731    pub fn CRYPTO_num_locks() -> ::std::os::raw::c_int;
5732}
5733extern "C" {
5734    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_set_locking_callback"]
5735    pub fn CRYPTO_set_locking_callback(
5736        func: ::std::option::Option<
5737            unsafe extern "C" fn(
5738                mode: ::std::os::raw::c_int,
5739                lock_num: ::std::os::raw::c_int,
5740                file: *const ::std::os::raw::c_char,
5741                line: ::std::os::raw::c_int,
5742            ),
5743        >,
5744    );
5745}
5746extern "C" {
5747    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_set_add_lock_callback"]
5748    pub fn CRYPTO_set_add_lock_callback(
5749        func: ::std::option::Option<
5750            unsafe extern "C" fn(
5751                num: *mut ::std::os::raw::c_int,
5752                amount: ::std::os::raw::c_int,
5753                lock_num: ::std::os::raw::c_int,
5754                file: *const ::std::os::raw::c_char,
5755                line: ::std::os::raw::c_int,
5756            ) -> ::std::os::raw::c_int,
5757        >,
5758    );
5759}
5760extern "C" {
5761    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_get_locking_callback"]
5762    pub fn CRYPTO_get_locking_callback() -> ::std::option::Option<
5763        unsafe extern "C" fn(
5764            arg1: ::std::os::raw::c_int,
5765            arg2: ::std::os::raw::c_int,
5766            arg3: *const ::std::os::raw::c_char,
5767            arg4: ::std::os::raw::c_int,
5768        ),
5769    >;
5770}
5771extern "C" {
5772    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_get_lock_name"]
5773    pub fn CRYPTO_get_lock_name(lock_num: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
5774}
5775extern "C" {
5776    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_THREADID_set_callback"]
5777    pub fn CRYPTO_THREADID_set_callback(
5778        threadid_func: ::std::option::Option<unsafe extern "C" fn(threadid: *mut CRYPTO_THREADID)>,
5779    ) -> ::std::os::raw::c_int;
5780}
5781extern "C" {
5782    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_THREADID_set_numeric"]
5783    pub fn CRYPTO_THREADID_set_numeric(id: *mut CRYPTO_THREADID, val: ::std::os::raw::c_ulong);
5784}
5785extern "C" {
5786    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_THREADID_set_pointer"]
5787    pub fn CRYPTO_THREADID_set_pointer(id: *mut CRYPTO_THREADID, ptr: *mut ::std::os::raw::c_void);
5788}
5789extern "C" {
5790    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_THREADID_current"]
5791    pub fn CRYPTO_THREADID_current(id: *mut CRYPTO_THREADID);
5792}
5793extern "C" {
5794    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_set_id_callback"]
5795    pub fn CRYPTO_set_id_callback(
5796        func: ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_ulong>,
5797    );
5798}
5799#[repr(C)]
5800#[derive(Debug, Copy, Clone, PartialEq, Eq)]
5801pub struct CRYPTO_dynlock {
5802    pub references: ::std::os::raw::c_int,
5803    pub data: *mut CRYPTO_dynlock_value,
5804}
5805#[test]
5806fn bindgen_test_layout_CRYPTO_dynlock() {
5807    const UNINIT: ::std::mem::MaybeUninit<CRYPTO_dynlock> = ::std::mem::MaybeUninit::uninit();
5808    let ptr = UNINIT.as_ptr();
5809    assert_eq!(
5810        ::std::mem::size_of::<CRYPTO_dynlock>(),
5811        16usize,
5812        "Size of CRYPTO_dynlock"
5813    );
5814    assert_eq!(
5815        ::std::mem::align_of::<CRYPTO_dynlock>(),
5816        8usize,
5817        "Alignment of CRYPTO_dynlock"
5818    );
5819    assert_eq!(
5820        unsafe { ::std::ptr::addr_of!((*ptr).references) as usize - ptr as usize },
5821        0usize,
5822        "Offset of field: CRYPTO_dynlock::references"
5823    );
5824    assert_eq!(
5825        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
5826        8usize,
5827        "Offset of field: CRYPTO_dynlock::data"
5828    );
5829}
5830impl Default for CRYPTO_dynlock {
5831    fn default() -> Self {
5832        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
5833        unsafe {
5834            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
5835            s.assume_init()
5836        }
5837    }
5838}
5839extern "C" {
5840    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_set_dynlock_create_callback"]
5841    pub fn CRYPTO_set_dynlock_create_callback(
5842        dyn_create_function: ::std::option::Option<
5843            unsafe extern "C" fn(
5844                file: *const ::std::os::raw::c_char,
5845                line: ::std::os::raw::c_int,
5846            ) -> *mut CRYPTO_dynlock_value,
5847        >,
5848    );
5849}
5850extern "C" {
5851    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_set_dynlock_lock_callback"]
5852    pub fn CRYPTO_set_dynlock_lock_callback(
5853        dyn_lock_function: ::std::option::Option<
5854            unsafe extern "C" fn(
5855                mode: ::std::os::raw::c_int,
5856                l: *mut CRYPTO_dynlock_value,
5857                file: *const ::std::os::raw::c_char,
5858                line: ::std::os::raw::c_int,
5859            ),
5860        >,
5861    );
5862}
5863extern "C" {
5864    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_set_dynlock_destroy_callback"]
5865    pub fn CRYPTO_set_dynlock_destroy_callback(
5866        dyn_destroy_function: ::std::option::Option<
5867            unsafe extern "C" fn(
5868                l: *mut CRYPTO_dynlock_value,
5869                file: *const ::std::os::raw::c_char,
5870                line: ::std::os::raw::c_int,
5871            ),
5872        >,
5873    );
5874}
5875extern "C" {
5876    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_get_dynlock_create_callback"]
5877    pub fn CRYPTO_get_dynlock_create_callback() -> ::std::option::Option<
5878        unsafe extern "C" fn(
5879            arg1: *const ::std::os::raw::c_char,
5880            arg2: ::std::os::raw::c_int,
5881        ) -> *mut CRYPTO_dynlock_value,
5882    >;
5883}
5884extern "C" {
5885    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_get_dynlock_lock_callback"]
5886    pub fn CRYPTO_get_dynlock_lock_callback() -> ::std::option::Option<
5887        unsafe extern "C" fn(
5888            arg1: ::std::os::raw::c_int,
5889            arg2: *mut CRYPTO_dynlock_value,
5890            arg3: *const ::std::os::raw::c_char,
5891            arg4: ::std::os::raw::c_int,
5892        ),
5893    >;
5894}
5895extern "C" {
5896    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_get_dynlock_destroy_callback"]
5897    pub fn CRYPTO_get_dynlock_destroy_callback() -> ::std::option::Option<
5898        unsafe extern "C" fn(
5899            arg1: *mut CRYPTO_dynlock_value,
5900            arg2: *const ::std::os::raw::c_char,
5901            arg3: ::std::os::raw::c_int,
5902        ),
5903    >;
5904}
5905extern "C" {
5906    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_library_init"]
5907    pub fn CRYPTO_library_init();
5908}
5909extern "C" {
5910    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_is_confidential_build"]
5911    pub fn CRYPTO_is_confidential_build() -> ::std::os::raw::c_int;
5912}
5913extern "C" {
5914    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_has_asm"]
5915    pub fn CRYPTO_has_asm() -> ::std::os::raw::c_int;
5916}
5917extern "C" {
5918    #[link_name = "\u{1}aws_lc_fips_0_13_10_BORINGSSL_self_test"]
5919    pub fn BORINGSSL_self_test() -> ::std::os::raw::c_int;
5920}
5921extern "C" {
5922    pub fn BORINGSSL_integrity_test() -> ::std::os::raw::c_int;
5923}
5924extern "C" {
5925    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_pre_sandbox_init"]
5926    pub fn CRYPTO_pre_sandbox_init();
5927}
5928extern "C" {
5929    #[link_name = "\u{1}aws_lc_fips_0_13_10_FIPS_mode"]
5930    pub fn FIPS_mode() -> ::std::os::raw::c_int;
5931}
5932pub const fips_counter_t_fips_counter_evp_aes_128_gcm: fips_counter_t = 0;
5933pub const fips_counter_t_fips_counter_evp_aes_256_gcm: fips_counter_t = 1;
5934pub const fips_counter_t_fips_counter_evp_aes_128_ctr: fips_counter_t = 2;
5935pub const fips_counter_t_fips_counter_evp_aes_256_ctr: fips_counter_t = 3;
5936pub const fips_counter_t_fips_counter_max: fips_counter_t = 3;
5937pub type fips_counter_t = ::std::os::raw::c_uint;
5938extern "C" {
5939    #[link_name = "\u{1}aws_lc_fips_0_13_10_FIPS_read_counter"]
5940    pub fn FIPS_read_counter(counter: fips_counter_t) -> usize;
5941}
5942extern "C" {
5943    #[link_name = "\u{1}aws_lc_fips_0_13_10_OpenSSL_version"]
5944    pub fn OpenSSL_version(which: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
5945}
5946extern "C" {
5947    #[link_name = "\u{1}aws_lc_fips_0_13_10_SSLeay_version"]
5948    pub fn SSLeay_version(which: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
5949}
5950extern "C" {
5951    #[link_name = "\u{1}aws_lc_fips_0_13_10_SSLeay"]
5952    pub fn SSLeay() -> ::std::os::raw::c_ulong;
5953}
5954extern "C" {
5955    #[link_name = "\u{1}aws_lc_fips_0_13_10_OpenSSL_version_num"]
5956    pub fn OpenSSL_version_num() -> ::std::os::raw::c_ulong;
5957}
5958extern "C" {
5959    #[link_name = "\u{1}aws_lc_fips_0_13_10_awslc_api_version_num"]
5960    pub fn awslc_api_version_num() -> ::std::os::raw::c_ulong;
5961}
5962extern "C" {
5963    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_malloc_init"]
5964    pub fn CRYPTO_malloc_init() -> ::std::os::raw::c_int;
5965}
5966extern "C" {
5967    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_malloc_init"]
5968    pub fn OPENSSL_malloc_init() -> ::std::os::raw::c_int;
5969}
5970extern "C" {
5971    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_load_builtin_engines"]
5972    pub fn ENGINE_load_builtin_engines();
5973}
5974extern "C" {
5975    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_register_all_complete"]
5976    pub fn ENGINE_register_all_complete() -> ::std::os::raw::c_int;
5977}
5978extern "C" {
5979    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_load_builtin_modules"]
5980    pub fn OPENSSL_load_builtin_modules();
5981}
5982extern "C" {
5983    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_init_crypto"]
5984    pub fn OPENSSL_init_crypto(
5985        opts: u64,
5986        settings: *const OPENSSL_INIT_SETTINGS,
5987    ) -> ::std::os::raw::c_int;
5988}
5989extern "C" {
5990    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_init"]
5991    pub fn OPENSSL_init();
5992}
5993extern "C" {
5994    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_cleanup"]
5995    pub fn OPENSSL_cleanup();
5996}
5997extern "C" {
5998    #[link_name = "\u{1}aws_lc_fips_0_13_10_FIPS_mode_set"]
5999    pub fn FIPS_mode_set(on: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
6000}
6001extern "C" {
6002    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_load_BIO_strings"]
6003    pub fn ERR_load_BIO_strings();
6004}
6005extern "C" {
6006    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_load_ERR_strings"]
6007    pub fn ERR_load_ERR_strings();
6008}
6009extern "C" {
6010    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_load_CRYPTO_strings"]
6011    pub fn ERR_load_CRYPTO_strings();
6012}
6013extern "C" {
6014    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_load_crypto_strings"]
6015    pub fn ERR_load_crypto_strings();
6016}
6017extern "C" {
6018    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_load_RAND_strings"]
6019    pub fn ERR_load_RAND_strings();
6020}
6021extern "C" {
6022    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_free_strings"]
6023    pub fn ERR_free_strings();
6024}
6025extern "C" {
6026    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_get_error"]
6027    pub fn ERR_get_error() -> u32;
6028}
6029extern "C" {
6030    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_get_error_line"]
6031    pub fn ERR_get_error_line(
6032        file: *mut *const ::std::os::raw::c_char,
6033        line: *mut ::std::os::raw::c_int,
6034    ) -> u32;
6035}
6036extern "C" {
6037    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_get_error_line_data"]
6038    pub fn ERR_get_error_line_data(
6039        file: *mut *const ::std::os::raw::c_char,
6040        line: *mut ::std::os::raw::c_int,
6041        data: *mut *const ::std::os::raw::c_char,
6042        flags: *mut ::std::os::raw::c_int,
6043    ) -> u32;
6044}
6045extern "C" {
6046    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_peek_error"]
6047    pub fn ERR_peek_error() -> u32;
6048}
6049extern "C" {
6050    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_peek_error_line"]
6051    pub fn ERR_peek_error_line(
6052        file: *mut *const ::std::os::raw::c_char,
6053        line: *mut ::std::os::raw::c_int,
6054    ) -> u32;
6055}
6056extern "C" {
6057    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_peek_error_line_data"]
6058    pub fn ERR_peek_error_line_data(
6059        file: *mut *const ::std::os::raw::c_char,
6060        line: *mut ::std::os::raw::c_int,
6061        data: *mut *const ::std::os::raw::c_char,
6062        flags: *mut ::std::os::raw::c_int,
6063    ) -> u32;
6064}
6065extern "C" {
6066    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_peek_last_error"]
6067    pub fn ERR_peek_last_error() -> u32;
6068}
6069extern "C" {
6070    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_peek_last_error_line"]
6071    pub fn ERR_peek_last_error_line(
6072        file: *mut *const ::std::os::raw::c_char,
6073        line: *mut ::std::os::raw::c_int,
6074    ) -> u32;
6075}
6076extern "C" {
6077    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_peek_last_error_line_data"]
6078    pub fn ERR_peek_last_error_line_data(
6079        file: *mut *const ::std::os::raw::c_char,
6080        line: *mut ::std::os::raw::c_int,
6081        data: *mut *const ::std::os::raw::c_char,
6082        flags: *mut ::std::os::raw::c_int,
6083    ) -> u32;
6084}
6085extern "C" {
6086    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_error_string_n"]
6087    pub fn ERR_error_string_n(
6088        packed_error: u32,
6089        buf: *mut ::std::os::raw::c_char,
6090        len: usize,
6091    ) -> *mut ::std::os::raw::c_char;
6092}
6093extern "C" {
6094    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_lib_error_string"]
6095    pub fn ERR_lib_error_string(packed_error: u32) -> *const ::std::os::raw::c_char;
6096}
6097extern "C" {
6098    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_reason_error_string"]
6099    pub fn ERR_reason_error_string(packed_error: u32) -> *const ::std::os::raw::c_char;
6100}
6101pub type ERR_print_errors_callback_t = ::std::option::Option<
6102    unsafe extern "C" fn(
6103        str_: *const ::std::os::raw::c_char,
6104        len: usize,
6105        ctx: *mut ::std::os::raw::c_void,
6106    ) -> ::std::os::raw::c_int,
6107>;
6108extern "C" {
6109    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_print_errors_cb"]
6110    pub fn ERR_print_errors_cb(
6111        callback: ERR_print_errors_callback_t,
6112        ctx: *mut ::std::os::raw::c_void,
6113    );
6114}
6115extern "C" {
6116    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_print_errors_fp"]
6117    pub fn ERR_print_errors_fp(file: *mut FILE);
6118}
6119extern "C" {
6120    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_clear_error"]
6121    pub fn ERR_clear_error();
6122}
6123extern "C" {
6124    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_set_mark"]
6125    pub fn ERR_set_mark() -> ::std::os::raw::c_int;
6126}
6127extern "C" {
6128    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_pop_to_mark"]
6129    pub fn ERR_pop_to_mark() -> ::std::os::raw::c_int;
6130}
6131extern "C" {
6132    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_get_next_error_library"]
6133    pub fn ERR_get_next_error_library() -> ::std::os::raw::c_int;
6134}
6135extern "C" {
6136    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_remove_state"]
6137    pub fn ERR_remove_state(pid: ::std::os::raw::c_ulong);
6138}
6139extern "C" {
6140    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_remove_thread_state"]
6141    pub fn ERR_remove_thread_state(tid: *const CRYPTO_THREADID);
6142}
6143extern "C" {
6144    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_func_error_string"]
6145    pub fn ERR_func_error_string(packed_error: u32) -> *const ::std::os::raw::c_char;
6146}
6147extern "C" {
6148    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_error_string"]
6149    pub fn ERR_error_string(
6150        packed_error: u32,
6151        buf: *mut ::std::os::raw::c_char,
6152    ) -> *mut ::std::os::raw::c_char;
6153}
6154extern "C" {
6155    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_clear_system_error"]
6156    pub fn ERR_clear_system_error();
6157}
6158extern "C" {
6159    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_put_error"]
6160    pub fn ERR_put_error(
6161        library: ::std::os::raw::c_int,
6162        unused: ::std::os::raw::c_int,
6163        reason: ::std::os::raw::c_int,
6164        file: *const ::std::os::raw::c_char,
6165        line: ::std::os::raw::c_uint,
6166    );
6167}
6168extern "C" {
6169    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_add_error_data"]
6170    pub fn ERR_add_error_data(count: ::std::os::raw::c_uint, ...);
6171}
6172extern "C" {
6173    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_add_error_dataf"]
6174    pub fn ERR_add_error_dataf(format: *const ::std::os::raw::c_char, ...);
6175}
6176extern "C" {
6177    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_set_error_data"]
6178    pub fn ERR_set_error_data(data: *mut ::std::os::raw::c_char, flags: ::std::os::raw::c_int);
6179}
6180pub type OPENSSL_sk_free_func =
6181    ::std::option::Option<unsafe extern "C" fn(ptr: *mut ::std::os::raw::c_void)>;
6182pub type OPENSSL_sk_copy_func = ::std::option::Option<
6183    unsafe extern "C" fn(ptr: *const ::std::os::raw::c_void) -> *mut ::std::os::raw::c_void,
6184>;
6185pub type OPENSSL_sk_cmp_func = ::std::option::Option<
6186    unsafe extern "C" fn(
6187        a: *const *const ::std::os::raw::c_void,
6188        b: *const *const ::std::os::raw::c_void,
6189    ) -> ::std::os::raw::c_int,
6190>;
6191pub type OPENSSL_sk_delete_if_func = ::std::option::Option<
6192    unsafe extern "C" fn(
6193        obj: *mut ::std::os::raw::c_void,
6194        data: *mut ::std::os::raw::c_void,
6195    ) -> ::std::os::raw::c_int,
6196>;
6197pub type OPENSSL_sk_call_free_func = ::std::option::Option<
6198    unsafe extern "C" fn(arg1: OPENSSL_sk_free_func, arg2: *mut ::std::os::raw::c_void),
6199>;
6200pub type OPENSSL_sk_call_copy_func = ::std::option::Option<
6201    unsafe extern "C" fn(
6202        arg1: OPENSSL_sk_copy_func,
6203        arg2: *const ::std::os::raw::c_void,
6204    ) -> *mut ::std::os::raw::c_void,
6205>;
6206pub type OPENSSL_sk_call_cmp_func = ::std::option::Option<
6207    unsafe extern "C" fn(
6208        arg1: OPENSSL_sk_cmp_func,
6209        arg2: *const ::std::os::raw::c_void,
6210        arg3: *const ::std::os::raw::c_void,
6211    ) -> ::std::os::raw::c_int,
6212>;
6213pub type OPENSSL_sk_call_delete_if_func = ::std::option::Option<
6214    unsafe extern "C" fn(
6215        arg1: OPENSSL_sk_delete_if_func,
6216        arg2: *mut ::std::os::raw::c_void,
6217        arg3: *mut ::std::os::raw::c_void,
6218    ) -> ::std::os::raw::c_int,
6219>;
6220#[repr(C)]
6221#[derive(Debug, Copy, Clone)]
6222pub struct stack_st {
6223    _unused: [u8; 0],
6224}
6225pub type OPENSSL_STACK = stack_st;
6226extern "C" {
6227    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_new"]
6228    pub fn OPENSSL_sk_new(comp: OPENSSL_sk_cmp_func) -> *mut OPENSSL_STACK;
6229}
6230extern "C" {
6231    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_new_null"]
6232    pub fn OPENSSL_sk_new_null() -> *mut OPENSSL_STACK;
6233}
6234extern "C" {
6235    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_num"]
6236    pub fn OPENSSL_sk_num(sk: *const OPENSSL_STACK) -> usize;
6237}
6238extern "C" {
6239    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_zero"]
6240    pub fn OPENSSL_sk_zero(sk: *mut OPENSSL_STACK);
6241}
6242extern "C" {
6243    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_value"]
6244    pub fn OPENSSL_sk_value(sk: *const OPENSSL_STACK, i: usize) -> *mut ::std::os::raw::c_void;
6245}
6246extern "C" {
6247    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_set"]
6248    pub fn OPENSSL_sk_set(
6249        sk: *mut OPENSSL_STACK,
6250        i: usize,
6251        p: *mut ::std::os::raw::c_void,
6252    ) -> *mut ::std::os::raw::c_void;
6253}
6254extern "C" {
6255    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_free"]
6256    pub fn OPENSSL_sk_free(sk: *mut OPENSSL_STACK);
6257}
6258extern "C" {
6259    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_pop_free_ex"]
6260    pub fn OPENSSL_sk_pop_free_ex(
6261        sk: *mut OPENSSL_STACK,
6262        call_free_func: OPENSSL_sk_call_free_func,
6263        free_func: OPENSSL_sk_free_func,
6264    );
6265}
6266extern "C" {
6267    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_insert"]
6268    pub fn OPENSSL_sk_insert(
6269        sk: *mut OPENSSL_STACK,
6270        p: *mut ::std::os::raw::c_void,
6271        where_: usize,
6272    ) -> usize;
6273}
6274extern "C" {
6275    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_delete"]
6276    pub fn OPENSSL_sk_delete(sk: *mut OPENSSL_STACK, where_: usize) -> *mut ::std::os::raw::c_void;
6277}
6278extern "C" {
6279    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_delete_ptr"]
6280    pub fn OPENSSL_sk_delete_ptr(
6281        sk: *mut OPENSSL_STACK,
6282        p: *const ::std::os::raw::c_void,
6283    ) -> *mut ::std::os::raw::c_void;
6284}
6285extern "C" {
6286    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_delete_if"]
6287    pub fn OPENSSL_sk_delete_if(
6288        sk: *mut OPENSSL_STACK,
6289        call_func: OPENSSL_sk_call_delete_if_func,
6290        func: OPENSSL_sk_delete_if_func,
6291        data: *mut ::std::os::raw::c_void,
6292    );
6293}
6294extern "C" {
6295    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_find"]
6296    pub fn OPENSSL_sk_find(
6297        sk: *const OPENSSL_STACK,
6298        out_index: *mut usize,
6299        p: *const ::std::os::raw::c_void,
6300        call_cmp_func: OPENSSL_sk_call_cmp_func,
6301    ) -> ::std::os::raw::c_int;
6302}
6303extern "C" {
6304    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_unshift"]
6305    pub fn OPENSSL_sk_unshift(
6306        sk: *mut OPENSSL_STACK,
6307        data: *mut ::std::os::raw::c_void,
6308    ) -> ::std::os::raw::c_int;
6309}
6310extern "C" {
6311    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_shift"]
6312    pub fn OPENSSL_sk_shift(sk: *mut OPENSSL_STACK) -> *mut ::std::os::raw::c_void;
6313}
6314extern "C" {
6315    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_push"]
6316    pub fn OPENSSL_sk_push(sk: *mut OPENSSL_STACK, p: *mut ::std::os::raw::c_void) -> usize;
6317}
6318extern "C" {
6319    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_pop"]
6320    pub fn OPENSSL_sk_pop(sk: *mut OPENSSL_STACK) -> *mut ::std::os::raw::c_void;
6321}
6322extern "C" {
6323    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_dup"]
6324    pub fn OPENSSL_sk_dup(sk: *const OPENSSL_STACK) -> *mut OPENSSL_STACK;
6325}
6326extern "C" {
6327    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_sort"]
6328    pub fn OPENSSL_sk_sort(sk: *mut OPENSSL_STACK, call_cmp_func: OPENSSL_sk_call_cmp_func);
6329}
6330extern "C" {
6331    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_is_sorted"]
6332    pub fn OPENSSL_sk_is_sorted(sk: *const OPENSSL_STACK) -> ::std::os::raw::c_int;
6333}
6334extern "C" {
6335    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_set_cmp_func"]
6336    pub fn OPENSSL_sk_set_cmp_func(
6337        sk: *mut OPENSSL_STACK,
6338        comp: OPENSSL_sk_cmp_func,
6339    ) -> OPENSSL_sk_cmp_func;
6340}
6341extern "C" {
6342    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_sk_deep_copy"]
6343    pub fn OPENSSL_sk_deep_copy(
6344        sk: *const OPENSSL_STACK,
6345        call_copy_func: OPENSSL_sk_call_copy_func,
6346        copy_func: OPENSSL_sk_copy_func,
6347        call_free_func: OPENSSL_sk_call_free_func,
6348        free_func: OPENSSL_sk_free_func,
6349    ) -> *mut OPENSSL_STACK;
6350}
6351pub type _STACK = OPENSSL_STACK;
6352extern "C" {
6353    #[link_name = "\u{1}aws_lc_fips_0_13_10_sk_pop_free"]
6354    pub fn sk_pop_free(sk: *mut OPENSSL_STACK, free_func: OPENSSL_sk_free_func);
6355}
6356pub type OPENSSL_STRING = *mut ::std::os::raw::c_char;
6357#[repr(C)]
6358#[derive(Debug, Copy, Clone)]
6359pub struct stack_st_void {
6360    _unused: [u8; 0],
6361}
6362pub type sk_void_free_func =
6363    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
6364pub type sk_void_copy_func = ::std::option::Option<
6365    unsafe extern "C" fn(arg1: *const ::std::os::raw::c_void) -> *mut ::std::os::raw::c_void,
6366>;
6367pub type sk_void_cmp_func = ::std::option::Option<
6368    unsafe extern "C" fn(
6369        arg1: *const *const ::std::os::raw::c_void,
6370        arg2: *const *const ::std::os::raw::c_void,
6371    ) -> ::std::os::raw::c_int,
6372>;
6373pub type sk_void_delete_if_func = ::std::option::Option<
6374    unsafe extern "C" fn(
6375        arg1: *mut ::std::os::raw::c_void,
6376        arg2: *mut ::std::os::raw::c_void,
6377    ) -> ::std::os::raw::c_int,
6378>;
6379#[repr(C)]
6380#[derive(Debug, Copy, Clone)]
6381pub struct stack_st_OPENSSL_STRING {
6382    _unused: [u8; 0],
6383}
6384pub type sk_OPENSSL_STRING_free_func =
6385    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_char)>;
6386pub type sk_OPENSSL_STRING_copy_func = ::std::option::Option<
6387    unsafe extern "C" fn(arg1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char,
6388>;
6389pub type sk_OPENSSL_STRING_cmp_func = ::std::option::Option<
6390    unsafe extern "C" fn(
6391        arg1: *const *const ::std::os::raw::c_char,
6392        arg2: *const *const ::std::os::raw::c_char,
6393    ) -> ::std::os::raw::c_int,
6394>;
6395pub type sk_OPENSSL_STRING_delete_if_func = ::std::option::Option<
6396    unsafe extern "C" fn(
6397        arg1: *mut ::std::os::raw::c_char,
6398        arg2: *mut ::std::os::raw::c_void,
6399    ) -> ::std::os::raw::c_int,
6400>;
6401pub type CRYPTO_EX_DATA = crypto_ex_data_st;
6402pub type CRYPTO_EX_free = ::std::option::Option<
6403    unsafe extern "C" fn(
6404        parent: *mut ::std::os::raw::c_void,
6405        ptr: *mut ::std::os::raw::c_void,
6406        ad: *mut CRYPTO_EX_DATA,
6407        index: ::std::os::raw::c_int,
6408        argl: ::std::os::raw::c_long,
6409        argp: *mut ::std::os::raw::c_void,
6410    ),
6411>;
6412extern "C" {
6413    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_cleanup_all_ex_data"]
6414    pub fn CRYPTO_cleanup_all_ex_data();
6415}
6416pub type CRYPTO_EX_dup = ::std::option::Option<
6417    unsafe extern "C" fn(
6418        to: *mut CRYPTO_EX_DATA,
6419        from: *const CRYPTO_EX_DATA,
6420        from_d: *mut *mut ::std::os::raw::c_void,
6421        index: ::std::os::raw::c_int,
6422        argl: ::std::os::raw::c_long,
6423        argp: *mut ::std::os::raw::c_void,
6424    ) -> ::std::os::raw::c_int,
6425>;
6426pub type CRYPTO_EX_unused = ::std::os::raw::c_int;
6427#[repr(C)]
6428#[derive(Debug, Copy, Clone, PartialEq, Eq)]
6429pub struct crypto_ex_data_st {
6430    pub sk: *mut stack_st_void,
6431}
6432#[test]
6433fn bindgen_test_layout_crypto_ex_data_st() {
6434    const UNINIT: ::std::mem::MaybeUninit<crypto_ex_data_st> = ::std::mem::MaybeUninit::uninit();
6435    let ptr = UNINIT.as_ptr();
6436    assert_eq!(
6437        ::std::mem::size_of::<crypto_ex_data_st>(),
6438        8usize,
6439        "Size of crypto_ex_data_st"
6440    );
6441    assert_eq!(
6442        ::std::mem::align_of::<crypto_ex_data_st>(),
6443        8usize,
6444        "Alignment of crypto_ex_data_st"
6445    );
6446    assert_eq!(
6447        unsafe { ::std::ptr::addr_of!((*ptr).sk) as usize - ptr as usize },
6448        0usize,
6449        "Offset of field: crypto_ex_data_st::sk"
6450    );
6451}
6452impl Default for crypto_ex_data_st {
6453    fn default() -> Self {
6454        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
6455        unsafe {
6456            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
6457            s.assume_init()
6458        }
6459    }
6460}
6461#[repr(C)]
6462#[derive(Debug, Copy, Clone)]
6463pub struct stack_st_BIO {
6464    _unused: [u8; 0],
6465}
6466pub type sk_BIO_free_func = ::std::option::Option<unsafe extern "C" fn(arg1: *mut BIO)>;
6467pub type sk_BIO_copy_func =
6468    ::std::option::Option<unsafe extern "C" fn(arg1: *const BIO) -> *mut BIO>;
6469pub type sk_BIO_cmp_func = ::std::option::Option<
6470    unsafe extern "C" fn(arg1: *const *const BIO, arg2: *const *const BIO) -> ::std::os::raw::c_int,
6471>;
6472pub type sk_BIO_delete_if_func = ::std::option::Option<
6473    unsafe extern "C" fn(
6474        arg1: *mut BIO,
6475        arg2: *mut ::std::os::raw::c_void,
6476    ) -> ::std::os::raw::c_int,
6477>;
6478extern "C" {
6479    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_new"]
6480    pub fn BIO_new(method: *const BIO_METHOD) -> *mut BIO;
6481}
6482extern "C" {
6483    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_free"]
6484    pub fn BIO_free(bio: *mut BIO) -> ::std::os::raw::c_int;
6485}
6486extern "C" {
6487    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_vfree"]
6488    pub fn BIO_vfree(bio: *mut BIO);
6489}
6490extern "C" {
6491    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_up_ref"]
6492    pub fn BIO_up_ref(bio: *mut BIO) -> ::std::os::raw::c_int;
6493}
6494extern "C" {
6495    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_read"]
6496    pub fn BIO_read(
6497        bio: *mut BIO,
6498        data: *mut ::std::os::raw::c_void,
6499        len: ::std::os::raw::c_int,
6500    ) -> ::std::os::raw::c_int;
6501}
6502extern "C" {
6503    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_read_ex"]
6504    pub fn BIO_read_ex(
6505        bio: *mut BIO,
6506        data: *mut ::std::os::raw::c_void,
6507        data_len: usize,
6508        read_bytes: *mut usize,
6509    ) -> ::std::os::raw::c_int;
6510}
6511extern "C" {
6512    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_gets"]
6513    pub fn BIO_gets(
6514        bio: *mut BIO,
6515        buf: *mut ::std::os::raw::c_char,
6516        size: ::std::os::raw::c_int,
6517    ) -> ::std::os::raw::c_int;
6518}
6519extern "C" {
6520    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_write"]
6521    pub fn BIO_write(
6522        bio: *mut BIO,
6523        data: *const ::std::os::raw::c_void,
6524        len: ::std::os::raw::c_int,
6525    ) -> ::std::os::raw::c_int;
6526}
6527extern "C" {
6528    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_write_ex"]
6529    pub fn BIO_write_ex(
6530        bio: *mut BIO,
6531        data: *const ::std::os::raw::c_void,
6532        data_len: usize,
6533        written_bytes: *mut usize,
6534    ) -> ::std::os::raw::c_int;
6535}
6536extern "C" {
6537    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_write_all"]
6538    pub fn BIO_write_all(
6539        bio: *mut BIO,
6540        data: *const ::std::os::raw::c_void,
6541        len: usize,
6542    ) -> ::std::os::raw::c_int;
6543}
6544extern "C" {
6545    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_puts"]
6546    pub fn BIO_puts(bio: *mut BIO, buf: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
6547}
6548extern "C" {
6549    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_flush"]
6550    pub fn BIO_flush(bio: *mut BIO) -> ::std::os::raw::c_int;
6551}
6552extern "C" {
6553    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_ctrl"]
6554    pub fn BIO_ctrl(
6555        bio: *mut BIO,
6556        cmd: ::std::os::raw::c_int,
6557        larg: ::std::os::raw::c_long,
6558        parg: *mut ::std::os::raw::c_void,
6559    ) -> ::std::os::raw::c_long;
6560}
6561extern "C" {
6562    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_ptr_ctrl"]
6563    pub fn BIO_ptr_ctrl(
6564        bp: *mut BIO,
6565        cmd: ::std::os::raw::c_int,
6566        larg: ::std::os::raw::c_long,
6567    ) -> *mut ::std::os::raw::c_char;
6568}
6569extern "C" {
6570    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_int_ctrl"]
6571    pub fn BIO_int_ctrl(
6572        bp: *mut BIO,
6573        cmd: ::std::os::raw::c_int,
6574        larg: ::std::os::raw::c_long,
6575        iarg: ::std::os::raw::c_int,
6576    ) -> ::std::os::raw::c_long;
6577}
6578extern "C" {
6579    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_reset"]
6580    pub fn BIO_reset(bio: *mut BIO) -> ::std::os::raw::c_int;
6581}
6582extern "C" {
6583    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_eof"]
6584    pub fn BIO_eof(bio: *mut BIO) -> ::std::os::raw::c_int;
6585}
6586extern "C" {
6587    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_flags"]
6588    pub fn BIO_set_flags(bio: *mut BIO, flags: ::std::os::raw::c_int);
6589}
6590extern "C" {
6591    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_test_flags"]
6592    pub fn BIO_test_flags(bio: *const BIO, flags: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
6593}
6594extern "C" {
6595    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_should_read"]
6596    pub fn BIO_should_read(bio: *const BIO) -> ::std::os::raw::c_int;
6597}
6598extern "C" {
6599    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_should_write"]
6600    pub fn BIO_should_write(bio: *const BIO) -> ::std::os::raw::c_int;
6601}
6602extern "C" {
6603    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_should_retry"]
6604    pub fn BIO_should_retry(bio: *const BIO) -> ::std::os::raw::c_int;
6605}
6606extern "C" {
6607    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_should_io_special"]
6608    pub fn BIO_should_io_special(bio: *const BIO) -> ::std::os::raw::c_int;
6609}
6610extern "C" {
6611    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_retry_reason"]
6612    pub fn BIO_get_retry_reason(bio: *const BIO) -> ::std::os::raw::c_int;
6613}
6614extern "C" {
6615    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_retry_reason"]
6616    pub fn BIO_set_retry_reason(bio: *mut BIO, reason: ::std::os::raw::c_int);
6617}
6618extern "C" {
6619    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_clear_flags"]
6620    pub fn BIO_clear_flags(bio: *mut BIO, flags: ::std::os::raw::c_int);
6621}
6622extern "C" {
6623    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_retry_read"]
6624    pub fn BIO_set_retry_read(bio: *mut BIO);
6625}
6626extern "C" {
6627    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_retry_write"]
6628    pub fn BIO_set_retry_write(bio: *mut BIO);
6629}
6630extern "C" {
6631    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_retry_flags"]
6632    pub fn BIO_get_retry_flags(bio: *mut BIO) -> ::std::os::raw::c_int;
6633}
6634extern "C" {
6635    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_clear_retry_flags"]
6636    pub fn BIO_clear_retry_flags(bio: *mut BIO);
6637}
6638extern "C" {
6639    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_method_type"]
6640    pub fn BIO_method_type(bio: *const BIO) -> ::std::os::raw::c_int;
6641}
6642extern "C" {
6643    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_method_name"]
6644    pub fn BIO_method_name(b: *const BIO) -> *const ::std::os::raw::c_char;
6645}
6646pub type bio_info_cb = ::std::option::Option<
6647    unsafe extern "C" fn(
6648        b: *mut BIO,
6649        state: ::std::os::raw::c_int,
6650        res: ::std::os::raw::c_int,
6651    ) -> ::std::os::raw::c_long,
6652>;
6653pub type BIO_callback_fn_ex = ::std::option::Option<
6654    unsafe extern "C" fn(
6655        bio: *mut BIO,
6656        oper: ::std::os::raw::c_int,
6657        argp: *const ::std::os::raw::c_char,
6658        len: usize,
6659        argi: ::std::os::raw::c_int,
6660        argl: ::std::os::raw::c_long,
6661        bio_ret: ::std::os::raw::c_int,
6662        processed: *mut usize,
6663    ) -> ::std::os::raw::c_long,
6664>;
6665extern "C" {
6666    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_callback_ctrl"]
6667    pub fn BIO_callback_ctrl(
6668        bio: *mut BIO,
6669        cmd: ::std::os::raw::c_int,
6670        fp: bio_info_cb,
6671    ) -> ::std::os::raw::c_long;
6672}
6673extern "C" {
6674    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_pending"]
6675    pub fn BIO_pending(bio: *const BIO) -> usize;
6676}
6677extern "C" {
6678    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_ctrl_pending"]
6679    pub fn BIO_ctrl_pending(bio: *const BIO) -> usize;
6680}
6681extern "C" {
6682    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_wpending"]
6683    pub fn BIO_wpending(bio: *const BIO) -> usize;
6684}
6685extern "C" {
6686    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_close"]
6687    pub fn BIO_set_close(bio: *mut BIO, close_flag: ::std::os::raw::c_int)
6688        -> ::std::os::raw::c_int;
6689}
6690extern "C" {
6691    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_number_read"]
6692    pub fn BIO_number_read(bio: *const BIO) -> u64;
6693}
6694extern "C" {
6695    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_number_written"]
6696    pub fn BIO_number_written(bio: *const BIO) -> u64;
6697}
6698extern "C" {
6699    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_callback_ex"]
6700    pub fn BIO_set_callback_ex(bio: *mut BIO, callback_ex: BIO_callback_fn_ex);
6701}
6702extern "C" {
6703    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_callback_arg"]
6704    pub fn BIO_set_callback_arg(bio: *mut BIO, arg: *mut ::std::os::raw::c_char);
6705}
6706extern "C" {
6707    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_callback_arg"]
6708    pub fn BIO_get_callback_arg(bio: *const BIO) -> *mut ::std::os::raw::c_char;
6709}
6710extern "C" {
6711    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_push"]
6712    pub fn BIO_push(bio: *mut BIO, appended_bio: *mut BIO) -> *mut BIO;
6713}
6714extern "C" {
6715    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_pop"]
6716    pub fn BIO_pop(bio: *mut BIO) -> *mut BIO;
6717}
6718extern "C" {
6719    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_next"]
6720    pub fn BIO_next(bio: *mut BIO) -> *mut BIO;
6721}
6722extern "C" {
6723    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_free_all"]
6724    pub fn BIO_free_all(bio: *mut BIO);
6725}
6726extern "C" {
6727    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_find_type"]
6728    pub fn BIO_find_type(bio: *mut BIO, type_: ::std::os::raw::c_int) -> *mut BIO;
6729}
6730extern "C" {
6731    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_copy_next_retry"]
6732    pub fn BIO_copy_next_retry(bio: *mut BIO);
6733}
6734extern "C" {
6735    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_printf"]
6736    pub fn BIO_printf(
6737        bio: *mut BIO,
6738        format: *const ::std::os::raw::c_char,
6739        ...
6740    ) -> ::std::os::raw::c_int;
6741}
6742extern "C" {
6743    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_indent"]
6744    pub fn BIO_indent(
6745        bio: *mut BIO,
6746        indent: ::std::os::raw::c_uint,
6747        max_indent: ::std::os::raw::c_uint,
6748    ) -> ::std::os::raw::c_int;
6749}
6750extern "C" {
6751    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_hexdump"]
6752    pub fn BIO_hexdump(
6753        bio: *mut BIO,
6754        data: *const u8,
6755        len: usize,
6756        indent: ::std::os::raw::c_uint,
6757    ) -> ::std::os::raw::c_int;
6758}
6759extern "C" {
6760    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_print_errors"]
6761    pub fn ERR_print_errors(bio: *mut BIO);
6762}
6763extern "C" {
6764    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_read_asn1"]
6765    pub fn BIO_read_asn1(
6766        bio: *mut BIO,
6767        out: *mut *mut u8,
6768        out_len: *mut usize,
6769        max_len: usize,
6770    ) -> ::std::os::raw::c_int;
6771}
6772extern "C" {
6773    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_s_mem"]
6774    pub fn BIO_s_mem() -> *const BIO_METHOD;
6775}
6776extern "C" {
6777    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_new_mem_buf"]
6778    pub fn BIO_new_mem_buf(buf: *const ::std::os::raw::c_void, len: ossl_ssize_t) -> *mut BIO;
6779}
6780extern "C" {
6781    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_mem_contents"]
6782    pub fn BIO_mem_contents(
6783        bio: *const BIO,
6784        out_contents: *mut *const u8,
6785        out_len: *mut usize,
6786    ) -> ::std::os::raw::c_int;
6787}
6788extern "C" {
6789    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_mem_ptr"]
6790    pub fn BIO_get_mem_ptr(bio: *mut BIO, out: *mut *mut BUF_MEM) -> ::std::os::raw::c_int;
6791}
6792extern "C" {
6793    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_mem_buf"]
6794    pub fn BIO_set_mem_buf(
6795        bio: *mut BIO,
6796        b: *mut BUF_MEM,
6797        take_ownership: ::std::os::raw::c_int,
6798    ) -> ::std::os::raw::c_int;
6799}
6800extern "C" {
6801    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_mem_eof_return"]
6802    pub fn BIO_set_mem_eof_return(
6803        bio: *mut BIO,
6804        eof_value: ::std::os::raw::c_int,
6805    ) -> ::std::os::raw::c_int;
6806}
6807extern "C" {
6808    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_s_fd"]
6809    pub fn BIO_s_fd() -> *const BIO_METHOD;
6810}
6811extern "C" {
6812    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_new_fd"]
6813    pub fn BIO_new_fd(fd: ::std::os::raw::c_int, close_flag: ::std::os::raw::c_int) -> *mut BIO;
6814}
6815extern "C" {
6816    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_fd"]
6817    pub fn BIO_set_fd(
6818        bio: *mut BIO,
6819        fd: ::std::os::raw::c_int,
6820        close_flag: ::std::os::raw::c_int,
6821    ) -> ::std::os::raw::c_int;
6822}
6823extern "C" {
6824    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_fd"]
6825    pub fn BIO_get_fd(bio: *mut BIO, out_fd: *mut ::std::os::raw::c_int) -> ::std::os::raw::c_int;
6826}
6827extern "C" {
6828    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_s_file"]
6829    pub fn BIO_s_file() -> *const BIO_METHOD;
6830}
6831extern "C" {
6832    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_new_file"]
6833    pub fn BIO_new_file(
6834        filename: *const ::std::os::raw::c_char,
6835        mode: *const ::std::os::raw::c_char,
6836    ) -> *mut BIO;
6837}
6838extern "C" {
6839    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_new_fp"]
6840    pub fn BIO_new_fp(stream: *mut FILE, close_flag: ::std::os::raw::c_int) -> *mut BIO;
6841}
6842extern "C" {
6843    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_fp"]
6844    pub fn BIO_get_fp(bio: *mut BIO, out_file: *mut *mut FILE) -> ::std::os::raw::c_int;
6845}
6846extern "C" {
6847    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_fp"]
6848    pub fn BIO_set_fp(
6849        bio: *mut BIO,
6850        file: *mut FILE,
6851        close_flag: ::std::os::raw::c_int,
6852    ) -> ::std::os::raw::c_int;
6853}
6854extern "C" {
6855    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_read_filename"]
6856    pub fn BIO_read_filename(
6857        bio: *mut BIO,
6858        filename: *const ::std::os::raw::c_char,
6859    ) -> ::std::os::raw::c_int;
6860}
6861extern "C" {
6862    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_write_filename"]
6863    pub fn BIO_write_filename(
6864        bio: *mut BIO,
6865        filename: *const ::std::os::raw::c_char,
6866    ) -> ::std::os::raw::c_int;
6867}
6868extern "C" {
6869    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_append_filename"]
6870    pub fn BIO_append_filename(
6871        bio: *mut BIO,
6872        filename: *const ::std::os::raw::c_char,
6873    ) -> ::std::os::raw::c_int;
6874}
6875extern "C" {
6876    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_rw_filename"]
6877    pub fn BIO_rw_filename(
6878        bio: *mut BIO,
6879        filename: *const ::std::os::raw::c_char,
6880    ) -> ::std::os::raw::c_int;
6881}
6882extern "C" {
6883    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_tell"]
6884    pub fn BIO_tell(bio: *mut BIO) -> ::std::os::raw::c_long;
6885}
6886extern "C" {
6887    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_seek"]
6888    pub fn BIO_seek(bio: *mut BIO, offset: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
6889}
6890extern "C" {
6891    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_s_socket"]
6892    pub fn BIO_s_socket() -> *const BIO_METHOD;
6893}
6894extern "C" {
6895    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_new_socket"]
6896    pub fn BIO_new_socket(fd: ::std::os::raw::c_int, close_flag: ::std::os::raw::c_int)
6897        -> *mut BIO;
6898}
6899extern "C" {
6900    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_s_connect"]
6901    pub fn BIO_s_connect() -> *const BIO_METHOD;
6902}
6903extern "C" {
6904    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_new_connect"]
6905    pub fn BIO_new_connect(host_and_optional_port: *const ::std::os::raw::c_char) -> *mut BIO;
6906}
6907extern "C" {
6908    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_conn_hostname"]
6909    pub fn BIO_set_conn_hostname(
6910        bio: *mut BIO,
6911        host_and_optional_port: *const ::std::os::raw::c_char,
6912    ) -> ::std::os::raw::c_int;
6913}
6914extern "C" {
6915    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_conn_port"]
6916    pub fn BIO_set_conn_port(
6917        bio: *mut BIO,
6918        port_str: *const ::std::os::raw::c_char,
6919    ) -> ::std::os::raw::c_int;
6920}
6921extern "C" {
6922    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_conn_int_port"]
6923    pub fn BIO_set_conn_int_port(
6924        bio: *mut BIO,
6925        port: *const ::std::os::raw::c_int,
6926    ) -> ::std::os::raw::c_int;
6927}
6928extern "C" {
6929    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_nbio"]
6930    pub fn BIO_set_nbio(bio: *mut BIO, on: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
6931}
6932extern "C" {
6933    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_do_connect"]
6934    pub fn BIO_do_connect(bio: *mut BIO) -> ::std::os::raw::c_int;
6935}
6936extern "C" {
6937    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_new_bio_pair"]
6938    pub fn BIO_new_bio_pair(
6939        out1: *mut *mut BIO,
6940        writebuf1: usize,
6941        out2: *mut *mut BIO,
6942        writebuf2: usize,
6943    ) -> ::std::os::raw::c_int;
6944}
6945extern "C" {
6946    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_ctrl_get_read_request"]
6947    pub fn BIO_ctrl_get_read_request(bio: *mut BIO) -> usize;
6948}
6949extern "C" {
6950    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_ctrl_get_write_guarantee"]
6951    pub fn BIO_ctrl_get_write_guarantee(bio: *mut BIO) -> usize;
6952}
6953extern "C" {
6954    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_shutdown_wr"]
6955    pub fn BIO_shutdown_wr(bio: *mut BIO) -> ::std::os::raw::c_int;
6956}
6957extern "C" {
6958    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_new_index"]
6959    pub fn BIO_get_new_index() -> ::std::os::raw::c_int;
6960}
6961extern "C" {
6962    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_new"]
6963    pub fn BIO_meth_new(
6964        type_: ::std::os::raw::c_int,
6965        name: *const ::std::os::raw::c_char,
6966    ) -> *mut BIO_METHOD;
6967}
6968extern "C" {
6969    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_free"]
6970    pub fn BIO_meth_free(method: *mut BIO_METHOD);
6971}
6972extern "C" {
6973    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_set_create"]
6974    pub fn BIO_meth_set_create(
6975        method: *mut BIO_METHOD,
6976        create: ::std::option::Option<
6977            unsafe extern "C" fn(arg1: *mut BIO) -> ::std::os::raw::c_int,
6978        >,
6979    ) -> ::std::os::raw::c_int;
6980}
6981extern "C" {
6982    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_get_create"]
6983    pub fn BIO_meth_get_create(
6984        method: *const BIO_METHOD,
6985    ) -> ::std::option::Option<unsafe extern "C" fn(method: *mut BIO) -> ::std::os::raw::c_int>;
6986}
6987extern "C" {
6988    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_set_destroy"]
6989    pub fn BIO_meth_set_destroy(
6990        method: *mut BIO_METHOD,
6991        destroy: ::std::option::Option<
6992            unsafe extern "C" fn(arg1: *mut BIO) -> ::std::os::raw::c_int,
6993        >,
6994    ) -> ::std::os::raw::c_int;
6995}
6996extern "C" {
6997    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_get_destroy"]
6998    pub fn BIO_meth_get_destroy(
6999        method: *const BIO_METHOD,
7000    ) -> ::std::option::Option<unsafe extern "C" fn(method: *mut BIO) -> ::std::os::raw::c_int>;
7001}
7002extern "C" {
7003    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_set_write"]
7004    pub fn BIO_meth_set_write(
7005        method: *mut BIO_METHOD,
7006        write: ::std::option::Option<
7007            unsafe extern "C" fn(
7008                arg1: *mut BIO,
7009                arg2: *const ::std::os::raw::c_char,
7010                arg3: ::std::os::raw::c_int,
7011            ) -> ::std::os::raw::c_int,
7012        >,
7013    ) -> ::std::os::raw::c_int;
7014}
7015extern "C" {
7016    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_set_read"]
7017    pub fn BIO_meth_set_read(
7018        method: *mut BIO_METHOD,
7019        read: ::std::option::Option<
7020            unsafe extern "C" fn(
7021                arg1: *mut BIO,
7022                arg2: *mut ::std::os::raw::c_char,
7023                arg3: ::std::os::raw::c_int,
7024            ) -> ::std::os::raw::c_int,
7025        >,
7026    ) -> ::std::os::raw::c_int;
7027}
7028extern "C" {
7029    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_set_gets"]
7030    pub fn BIO_meth_set_gets(
7031        method: *mut BIO_METHOD,
7032        gets: ::std::option::Option<
7033            unsafe extern "C" fn(
7034                arg1: *mut BIO,
7035                arg2: *mut ::std::os::raw::c_char,
7036                arg3: ::std::os::raw::c_int,
7037            ) -> ::std::os::raw::c_int,
7038        >,
7039    ) -> ::std::os::raw::c_int;
7040}
7041extern "C" {
7042    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_get_gets"]
7043    pub fn BIO_meth_get_gets(
7044        method: *const BIO_METHOD,
7045    ) -> ::std::option::Option<
7046        unsafe extern "C" fn(
7047            method: *mut BIO,
7048            arg1: *mut ::std::os::raw::c_char,
7049            arg2: ::std::os::raw::c_int,
7050        ) -> ::std::os::raw::c_int,
7051    >;
7052}
7053extern "C" {
7054    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_set_ctrl"]
7055    pub fn BIO_meth_set_ctrl(
7056        method: *mut BIO_METHOD,
7057        ctrl: ::std::option::Option<
7058            unsafe extern "C" fn(
7059                arg1: *mut BIO,
7060                arg2: ::std::os::raw::c_int,
7061                arg3: ::std::os::raw::c_long,
7062                arg4: *mut ::std::os::raw::c_void,
7063            ) -> ::std::os::raw::c_long,
7064        >,
7065    ) -> ::std::os::raw::c_int;
7066}
7067extern "C" {
7068    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_get_ctrl"]
7069    pub fn BIO_meth_get_ctrl(
7070        method: *const BIO_METHOD,
7071    ) -> ::std::option::Option<
7072        unsafe extern "C" fn(
7073            method: *mut BIO,
7074            arg1: ::std::os::raw::c_int,
7075            arg2: ::std::os::raw::c_long,
7076            arg3: *mut ::std::os::raw::c_void,
7077        ) -> ::std::os::raw::c_long,
7078    >;
7079}
7080extern "C" {
7081    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_set_callback_ctrl"]
7082    pub fn BIO_meth_set_callback_ctrl(
7083        method: *mut BIO_METHOD,
7084        callback_ctrl: ::std::option::Option<
7085            unsafe extern "C" fn(
7086                arg1: *mut BIO,
7087                arg2: ::std::os::raw::c_int,
7088                arg3: bio_info_cb,
7089            ) -> ::std::os::raw::c_long,
7090        >,
7091    ) -> ::std::os::raw::c_int;
7092}
7093extern "C" {
7094    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_get_callback_ctrl"]
7095    pub fn BIO_meth_get_callback_ctrl(
7096        method: *const BIO_METHOD,
7097    ) -> ::std::option::Option<
7098        unsafe extern "C" fn(
7099            method: *mut BIO,
7100            arg1: ::std::os::raw::c_int,
7101            arg2: bio_info_cb,
7102        ) -> ::std::os::raw::c_long,
7103    >;
7104}
7105extern "C" {
7106    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_data"]
7107    pub fn BIO_set_data(bio: *mut BIO, ptr: *mut ::std::os::raw::c_void);
7108}
7109extern "C" {
7110    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_data"]
7111    pub fn BIO_get_data(bio: *mut BIO) -> *mut ::std::os::raw::c_void;
7112}
7113extern "C" {
7114    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_init"]
7115    pub fn BIO_set_init(bio: *mut BIO, init: ::std::os::raw::c_int);
7116}
7117extern "C" {
7118    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_init"]
7119    pub fn BIO_get_init(bio: *mut BIO) -> ::std::os::raw::c_int;
7120}
7121extern "C" {
7122    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_ex_new_index"]
7123    pub fn BIO_get_ex_new_index(
7124        argl: ::std::os::raw::c_long,
7125        argp: *mut ::std::os::raw::c_void,
7126        unused: *mut CRYPTO_EX_unused,
7127        dup_unused: CRYPTO_EX_dup,
7128        free_func: CRYPTO_EX_free,
7129    ) -> ::std::os::raw::c_int;
7130}
7131extern "C" {
7132    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_ex_data"]
7133    pub fn BIO_set_ex_data(
7134        bio: *mut BIO,
7135        idx: ::std::os::raw::c_int,
7136        arg: *mut ::std::os::raw::c_void,
7137    ) -> ::std::os::raw::c_int;
7138}
7139extern "C" {
7140    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_ex_data"]
7141    pub fn BIO_get_ex_data(
7142        bio: *const BIO,
7143        idx: ::std::os::raw::c_int,
7144    ) -> *mut ::std::os::raw::c_void;
7145}
7146extern "C" {
7147    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_f_base64"]
7148    pub fn BIO_f_base64() -> *const BIO_METHOD;
7149}
7150extern "C" {
7151    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_retry_special"]
7152    pub fn BIO_set_retry_special(bio: *mut BIO);
7153}
7154extern "C" {
7155    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_shutdown"]
7156    pub fn BIO_set_shutdown(bio: *mut BIO, shutdown: ::std::os::raw::c_int);
7157}
7158extern "C" {
7159    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_get_shutdown"]
7160    pub fn BIO_get_shutdown(bio: *mut BIO) -> ::std::os::raw::c_int;
7161}
7162extern "C" {
7163    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_set_puts"]
7164    pub fn BIO_meth_set_puts(
7165        method: *mut BIO_METHOD,
7166        puts: ::std::option::Option<
7167            unsafe extern "C" fn(
7168                arg1: *mut BIO,
7169                arg2: *const ::std::os::raw::c_char,
7170            ) -> ::std::os::raw::c_int,
7171        >,
7172    ) -> ::std::os::raw::c_int;
7173}
7174extern "C" {
7175    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_meth_get_puts"]
7176    pub fn BIO_meth_get_puts(
7177        method: *const BIO_METHOD,
7178    ) -> ::std::option::Option<
7179        unsafe extern "C" fn(
7180            method: *mut BIO,
7181            arg1: *const ::std::os::raw::c_char,
7182        ) -> ::std::os::raw::c_int,
7183    >;
7184}
7185extern "C" {
7186    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_s_secmem"]
7187    pub fn BIO_s_secmem() -> *const BIO_METHOD;
7188}
7189extern "C" {
7190    #[link_name = "\u{1}aws_lc_fips_0_13_10_BIO_set_write_buffer_size"]
7191    pub fn BIO_set_write_buffer_size(
7192        bio: *mut BIO,
7193        buffer_size: ::std::os::raw::c_int,
7194    ) -> ::std::os::raw::c_int;
7195}
7196#[repr(C)]
7197#[derive(Debug, Copy, Clone, PartialEq, Eq)]
7198pub struct bio_method_st {
7199    pub type_: ::std::os::raw::c_int,
7200    pub name: *const ::std::os::raw::c_char,
7201    pub bwrite: ::std::option::Option<
7202        unsafe extern "C" fn(
7203            arg1: *mut BIO,
7204            arg2: *const ::std::os::raw::c_char,
7205            arg3: ::std::os::raw::c_int,
7206        ) -> ::std::os::raw::c_int,
7207    >,
7208    pub bread: ::std::option::Option<
7209        unsafe extern "C" fn(
7210            arg1: *mut BIO,
7211            arg2: *mut ::std::os::raw::c_char,
7212            arg3: ::std::os::raw::c_int,
7213        ) -> ::std::os::raw::c_int,
7214    >,
7215    pub bputs: ::std::option::Option<
7216        unsafe extern "C" fn(
7217            arg1: *mut BIO,
7218            arg2: *const ::std::os::raw::c_char,
7219        ) -> ::std::os::raw::c_int,
7220    >,
7221    pub bgets: ::std::option::Option<
7222        unsafe extern "C" fn(
7223            arg1: *mut BIO,
7224            arg2: *mut ::std::os::raw::c_char,
7225            arg3: ::std::os::raw::c_int,
7226        ) -> ::std::os::raw::c_int,
7227    >,
7228    pub ctrl: ::std::option::Option<
7229        unsafe extern "C" fn(
7230            arg1: *mut BIO,
7231            arg2: ::std::os::raw::c_int,
7232            arg3: ::std::os::raw::c_long,
7233            arg4: *mut ::std::os::raw::c_void,
7234        ) -> ::std::os::raw::c_long,
7235    >,
7236    pub create:
7237        ::std::option::Option<unsafe extern "C" fn(arg1: *mut BIO) -> ::std::os::raw::c_int>,
7238    pub destroy:
7239        ::std::option::Option<unsafe extern "C" fn(arg1: *mut BIO) -> ::std::os::raw::c_int>,
7240    pub callback_ctrl: ::std::option::Option<
7241        unsafe extern "C" fn(
7242            arg1: *mut BIO,
7243            arg2: ::std::os::raw::c_int,
7244            arg3: bio_info_cb,
7245        ) -> ::std::os::raw::c_long,
7246    >,
7247}
7248#[test]
7249fn bindgen_test_layout_bio_method_st() {
7250    const UNINIT: ::std::mem::MaybeUninit<bio_method_st> = ::std::mem::MaybeUninit::uninit();
7251    let ptr = UNINIT.as_ptr();
7252    assert_eq!(
7253        ::std::mem::size_of::<bio_method_st>(),
7254        80usize,
7255        "Size of bio_method_st"
7256    );
7257    assert_eq!(
7258        ::std::mem::align_of::<bio_method_st>(),
7259        8usize,
7260        "Alignment of bio_method_st"
7261    );
7262    assert_eq!(
7263        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
7264        0usize,
7265        "Offset of field: bio_method_st::type_"
7266    );
7267    assert_eq!(
7268        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
7269        8usize,
7270        "Offset of field: bio_method_st::name"
7271    );
7272    assert_eq!(
7273        unsafe { ::std::ptr::addr_of!((*ptr).bwrite) as usize - ptr as usize },
7274        16usize,
7275        "Offset of field: bio_method_st::bwrite"
7276    );
7277    assert_eq!(
7278        unsafe { ::std::ptr::addr_of!((*ptr).bread) as usize - ptr as usize },
7279        24usize,
7280        "Offset of field: bio_method_st::bread"
7281    );
7282    assert_eq!(
7283        unsafe { ::std::ptr::addr_of!((*ptr).bputs) as usize - ptr as usize },
7284        32usize,
7285        "Offset of field: bio_method_st::bputs"
7286    );
7287    assert_eq!(
7288        unsafe { ::std::ptr::addr_of!((*ptr).bgets) as usize - ptr as usize },
7289        40usize,
7290        "Offset of field: bio_method_st::bgets"
7291    );
7292    assert_eq!(
7293        unsafe { ::std::ptr::addr_of!((*ptr).ctrl) as usize - ptr as usize },
7294        48usize,
7295        "Offset of field: bio_method_st::ctrl"
7296    );
7297    assert_eq!(
7298        unsafe { ::std::ptr::addr_of!((*ptr).create) as usize - ptr as usize },
7299        56usize,
7300        "Offset of field: bio_method_st::create"
7301    );
7302    assert_eq!(
7303        unsafe { ::std::ptr::addr_of!((*ptr).destroy) as usize - ptr as usize },
7304        64usize,
7305        "Offset of field: bio_method_st::destroy"
7306    );
7307    assert_eq!(
7308        unsafe { ::std::ptr::addr_of!((*ptr).callback_ctrl) as usize - ptr as usize },
7309        72usize,
7310        "Offset of field: bio_method_st::callback_ctrl"
7311    );
7312}
7313impl Default for bio_method_st {
7314    fn default() -> Self {
7315        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7316        unsafe {
7317            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7318            s.assume_init()
7319        }
7320    }
7321}
7322#[repr(C)]
7323#[derive(Debug, Copy, Clone, PartialEq, Eq)]
7324pub struct bio_st {
7325    pub method: *const BIO_METHOD,
7326    pub ex_data: CRYPTO_EX_DATA,
7327    pub callback_ex: BIO_callback_fn_ex,
7328    pub cb_arg: *mut ::std::os::raw::c_char,
7329    pub init: ::std::os::raw::c_int,
7330    pub shutdown: ::std::os::raw::c_int,
7331    pub flags: ::std::os::raw::c_int,
7332    pub retry_reason: ::std::os::raw::c_int,
7333    pub num: ::std::os::raw::c_int,
7334    pub references: CRYPTO_refcount_t,
7335    pub ptr: *mut ::std::os::raw::c_void,
7336    pub next_bio: *mut BIO,
7337    pub num_read: u64,
7338    pub num_write: u64,
7339}
7340#[test]
7341fn bindgen_test_layout_bio_st() {
7342    const UNINIT: ::std::mem::MaybeUninit<bio_st> = ::std::mem::MaybeUninit::uninit();
7343    let ptr = UNINIT.as_ptr();
7344    assert_eq!(::std::mem::size_of::<bio_st>(), 88usize, "Size of bio_st");
7345    assert_eq!(
7346        ::std::mem::align_of::<bio_st>(),
7347        8usize,
7348        "Alignment of bio_st"
7349    );
7350    assert_eq!(
7351        unsafe { ::std::ptr::addr_of!((*ptr).method) as usize - ptr as usize },
7352        0usize,
7353        "Offset of field: bio_st::method"
7354    );
7355    assert_eq!(
7356        unsafe { ::std::ptr::addr_of!((*ptr).ex_data) as usize - ptr as usize },
7357        8usize,
7358        "Offset of field: bio_st::ex_data"
7359    );
7360    assert_eq!(
7361        unsafe { ::std::ptr::addr_of!((*ptr).callback_ex) as usize - ptr as usize },
7362        16usize,
7363        "Offset of field: bio_st::callback_ex"
7364    );
7365    assert_eq!(
7366        unsafe { ::std::ptr::addr_of!((*ptr).cb_arg) as usize - ptr as usize },
7367        24usize,
7368        "Offset of field: bio_st::cb_arg"
7369    );
7370    assert_eq!(
7371        unsafe { ::std::ptr::addr_of!((*ptr).init) as usize - ptr as usize },
7372        32usize,
7373        "Offset of field: bio_st::init"
7374    );
7375    assert_eq!(
7376        unsafe { ::std::ptr::addr_of!((*ptr).shutdown) as usize - ptr as usize },
7377        36usize,
7378        "Offset of field: bio_st::shutdown"
7379    );
7380    assert_eq!(
7381        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
7382        40usize,
7383        "Offset of field: bio_st::flags"
7384    );
7385    assert_eq!(
7386        unsafe { ::std::ptr::addr_of!((*ptr).retry_reason) as usize - ptr as usize },
7387        44usize,
7388        "Offset of field: bio_st::retry_reason"
7389    );
7390    assert_eq!(
7391        unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
7392        48usize,
7393        "Offset of field: bio_st::num"
7394    );
7395    assert_eq!(
7396        unsafe { ::std::ptr::addr_of!((*ptr).references) as usize - ptr as usize },
7397        52usize,
7398        "Offset of field: bio_st::references"
7399    );
7400    assert_eq!(
7401        unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
7402        56usize,
7403        "Offset of field: bio_st::ptr"
7404    );
7405    assert_eq!(
7406        unsafe { ::std::ptr::addr_of!((*ptr).next_bio) as usize - ptr as usize },
7407        64usize,
7408        "Offset of field: bio_st::next_bio"
7409    );
7410    assert_eq!(
7411        unsafe { ::std::ptr::addr_of!((*ptr).num_read) as usize - ptr as usize },
7412        72usize,
7413        "Offset of field: bio_st::num_read"
7414    );
7415    assert_eq!(
7416        unsafe { ::std::ptr::addr_of!((*ptr).num_write) as usize - ptr as usize },
7417        80usize,
7418        "Offset of field: bio_st::num_write"
7419    );
7420}
7421impl Default for bio_st {
7422    fn default() -> Self {
7423        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7424        unsafe {
7425            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7426            s.assume_init()
7427        }
7428    }
7429}
7430pub type BN_ULONG = u64;
7431extern "C" {
7432    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_new"]
7433    pub fn BN_new() -> *mut BIGNUM;
7434}
7435extern "C" {
7436    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_init"]
7437    pub fn BN_init(bn: *mut BIGNUM);
7438}
7439extern "C" {
7440    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_free"]
7441    pub fn BN_free(bn: *mut BIGNUM);
7442}
7443extern "C" {
7444    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_clear_free"]
7445    pub fn BN_clear_free(bn: *mut BIGNUM);
7446}
7447extern "C" {
7448    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_dup"]
7449    pub fn BN_dup(src: *const BIGNUM) -> *mut BIGNUM;
7450}
7451extern "C" {
7452    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_copy"]
7453    pub fn BN_copy(dest: *mut BIGNUM, src: *const BIGNUM) -> *mut BIGNUM;
7454}
7455extern "C" {
7456    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_clear"]
7457    pub fn BN_clear(bn: *mut BIGNUM);
7458}
7459extern "C" {
7460    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_value_one"]
7461    pub fn BN_value_one() -> *const BIGNUM;
7462}
7463extern "C" {
7464    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_num_bits"]
7465    pub fn BN_num_bits(bn: *const BIGNUM) -> ::std::os::raw::c_uint;
7466}
7467extern "C" {
7468    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_num_bytes"]
7469    pub fn BN_num_bytes(bn: *const BIGNUM) -> ::std::os::raw::c_uint;
7470}
7471extern "C" {
7472    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_zero"]
7473    pub fn BN_zero(bn: *mut BIGNUM);
7474}
7475extern "C" {
7476    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_one"]
7477    pub fn BN_one(bn: *mut BIGNUM) -> ::std::os::raw::c_int;
7478}
7479extern "C" {
7480    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_set_word"]
7481    pub fn BN_set_word(bn: *mut BIGNUM, value: BN_ULONG) -> ::std::os::raw::c_int;
7482}
7483extern "C" {
7484    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_set_u64"]
7485    pub fn BN_set_u64(bn: *mut BIGNUM, value: u64) -> ::std::os::raw::c_int;
7486}
7487extern "C" {
7488    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_set_negative"]
7489    pub fn BN_set_negative(bn: *mut BIGNUM, sign: ::std::os::raw::c_int);
7490}
7491extern "C" {
7492    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_negative"]
7493    pub fn BN_is_negative(bn: *const BIGNUM) -> ::std::os::raw::c_int;
7494}
7495extern "C" {
7496    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bin2bn"]
7497    pub fn BN_bin2bn(in_: *const u8, len: usize, ret: *mut BIGNUM) -> *mut BIGNUM;
7498}
7499extern "C" {
7500    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bn2bin"]
7501    pub fn BN_bn2bin(in_: *const BIGNUM, out: *mut u8) -> usize;
7502}
7503extern "C" {
7504    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_le2bn"]
7505    pub fn BN_le2bn(in_: *const u8, len: usize, ret: *mut BIGNUM) -> *mut BIGNUM;
7506}
7507extern "C" {
7508    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bn2le_padded"]
7509    pub fn BN_bn2le_padded(out: *mut u8, len: usize, in_: *const BIGNUM) -> ::std::os::raw::c_int;
7510}
7511extern "C" {
7512    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bn2bin_padded"]
7513    pub fn BN_bn2bin_padded(out: *mut u8, len: usize, in_: *const BIGNUM) -> ::std::os::raw::c_int;
7514}
7515extern "C" {
7516    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bn2cbb_padded"]
7517    pub fn BN_bn2cbb_padded(out: *mut CBB, len: usize, in_: *const BIGNUM)
7518        -> ::std::os::raw::c_int;
7519}
7520extern "C" {
7521    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bn2hex"]
7522    pub fn BN_bn2hex(bn: *const BIGNUM) -> *mut ::std::os::raw::c_char;
7523}
7524extern "C" {
7525    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_hex2bn"]
7526    pub fn BN_hex2bn(
7527        outp: *mut *mut BIGNUM,
7528        in_: *const ::std::os::raw::c_char,
7529    ) -> ::std::os::raw::c_int;
7530}
7531extern "C" {
7532    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bn2dec"]
7533    pub fn BN_bn2dec(a: *const BIGNUM) -> *mut ::std::os::raw::c_char;
7534}
7535extern "C" {
7536    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_dec2bn"]
7537    pub fn BN_dec2bn(
7538        outp: *mut *mut BIGNUM,
7539        in_: *const ::std::os::raw::c_char,
7540    ) -> ::std::os::raw::c_int;
7541}
7542extern "C" {
7543    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_asc2bn"]
7544    pub fn BN_asc2bn(
7545        outp: *mut *mut BIGNUM,
7546        in_: *const ::std::os::raw::c_char,
7547    ) -> ::std::os::raw::c_int;
7548}
7549extern "C" {
7550    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_print"]
7551    pub fn BN_print(bio: *mut BIO, a: *const BIGNUM) -> ::std::os::raw::c_int;
7552}
7553extern "C" {
7554    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_print_fp"]
7555    pub fn BN_print_fp(fp: *mut FILE, a: *const BIGNUM) -> ::std::os::raw::c_int;
7556}
7557extern "C" {
7558    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_word"]
7559    pub fn BN_get_word(bn: *const BIGNUM) -> BN_ULONG;
7560}
7561extern "C" {
7562    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_u64"]
7563    pub fn BN_get_u64(bn: *const BIGNUM, out: *mut u64) -> ::std::os::raw::c_int;
7564}
7565extern "C" {
7566    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_flags"]
7567    pub fn BN_get_flags(bn: *const BIGNUM, flags: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7568}
7569extern "C" {
7570    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_parse_asn1_unsigned"]
7571    pub fn BN_parse_asn1_unsigned(cbs: *mut CBS, ret: *mut BIGNUM) -> ::std::os::raw::c_int;
7572}
7573extern "C" {
7574    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_marshal_asn1"]
7575    pub fn BN_marshal_asn1(cbb: *mut CBB, bn: *const BIGNUM) -> ::std::os::raw::c_int;
7576}
7577extern "C" {
7578    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_CTX_new"]
7579    pub fn BN_CTX_new() -> *mut BN_CTX;
7580}
7581extern "C" {
7582    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_CTX_free"]
7583    pub fn BN_CTX_free(ctx: *mut BN_CTX);
7584}
7585extern "C" {
7586    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_CTX_start"]
7587    pub fn BN_CTX_start(ctx: *mut BN_CTX);
7588}
7589extern "C" {
7590    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_CTX_get"]
7591    pub fn BN_CTX_get(ctx: *mut BN_CTX) -> *mut BIGNUM;
7592}
7593extern "C" {
7594    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_CTX_end"]
7595    pub fn BN_CTX_end(ctx: *mut BN_CTX);
7596}
7597extern "C" {
7598    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_add"]
7599    pub fn BN_add(r: *mut BIGNUM, a: *const BIGNUM, b: *const BIGNUM) -> ::std::os::raw::c_int;
7600}
7601extern "C" {
7602    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_uadd"]
7603    pub fn BN_uadd(r: *mut BIGNUM, a: *const BIGNUM, b: *const BIGNUM) -> ::std::os::raw::c_int;
7604}
7605extern "C" {
7606    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_add_word"]
7607    pub fn BN_add_word(a: *mut BIGNUM, w: BN_ULONG) -> ::std::os::raw::c_int;
7608}
7609extern "C" {
7610    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_sub"]
7611    pub fn BN_sub(r: *mut BIGNUM, a: *const BIGNUM, b: *const BIGNUM) -> ::std::os::raw::c_int;
7612}
7613extern "C" {
7614    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_usub"]
7615    pub fn BN_usub(r: *mut BIGNUM, a: *const BIGNUM, b: *const BIGNUM) -> ::std::os::raw::c_int;
7616}
7617extern "C" {
7618    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_sub_word"]
7619    pub fn BN_sub_word(a: *mut BIGNUM, w: BN_ULONG) -> ::std::os::raw::c_int;
7620}
7621extern "C" {
7622    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mul"]
7623    pub fn BN_mul(
7624        r: *mut BIGNUM,
7625        a: *const BIGNUM,
7626        b: *const BIGNUM,
7627        ctx: *mut BN_CTX,
7628    ) -> ::std::os::raw::c_int;
7629}
7630extern "C" {
7631    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mul_word"]
7632    pub fn BN_mul_word(bn: *mut BIGNUM, w: BN_ULONG) -> ::std::os::raw::c_int;
7633}
7634extern "C" {
7635    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_sqr"]
7636    pub fn BN_sqr(r: *mut BIGNUM, a: *const BIGNUM, ctx: *mut BN_CTX) -> ::std::os::raw::c_int;
7637}
7638extern "C" {
7639    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_div"]
7640    pub fn BN_div(
7641        quotient: *mut BIGNUM,
7642        rem: *mut BIGNUM,
7643        numerator: *const BIGNUM,
7644        divisor: *const BIGNUM,
7645        ctx: *mut BN_CTX,
7646    ) -> ::std::os::raw::c_int;
7647}
7648extern "C" {
7649    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_div_word"]
7650    pub fn BN_div_word(numerator: *mut BIGNUM, divisor: BN_ULONG) -> BN_ULONG;
7651}
7652extern "C" {
7653    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_sqrt"]
7654    pub fn BN_sqrt(
7655        out_sqrt: *mut BIGNUM,
7656        in_: *const BIGNUM,
7657        ctx: *mut BN_CTX,
7658    ) -> ::std::os::raw::c_int;
7659}
7660extern "C" {
7661    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_cmp"]
7662    pub fn BN_cmp(a: *const BIGNUM, b: *const BIGNUM) -> ::std::os::raw::c_int;
7663}
7664extern "C" {
7665    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_cmp_word"]
7666    pub fn BN_cmp_word(a: *const BIGNUM, b: BN_ULONG) -> ::std::os::raw::c_int;
7667}
7668extern "C" {
7669    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_ucmp"]
7670    pub fn BN_ucmp(a: *const BIGNUM, b: *const BIGNUM) -> ::std::os::raw::c_int;
7671}
7672extern "C" {
7673    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_equal_consttime"]
7674    pub fn BN_equal_consttime(a: *const BIGNUM, b: *const BIGNUM) -> ::std::os::raw::c_int;
7675}
7676extern "C" {
7677    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_abs_is_word"]
7678    pub fn BN_abs_is_word(bn: *const BIGNUM, w: BN_ULONG) -> ::std::os::raw::c_int;
7679}
7680extern "C" {
7681    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_zero"]
7682    pub fn BN_is_zero(bn: *const BIGNUM) -> ::std::os::raw::c_int;
7683}
7684extern "C" {
7685    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_one"]
7686    pub fn BN_is_one(bn: *const BIGNUM) -> ::std::os::raw::c_int;
7687}
7688extern "C" {
7689    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_word"]
7690    pub fn BN_is_word(bn: *const BIGNUM, w: BN_ULONG) -> ::std::os::raw::c_int;
7691}
7692extern "C" {
7693    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_odd"]
7694    pub fn BN_is_odd(bn: *const BIGNUM) -> ::std::os::raw::c_int;
7695}
7696extern "C" {
7697    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_pow2"]
7698    pub fn BN_is_pow2(a: *const BIGNUM) -> ::std::os::raw::c_int;
7699}
7700extern "C" {
7701    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_lshift"]
7702    pub fn BN_lshift(
7703        r: *mut BIGNUM,
7704        a: *const BIGNUM,
7705        n: ::std::os::raw::c_int,
7706    ) -> ::std::os::raw::c_int;
7707}
7708extern "C" {
7709    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_lshift1"]
7710    pub fn BN_lshift1(r: *mut BIGNUM, a: *const BIGNUM) -> ::std::os::raw::c_int;
7711}
7712extern "C" {
7713    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_rshift"]
7714    pub fn BN_rshift(
7715        r: *mut BIGNUM,
7716        a: *const BIGNUM,
7717        n: ::std::os::raw::c_int,
7718    ) -> ::std::os::raw::c_int;
7719}
7720extern "C" {
7721    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_rshift1"]
7722    pub fn BN_rshift1(r: *mut BIGNUM, a: *const BIGNUM) -> ::std::os::raw::c_int;
7723}
7724extern "C" {
7725    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_set_bit"]
7726    pub fn BN_set_bit(a: *mut BIGNUM, n: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7727}
7728extern "C" {
7729    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_clear_bit"]
7730    pub fn BN_clear_bit(a: *mut BIGNUM, n: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7731}
7732extern "C" {
7733    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_bit_set"]
7734    pub fn BN_is_bit_set(a: *const BIGNUM, n: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7735}
7736extern "C" {
7737    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mask_bits"]
7738    pub fn BN_mask_bits(a: *mut BIGNUM, n: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
7739}
7740extern "C" {
7741    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_count_low_zero_bits"]
7742    pub fn BN_count_low_zero_bits(bn: *const BIGNUM) -> ::std::os::raw::c_int;
7743}
7744extern "C" {
7745    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_word"]
7746    pub fn BN_mod_word(a: *const BIGNUM, w: BN_ULONG) -> BN_ULONG;
7747}
7748extern "C" {
7749    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_pow2"]
7750    pub fn BN_mod_pow2(r: *mut BIGNUM, a: *const BIGNUM, e: usize) -> ::std::os::raw::c_int;
7751}
7752extern "C" {
7753    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_nnmod_pow2"]
7754    pub fn BN_nnmod_pow2(r: *mut BIGNUM, a: *const BIGNUM, e: usize) -> ::std::os::raw::c_int;
7755}
7756extern "C" {
7757    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_nnmod"]
7758    pub fn BN_nnmod(
7759        rem: *mut BIGNUM,
7760        numerator: *const BIGNUM,
7761        divisor: *const BIGNUM,
7762        ctx: *mut BN_CTX,
7763    ) -> ::std::os::raw::c_int;
7764}
7765extern "C" {
7766    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_add"]
7767    pub fn BN_mod_add(
7768        r: *mut BIGNUM,
7769        a: *const BIGNUM,
7770        b: *const BIGNUM,
7771        m: *const BIGNUM,
7772        ctx: *mut BN_CTX,
7773    ) -> ::std::os::raw::c_int;
7774}
7775extern "C" {
7776    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_add_quick"]
7777    pub fn BN_mod_add_quick(
7778        r: *mut BIGNUM,
7779        a: *const BIGNUM,
7780        b: *const BIGNUM,
7781        m: *const BIGNUM,
7782    ) -> ::std::os::raw::c_int;
7783}
7784extern "C" {
7785    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_sub"]
7786    pub fn BN_mod_sub(
7787        r: *mut BIGNUM,
7788        a: *const BIGNUM,
7789        b: *const BIGNUM,
7790        m: *const BIGNUM,
7791        ctx: *mut BN_CTX,
7792    ) -> ::std::os::raw::c_int;
7793}
7794extern "C" {
7795    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_sub_quick"]
7796    pub fn BN_mod_sub_quick(
7797        r: *mut BIGNUM,
7798        a: *const BIGNUM,
7799        b: *const BIGNUM,
7800        m: *const BIGNUM,
7801    ) -> ::std::os::raw::c_int;
7802}
7803extern "C" {
7804    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_mul"]
7805    pub fn BN_mod_mul(
7806        r: *mut BIGNUM,
7807        a: *const BIGNUM,
7808        b: *const BIGNUM,
7809        m: *const BIGNUM,
7810        ctx: *mut BN_CTX,
7811    ) -> ::std::os::raw::c_int;
7812}
7813extern "C" {
7814    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_sqr"]
7815    pub fn BN_mod_sqr(
7816        r: *mut BIGNUM,
7817        a: *const BIGNUM,
7818        m: *const BIGNUM,
7819        ctx: *mut BN_CTX,
7820    ) -> ::std::os::raw::c_int;
7821}
7822extern "C" {
7823    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_lshift"]
7824    pub fn BN_mod_lshift(
7825        r: *mut BIGNUM,
7826        a: *const BIGNUM,
7827        n: ::std::os::raw::c_int,
7828        m: *const BIGNUM,
7829        ctx: *mut BN_CTX,
7830    ) -> ::std::os::raw::c_int;
7831}
7832extern "C" {
7833    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_lshift_quick"]
7834    pub fn BN_mod_lshift_quick(
7835        r: *mut BIGNUM,
7836        a: *const BIGNUM,
7837        n: ::std::os::raw::c_int,
7838        m: *const BIGNUM,
7839    ) -> ::std::os::raw::c_int;
7840}
7841extern "C" {
7842    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_lshift1"]
7843    pub fn BN_mod_lshift1(
7844        r: *mut BIGNUM,
7845        a: *const BIGNUM,
7846        m: *const BIGNUM,
7847        ctx: *mut BN_CTX,
7848    ) -> ::std::os::raw::c_int;
7849}
7850extern "C" {
7851    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_lshift1_quick"]
7852    pub fn BN_mod_lshift1_quick(
7853        r: *mut BIGNUM,
7854        a: *const BIGNUM,
7855        m: *const BIGNUM,
7856    ) -> ::std::os::raw::c_int;
7857}
7858extern "C" {
7859    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_sqrt"]
7860    pub fn BN_mod_sqrt(
7861        in_: *mut BIGNUM,
7862        a: *const BIGNUM,
7863        p: *const BIGNUM,
7864        ctx: *mut BN_CTX,
7865    ) -> *mut BIGNUM;
7866}
7867extern "C" {
7868    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_rand"]
7869    pub fn BN_rand(
7870        rnd: *mut BIGNUM,
7871        bits: ::std::os::raw::c_int,
7872        top: ::std::os::raw::c_int,
7873        bottom: ::std::os::raw::c_int,
7874    ) -> ::std::os::raw::c_int;
7875}
7876extern "C" {
7877    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_pseudo_rand"]
7878    pub fn BN_pseudo_rand(
7879        rnd: *mut BIGNUM,
7880        bits: ::std::os::raw::c_int,
7881        top: ::std::os::raw::c_int,
7882        bottom: ::std::os::raw::c_int,
7883    ) -> ::std::os::raw::c_int;
7884}
7885extern "C" {
7886    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_rand_range"]
7887    pub fn BN_rand_range(rnd: *mut BIGNUM, range: *const BIGNUM) -> ::std::os::raw::c_int;
7888}
7889extern "C" {
7890    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_rand_range_ex"]
7891    pub fn BN_rand_range_ex(
7892        r: *mut BIGNUM,
7893        min_inclusive: BN_ULONG,
7894        max_exclusive: *const BIGNUM,
7895    ) -> ::std::os::raw::c_int;
7896}
7897extern "C" {
7898    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_pseudo_rand_range"]
7899    pub fn BN_pseudo_rand_range(rnd: *mut BIGNUM, range: *const BIGNUM) -> ::std::os::raw::c_int;
7900}
7901#[repr(C)]
7902#[derive(Copy, Clone)]
7903pub struct bn_gencb_st {
7904    pub type_: u8,
7905    pub arg: *mut ::std::os::raw::c_void,
7906    pub callback: bn_gencb_st__bindgen_ty_1,
7907}
7908#[repr(C)]
7909#[derive(Copy, Clone)]
7910pub union bn_gencb_st__bindgen_ty_1 {
7911    pub new_style: ::std::option::Option<
7912        unsafe extern "C" fn(
7913            event: ::std::os::raw::c_int,
7914            n: ::std::os::raw::c_int,
7915            arg1: *mut bn_gencb_st,
7916        ) -> ::std::os::raw::c_int,
7917    >,
7918    pub old_style: ::std::option::Option<
7919        unsafe extern "C" fn(
7920            arg1: ::std::os::raw::c_int,
7921            arg2: ::std::os::raw::c_int,
7922            arg3: *mut ::std::os::raw::c_void,
7923        ),
7924    >,
7925}
7926#[test]
7927fn bindgen_test_layout_bn_gencb_st__bindgen_ty_1() {
7928    const UNINIT: ::std::mem::MaybeUninit<bn_gencb_st__bindgen_ty_1> =
7929        ::std::mem::MaybeUninit::uninit();
7930    let ptr = UNINIT.as_ptr();
7931    assert_eq!(
7932        ::std::mem::size_of::<bn_gencb_st__bindgen_ty_1>(),
7933        8usize,
7934        "Size of bn_gencb_st__bindgen_ty_1"
7935    );
7936    assert_eq!(
7937        ::std::mem::align_of::<bn_gencb_st__bindgen_ty_1>(),
7938        8usize,
7939        "Alignment of bn_gencb_st__bindgen_ty_1"
7940    );
7941    assert_eq!(
7942        unsafe { ::std::ptr::addr_of!((*ptr).new_style) as usize - ptr as usize },
7943        0usize,
7944        "Offset of field: bn_gencb_st__bindgen_ty_1::new_style"
7945    );
7946    assert_eq!(
7947        unsafe { ::std::ptr::addr_of!((*ptr).old_style) as usize - ptr as usize },
7948        0usize,
7949        "Offset of field: bn_gencb_st__bindgen_ty_1::old_style"
7950    );
7951}
7952impl Default for bn_gencb_st__bindgen_ty_1 {
7953    fn default() -> Self {
7954        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7955        unsafe {
7956            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7957            s.assume_init()
7958        }
7959    }
7960}
7961#[test]
7962fn bindgen_test_layout_bn_gencb_st() {
7963    const UNINIT: ::std::mem::MaybeUninit<bn_gencb_st> = ::std::mem::MaybeUninit::uninit();
7964    let ptr = UNINIT.as_ptr();
7965    assert_eq!(
7966        ::std::mem::size_of::<bn_gencb_st>(),
7967        24usize,
7968        "Size of bn_gencb_st"
7969    );
7970    assert_eq!(
7971        ::std::mem::align_of::<bn_gencb_st>(),
7972        8usize,
7973        "Alignment of bn_gencb_st"
7974    );
7975    assert_eq!(
7976        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
7977        0usize,
7978        "Offset of field: bn_gencb_st::type_"
7979    );
7980    assert_eq!(
7981        unsafe { ::std::ptr::addr_of!((*ptr).arg) as usize - ptr as usize },
7982        8usize,
7983        "Offset of field: bn_gencb_st::arg"
7984    );
7985    assert_eq!(
7986        unsafe { ::std::ptr::addr_of!((*ptr).callback) as usize - ptr as usize },
7987        16usize,
7988        "Offset of field: bn_gencb_st::callback"
7989    );
7990}
7991impl Default for bn_gencb_st {
7992    fn default() -> Self {
7993        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
7994        unsafe {
7995            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
7996            s.assume_init()
7997        }
7998    }
7999}
8000extern "C" {
8001    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_GENCB_new"]
8002    pub fn BN_GENCB_new() -> *mut BN_GENCB;
8003}
8004extern "C" {
8005    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_GENCB_free"]
8006    pub fn BN_GENCB_free(callback: *mut BN_GENCB);
8007}
8008extern "C" {
8009    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_GENCB_set"]
8010    pub fn BN_GENCB_set(
8011        callback: *mut BN_GENCB,
8012        f: ::std::option::Option<
8013            unsafe extern "C" fn(
8014                event: ::std::os::raw::c_int,
8015                n: ::std::os::raw::c_int,
8016                arg1: *mut BN_GENCB,
8017            ) -> ::std::os::raw::c_int,
8018        >,
8019        arg: *mut ::std::os::raw::c_void,
8020    );
8021}
8022extern "C" {
8023    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_GENCB_call"]
8024    pub fn BN_GENCB_call(
8025        callback: *mut BN_GENCB,
8026        event: ::std::os::raw::c_int,
8027        n: ::std::os::raw::c_int,
8028    ) -> ::std::os::raw::c_int;
8029}
8030extern "C" {
8031    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_GENCB_get_arg"]
8032    pub fn BN_GENCB_get_arg(callback: *const BN_GENCB) -> *mut ::std::os::raw::c_void;
8033}
8034extern "C" {
8035    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_generate_prime_ex"]
8036    pub fn BN_generate_prime_ex(
8037        ret: *mut BIGNUM,
8038        bits: ::std::os::raw::c_int,
8039        safe: ::std::os::raw::c_int,
8040        add: *const BIGNUM,
8041        rem: *const BIGNUM,
8042        cb: *mut BN_GENCB,
8043    ) -> ::std::os::raw::c_int;
8044}
8045pub const bn_primality_result_t_bn_probably_prime: bn_primality_result_t = 0;
8046pub const bn_primality_result_t_bn_composite: bn_primality_result_t = 1;
8047pub const bn_primality_result_t_bn_non_prime_power_composite: bn_primality_result_t = 2;
8048pub type bn_primality_result_t = ::std::os::raw::c_uint;
8049extern "C" {
8050    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_enhanced_miller_rabin_primality_test"]
8051    pub fn BN_enhanced_miller_rabin_primality_test(
8052        out_result: *mut bn_primality_result_t,
8053        w: *const BIGNUM,
8054        checks: ::std::os::raw::c_int,
8055        ctx: *mut BN_CTX,
8056        cb: *mut BN_GENCB,
8057    ) -> ::std::os::raw::c_int;
8058}
8059extern "C" {
8060    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_primality_test"]
8061    pub fn BN_primality_test(
8062        is_probably_prime: *mut ::std::os::raw::c_int,
8063        candidate: *const BIGNUM,
8064        checks: ::std::os::raw::c_int,
8065        ctx: *mut BN_CTX,
8066        do_trial_division: ::std::os::raw::c_int,
8067        cb: *mut BN_GENCB,
8068    ) -> ::std::os::raw::c_int;
8069}
8070extern "C" {
8071    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_prime_fasttest_ex"]
8072    pub fn BN_is_prime_fasttest_ex(
8073        candidate: *const BIGNUM,
8074        checks: ::std::os::raw::c_int,
8075        ctx: *mut BN_CTX,
8076        do_trial_division: ::std::os::raw::c_int,
8077        cb: *mut BN_GENCB,
8078    ) -> ::std::os::raw::c_int;
8079}
8080extern "C" {
8081    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_is_prime_ex"]
8082    pub fn BN_is_prime_ex(
8083        candidate: *const BIGNUM,
8084        checks: ::std::os::raw::c_int,
8085        ctx: *mut BN_CTX,
8086        cb: *mut BN_GENCB,
8087    ) -> ::std::os::raw::c_int;
8088}
8089extern "C" {
8090    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_gcd"]
8091    pub fn BN_gcd(
8092        r: *mut BIGNUM,
8093        a: *const BIGNUM,
8094        b: *const BIGNUM,
8095        ctx: *mut BN_CTX,
8096    ) -> ::std::os::raw::c_int;
8097}
8098extern "C" {
8099    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_inverse"]
8100    pub fn BN_mod_inverse(
8101        out: *mut BIGNUM,
8102        a: *const BIGNUM,
8103        n: *const BIGNUM,
8104        ctx: *mut BN_CTX,
8105    ) -> *mut BIGNUM;
8106}
8107extern "C" {
8108    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_inverse_blinded"]
8109    pub fn BN_mod_inverse_blinded(
8110        out: *mut BIGNUM,
8111        out_no_inverse: *mut ::std::os::raw::c_int,
8112        a: *const BIGNUM,
8113        mont: *const BN_MONT_CTX,
8114        ctx: *mut BN_CTX,
8115    ) -> ::std::os::raw::c_int;
8116}
8117extern "C" {
8118    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_inverse_odd"]
8119    pub fn BN_mod_inverse_odd(
8120        out: *mut BIGNUM,
8121        out_no_inverse: *mut ::std::os::raw::c_int,
8122        a: *const BIGNUM,
8123        n: *const BIGNUM,
8124        ctx: *mut BN_CTX,
8125    ) -> ::std::os::raw::c_int;
8126}
8127extern "C" {
8128    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_MONT_CTX_new_for_modulus"]
8129    pub fn BN_MONT_CTX_new_for_modulus(mod_: *const BIGNUM, ctx: *mut BN_CTX) -> *mut BN_MONT_CTX;
8130}
8131extern "C" {
8132    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_MONT_CTX_new_consttime"]
8133    pub fn BN_MONT_CTX_new_consttime(mod_: *const BIGNUM, ctx: *mut BN_CTX) -> *mut BN_MONT_CTX;
8134}
8135extern "C" {
8136    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_MONT_CTX_free"]
8137    pub fn BN_MONT_CTX_free(mont: *mut BN_MONT_CTX);
8138}
8139extern "C" {
8140    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_MONT_CTX_copy"]
8141    pub fn BN_MONT_CTX_copy(to: *mut BN_MONT_CTX, from: *const BN_MONT_CTX) -> *mut BN_MONT_CTX;
8142}
8143extern "C" {
8144    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_to_montgomery"]
8145    pub fn BN_to_montgomery(
8146        ret: *mut BIGNUM,
8147        a: *const BIGNUM,
8148        mont: *const BN_MONT_CTX,
8149        ctx: *mut BN_CTX,
8150    ) -> ::std::os::raw::c_int;
8151}
8152extern "C" {
8153    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_from_montgomery"]
8154    pub fn BN_from_montgomery(
8155        ret: *mut BIGNUM,
8156        a: *const BIGNUM,
8157        mont: *const BN_MONT_CTX,
8158        ctx: *mut BN_CTX,
8159    ) -> ::std::os::raw::c_int;
8160}
8161extern "C" {
8162    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_mul_montgomery"]
8163    pub fn BN_mod_mul_montgomery(
8164        r: *mut BIGNUM,
8165        a: *const BIGNUM,
8166        b: *const BIGNUM,
8167        mont: *const BN_MONT_CTX,
8168        ctx: *mut BN_CTX,
8169    ) -> ::std::os::raw::c_int;
8170}
8171extern "C" {
8172    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_exp"]
8173    pub fn BN_exp(
8174        r: *mut BIGNUM,
8175        a: *const BIGNUM,
8176        p: *const BIGNUM,
8177        ctx: *mut BN_CTX,
8178    ) -> ::std::os::raw::c_int;
8179}
8180extern "C" {
8181    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_exp"]
8182    pub fn BN_mod_exp(
8183        r: *mut BIGNUM,
8184        a: *const BIGNUM,
8185        p: *const BIGNUM,
8186        m: *const BIGNUM,
8187        ctx: *mut BN_CTX,
8188    ) -> ::std::os::raw::c_int;
8189}
8190extern "C" {
8191    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_exp_mont"]
8192    pub fn BN_mod_exp_mont(
8193        r: *mut BIGNUM,
8194        a: *const BIGNUM,
8195        p: *const BIGNUM,
8196        m: *const BIGNUM,
8197        ctx: *mut BN_CTX,
8198        mont: *const BN_MONT_CTX,
8199    ) -> ::std::os::raw::c_int;
8200}
8201extern "C" {
8202    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_exp_mont_consttime"]
8203    pub fn BN_mod_exp_mont_consttime(
8204        rr: *mut BIGNUM,
8205        a: *const BIGNUM,
8206        p: *const BIGNUM,
8207        m: *const BIGNUM,
8208        ctx: *mut BN_CTX,
8209        mont: *const BN_MONT_CTX,
8210    ) -> ::std::os::raw::c_int;
8211}
8212extern "C" {
8213    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_GENCB_set_old"]
8214    pub fn BN_GENCB_set_old(
8215        callback: *mut BN_GENCB,
8216        f: ::std::option::Option<
8217            unsafe extern "C" fn(
8218                arg1: ::std::os::raw::c_int,
8219                arg2: ::std::os::raw::c_int,
8220                arg3: *mut ::std::os::raw::c_void,
8221            ),
8222        >,
8223        cb_arg: *mut ::std::os::raw::c_void,
8224    );
8225}
8226extern "C" {
8227    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bn2mpi"]
8228    pub fn BN_bn2mpi(in_: *const BIGNUM, out: *mut u8) -> usize;
8229}
8230extern "C" {
8231    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mpi2bn"]
8232    pub fn BN_mpi2bn(in_: *const u8, len: usize, out: *mut BIGNUM) -> *mut BIGNUM;
8233}
8234extern "C" {
8235    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_exp_mont_word"]
8236    pub fn BN_mod_exp_mont_word(
8237        r: *mut BIGNUM,
8238        a: BN_ULONG,
8239        p: *const BIGNUM,
8240        m: *const BIGNUM,
8241        ctx: *mut BN_CTX,
8242        mont: *const BN_MONT_CTX,
8243    ) -> ::std::os::raw::c_int;
8244}
8245extern "C" {
8246    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_exp2_mont"]
8247    pub fn BN_mod_exp2_mont(
8248        r: *mut BIGNUM,
8249        a1: *const BIGNUM,
8250        p1: *const BIGNUM,
8251        a2: *const BIGNUM,
8252        p2: *const BIGNUM,
8253        m: *const BIGNUM,
8254        ctx: *mut BN_CTX,
8255        mont: *const BN_MONT_CTX,
8256    ) -> ::std::os::raw::c_int;
8257}
8258extern "C" {
8259    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_MONT_CTX_new"]
8260    pub fn BN_MONT_CTX_new() -> *mut BN_MONT_CTX;
8261}
8262extern "C" {
8263    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_MONT_CTX_set"]
8264    pub fn BN_MONT_CTX_set(
8265        mont: *mut BN_MONT_CTX,
8266        mod_: *const BIGNUM,
8267        ctx: *mut BN_CTX,
8268    ) -> ::std::os::raw::c_int;
8269}
8270extern "C" {
8271    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_bn2binpad"]
8272    pub fn BN_bn2binpad(
8273        in_: *const BIGNUM,
8274        out: *mut u8,
8275        len: ::std::os::raw::c_int,
8276    ) -> ::std::os::raw::c_int;
8277}
8278extern "C" {
8279    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_secure_new"]
8280    pub fn BN_secure_new() -> *mut BIGNUM;
8281}
8282extern "C" {
8283    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_CTX_secure_new"]
8284    pub fn BN_CTX_secure_new() -> *mut BN_CTX;
8285}
8286extern "C" {
8287    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_mod_exp_mont_consttime_x2"]
8288    pub fn BN_mod_exp_mont_consttime_x2(
8289        rr1: *mut BIGNUM,
8290        a1: *const BIGNUM,
8291        p1: *const BIGNUM,
8292        m1: *const BIGNUM,
8293        in_mont1: *const BN_MONT_CTX,
8294        rr2: *mut BIGNUM,
8295        a2: *const BIGNUM,
8296        p2: *const BIGNUM,
8297        m2: *const BIGNUM,
8298        in_mont2: *const BN_MONT_CTX,
8299        ctx: *mut BN_CTX,
8300    ) -> ::std::os::raw::c_int;
8301}
8302#[repr(C)]
8303#[derive(Debug, Copy, Clone, PartialEq, Eq)]
8304pub struct bignum_st {
8305    pub d: *mut BN_ULONG,
8306    pub width: ::std::os::raw::c_int,
8307    pub dmax: ::std::os::raw::c_int,
8308    pub neg: ::std::os::raw::c_int,
8309    pub flags: ::std::os::raw::c_int,
8310}
8311#[test]
8312fn bindgen_test_layout_bignum_st() {
8313    const UNINIT: ::std::mem::MaybeUninit<bignum_st> = ::std::mem::MaybeUninit::uninit();
8314    let ptr = UNINIT.as_ptr();
8315    assert_eq!(
8316        ::std::mem::size_of::<bignum_st>(),
8317        24usize,
8318        "Size of bignum_st"
8319    );
8320    assert_eq!(
8321        ::std::mem::align_of::<bignum_st>(),
8322        8usize,
8323        "Alignment of bignum_st"
8324    );
8325    assert_eq!(
8326        unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize },
8327        0usize,
8328        "Offset of field: bignum_st::d"
8329    );
8330    assert_eq!(
8331        unsafe { ::std::ptr::addr_of!((*ptr).width) as usize - ptr as usize },
8332        8usize,
8333        "Offset of field: bignum_st::width"
8334    );
8335    assert_eq!(
8336        unsafe { ::std::ptr::addr_of!((*ptr).dmax) as usize - ptr as usize },
8337        12usize,
8338        "Offset of field: bignum_st::dmax"
8339    );
8340    assert_eq!(
8341        unsafe { ::std::ptr::addr_of!((*ptr).neg) as usize - ptr as usize },
8342        16usize,
8343        "Offset of field: bignum_st::neg"
8344    );
8345    assert_eq!(
8346        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
8347        20usize,
8348        "Offset of field: bignum_st::flags"
8349    );
8350}
8351impl Default for bignum_st {
8352    fn default() -> Self {
8353        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8354        unsafe {
8355            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8356            s.assume_init()
8357        }
8358    }
8359}
8360#[repr(C)]
8361#[derive(Debug, Copy, Clone, PartialEq, Eq)]
8362pub struct bn_mont_ctx_st {
8363    pub RR: BIGNUM,
8364    pub N: BIGNUM,
8365    pub n0: [BN_ULONG; 2usize],
8366}
8367#[test]
8368fn bindgen_test_layout_bn_mont_ctx_st() {
8369    const UNINIT: ::std::mem::MaybeUninit<bn_mont_ctx_st> = ::std::mem::MaybeUninit::uninit();
8370    let ptr = UNINIT.as_ptr();
8371    assert_eq!(
8372        ::std::mem::size_of::<bn_mont_ctx_st>(),
8373        64usize,
8374        "Size of bn_mont_ctx_st"
8375    );
8376    assert_eq!(
8377        ::std::mem::align_of::<bn_mont_ctx_st>(),
8378        8usize,
8379        "Alignment of bn_mont_ctx_st"
8380    );
8381    assert_eq!(
8382        unsafe { ::std::ptr::addr_of!((*ptr).RR) as usize - ptr as usize },
8383        0usize,
8384        "Offset of field: bn_mont_ctx_st::RR"
8385    );
8386    assert_eq!(
8387        unsafe { ::std::ptr::addr_of!((*ptr).N) as usize - ptr as usize },
8388        24usize,
8389        "Offset of field: bn_mont_ctx_st::N"
8390    );
8391    assert_eq!(
8392        unsafe { ::std::ptr::addr_of!((*ptr).n0) as usize - ptr as usize },
8393        48usize,
8394        "Offset of field: bn_mont_ctx_st::n0"
8395    );
8396}
8397impl Default for bn_mont_ctx_st {
8398    fn default() -> Self {
8399        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8400        unsafe {
8401            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8402            s.assume_init()
8403        }
8404    }
8405}
8406extern "C" {
8407    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_num_bits_word"]
8408    pub fn BN_num_bits_word(l: BN_ULONG) -> ::std::os::raw::c_uint;
8409}
8410extern "C" {
8411    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_tag2bit"]
8412    pub fn ASN1_tag2bit(tag: ::std::os::raw::c_int) -> ::std::os::raw::c_ulong;
8413}
8414extern "C" {
8415    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_tag2str"]
8416    pub fn ASN1_tag2str(tag: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
8417}
8418pub type d2i_of_void = ::std::option::Option<
8419    unsafe extern "C" fn(
8420        arg1: *mut *mut ::std::os::raw::c_void,
8421        arg2: *mut *const ::std::os::raw::c_uchar,
8422        arg3: ::std::os::raw::c_long,
8423    ) -> *mut ::std::os::raw::c_void,
8424>;
8425pub type i2d_of_void = ::std::option::Option<
8426    unsafe extern "C" fn(
8427        arg1: *const ::std::os::raw::c_void,
8428        arg2: *mut *mut ::std::os::raw::c_uchar,
8429    ) -> ::std::os::raw::c_int,
8430>;
8431pub type ASN1_ITEM_EXP = ASN1_ITEM;
8432#[repr(C)]
8433#[derive(Debug, Copy, Clone)]
8434pub struct ASN1_VALUE_st {
8435    _unused: [u8; 0],
8436}
8437pub type ASN1_VALUE = ASN1_VALUE_st;
8438extern "C" {
8439    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_new"]
8440    pub fn ASN1_item_new(it: *const ASN1_ITEM) -> *mut ASN1_VALUE;
8441}
8442extern "C" {
8443    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_free"]
8444    pub fn ASN1_item_free(val: *mut ASN1_VALUE, it: *const ASN1_ITEM);
8445}
8446extern "C" {
8447    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_d2i"]
8448    pub fn ASN1_item_d2i(
8449        out: *mut *mut ASN1_VALUE,
8450        inp: *mut *const ::std::os::raw::c_uchar,
8451        len: ::std::os::raw::c_long,
8452        it: *const ASN1_ITEM,
8453    ) -> *mut ASN1_VALUE;
8454}
8455extern "C" {
8456    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_i2d"]
8457    pub fn ASN1_item_i2d(
8458        val: *mut ASN1_VALUE,
8459        outp: *mut *mut ::std::os::raw::c_uchar,
8460        it: *const ASN1_ITEM,
8461    ) -> ::std::os::raw::c_int;
8462}
8463extern "C" {
8464    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_dup"]
8465    pub fn ASN1_dup(
8466        i2d: i2d_of_void,
8467        d2i: d2i_of_void,
8468        x: *mut ::std::os::raw::c_void,
8469    ) -> *mut ::std::os::raw::c_void;
8470}
8471extern "C" {
8472    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_dup"]
8473    pub fn ASN1_item_dup(
8474        it: *const ASN1_ITEM,
8475        x: *mut ::std::os::raw::c_void,
8476    ) -> *mut ::std::os::raw::c_void;
8477}
8478extern "C" {
8479    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_d2i_fp"]
8480    pub fn ASN1_item_d2i_fp(
8481        it: *const ASN1_ITEM,
8482        in_: *mut FILE,
8483        out: *mut ::std::os::raw::c_void,
8484    ) -> *mut ::std::os::raw::c_void;
8485}
8486extern "C" {
8487    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_d2i_bio"]
8488    pub fn ASN1_item_d2i_bio(
8489        it: *const ASN1_ITEM,
8490        in_: *mut BIO,
8491        out: *mut ::std::os::raw::c_void,
8492    ) -> *mut ::std::os::raw::c_void;
8493}
8494extern "C" {
8495    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_i2d_fp"]
8496    pub fn ASN1_item_i2d_fp(
8497        it: *const ASN1_ITEM,
8498        out: *mut FILE,
8499        in_: *mut ::std::os::raw::c_void,
8500    ) -> ::std::os::raw::c_int;
8501}
8502extern "C" {
8503    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_i2d_bio"]
8504    pub fn ASN1_item_i2d_bio(
8505        it: *const ASN1_ITEM,
8506        out: *mut BIO,
8507        in_: *mut ::std::os::raw::c_void,
8508    ) -> ::std::os::raw::c_int;
8509}
8510extern "C" {
8511    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_i2d_bio"]
8512    pub fn ASN1_i2d_bio(
8513        i2d: i2d_of_void,
8514        out: *mut BIO,
8515        in_: *mut ::std::os::raw::c_void,
8516    ) -> ::std::os::raw::c_int;
8517}
8518extern "C" {
8519    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_unpack"]
8520    pub fn ASN1_item_unpack(
8521        oct: *const ASN1_STRING,
8522        it: *const ASN1_ITEM,
8523    ) -> *mut ::std::os::raw::c_void;
8524}
8525extern "C" {
8526    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_pack"]
8527    pub fn ASN1_item_pack(
8528        obj: *mut ::std::os::raw::c_void,
8529        it: *const ASN1_ITEM,
8530        out: *mut *mut ASN1_STRING,
8531    ) -> *mut ASN1_STRING;
8532}
8533extern "C" {
8534    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_BOOLEAN"]
8535    pub fn d2i_ASN1_BOOLEAN(
8536        out: *mut ASN1_BOOLEAN,
8537        inp: *mut *const ::std::os::raw::c_uchar,
8538        len: ::std::os::raw::c_long,
8539    ) -> ASN1_BOOLEAN;
8540}
8541extern "C" {
8542    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_BOOLEAN"]
8543    pub fn i2d_ASN1_BOOLEAN(
8544        a: ASN1_BOOLEAN,
8545        outp: *mut *mut ::std::os::raw::c_uchar,
8546    ) -> ::std::os::raw::c_int;
8547}
8548extern "C" {
8549    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BOOLEAN_it"]
8550    pub static ASN1_BOOLEAN_it: ASN1_ITEM;
8551}
8552extern "C" {
8553    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TBOOLEAN_it"]
8554    pub static ASN1_TBOOLEAN_it: ASN1_ITEM;
8555}
8556extern "C" {
8557    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_FBOOLEAN_it"]
8558    pub static ASN1_FBOOLEAN_it: ASN1_ITEM;
8559}
8560#[repr(C)]
8561#[derive(Debug, Copy, Clone, PartialEq, Eq)]
8562pub struct asn1_string_st {
8563    pub length: ::std::os::raw::c_int,
8564    pub type_: ::std::os::raw::c_int,
8565    pub data: *mut ::std::os::raw::c_uchar,
8566    pub flags: ::std::os::raw::c_long,
8567}
8568#[test]
8569fn bindgen_test_layout_asn1_string_st() {
8570    const UNINIT: ::std::mem::MaybeUninit<asn1_string_st> = ::std::mem::MaybeUninit::uninit();
8571    let ptr = UNINIT.as_ptr();
8572    assert_eq!(
8573        ::std::mem::size_of::<asn1_string_st>(),
8574        24usize,
8575        "Size of asn1_string_st"
8576    );
8577    assert_eq!(
8578        ::std::mem::align_of::<asn1_string_st>(),
8579        8usize,
8580        "Alignment of asn1_string_st"
8581    );
8582    assert_eq!(
8583        unsafe { ::std::ptr::addr_of!((*ptr).length) as usize - ptr as usize },
8584        0usize,
8585        "Offset of field: asn1_string_st::length"
8586    );
8587    assert_eq!(
8588        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
8589        4usize,
8590        "Offset of field: asn1_string_st::type_"
8591    );
8592    assert_eq!(
8593        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
8594        8usize,
8595        "Offset of field: asn1_string_st::data"
8596    );
8597    assert_eq!(
8598        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
8599        16usize,
8600        "Offset of field: asn1_string_st::flags"
8601    );
8602}
8603impl Default for asn1_string_st {
8604    fn default() -> Self {
8605        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
8606        unsafe {
8607            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
8608            s.assume_init()
8609        }
8610    }
8611}
8612extern "C" {
8613    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_type_new"]
8614    pub fn ASN1_STRING_type_new(type_: ::std::os::raw::c_int) -> *mut ASN1_STRING;
8615}
8616extern "C" {
8617    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_new"]
8618    pub fn ASN1_STRING_new() -> *mut ASN1_STRING;
8619}
8620extern "C" {
8621    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_free"]
8622    pub fn ASN1_STRING_free(str_: *mut ASN1_STRING);
8623}
8624extern "C" {
8625    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_clear_free"]
8626    pub fn ASN1_STRING_clear_free(str_: *mut ASN1_STRING);
8627}
8628extern "C" {
8629    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_copy"]
8630    pub fn ASN1_STRING_copy(
8631        dst: *mut ASN1_STRING,
8632        str_: *const ASN1_STRING,
8633    ) -> ::std::os::raw::c_int;
8634}
8635extern "C" {
8636    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_dup"]
8637    pub fn ASN1_STRING_dup(str_: *const ASN1_STRING) -> *mut ASN1_STRING;
8638}
8639extern "C" {
8640    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_type"]
8641    pub fn ASN1_STRING_type(str_: *const ASN1_STRING) -> ::std::os::raw::c_int;
8642}
8643extern "C" {
8644    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_get0_data"]
8645    pub fn ASN1_STRING_get0_data(str_: *const ASN1_STRING) -> *const ::std::os::raw::c_uchar;
8646}
8647extern "C" {
8648    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_data"]
8649    pub fn ASN1_STRING_data(str_: *mut ASN1_STRING) -> *mut ::std::os::raw::c_uchar;
8650}
8651extern "C" {
8652    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_length"]
8653    pub fn ASN1_STRING_length(str_: *const ASN1_STRING) -> ::std::os::raw::c_int;
8654}
8655extern "C" {
8656    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_cmp"]
8657    pub fn ASN1_STRING_cmp(a: *const ASN1_STRING, b: *const ASN1_STRING) -> ::std::os::raw::c_int;
8658}
8659extern "C" {
8660    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_set"]
8661    pub fn ASN1_STRING_set(
8662        str_: *mut ASN1_STRING,
8663        data: *const ::std::os::raw::c_void,
8664        len: ossl_ssize_t,
8665    ) -> ::std::os::raw::c_int;
8666}
8667extern "C" {
8668    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_set0"]
8669    pub fn ASN1_STRING_set0(
8670        str_: *mut ASN1_STRING,
8671        data: *mut ::std::os::raw::c_void,
8672        len: ::std::os::raw::c_int,
8673    );
8674}
8675extern "C" {
8676    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BMPSTRING_new"]
8677    pub fn ASN1_BMPSTRING_new() -> *mut ASN1_BMPSTRING;
8678}
8679extern "C" {
8680    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALSTRING_new"]
8681    pub fn ASN1_GENERALSTRING_new() -> *mut ASN1_GENERALSTRING;
8682}
8683extern "C" {
8684    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_IA5STRING_new"]
8685    pub fn ASN1_IA5STRING_new() -> *mut ASN1_IA5STRING;
8686}
8687extern "C" {
8688    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OCTET_STRING_new"]
8689    pub fn ASN1_OCTET_STRING_new() -> *mut ASN1_OCTET_STRING;
8690}
8691extern "C" {
8692    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_PRINTABLESTRING_new"]
8693    pub fn ASN1_PRINTABLESTRING_new() -> *mut ASN1_PRINTABLESTRING;
8694}
8695extern "C" {
8696    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_T61STRING_new"]
8697    pub fn ASN1_T61STRING_new() -> *mut ASN1_T61STRING;
8698}
8699extern "C" {
8700    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UNIVERSALSTRING_new"]
8701    pub fn ASN1_UNIVERSALSTRING_new() -> *mut ASN1_UNIVERSALSTRING;
8702}
8703extern "C" {
8704    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTF8STRING_new"]
8705    pub fn ASN1_UTF8STRING_new() -> *mut ASN1_UTF8STRING;
8706}
8707extern "C" {
8708    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_VISIBLESTRING_new"]
8709    pub fn ASN1_VISIBLESTRING_new() -> *mut ASN1_VISIBLESTRING;
8710}
8711extern "C" {
8712    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BMPSTRING_free"]
8713    pub fn ASN1_BMPSTRING_free(str_: *mut ASN1_BMPSTRING);
8714}
8715extern "C" {
8716    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALSTRING_free"]
8717    pub fn ASN1_GENERALSTRING_free(str_: *mut ASN1_GENERALSTRING);
8718}
8719extern "C" {
8720    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_IA5STRING_free"]
8721    pub fn ASN1_IA5STRING_free(str_: *mut ASN1_IA5STRING);
8722}
8723extern "C" {
8724    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OCTET_STRING_free"]
8725    pub fn ASN1_OCTET_STRING_free(str_: *mut ASN1_OCTET_STRING);
8726}
8727extern "C" {
8728    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_PRINTABLESTRING_free"]
8729    pub fn ASN1_PRINTABLESTRING_free(str_: *mut ASN1_PRINTABLESTRING);
8730}
8731extern "C" {
8732    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_T61STRING_free"]
8733    pub fn ASN1_T61STRING_free(str_: *mut ASN1_T61STRING);
8734}
8735extern "C" {
8736    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UNIVERSALSTRING_free"]
8737    pub fn ASN1_UNIVERSALSTRING_free(str_: *mut ASN1_UNIVERSALSTRING);
8738}
8739extern "C" {
8740    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTF8STRING_free"]
8741    pub fn ASN1_UTF8STRING_free(str_: *mut ASN1_UTF8STRING);
8742}
8743extern "C" {
8744    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_VISIBLESTRING_free"]
8745    pub fn ASN1_VISIBLESTRING_free(str_: *mut ASN1_VISIBLESTRING);
8746}
8747extern "C" {
8748    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_BMPSTRING"]
8749    pub fn d2i_ASN1_BMPSTRING(
8750        out: *mut *mut ASN1_BMPSTRING,
8751        inp: *mut *const u8,
8752        len: ::std::os::raw::c_long,
8753    ) -> *mut ASN1_BMPSTRING;
8754}
8755extern "C" {
8756    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_GENERALSTRING"]
8757    pub fn d2i_ASN1_GENERALSTRING(
8758        out: *mut *mut ASN1_GENERALSTRING,
8759        inp: *mut *const u8,
8760        len: ::std::os::raw::c_long,
8761    ) -> *mut ASN1_GENERALSTRING;
8762}
8763extern "C" {
8764    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_IA5STRING"]
8765    pub fn d2i_ASN1_IA5STRING(
8766        out: *mut *mut ASN1_IA5STRING,
8767        inp: *mut *const u8,
8768        len: ::std::os::raw::c_long,
8769    ) -> *mut ASN1_IA5STRING;
8770}
8771extern "C" {
8772    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_OCTET_STRING"]
8773    pub fn d2i_ASN1_OCTET_STRING(
8774        out: *mut *mut ASN1_OCTET_STRING,
8775        inp: *mut *const u8,
8776        len: ::std::os::raw::c_long,
8777    ) -> *mut ASN1_OCTET_STRING;
8778}
8779extern "C" {
8780    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_PRINTABLESTRING"]
8781    pub fn d2i_ASN1_PRINTABLESTRING(
8782        out: *mut *mut ASN1_PRINTABLESTRING,
8783        inp: *mut *const u8,
8784        len: ::std::os::raw::c_long,
8785    ) -> *mut ASN1_PRINTABLESTRING;
8786}
8787extern "C" {
8788    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_T61STRING"]
8789    pub fn d2i_ASN1_T61STRING(
8790        out: *mut *mut ASN1_T61STRING,
8791        inp: *mut *const u8,
8792        len: ::std::os::raw::c_long,
8793    ) -> *mut ASN1_T61STRING;
8794}
8795extern "C" {
8796    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_UNIVERSALSTRING"]
8797    pub fn d2i_ASN1_UNIVERSALSTRING(
8798        out: *mut *mut ASN1_UNIVERSALSTRING,
8799        inp: *mut *const u8,
8800        len: ::std::os::raw::c_long,
8801    ) -> *mut ASN1_UNIVERSALSTRING;
8802}
8803extern "C" {
8804    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_UTF8STRING"]
8805    pub fn d2i_ASN1_UTF8STRING(
8806        out: *mut *mut ASN1_UTF8STRING,
8807        inp: *mut *const u8,
8808        len: ::std::os::raw::c_long,
8809    ) -> *mut ASN1_UTF8STRING;
8810}
8811extern "C" {
8812    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_VISIBLESTRING"]
8813    pub fn d2i_ASN1_VISIBLESTRING(
8814        out: *mut *mut ASN1_VISIBLESTRING,
8815        inp: *mut *const u8,
8816        len: ::std::os::raw::c_long,
8817    ) -> *mut ASN1_VISIBLESTRING;
8818}
8819extern "C" {
8820    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_BMPSTRING"]
8821    pub fn i2d_ASN1_BMPSTRING(
8822        in_: *const ASN1_BMPSTRING,
8823        outp: *mut *mut u8,
8824    ) -> ::std::os::raw::c_int;
8825}
8826extern "C" {
8827    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_GENERALSTRING"]
8828    pub fn i2d_ASN1_GENERALSTRING(
8829        in_: *const ASN1_GENERALSTRING,
8830        outp: *mut *mut u8,
8831    ) -> ::std::os::raw::c_int;
8832}
8833extern "C" {
8834    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_IA5STRING"]
8835    pub fn i2d_ASN1_IA5STRING(
8836        in_: *const ASN1_IA5STRING,
8837        outp: *mut *mut u8,
8838    ) -> ::std::os::raw::c_int;
8839}
8840extern "C" {
8841    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_OCTET_STRING"]
8842    pub fn i2d_ASN1_OCTET_STRING(
8843        in_: *const ASN1_OCTET_STRING,
8844        outp: *mut *mut u8,
8845    ) -> ::std::os::raw::c_int;
8846}
8847extern "C" {
8848    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_PRINTABLESTRING"]
8849    pub fn i2d_ASN1_PRINTABLESTRING(
8850        in_: *const ASN1_PRINTABLESTRING,
8851        outp: *mut *mut u8,
8852    ) -> ::std::os::raw::c_int;
8853}
8854extern "C" {
8855    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_T61STRING"]
8856    pub fn i2d_ASN1_T61STRING(
8857        in_: *const ASN1_T61STRING,
8858        outp: *mut *mut u8,
8859    ) -> ::std::os::raw::c_int;
8860}
8861extern "C" {
8862    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_UNIVERSALSTRING"]
8863    pub fn i2d_ASN1_UNIVERSALSTRING(
8864        in_: *const ASN1_UNIVERSALSTRING,
8865        outp: *mut *mut u8,
8866    ) -> ::std::os::raw::c_int;
8867}
8868extern "C" {
8869    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_UTF8STRING"]
8870    pub fn i2d_ASN1_UTF8STRING(
8871        in_: *const ASN1_UTF8STRING,
8872        outp: *mut *mut u8,
8873    ) -> ::std::os::raw::c_int;
8874}
8875extern "C" {
8876    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_VISIBLESTRING"]
8877    pub fn i2d_ASN1_VISIBLESTRING(
8878        in_: *const ASN1_VISIBLESTRING,
8879        outp: *mut *mut u8,
8880    ) -> ::std::os::raw::c_int;
8881}
8882extern "C" {
8883    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BMPSTRING_it"]
8884    pub static ASN1_BMPSTRING_it: ASN1_ITEM;
8885}
8886extern "C" {
8887    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALSTRING_it"]
8888    pub static ASN1_GENERALSTRING_it: ASN1_ITEM;
8889}
8890extern "C" {
8891    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_IA5STRING_it"]
8892    pub static ASN1_IA5STRING_it: ASN1_ITEM;
8893}
8894extern "C" {
8895    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OCTET_STRING_it"]
8896    pub static ASN1_OCTET_STRING_it: ASN1_ITEM;
8897}
8898extern "C" {
8899    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_PRINTABLESTRING_it"]
8900    pub static ASN1_PRINTABLESTRING_it: ASN1_ITEM;
8901}
8902extern "C" {
8903    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_T61STRING_it"]
8904    pub static ASN1_T61STRING_it: ASN1_ITEM;
8905}
8906extern "C" {
8907    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UNIVERSALSTRING_it"]
8908    pub static ASN1_UNIVERSALSTRING_it: ASN1_ITEM;
8909}
8910extern "C" {
8911    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTF8STRING_it"]
8912    pub static ASN1_UTF8STRING_it: ASN1_ITEM;
8913}
8914extern "C" {
8915    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_VISIBLESTRING_it"]
8916    pub static ASN1_VISIBLESTRING_it: ASN1_ITEM;
8917}
8918extern "C" {
8919    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OCTET_STRING_dup"]
8920    pub fn ASN1_OCTET_STRING_dup(a: *const ASN1_OCTET_STRING) -> *mut ASN1_OCTET_STRING;
8921}
8922extern "C" {
8923    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OCTET_STRING_cmp"]
8924    pub fn ASN1_OCTET_STRING_cmp(
8925        a: *const ASN1_OCTET_STRING,
8926        b: *const ASN1_OCTET_STRING,
8927    ) -> ::std::os::raw::c_int;
8928}
8929extern "C" {
8930    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OCTET_STRING_set"]
8931    pub fn ASN1_OCTET_STRING_set(
8932        str_: *mut ASN1_OCTET_STRING,
8933        data: *const ::std::os::raw::c_uchar,
8934        len: ::std::os::raw::c_int,
8935    ) -> ::std::os::raw::c_int;
8936}
8937extern "C" {
8938    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_to_UTF8"]
8939    pub fn ASN1_STRING_to_UTF8(
8940        out: *mut *mut ::std::os::raw::c_uchar,
8941        in_: *const ASN1_STRING,
8942    ) -> ::std::os::raw::c_int;
8943}
8944extern "C" {
8945    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_mbstring_copy"]
8946    pub fn ASN1_mbstring_copy(
8947        out: *mut *mut ASN1_STRING,
8948        in_: *const u8,
8949        len: ossl_ssize_t,
8950        inform: ::std::os::raw::c_int,
8951        mask: ::std::os::raw::c_ulong,
8952    ) -> ::std::os::raw::c_int;
8953}
8954extern "C" {
8955    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_mbstring_ncopy"]
8956    pub fn ASN1_mbstring_ncopy(
8957        out: *mut *mut ASN1_STRING,
8958        in_: *const u8,
8959        len: ossl_ssize_t,
8960        inform: ::std::os::raw::c_int,
8961        mask: ::std::os::raw::c_ulong,
8962        minsize: ossl_ssize_t,
8963        maxsize: ossl_ssize_t,
8964    ) -> ::std::os::raw::c_int;
8965}
8966extern "C" {
8967    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_set_by_NID"]
8968    pub fn ASN1_STRING_set_by_NID(
8969        out: *mut *mut ASN1_STRING,
8970        in_: *const ::std::os::raw::c_uchar,
8971        len: ossl_ssize_t,
8972        inform: ::std::os::raw::c_int,
8973        nid: ::std::os::raw::c_int,
8974    ) -> *mut ASN1_STRING;
8975}
8976extern "C" {
8977    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_TABLE_add"]
8978    pub fn ASN1_STRING_TABLE_add(
8979        nid: ::std::os::raw::c_int,
8980        minsize: ::std::os::raw::c_long,
8981        maxsize: ::std::os::raw::c_long,
8982        mask: ::std::os::raw::c_ulong,
8983        flags: ::std::os::raw::c_ulong,
8984    ) -> ::std::os::raw::c_int;
8985}
8986extern "C" {
8987    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIRECTORYSTRING_new"]
8988    pub fn DIRECTORYSTRING_new() -> *mut ASN1_STRING;
8989}
8990extern "C" {
8991    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIRECTORYSTRING_free"]
8992    pub fn DIRECTORYSTRING_free(str_: *mut ASN1_STRING);
8993}
8994extern "C" {
8995    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DIRECTORYSTRING"]
8996    pub fn d2i_DIRECTORYSTRING(
8997        out: *mut *mut ASN1_STRING,
8998        inp: *mut *const u8,
8999        len: ::std::os::raw::c_long,
9000    ) -> *mut ASN1_STRING;
9001}
9002extern "C" {
9003    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DIRECTORYSTRING"]
9004    pub fn i2d_DIRECTORYSTRING(
9005        in_: *const ASN1_STRING,
9006        outp: *mut *mut u8,
9007    ) -> ::std::os::raw::c_int;
9008}
9009extern "C" {
9010    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIRECTORYSTRING_it"]
9011    pub static DIRECTORYSTRING_it: ASN1_ITEM;
9012}
9013extern "C" {
9014    #[link_name = "\u{1}aws_lc_fips_0_13_10_DISPLAYTEXT_new"]
9015    pub fn DISPLAYTEXT_new() -> *mut ASN1_STRING;
9016}
9017extern "C" {
9018    #[link_name = "\u{1}aws_lc_fips_0_13_10_DISPLAYTEXT_free"]
9019    pub fn DISPLAYTEXT_free(str_: *mut ASN1_STRING);
9020}
9021extern "C" {
9022    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DISPLAYTEXT"]
9023    pub fn d2i_DISPLAYTEXT(
9024        out: *mut *mut ASN1_STRING,
9025        inp: *mut *const u8,
9026        len: ::std::os::raw::c_long,
9027    ) -> *mut ASN1_STRING;
9028}
9029extern "C" {
9030    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DISPLAYTEXT"]
9031    pub fn i2d_DISPLAYTEXT(in_: *const ASN1_STRING, outp: *mut *mut u8) -> ::std::os::raw::c_int;
9032}
9033extern "C" {
9034    #[link_name = "\u{1}aws_lc_fips_0_13_10_DISPLAYTEXT_it"]
9035    pub static DISPLAYTEXT_it: ASN1_ITEM;
9036}
9037extern "C" {
9038    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BIT_STRING_new"]
9039    pub fn ASN1_BIT_STRING_new() -> *mut ASN1_BIT_STRING;
9040}
9041extern "C" {
9042    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BIT_STRING_free"]
9043    pub fn ASN1_BIT_STRING_free(str_: *mut ASN1_BIT_STRING);
9044}
9045extern "C" {
9046    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_BIT_STRING"]
9047    pub fn d2i_ASN1_BIT_STRING(
9048        out: *mut *mut ASN1_BIT_STRING,
9049        inp: *mut *const u8,
9050        len: ::std::os::raw::c_long,
9051    ) -> *mut ASN1_BIT_STRING;
9052}
9053extern "C" {
9054    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_BIT_STRING"]
9055    pub fn i2d_ASN1_BIT_STRING(
9056        in_: *const ASN1_BIT_STRING,
9057        outp: *mut *mut u8,
9058    ) -> ::std::os::raw::c_int;
9059}
9060extern "C" {
9061    #[link_name = "\u{1}aws_lc_fips_0_13_10_c2i_ASN1_BIT_STRING"]
9062    pub fn c2i_ASN1_BIT_STRING(
9063        out: *mut *mut ASN1_BIT_STRING,
9064        inp: *mut *const u8,
9065        len: ::std::os::raw::c_long,
9066    ) -> *mut ASN1_BIT_STRING;
9067}
9068extern "C" {
9069    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2c_ASN1_BIT_STRING"]
9070    pub fn i2c_ASN1_BIT_STRING(
9071        in_: *const ASN1_BIT_STRING,
9072        outp: *mut *mut u8,
9073    ) -> ::std::os::raw::c_int;
9074}
9075extern "C" {
9076    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BIT_STRING_it"]
9077    pub static ASN1_BIT_STRING_it: ASN1_ITEM;
9078}
9079extern "C" {
9080    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BIT_STRING_num_bytes"]
9081    pub fn ASN1_BIT_STRING_num_bytes(
9082        str_: *const ASN1_BIT_STRING,
9083        out: *mut usize,
9084    ) -> ::std::os::raw::c_int;
9085}
9086extern "C" {
9087    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BIT_STRING_set"]
9088    pub fn ASN1_BIT_STRING_set(
9089        str_: *mut ASN1_BIT_STRING,
9090        d: *const ::std::os::raw::c_uchar,
9091        length: ossl_ssize_t,
9092    ) -> ::std::os::raw::c_int;
9093}
9094extern "C" {
9095    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BIT_STRING_set_bit"]
9096    pub fn ASN1_BIT_STRING_set_bit(
9097        str_: *mut ASN1_BIT_STRING,
9098        n: ::std::os::raw::c_int,
9099        value: ::std::os::raw::c_int,
9100    ) -> ::std::os::raw::c_int;
9101}
9102extern "C" {
9103    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BIT_STRING_get_bit"]
9104    pub fn ASN1_BIT_STRING_get_bit(
9105        str_: *const ASN1_BIT_STRING,
9106        n: ::std::os::raw::c_int,
9107    ) -> ::std::os::raw::c_int;
9108}
9109extern "C" {
9110    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_BIT_STRING_check"]
9111    pub fn ASN1_BIT_STRING_check(
9112        str_: *const ASN1_BIT_STRING,
9113        flags: *const ::std::os::raw::c_uchar,
9114        flags_len: ::std::os::raw::c_int,
9115    ) -> ::std::os::raw::c_int;
9116}
9117#[repr(C)]
9118#[derive(Debug, Copy, Clone)]
9119pub struct stack_st_ASN1_INTEGER {
9120    _unused: [u8; 0],
9121}
9122pub type sk_ASN1_INTEGER_free_func =
9123    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ASN1_INTEGER)>;
9124pub type sk_ASN1_INTEGER_copy_func =
9125    ::std::option::Option<unsafe extern "C" fn(arg1: *const ASN1_INTEGER) -> *mut ASN1_INTEGER>;
9126pub type sk_ASN1_INTEGER_cmp_func = ::std::option::Option<
9127    unsafe extern "C" fn(
9128        arg1: *const *const ASN1_INTEGER,
9129        arg2: *const *const ASN1_INTEGER,
9130    ) -> ::std::os::raw::c_int,
9131>;
9132pub type sk_ASN1_INTEGER_delete_if_func = ::std::option::Option<
9133    unsafe extern "C" fn(
9134        arg1: *mut ASN1_INTEGER,
9135        arg2: *mut ::std::os::raw::c_void,
9136    ) -> ::std::os::raw::c_int,
9137>;
9138extern "C" {
9139    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_new"]
9140    pub fn ASN1_INTEGER_new() -> *mut ASN1_INTEGER;
9141}
9142extern "C" {
9143    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_free"]
9144    pub fn ASN1_INTEGER_free(str_: *mut ASN1_INTEGER);
9145}
9146extern "C" {
9147    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_dup"]
9148    pub fn ASN1_INTEGER_dup(x: *const ASN1_INTEGER) -> *mut ASN1_INTEGER;
9149}
9150extern "C" {
9151    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_INTEGER"]
9152    pub fn d2i_ASN1_INTEGER(
9153        out: *mut *mut ASN1_INTEGER,
9154        inp: *mut *const u8,
9155        len: ::std::os::raw::c_long,
9156    ) -> *mut ASN1_INTEGER;
9157}
9158extern "C" {
9159    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_INTEGER"]
9160    pub fn i2d_ASN1_INTEGER(in_: *const ASN1_INTEGER, outp: *mut *mut u8) -> ::std::os::raw::c_int;
9161}
9162extern "C" {
9163    #[link_name = "\u{1}aws_lc_fips_0_13_10_c2i_ASN1_INTEGER"]
9164    pub fn c2i_ASN1_INTEGER(
9165        in_: *mut *mut ASN1_INTEGER,
9166        outp: *mut *const u8,
9167        len: ::std::os::raw::c_long,
9168    ) -> *mut ASN1_INTEGER;
9169}
9170extern "C" {
9171    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2c_ASN1_INTEGER"]
9172    pub fn i2c_ASN1_INTEGER(in_: *const ASN1_INTEGER, outp: *mut *mut u8) -> ::std::os::raw::c_int;
9173}
9174extern "C" {
9175    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_it"]
9176    pub static ASN1_INTEGER_it: ASN1_ITEM;
9177}
9178extern "C" {
9179    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_set_uint64"]
9180    pub fn ASN1_INTEGER_set_uint64(out: *mut ASN1_INTEGER, v: u64) -> ::std::os::raw::c_int;
9181}
9182extern "C" {
9183    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_set_int64"]
9184    pub fn ASN1_INTEGER_set_int64(out: *mut ASN1_INTEGER, v: i64) -> ::std::os::raw::c_int;
9185}
9186extern "C" {
9187    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_get_uint64"]
9188    pub fn ASN1_INTEGER_get_uint64(out: *mut u64, a: *const ASN1_INTEGER) -> ::std::os::raw::c_int;
9189}
9190extern "C" {
9191    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_get_int64"]
9192    pub fn ASN1_INTEGER_get_int64(out: *mut i64, a: *const ASN1_INTEGER) -> ::std::os::raw::c_int;
9193}
9194extern "C" {
9195    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_to_ASN1_INTEGER"]
9196    pub fn BN_to_ASN1_INTEGER(bn: *const BIGNUM, ai: *mut ASN1_INTEGER) -> *mut ASN1_INTEGER;
9197}
9198extern "C" {
9199    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_to_BN"]
9200    pub fn ASN1_INTEGER_to_BN(ai: *const ASN1_INTEGER, bn: *mut BIGNUM) -> *mut BIGNUM;
9201}
9202extern "C" {
9203    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_cmp"]
9204    pub fn ASN1_INTEGER_cmp(
9205        x: *const ASN1_INTEGER,
9206        y: *const ASN1_INTEGER,
9207    ) -> ::std::os::raw::c_int;
9208}
9209extern "C" {
9210    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_new"]
9211    pub fn ASN1_ENUMERATED_new() -> *mut ASN1_ENUMERATED;
9212}
9213extern "C" {
9214    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_free"]
9215    pub fn ASN1_ENUMERATED_free(str_: *mut ASN1_ENUMERATED);
9216}
9217extern "C" {
9218    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_ENUMERATED"]
9219    pub fn d2i_ASN1_ENUMERATED(
9220        out: *mut *mut ASN1_ENUMERATED,
9221        inp: *mut *const u8,
9222        len: ::std::os::raw::c_long,
9223    ) -> *mut ASN1_ENUMERATED;
9224}
9225extern "C" {
9226    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_ENUMERATED"]
9227    pub fn i2d_ASN1_ENUMERATED(
9228        in_: *const ASN1_ENUMERATED,
9229        outp: *mut *mut u8,
9230    ) -> ::std::os::raw::c_int;
9231}
9232extern "C" {
9233    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_it"]
9234    pub static ASN1_ENUMERATED_it: ASN1_ITEM;
9235}
9236extern "C" {
9237    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_set_uint64"]
9238    pub fn ASN1_ENUMERATED_set_uint64(out: *mut ASN1_ENUMERATED, v: u64) -> ::std::os::raw::c_int;
9239}
9240extern "C" {
9241    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_set_int64"]
9242    pub fn ASN1_ENUMERATED_set_int64(out: *mut ASN1_ENUMERATED, v: i64) -> ::std::os::raw::c_int;
9243}
9244extern "C" {
9245    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_get_uint64"]
9246    pub fn ASN1_ENUMERATED_get_uint64(
9247        out: *mut u64,
9248        a: *const ASN1_ENUMERATED,
9249    ) -> ::std::os::raw::c_int;
9250}
9251extern "C" {
9252    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_get_int64"]
9253    pub fn ASN1_ENUMERATED_get_int64(
9254        out: *mut i64,
9255        a: *const ASN1_ENUMERATED,
9256    ) -> ::std::os::raw::c_int;
9257}
9258extern "C" {
9259    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_to_ASN1_ENUMERATED"]
9260    pub fn BN_to_ASN1_ENUMERATED(
9261        bn: *const BIGNUM,
9262        ai: *mut ASN1_ENUMERATED,
9263    ) -> *mut ASN1_ENUMERATED;
9264}
9265extern "C" {
9266    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_to_BN"]
9267    pub fn ASN1_ENUMERATED_to_BN(ai: *const ASN1_ENUMERATED, bn: *mut BIGNUM) -> *mut BIGNUM;
9268}
9269extern "C" {
9270    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_new"]
9271    pub fn ASN1_UTCTIME_new() -> *mut ASN1_UTCTIME;
9272}
9273extern "C" {
9274    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_free"]
9275    pub fn ASN1_UTCTIME_free(str_: *mut ASN1_UTCTIME);
9276}
9277extern "C" {
9278    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_UTCTIME"]
9279    pub fn d2i_ASN1_UTCTIME(
9280        out: *mut *mut ASN1_UTCTIME,
9281        inp: *mut *const u8,
9282        len: ::std::os::raw::c_long,
9283    ) -> *mut ASN1_UTCTIME;
9284}
9285extern "C" {
9286    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_UTCTIME"]
9287    pub fn i2d_ASN1_UTCTIME(in_: *const ASN1_UTCTIME, outp: *mut *mut u8) -> ::std::os::raw::c_int;
9288}
9289extern "C" {
9290    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_it"]
9291    pub static ASN1_UTCTIME_it: ASN1_ITEM;
9292}
9293extern "C" {
9294    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_check"]
9295    pub fn ASN1_UTCTIME_check(a: *const ASN1_UTCTIME) -> ::std::os::raw::c_int;
9296}
9297extern "C" {
9298    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_set"]
9299    pub fn ASN1_UTCTIME_set(s: *mut ASN1_UTCTIME, posix_time: i64) -> *mut ASN1_UTCTIME;
9300}
9301extern "C" {
9302    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_adj"]
9303    pub fn ASN1_UTCTIME_adj(
9304        s: *mut ASN1_UTCTIME,
9305        posix_time: i64,
9306        offset_day: ::std::os::raw::c_int,
9307        offset_sec: ::std::os::raw::c_long,
9308    ) -> *mut ASN1_UTCTIME;
9309}
9310extern "C" {
9311    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_set_string"]
9312    pub fn ASN1_UTCTIME_set_string(
9313        s: *mut ASN1_UTCTIME,
9314        str_: *const ::std::os::raw::c_char,
9315    ) -> ::std::os::raw::c_int;
9316}
9317extern "C" {
9318    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_cmp_time_t"]
9319    pub fn ASN1_UTCTIME_cmp_time_t(s: *const ASN1_UTCTIME, t: time_t) -> ::std::os::raw::c_int;
9320}
9321extern "C" {
9322    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALIZEDTIME_new"]
9323    pub fn ASN1_GENERALIZEDTIME_new() -> *mut ASN1_GENERALIZEDTIME;
9324}
9325extern "C" {
9326    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALIZEDTIME_free"]
9327    pub fn ASN1_GENERALIZEDTIME_free(str_: *mut ASN1_GENERALIZEDTIME);
9328}
9329extern "C" {
9330    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_GENERALIZEDTIME"]
9331    pub fn d2i_ASN1_GENERALIZEDTIME(
9332        out: *mut *mut ASN1_GENERALIZEDTIME,
9333        inp: *mut *const u8,
9334        len: ::std::os::raw::c_long,
9335    ) -> *mut ASN1_GENERALIZEDTIME;
9336}
9337extern "C" {
9338    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_GENERALIZEDTIME"]
9339    pub fn i2d_ASN1_GENERALIZEDTIME(
9340        in_: *const ASN1_GENERALIZEDTIME,
9341        outp: *mut *mut u8,
9342    ) -> ::std::os::raw::c_int;
9343}
9344extern "C" {
9345    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALIZEDTIME_it"]
9346    pub static ASN1_GENERALIZEDTIME_it: ASN1_ITEM;
9347}
9348extern "C" {
9349    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALIZEDTIME_check"]
9350    pub fn ASN1_GENERALIZEDTIME_check(a: *const ASN1_GENERALIZEDTIME) -> ::std::os::raw::c_int;
9351}
9352extern "C" {
9353    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALIZEDTIME_set"]
9354    pub fn ASN1_GENERALIZEDTIME_set(
9355        s: *mut ASN1_GENERALIZEDTIME,
9356        posix_time: i64,
9357    ) -> *mut ASN1_GENERALIZEDTIME;
9358}
9359extern "C" {
9360    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALIZEDTIME_adj"]
9361    pub fn ASN1_GENERALIZEDTIME_adj(
9362        s: *mut ASN1_GENERALIZEDTIME,
9363        posix_time: i64,
9364        offset_day: ::std::os::raw::c_int,
9365        offset_sec: ::std::os::raw::c_long,
9366    ) -> *mut ASN1_GENERALIZEDTIME;
9367}
9368extern "C" {
9369    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALIZEDTIME_set_string"]
9370    pub fn ASN1_GENERALIZEDTIME_set_string(
9371        s: *mut ASN1_GENERALIZEDTIME,
9372        str_: *const ::std::os::raw::c_char,
9373    ) -> ::std::os::raw::c_int;
9374}
9375extern "C" {
9376    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_new"]
9377    pub fn ASN1_TIME_new() -> *mut ASN1_TIME;
9378}
9379extern "C" {
9380    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_free"]
9381    pub fn ASN1_TIME_free(str_: *mut ASN1_TIME);
9382}
9383extern "C" {
9384    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_TIME"]
9385    pub fn d2i_ASN1_TIME(
9386        out: *mut *mut ASN1_TIME,
9387        inp: *mut *const u8,
9388        len: ::std::os::raw::c_long,
9389    ) -> *mut ASN1_TIME;
9390}
9391extern "C" {
9392    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_TIME"]
9393    pub fn i2d_ASN1_TIME(in_: *const ASN1_TIME, outp: *mut *mut u8) -> ::std::os::raw::c_int;
9394}
9395extern "C" {
9396    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_it"]
9397    pub static ASN1_TIME_it: ASN1_ITEM;
9398}
9399extern "C" {
9400    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_diff"]
9401    pub fn ASN1_TIME_diff(
9402        out_days: *mut ::std::os::raw::c_int,
9403        out_seconds: *mut ::std::os::raw::c_int,
9404        from: *const ASN1_TIME,
9405        to: *const ASN1_TIME,
9406    ) -> ::std::os::raw::c_int;
9407}
9408extern "C" {
9409    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_set_posix"]
9410    pub fn ASN1_TIME_set_posix(s: *mut ASN1_TIME, posix_time: i64) -> *mut ASN1_TIME;
9411}
9412extern "C" {
9413    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_set"]
9414    pub fn ASN1_TIME_set(s: *mut ASN1_TIME, time: time_t) -> *mut ASN1_TIME;
9415}
9416extern "C" {
9417    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_adj"]
9418    pub fn ASN1_TIME_adj(
9419        s: *mut ASN1_TIME,
9420        posix_time: i64,
9421        offset_day: ::std::os::raw::c_int,
9422        offset_sec: ::std::os::raw::c_long,
9423    ) -> *mut ASN1_TIME;
9424}
9425extern "C" {
9426    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_check"]
9427    pub fn ASN1_TIME_check(t: *const ASN1_TIME) -> ::std::os::raw::c_int;
9428}
9429extern "C" {
9430    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_to_generalizedtime"]
9431    pub fn ASN1_TIME_to_generalizedtime(
9432        t: *const ASN1_TIME,
9433        out: *mut *mut ASN1_GENERALIZEDTIME,
9434    ) -> *mut ASN1_GENERALIZEDTIME;
9435}
9436extern "C" {
9437    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_set_string"]
9438    pub fn ASN1_TIME_set_string(
9439        s: *mut ASN1_TIME,
9440        str_: *const ::std::os::raw::c_char,
9441    ) -> ::std::os::raw::c_int;
9442}
9443extern "C" {
9444    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_to_tm"]
9445    pub fn ASN1_TIME_to_tm(t: *const ASN1_TIME, out: *mut tm) -> ::std::os::raw::c_int;
9446}
9447extern "C" {
9448    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_set_string_X509"]
9449    pub fn ASN1_TIME_set_string_X509(
9450        s: *mut ASN1_TIME,
9451        str_: *const ::std::os::raw::c_char,
9452    ) -> ::std::os::raw::c_int;
9453}
9454extern "C" {
9455    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_to_time_t"]
9456    pub fn ASN1_TIME_to_time_t(t: *const ASN1_TIME, out: *mut time_t) -> ::std::os::raw::c_int;
9457}
9458extern "C" {
9459    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_to_posix"]
9460    pub fn ASN1_TIME_to_posix(t: *const ASN1_TIME, out: *mut i64) -> ::std::os::raw::c_int;
9461}
9462extern "C" {
9463    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_NULL_new"]
9464    pub fn ASN1_NULL_new() -> *mut ASN1_NULL;
9465}
9466extern "C" {
9467    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_NULL_free"]
9468    pub fn ASN1_NULL_free(null: *mut ASN1_NULL);
9469}
9470extern "C" {
9471    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_NULL"]
9472    pub fn d2i_ASN1_NULL(
9473        out: *mut *mut ASN1_NULL,
9474        inp: *mut *const u8,
9475        len: ::std::os::raw::c_long,
9476    ) -> *mut ASN1_NULL;
9477}
9478extern "C" {
9479    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_NULL"]
9480    pub fn i2d_ASN1_NULL(in_: *const ASN1_NULL, outp: *mut *mut u8) -> ::std::os::raw::c_int;
9481}
9482extern "C" {
9483    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_NULL_it"]
9484    pub static ASN1_NULL_it: ASN1_ITEM;
9485}
9486#[repr(C)]
9487#[derive(Debug, Copy, Clone)]
9488pub struct stack_st_ASN1_OBJECT {
9489    _unused: [u8; 0],
9490}
9491pub type sk_ASN1_OBJECT_free_func =
9492    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ASN1_OBJECT)>;
9493pub type sk_ASN1_OBJECT_copy_func =
9494    ::std::option::Option<unsafe extern "C" fn(arg1: *const ASN1_OBJECT) -> *mut ASN1_OBJECT>;
9495pub type sk_ASN1_OBJECT_cmp_func = ::std::option::Option<
9496    unsafe extern "C" fn(
9497        arg1: *const *const ASN1_OBJECT,
9498        arg2: *const *const ASN1_OBJECT,
9499    ) -> ::std::os::raw::c_int,
9500>;
9501pub type sk_ASN1_OBJECT_delete_if_func = ::std::option::Option<
9502    unsafe extern "C" fn(
9503        arg1: *mut ASN1_OBJECT,
9504        arg2: *mut ::std::os::raw::c_void,
9505    ) -> ::std::os::raw::c_int,
9506>;
9507extern "C" {
9508    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OBJECT_create"]
9509    pub fn ASN1_OBJECT_create(
9510        nid: ::std::os::raw::c_int,
9511        data: *const u8,
9512        len: usize,
9513        sn: *const ::std::os::raw::c_char,
9514        ln: *const ::std::os::raw::c_char,
9515    ) -> *mut ASN1_OBJECT;
9516}
9517extern "C" {
9518    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OBJECT_free"]
9519    pub fn ASN1_OBJECT_free(a: *mut ASN1_OBJECT);
9520}
9521extern "C" {
9522    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_OBJECT"]
9523    pub fn d2i_ASN1_OBJECT(
9524        out: *mut *mut ASN1_OBJECT,
9525        inp: *mut *const u8,
9526        len: ::std::os::raw::c_long,
9527    ) -> *mut ASN1_OBJECT;
9528}
9529extern "C" {
9530    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_OBJECT"]
9531    pub fn i2d_ASN1_OBJECT(in_: *const ASN1_OBJECT, outp: *mut *mut u8) -> ::std::os::raw::c_int;
9532}
9533extern "C" {
9534    #[link_name = "\u{1}aws_lc_fips_0_13_10_c2i_ASN1_OBJECT"]
9535    pub fn c2i_ASN1_OBJECT(
9536        out: *mut *mut ASN1_OBJECT,
9537        inp: *mut *const u8,
9538        len: ::std::os::raw::c_long,
9539    ) -> *mut ASN1_OBJECT;
9540}
9541extern "C" {
9542    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_OBJECT_it"]
9543    pub static ASN1_OBJECT_it: ASN1_ITEM;
9544}
9545#[repr(C)]
9546#[derive(Copy, Clone)]
9547pub struct asn1_type_st {
9548    pub type_: ::std::os::raw::c_int,
9549    pub value: asn1_type_st__bindgen_ty_1,
9550}
9551#[repr(C)]
9552#[derive(Copy, Clone)]
9553pub union asn1_type_st__bindgen_ty_1 {
9554    pub ptr: *mut ::std::os::raw::c_char,
9555    pub boolean: ASN1_BOOLEAN,
9556    pub asn1_string: *mut ASN1_STRING,
9557    pub object: *mut ASN1_OBJECT,
9558    pub integer: *mut ASN1_INTEGER,
9559    pub enumerated: *mut ASN1_ENUMERATED,
9560    pub bit_string: *mut ASN1_BIT_STRING,
9561    pub octet_string: *mut ASN1_OCTET_STRING,
9562    pub printablestring: *mut ASN1_PRINTABLESTRING,
9563    pub t61string: *mut ASN1_T61STRING,
9564    pub ia5string: *mut ASN1_IA5STRING,
9565    pub generalstring: *mut ASN1_GENERALSTRING,
9566    pub bmpstring: *mut ASN1_BMPSTRING,
9567    pub universalstring: *mut ASN1_UNIVERSALSTRING,
9568    pub utctime: *mut ASN1_UTCTIME,
9569    pub generalizedtime: *mut ASN1_GENERALIZEDTIME,
9570    pub visiblestring: *mut ASN1_VISIBLESTRING,
9571    pub utf8string: *mut ASN1_UTF8STRING,
9572    pub set: *mut ASN1_STRING,
9573    pub sequence: *mut ASN1_STRING,
9574    pub asn1_value: *mut ASN1_VALUE,
9575}
9576#[test]
9577fn bindgen_test_layout_asn1_type_st__bindgen_ty_1() {
9578    const UNINIT: ::std::mem::MaybeUninit<asn1_type_st__bindgen_ty_1> =
9579        ::std::mem::MaybeUninit::uninit();
9580    let ptr = UNINIT.as_ptr();
9581    assert_eq!(
9582        ::std::mem::size_of::<asn1_type_st__bindgen_ty_1>(),
9583        8usize,
9584        "Size of asn1_type_st__bindgen_ty_1"
9585    );
9586    assert_eq!(
9587        ::std::mem::align_of::<asn1_type_st__bindgen_ty_1>(),
9588        8usize,
9589        "Alignment of asn1_type_st__bindgen_ty_1"
9590    );
9591    assert_eq!(
9592        unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
9593        0usize,
9594        "Offset of field: asn1_type_st__bindgen_ty_1::ptr"
9595    );
9596    assert_eq!(
9597        unsafe { ::std::ptr::addr_of!((*ptr).boolean) as usize - ptr as usize },
9598        0usize,
9599        "Offset of field: asn1_type_st__bindgen_ty_1::boolean"
9600    );
9601    assert_eq!(
9602        unsafe { ::std::ptr::addr_of!((*ptr).asn1_string) as usize - ptr as usize },
9603        0usize,
9604        "Offset of field: asn1_type_st__bindgen_ty_1::asn1_string"
9605    );
9606    assert_eq!(
9607        unsafe { ::std::ptr::addr_of!((*ptr).object) as usize - ptr as usize },
9608        0usize,
9609        "Offset of field: asn1_type_st__bindgen_ty_1::object"
9610    );
9611    assert_eq!(
9612        unsafe { ::std::ptr::addr_of!((*ptr).integer) as usize - ptr as usize },
9613        0usize,
9614        "Offset of field: asn1_type_st__bindgen_ty_1::integer"
9615    );
9616    assert_eq!(
9617        unsafe { ::std::ptr::addr_of!((*ptr).enumerated) as usize - ptr as usize },
9618        0usize,
9619        "Offset of field: asn1_type_st__bindgen_ty_1::enumerated"
9620    );
9621    assert_eq!(
9622        unsafe { ::std::ptr::addr_of!((*ptr).bit_string) as usize - ptr as usize },
9623        0usize,
9624        "Offset of field: asn1_type_st__bindgen_ty_1::bit_string"
9625    );
9626    assert_eq!(
9627        unsafe { ::std::ptr::addr_of!((*ptr).octet_string) as usize - ptr as usize },
9628        0usize,
9629        "Offset of field: asn1_type_st__bindgen_ty_1::octet_string"
9630    );
9631    assert_eq!(
9632        unsafe { ::std::ptr::addr_of!((*ptr).printablestring) as usize - ptr as usize },
9633        0usize,
9634        "Offset of field: asn1_type_st__bindgen_ty_1::printablestring"
9635    );
9636    assert_eq!(
9637        unsafe { ::std::ptr::addr_of!((*ptr).t61string) as usize - ptr as usize },
9638        0usize,
9639        "Offset of field: asn1_type_st__bindgen_ty_1::t61string"
9640    );
9641    assert_eq!(
9642        unsafe { ::std::ptr::addr_of!((*ptr).ia5string) as usize - ptr as usize },
9643        0usize,
9644        "Offset of field: asn1_type_st__bindgen_ty_1::ia5string"
9645    );
9646    assert_eq!(
9647        unsafe { ::std::ptr::addr_of!((*ptr).generalstring) as usize - ptr as usize },
9648        0usize,
9649        "Offset of field: asn1_type_st__bindgen_ty_1::generalstring"
9650    );
9651    assert_eq!(
9652        unsafe { ::std::ptr::addr_of!((*ptr).bmpstring) as usize - ptr as usize },
9653        0usize,
9654        "Offset of field: asn1_type_st__bindgen_ty_1::bmpstring"
9655    );
9656    assert_eq!(
9657        unsafe { ::std::ptr::addr_of!((*ptr).universalstring) as usize - ptr as usize },
9658        0usize,
9659        "Offset of field: asn1_type_st__bindgen_ty_1::universalstring"
9660    );
9661    assert_eq!(
9662        unsafe { ::std::ptr::addr_of!((*ptr).utctime) as usize - ptr as usize },
9663        0usize,
9664        "Offset of field: asn1_type_st__bindgen_ty_1::utctime"
9665    );
9666    assert_eq!(
9667        unsafe { ::std::ptr::addr_of!((*ptr).generalizedtime) as usize - ptr as usize },
9668        0usize,
9669        "Offset of field: asn1_type_st__bindgen_ty_1::generalizedtime"
9670    );
9671    assert_eq!(
9672        unsafe { ::std::ptr::addr_of!((*ptr).visiblestring) as usize - ptr as usize },
9673        0usize,
9674        "Offset of field: asn1_type_st__bindgen_ty_1::visiblestring"
9675    );
9676    assert_eq!(
9677        unsafe { ::std::ptr::addr_of!((*ptr).utf8string) as usize - ptr as usize },
9678        0usize,
9679        "Offset of field: asn1_type_st__bindgen_ty_1::utf8string"
9680    );
9681    assert_eq!(
9682        unsafe { ::std::ptr::addr_of!((*ptr).set) as usize - ptr as usize },
9683        0usize,
9684        "Offset of field: asn1_type_st__bindgen_ty_1::set"
9685    );
9686    assert_eq!(
9687        unsafe { ::std::ptr::addr_of!((*ptr).sequence) as usize - ptr as usize },
9688        0usize,
9689        "Offset of field: asn1_type_st__bindgen_ty_1::sequence"
9690    );
9691    assert_eq!(
9692        unsafe { ::std::ptr::addr_of!((*ptr).asn1_value) as usize - ptr as usize },
9693        0usize,
9694        "Offset of field: asn1_type_st__bindgen_ty_1::asn1_value"
9695    );
9696}
9697impl Default for asn1_type_st__bindgen_ty_1 {
9698    fn default() -> Self {
9699        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9700        unsafe {
9701            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9702            s.assume_init()
9703        }
9704    }
9705}
9706#[test]
9707fn bindgen_test_layout_asn1_type_st() {
9708    const UNINIT: ::std::mem::MaybeUninit<asn1_type_st> = ::std::mem::MaybeUninit::uninit();
9709    let ptr = UNINIT.as_ptr();
9710    assert_eq!(
9711        ::std::mem::size_of::<asn1_type_st>(),
9712        16usize,
9713        "Size of asn1_type_st"
9714    );
9715    assert_eq!(
9716        ::std::mem::align_of::<asn1_type_st>(),
9717        8usize,
9718        "Alignment of asn1_type_st"
9719    );
9720    assert_eq!(
9721        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
9722        0usize,
9723        "Offset of field: asn1_type_st::type_"
9724    );
9725    assert_eq!(
9726        unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
9727        8usize,
9728        "Offset of field: asn1_type_st::value"
9729    );
9730}
9731impl Default for asn1_type_st {
9732    fn default() -> Self {
9733        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
9734        unsafe {
9735            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
9736            s.assume_init()
9737        }
9738    }
9739}
9740#[repr(C)]
9741#[derive(Debug, Copy, Clone)]
9742pub struct stack_st_ASN1_TYPE {
9743    _unused: [u8; 0],
9744}
9745pub type sk_ASN1_TYPE_free_func = ::std::option::Option<unsafe extern "C" fn(arg1: *mut ASN1_TYPE)>;
9746pub type sk_ASN1_TYPE_copy_func =
9747    ::std::option::Option<unsafe extern "C" fn(arg1: *const ASN1_TYPE) -> *mut ASN1_TYPE>;
9748pub type sk_ASN1_TYPE_cmp_func = ::std::option::Option<
9749    unsafe extern "C" fn(
9750        arg1: *const *const ASN1_TYPE,
9751        arg2: *const *const ASN1_TYPE,
9752    ) -> ::std::os::raw::c_int,
9753>;
9754pub type sk_ASN1_TYPE_delete_if_func = ::std::option::Option<
9755    unsafe extern "C" fn(
9756        arg1: *mut ASN1_TYPE,
9757        arg2: *mut ::std::os::raw::c_void,
9758    ) -> ::std::os::raw::c_int,
9759>;
9760extern "C" {
9761    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TYPE_new"]
9762    pub fn ASN1_TYPE_new() -> *mut ASN1_TYPE;
9763}
9764extern "C" {
9765    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TYPE_free"]
9766    pub fn ASN1_TYPE_free(a: *mut ASN1_TYPE);
9767}
9768extern "C" {
9769    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_TYPE"]
9770    pub fn d2i_ASN1_TYPE(
9771        out: *mut *mut ASN1_TYPE,
9772        inp: *mut *const u8,
9773        len: ::std::os::raw::c_long,
9774    ) -> *mut ASN1_TYPE;
9775}
9776extern "C" {
9777    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_TYPE"]
9778    pub fn i2d_ASN1_TYPE(in_: *const ASN1_TYPE, outp: *mut *mut u8) -> ::std::os::raw::c_int;
9779}
9780extern "C" {
9781    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ANY_it"]
9782    pub static ASN1_ANY_it: ASN1_ITEM;
9783}
9784extern "C" {
9785    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TYPE_get"]
9786    pub fn ASN1_TYPE_get(a: *const ASN1_TYPE) -> ::std::os::raw::c_int;
9787}
9788extern "C" {
9789    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TYPE_set"]
9790    pub fn ASN1_TYPE_set(
9791        a: *mut ASN1_TYPE,
9792        type_: ::std::os::raw::c_int,
9793        value: *mut ::std::os::raw::c_void,
9794    );
9795}
9796extern "C" {
9797    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TYPE_set1"]
9798    pub fn ASN1_TYPE_set1(
9799        a: *mut ASN1_TYPE,
9800        type_: ::std::os::raw::c_int,
9801        value: *const ::std::os::raw::c_void,
9802    ) -> ::std::os::raw::c_int;
9803}
9804extern "C" {
9805    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TYPE_cmp"]
9806    pub fn ASN1_TYPE_cmp(a: *const ASN1_TYPE, b: *const ASN1_TYPE) -> ::std::os::raw::c_int;
9807}
9808pub type ASN1_SEQUENCE_ANY = stack_st_ASN1_TYPE;
9809extern "C" {
9810    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_SEQUENCE_ANY"]
9811    pub fn d2i_ASN1_SEQUENCE_ANY(
9812        out: *mut *mut ASN1_SEQUENCE_ANY,
9813        inp: *mut *const u8,
9814        len: ::std::os::raw::c_long,
9815    ) -> *mut ASN1_SEQUENCE_ANY;
9816}
9817extern "C" {
9818    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_SEQUENCE_ANY"]
9819    pub fn i2d_ASN1_SEQUENCE_ANY(
9820        in_: *const ASN1_SEQUENCE_ANY,
9821        outp: *mut *mut u8,
9822    ) -> ::std::os::raw::c_int;
9823}
9824extern "C" {
9825    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_SET_ANY"]
9826    pub fn d2i_ASN1_SET_ANY(
9827        out: *mut *mut ASN1_SEQUENCE_ANY,
9828        inp: *mut *const u8,
9829        len: ::std::os::raw::c_long,
9830    ) -> *mut ASN1_SEQUENCE_ANY;
9831}
9832extern "C" {
9833    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_SET_ANY"]
9834    pub fn i2d_ASN1_SET_ANY(
9835        in_: *const ASN1_SEQUENCE_ANY,
9836        outp: *mut *mut u8,
9837    ) -> ::std::os::raw::c_int;
9838}
9839extern "C" {
9840    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_UTCTIME_print"]
9841    pub fn ASN1_UTCTIME_print(out: *mut BIO, a: *const ASN1_UTCTIME) -> ::std::os::raw::c_int;
9842}
9843extern "C" {
9844    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_GENERALIZEDTIME_print"]
9845    pub fn ASN1_GENERALIZEDTIME_print(
9846        out: *mut BIO,
9847        a: *const ASN1_GENERALIZEDTIME,
9848    ) -> ::std::os::raw::c_int;
9849}
9850extern "C" {
9851    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_TIME_print"]
9852    pub fn ASN1_TIME_print(out: *mut BIO, a: *const ASN1_TIME) -> ::std::os::raw::c_int;
9853}
9854extern "C" {
9855    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_print"]
9856    pub fn ASN1_STRING_print(out: *mut BIO, str_: *const ASN1_STRING) -> ::std::os::raw::c_int;
9857}
9858extern "C" {
9859    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_print_ex"]
9860    pub fn ASN1_STRING_print_ex(
9861        out: *mut BIO,
9862        str_: *const ASN1_STRING,
9863        flags: ::std::os::raw::c_ulong,
9864    ) -> ::std::os::raw::c_int;
9865}
9866extern "C" {
9867    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_print_ex_fp"]
9868    pub fn ASN1_STRING_print_ex_fp(
9869        fp: *mut FILE,
9870        str_: *const ASN1_STRING,
9871        flags: ::std::os::raw::c_ulong,
9872    ) -> ::std::os::raw::c_int;
9873}
9874extern "C" {
9875    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2a_ASN1_INTEGER"]
9876    pub fn i2a_ASN1_INTEGER(bp: *mut BIO, a: *const ASN1_INTEGER) -> ::std::os::raw::c_int;
9877}
9878extern "C" {
9879    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2a_ASN1_ENUMERATED"]
9880    pub fn i2a_ASN1_ENUMERATED(bp: *mut BIO, a: *const ASN1_ENUMERATED) -> ::std::os::raw::c_int;
9881}
9882extern "C" {
9883    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2a_ASN1_OBJECT"]
9884    pub fn i2a_ASN1_OBJECT(bp: *mut BIO, a: *const ASN1_OBJECT) -> ::std::os::raw::c_int;
9885}
9886extern "C" {
9887    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2a_ASN1_STRING"]
9888    pub fn i2a_ASN1_STRING(
9889        bp: *mut BIO,
9890        a: *const ASN1_STRING,
9891        type_: ::std::os::raw::c_int,
9892    ) -> ::std::os::raw::c_int;
9893}
9894extern "C" {
9895    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2t_ASN1_OBJECT"]
9896    pub fn i2t_ASN1_OBJECT(
9897        buf: *mut ::std::os::raw::c_char,
9898        buf_len: ::std::os::raw::c_int,
9899        a: *const ASN1_OBJECT,
9900    ) -> ::std::os::raw::c_int;
9901}
9902extern "C" {
9903    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_get_object"]
9904    pub fn ASN1_get_object(
9905        inp: *mut *const ::std::os::raw::c_uchar,
9906        out_length: *mut ::std::os::raw::c_long,
9907        out_tag: *mut ::std::os::raw::c_int,
9908        out_class: *mut ::std::os::raw::c_int,
9909        max_len: ::std::os::raw::c_long,
9910    ) -> ::std::os::raw::c_int;
9911}
9912extern "C" {
9913    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_put_object"]
9914    pub fn ASN1_put_object(
9915        outp: *mut *mut ::std::os::raw::c_uchar,
9916        constructed: ::std::os::raw::c_int,
9917        length: ::std::os::raw::c_int,
9918        tag: ::std::os::raw::c_int,
9919        xclass: ::std::os::raw::c_int,
9920    );
9921}
9922extern "C" {
9923    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_put_eoc"]
9924    pub fn ASN1_put_eoc(outp: *mut *mut ::std::os::raw::c_uchar) -> ::std::os::raw::c_int;
9925}
9926extern "C" {
9927    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_object_size"]
9928    pub fn ASN1_object_size(
9929        constructed: ::std::os::raw::c_int,
9930        length: ::std::os::raw::c_int,
9931        tag: ::std::os::raw::c_int,
9932    ) -> ::std::os::raw::c_int;
9933}
9934extern "C" {
9935    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_PRINTABLE_new"]
9936    pub fn ASN1_PRINTABLE_new() -> *mut ASN1_STRING;
9937}
9938extern "C" {
9939    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_PRINTABLE_free"]
9940    pub fn ASN1_PRINTABLE_free(str_: *mut ASN1_STRING);
9941}
9942extern "C" {
9943    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ASN1_PRINTABLE"]
9944    pub fn d2i_ASN1_PRINTABLE(
9945        out: *mut *mut ASN1_STRING,
9946        inp: *mut *const u8,
9947        len: ::std::os::raw::c_long,
9948    ) -> *mut ASN1_STRING;
9949}
9950extern "C" {
9951    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ASN1_PRINTABLE"]
9952    pub fn i2d_ASN1_PRINTABLE(in_: *const ASN1_STRING, outp: *mut *mut u8)
9953        -> ::std::os::raw::c_int;
9954}
9955extern "C" {
9956    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_PRINTABLE_it"]
9957    pub static ASN1_PRINTABLE_it: ASN1_ITEM;
9958}
9959extern "C" {
9960    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_set"]
9961    pub fn ASN1_INTEGER_set(
9962        a: *mut ASN1_INTEGER,
9963        v: ::std::os::raw::c_long,
9964    ) -> ::std::os::raw::c_int;
9965}
9966extern "C" {
9967    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_set"]
9968    pub fn ASN1_ENUMERATED_set(
9969        a: *mut ASN1_ENUMERATED,
9970        v: ::std::os::raw::c_long,
9971    ) -> ::std::os::raw::c_int;
9972}
9973extern "C" {
9974    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_INTEGER_get"]
9975    pub fn ASN1_INTEGER_get(a: *const ASN1_INTEGER) -> ::std::os::raw::c_long;
9976}
9977extern "C" {
9978    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_ENUMERATED_get"]
9979    pub fn ASN1_ENUMERATED_get(a: *const ASN1_ENUMERATED) -> ::std::os::raw::c_long;
9980}
9981extern "C" {
9982    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_set_default_mask"]
9983    pub fn ASN1_STRING_set_default_mask(mask: ::std::os::raw::c_ulong);
9984}
9985extern "C" {
9986    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_set_default_mask_asc"]
9987    pub fn ASN1_STRING_set_default_mask_asc(
9988        p: *const ::std::os::raw::c_char,
9989    ) -> ::std::os::raw::c_int;
9990}
9991extern "C" {
9992    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_get_default_mask"]
9993    pub fn ASN1_STRING_get_default_mask() -> ::std::os::raw::c_ulong;
9994}
9995extern "C" {
9996    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_STRING_TABLE_cleanup"]
9997    pub fn ASN1_STRING_TABLE_cleanup();
9998}
9999pub type ASN1_TEMPLATE = ASN1_TEMPLATE_st;
10000#[repr(C)]
10001#[derive(Debug, Copy, Clone)]
10002pub struct ASN1_TLC_st {
10003    _unused: [u8; 0],
10004}
10005pub type ASN1_TLC = ASN1_TLC_st;
10006#[repr(C)]
10007#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10008pub struct ASN1_TEMPLATE_st {
10009    pub flags: u32,
10010    pub tag: ::std::os::raw::c_int,
10011    pub offset: ::std::os::raw::c_ulong,
10012    pub field_name: *const ::std::os::raw::c_char,
10013    pub item: *const ASN1_ITEM_st,
10014}
10015#[test]
10016fn bindgen_test_layout_ASN1_TEMPLATE_st() {
10017    const UNINIT: ::std::mem::MaybeUninit<ASN1_TEMPLATE_st> = ::std::mem::MaybeUninit::uninit();
10018    let ptr = UNINIT.as_ptr();
10019    assert_eq!(
10020        ::std::mem::size_of::<ASN1_TEMPLATE_st>(),
10021        32usize,
10022        "Size of ASN1_TEMPLATE_st"
10023    );
10024    assert_eq!(
10025        ::std::mem::align_of::<ASN1_TEMPLATE_st>(),
10026        8usize,
10027        "Alignment of ASN1_TEMPLATE_st"
10028    );
10029    assert_eq!(
10030        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
10031        0usize,
10032        "Offset of field: ASN1_TEMPLATE_st::flags"
10033    );
10034    assert_eq!(
10035        unsafe { ::std::ptr::addr_of!((*ptr).tag) as usize - ptr as usize },
10036        4usize,
10037        "Offset of field: ASN1_TEMPLATE_st::tag"
10038    );
10039    assert_eq!(
10040        unsafe { ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize },
10041        8usize,
10042        "Offset of field: ASN1_TEMPLATE_st::offset"
10043    );
10044    assert_eq!(
10045        unsafe { ::std::ptr::addr_of!((*ptr).field_name) as usize - ptr as usize },
10046        16usize,
10047        "Offset of field: ASN1_TEMPLATE_st::field_name"
10048    );
10049    assert_eq!(
10050        unsafe { ::std::ptr::addr_of!((*ptr).item) as usize - ptr as usize },
10051        24usize,
10052        "Offset of field: ASN1_TEMPLATE_st::item"
10053    );
10054}
10055impl Default for ASN1_TEMPLATE_st {
10056    fn default() -> Self {
10057        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10058        unsafe {
10059            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10060            s.assume_init()
10061        }
10062    }
10063}
10064pub type ASN1_ADB_TABLE = ASN1_ADB_TABLE_st;
10065pub type ASN1_ADB = ASN1_ADB_st;
10066#[repr(C)]
10067#[derive(Debug, Copy, Clone)]
10068pub struct asn1_must_be_null_st {
10069    _unused: [u8; 0],
10070}
10071pub type ASN1_MUST_BE_NULL = asn1_must_be_null_st;
10072#[repr(C)]
10073#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10074pub struct ASN1_ADB_st {
10075    pub flags: u32,
10076    pub offset: ::std::os::raw::c_ulong,
10077    pub unused: *mut ASN1_MUST_BE_NULL,
10078    pub tbl: *const ASN1_ADB_TABLE,
10079    pub tblcount: ::std::os::raw::c_long,
10080    pub default_tt: *const ASN1_TEMPLATE,
10081    pub null_tt: *const ASN1_TEMPLATE,
10082}
10083#[test]
10084fn bindgen_test_layout_ASN1_ADB_st() {
10085    const UNINIT: ::std::mem::MaybeUninit<ASN1_ADB_st> = ::std::mem::MaybeUninit::uninit();
10086    let ptr = UNINIT.as_ptr();
10087    assert_eq!(
10088        ::std::mem::size_of::<ASN1_ADB_st>(),
10089        56usize,
10090        "Size of ASN1_ADB_st"
10091    );
10092    assert_eq!(
10093        ::std::mem::align_of::<ASN1_ADB_st>(),
10094        8usize,
10095        "Alignment of ASN1_ADB_st"
10096    );
10097    assert_eq!(
10098        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
10099        0usize,
10100        "Offset of field: ASN1_ADB_st::flags"
10101    );
10102    assert_eq!(
10103        unsafe { ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize },
10104        8usize,
10105        "Offset of field: ASN1_ADB_st::offset"
10106    );
10107    assert_eq!(
10108        unsafe { ::std::ptr::addr_of!((*ptr).unused) as usize - ptr as usize },
10109        16usize,
10110        "Offset of field: ASN1_ADB_st::unused"
10111    );
10112    assert_eq!(
10113        unsafe { ::std::ptr::addr_of!((*ptr).tbl) as usize - ptr as usize },
10114        24usize,
10115        "Offset of field: ASN1_ADB_st::tbl"
10116    );
10117    assert_eq!(
10118        unsafe { ::std::ptr::addr_of!((*ptr).tblcount) as usize - ptr as usize },
10119        32usize,
10120        "Offset of field: ASN1_ADB_st::tblcount"
10121    );
10122    assert_eq!(
10123        unsafe { ::std::ptr::addr_of!((*ptr).default_tt) as usize - ptr as usize },
10124        40usize,
10125        "Offset of field: ASN1_ADB_st::default_tt"
10126    );
10127    assert_eq!(
10128        unsafe { ::std::ptr::addr_of!((*ptr).null_tt) as usize - ptr as usize },
10129        48usize,
10130        "Offset of field: ASN1_ADB_st::null_tt"
10131    );
10132}
10133impl Default for ASN1_ADB_st {
10134    fn default() -> Self {
10135        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10136        unsafe {
10137            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10138            s.assume_init()
10139        }
10140    }
10141}
10142#[repr(C)]
10143#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10144pub struct ASN1_ADB_TABLE_st {
10145    pub value: ::std::os::raw::c_int,
10146    pub tt: ASN1_TEMPLATE,
10147}
10148#[test]
10149fn bindgen_test_layout_ASN1_ADB_TABLE_st() {
10150    const UNINIT: ::std::mem::MaybeUninit<ASN1_ADB_TABLE_st> = ::std::mem::MaybeUninit::uninit();
10151    let ptr = UNINIT.as_ptr();
10152    assert_eq!(
10153        ::std::mem::size_of::<ASN1_ADB_TABLE_st>(),
10154        40usize,
10155        "Size of ASN1_ADB_TABLE_st"
10156    );
10157    assert_eq!(
10158        ::std::mem::align_of::<ASN1_ADB_TABLE_st>(),
10159        8usize,
10160        "Alignment of ASN1_ADB_TABLE_st"
10161    );
10162    assert_eq!(
10163        unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
10164        0usize,
10165        "Offset of field: ASN1_ADB_TABLE_st::value"
10166    );
10167    assert_eq!(
10168        unsafe { ::std::ptr::addr_of!((*ptr).tt) as usize - ptr as usize },
10169        8usize,
10170        "Offset of field: ASN1_ADB_TABLE_st::tt"
10171    );
10172}
10173impl Default for ASN1_ADB_TABLE_st {
10174    fn default() -> Self {
10175        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10176        unsafe {
10177            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10178            s.assume_init()
10179        }
10180    }
10181}
10182#[repr(C)]
10183#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10184pub struct ASN1_ITEM_st {
10185    pub itype: ::std::os::raw::c_char,
10186    pub utype: ::std::os::raw::c_int,
10187    pub templates: *const ASN1_TEMPLATE,
10188    pub tcount: ::std::os::raw::c_long,
10189    pub funcs: *const ::std::os::raw::c_void,
10190    pub size: ::std::os::raw::c_long,
10191    pub sname: *const ::std::os::raw::c_char,
10192}
10193#[test]
10194fn bindgen_test_layout_ASN1_ITEM_st() {
10195    const UNINIT: ::std::mem::MaybeUninit<ASN1_ITEM_st> = ::std::mem::MaybeUninit::uninit();
10196    let ptr = UNINIT.as_ptr();
10197    assert_eq!(
10198        ::std::mem::size_of::<ASN1_ITEM_st>(),
10199        48usize,
10200        "Size of ASN1_ITEM_st"
10201    );
10202    assert_eq!(
10203        ::std::mem::align_of::<ASN1_ITEM_st>(),
10204        8usize,
10205        "Alignment of ASN1_ITEM_st"
10206    );
10207    assert_eq!(
10208        unsafe { ::std::ptr::addr_of!((*ptr).itype) as usize - ptr as usize },
10209        0usize,
10210        "Offset of field: ASN1_ITEM_st::itype"
10211    );
10212    assert_eq!(
10213        unsafe { ::std::ptr::addr_of!((*ptr).utype) as usize - ptr as usize },
10214        4usize,
10215        "Offset of field: ASN1_ITEM_st::utype"
10216    );
10217    assert_eq!(
10218        unsafe { ::std::ptr::addr_of!((*ptr).templates) as usize - ptr as usize },
10219        8usize,
10220        "Offset of field: ASN1_ITEM_st::templates"
10221    );
10222    assert_eq!(
10223        unsafe { ::std::ptr::addr_of!((*ptr).tcount) as usize - ptr as usize },
10224        16usize,
10225        "Offset of field: ASN1_ITEM_st::tcount"
10226    );
10227    assert_eq!(
10228        unsafe { ::std::ptr::addr_of!((*ptr).funcs) as usize - ptr as usize },
10229        24usize,
10230        "Offset of field: ASN1_ITEM_st::funcs"
10231    );
10232    assert_eq!(
10233        unsafe { ::std::ptr::addr_of!((*ptr).size) as usize - ptr as usize },
10234        32usize,
10235        "Offset of field: ASN1_ITEM_st::size"
10236    );
10237    assert_eq!(
10238        unsafe { ::std::ptr::addr_of!((*ptr).sname) as usize - ptr as usize },
10239        40usize,
10240        "Offset of field: ASN1_ITEM_st::sname"
10241    );
10242}
10243impl Default for ASN1_ITEM_st {
10244    fn default() -> Self {
10245        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10246        unsafe {
10247            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10248            s.assume_init()
10249        }
10250    }
10251}
10252pub type ASN1_new_func = ::std::option::Option<unsafe extern "C" fn() -> *mut ASN1_VALUE>;
10253pub type ASN1_free_func = ::std::option::Option<unsafe extern "C" fn(a: *mut ASN1_VALUE)>;
10254pub type ASN1_d2i_func = ::std::option::Option<
10255    unsafe extern "C" fn(
10256        a: *mut *mut ASN1_VALUE,
10257        in_: *mut *const ::std::os::raw::c_uchar,
10258        length: ::std::os::raw::c_long,
10259    ) -> *mut ASN1_VALUE,
10260>;
10261pub type ASN1_i2d_func = ::std::option::Option<
10262    unsafe extern "C" fn(
10263        a: *mut ASN1_VALUE,
10264        in_: *mut *mut ::std::os::raw::c_uchar,
10265    ) -> ::std::os::raw::c_int,
10266>;
10267pub type ASN1_ex_d2i = ::std::option::Option<
10268    unsafe extern "C" fn(
10269        pval: *mut *mut ASN1_VALUE,
10270        in_: *mut *const ::std::os::raw::c_uchar,
10271        len: ::std::os::raw::c_long,
10272        it: *const ASN1_ITEM,
10273        tag: ::std::os::raw::c_int,
10274        aclass: ::std::os::raw::c_int,
10275        opt: ::std::os::raw::c_char,
10276        ctx: *mut ASN1_TLC,
10277    ) -> ::std::os::raw::c_int,
10278>;
10279pub type ASN1_ex_i2d = ::std::option::Option<
10280    unsafe extern "C" fn(
10281        pval: *mut *mut ASN1_VALUE,
10282        out: *mut *mut ::std::os::raw::c_uchar,
10283        it: *const ASN1_ITEM,
10284        tag: ::std::os::raw::c_int,
10285        aclass: ::std::os::raw::c_int,
10286    ) -> ::std::os::raw::c_int,
10287>;
10288pub type ASN1_ex_new_func = ::std::option::Option<
10289    unsafe extern "C" fn(pval: *mut *mut ASN1_VALUE, it: *const ASN1_ITEM) -> ::std::os::raw::c_int,
10290>;
10291pub type ASN1_ex_free_func =
10292    ::std::option::Option<unsafe extern "C" fn(pval: *mut *mut ASN1_VALUE, it: *const ASN1_ITEM)>;
10293pub type ASN1_ex_print_func = ::std::option::Option<
10294    unsafe extern "C" fn(
10295        out: *mut BIO,
10296        pval: *mut *mut ASN1_VALUE,
10297        indent: ::std::os::raw::c_int,
10298        fname: *const ::std::os::raw::c_char,
10299        pctx: *const ASN1_PCTX,
10300    ) -> ::std::os::raw::c_int,
10301>;
10302#[repr(C)]
10303#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10304pub struct ASN1_EXTERN_FUNCS_st {
10305    pub app_data: *mut ::std::os::raw::c_void,
10306    pub asn1_ex_new: ASN1_ex_new_func,
10307    pub asn1_ex_free: ASN1_ex_free_func,
10308    pub asn1_ex_d2i: ASN1_ex_d2i,
10309    pub asn1_ex_i2d: ASN1_ex_i2d,
10310    pub asn1_ex_print: ASN1_ex_print_func,
10311}
10312#[test]
10313fn bindgen_test_layout_ASN1_EXTERN_FUNCS_st() {
10314    const UNINIT: ::std::mem::MaybeUninit<ASN1_EXTERN_FUNCS_st> = ::std::mem::MaybeUninit::uninit();
10315    let ptr = UNINIT.as_ptr();
10316    assert_eq!(
10317        ::std::mem::size_of::<ASN1_EXTERN_FUNCS_st>(),
10318        48usize,
10319        "Size of ASN1_EXTERN_FUNCS_st"
10320    );
10321    assert_eq!(
10322        ::std::mem::align_of::<ASN1_EXTERN_FUNCS_st>(),
10323        8usize,
10324        "Alignment of ASN1_EXTERN_FUNCS_st"
10325    );
10326    assert_eq!(
10327        unsafe { ::std::ptr::addr_of!((*ptr).app_data) as usize - ptr as usize },
10328        0usize,
10329        "Offset of field: ASN1_EXTERN_FUNCS_st::app_data"
10330    );
10331    assert_eq!(
10332        unsafe { ::std::ptr::addr_of!((*ptr).asn1_ex_new) as usize - ptr as usize },
10333        8usize,
10334        "Offset of field: ASN1_EXTERN_FUNCS_st::asn1_ex_new"
10335    );
10336    assert_eq!(
10337        unsafe { ::std::ptr::addr_of!((*ptr).asn1_ex_free) as usize - ptr as usize },
10338        16usize,
10339        "Offset of field: ASN1_EXTERN_FUNCS_st::asn1_ex_free"
10340    );
10341    assert_eq!(
10342        unsafe { ::std::ptr::addr_of!((*ptr).asn1_ex_d2i) as usize - ptr as usize },
10343        24usize,
10344        "Offset of field: ASN1_EXTERN_FUNCS_st::asn1_ex_d2i"
10345    );
10346    assert_eq!(
10347        unsafe { ::std::ptr::addr_of!((*ptr).asn1_ex_i2d) as usize - ptr as usize },
10348        32usize,
10349        "Offset of field: ASN1_EXTERN_FUNCS_st::asn1_ex_i2d"
10350    );
10351    assert_eq!(
10352        unsafe { ::std::ptr::addr_of!((*ptr).asn1_ex_print) as usize - ptr as usize },
10353        40usize,
10354        "Offset of field: ASN1_EXTERN_FUNCS_st::asn1_ex_print"
10355    );
10356}
10357impl Default for ASN1_EXTERN_FUNCS_st {
10358    fn default() -> Self {
10359        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10360        unsafe {
10361            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10362            s.assume_init()
10363        }
10364    }
10365}
10366pub type ASN1_EXTERN_FUNCS = ASN1_EXTERN_FUNCS_st;
10367pub type ASN1_aux_cb = ::std::option::Option<
10368    unsafe extern "C" fn(
10369        operation: ::std::os::raw::c_int,
10370        in_: *mut *mut ASN1_VALUE,
10371        it: *const ASN1_ITEM,
10372        exarg: *mut ::std::os::raw::c_void,
10373    ) -> ::std::os::raw::c_int,
10374>;
10375#[repr(C)]
10376#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10377pub struct ASN1_AUX_st {
10378    pub app_data: *mut ::std::os::raw::c_void,
10379    pub flags: u32,
10380    pub ref_offset: ::std::os::raw::c_int,
10381    pub asn1_cb: ASN1_aux_cb,
10382    pub enc_offset: ::std::os::raw::c_int,
10383}
10384#[test]
10385fn bindgen_test_layout_ASN1_AUX_st() {
10386    const UNINIT: ::std::mem::MaybeUninit<ASN1_AUX_st> = ::std::mem::MaybeUninit::uninit();
10387    let ptr = UNINIT.as_ptr();
10388    assert_eq!(
10389        ::std::mem::size_of::<ASN1_AUX_st>(),
10390        32usize,
10391        "Size of ASN1_AUX_st"
10392    );
10393    assert_eq!(
10394        ::std::mem::align_of::<ASN1_AUX_st>(),
10395        8usize,
10396        "Alignment of ASN1_AUX_st"
10397    );
10398    assert_eq!(
10399        unsafe { ::std::ptr::addr_of!((*ptr).app_data) as usize - ptr as usize },
10400        0usize,
10401        "Offset of field: ASN1_AUX_st::app_data"
10402    );
10403    assert_eq!(
10404        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
10405        8usize,
10406        "Offset of field: ASN1_AUX_st::flags"
10407    );
10408    assert_eq!(
10409        unsafe { ::std::ptr::addr_of!((*ptr).ref_offset) as usize - ptr as usize },
10410        12usize,
10411        "Offset of field: ASN1_AUX_st::ref_offset"
10412    );
10413    assert_eq!(
10414        unsafe { ::std::ptr::addr_of!((*ptr).asn1_cb) as usize - ptr as usize },
10415        16usize,
10416        "Offset of field: ASN1_AUX_st::asn1_cb"
10417    );
10418    assert_eq!(
10419        unsafe { ::std::ptr::addr_of!((*ptr).enc_offset) as usize - ptr as usize },
10420        24usize,
10421        "Offset of field: ASN1_AUX_st::enc_offset"
10422    );
10423}
10424impl Default for ASN1_AUX_st {
10425    fn default() -> Self {
10426        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10427        unsafe {
10428            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10429            s.assume_init()
10430        }
10431    }
10432}
10433pub type ASN1_AUX = ASN1_AUX_st;
10434extern "C" {
10435    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_SEQUENCE_it"]
10436    pub static ASN1_SEQUENCE_it: ASN1_ITEM;
10437}
10438#[repr(C)]
10439#[derive(Debug, Copy, Clone)]
10440pub struct stack_st_ASN1_VALUE {
10441    _unused: [u8; 0],
10442}
10443pub type sk_ASN1_VALUE_free_func =
10444    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ASN1_VALUE)>;
10445pub type sk_ASN1_VALUE_copy_func =
10446    ::std::option::Option<unsafe extern "C" fn(arg1: *const ASN1_VALUE) -> *mut ASN1_VALUE>;
10447pub type sk_ASN1_VALUE_cmp_func = ::std::option::Option<
10448    unsafe extern "C" fn(
10449        arg1: *const *const ASN1_VALUE,
10450        arg2: *const *const ASN1_VALUE,
10451    ) -> ::std::os::raw::c_int,
10452>;
10453pub type sk_ASN1_VALUE_delete_if_func = ::std::option::Option<
10454    unsafe extern "C" fn(
10455        arg1: *mut ASN1_VALUE,
10456        arg2: *mut ::std::os::raw::c_void,
10457    ) -> ::std::os::raw::c_int,
10458>;
10459extern "C" {
10460    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncodeBlock"]
10461    pub fn EVP_EncodeBlock(dst: *mut u8, src: *const u8, src_len: usize) -> usize;
10462}
10463extern "C" {
10464    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncodedLength"]
10465    pub fn EVP_EncodedLength(out_len: *mut usize, len: usize) -> ::std::os::raw::c_int;
10466}
10467extern "C" {
10468    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecodedLength"]
10469    pub fn EVP_DecodedLength(out_len: *mut usize, len: usize) -> ::std::os::raw::c_int;
10470}
10471extern "C" {
10472    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecodeBase64"]
10473    pub fn EVP_DecodeBase64(
10474        out: *mut u8,
10475        out_len: *mut usize,
10476        max_out: usize,
10477        in_: *const u8,
10478        in_len: usize,
10479    ) -> ::std::os::raw::c_int;
10480}
10481extern "C" {
10482    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_ENCODE_CTX_new"]
10483    pub fn EVP_ENCODE_CTX_new() -> *mut EVP_ENCODE_CTX;
10484}
10485extern "C" {
10486    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_ENCODE_CTX_free"]
10487    pub fn EVP_ENCODE_CTX_free(ctx: *mut EVP_ENCODE_CTX);
10488}
10489extern "C" {
10490    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncodeInit"]
10491    pub fn EVP_EncodeInit(ctx: *mut EVP_ENCODE_CTX);
10492}
10493extern "C" {
10494    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncodeUpdate"]
10495    pub fn EVP_EncodeUpdate(
10496        ctx: *mut EVP_ENCODE_CTX,
10497        out: *mut u8,
10498        out_len: *mut ::std::os::raw::c_int,
10499        in_: *const u8,
10500        in_len: usize,
10501    ) -> ::std::os::raw::c_int;
10502}
10503extern "C" {
10504    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncodeFinal"]
10505    pub fn EVP_EncodeFinal(
10506        ctx: *mut EVP_ENCODE_CTX,
10507        out: *mut u8,
10508        out_len: *mut ::std::os::raw::c_int,
10509    );
10510}
10511extern "C" {
10512    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecodeInit"]
10513    pub fn EVP_DecodeInit(ctx: *mut EVP_ENCODE_CTX);
10514}
10515extern "C" {
10516    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecodeUpdate"]
10517    pub fn EVP_DecodeUpdate(
10518        ctx: *mut EVP_ENCODE_CTX,
10519        out: *mut u8,
10520        out_len: *mut ::std::os::raw::c_int,
10521        in_: *const u8,
10522        in_len: usize,
10523    ) -> ::std::os::raw::c_int;
10524}
10525extern "C" {
10526    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecodeFinal"]
10527    pub fn EVP_DecodeFinal(
10528        ctx: *mut EVP_ENCODE_CTX,
10529        out: *mut u8,
10530        out_len: *mut ::std::os::raw::c_int,
10531    ) -> ::std::os::raw::c_int;
10532}
10533extern "C" {
10534    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecodeBlock"]
10535    pub fn EVP_DecodeBlock(dst: *mut u8, src: *const u8, src_len: usize) -> ::std::os::raw::c_int;
10536}
10537#[repr(C)]
10538#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10539pub struct evp_encode_ctx_st {
10540    pub data_used: ::std::os::raw::c_uint,
10541    pub data: [u8; 48usize],
10542    pub eof_seen: ::std::os::raw::c_char,
10543    pub error_encountered: ::std::os::raw::c_char,
10544}
10545#[test]
10546fn bindgen_test_layout_evp_encode_ctx_st() {
10547    const UNINIT: ::std::mem::MaybeUninit<evp_encode_ctx_st> = ::std::mem::MaybeUninit::uninit();
10548    let ptr = UNINIT.as_ptr();
10549    assert_eq!(
10550        ::std::mem::size_of::<evp_encode_ctx_st>(),
10551        56usize,
10552        "Size of evp_encode_ctx_st"
10553    );
10554    assert_eq!(
10555        ::std::mem::align_of::<evp_encode_ctx_st>(),
10556        4usize,
10557        "Alignment of evp_encode_ctx_st"
10558    );
10559    assert_eq!(
10560        unsafe { ::std::ptr::addr_of!((*ptr).data_used) as usize - ptr as usize },
10561        0usize,
10562        "Offset of field: evp_encode_ctx_st::data_used"
10563    );
10564    assert_eq!(
10565        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
10566        4usize,
10567        "Offset of field: evp_encode_ctx_st::data"
10568    );
10569    assert_eq!(
10570        unsafe { ::std::ptr::addr_of!((*ptr).eof_seen) as usize - ptr as usize },
10571        52usize,
10572        "Offset of field: evp_encode_ctx_st::eof_seen"
10573    );
10574    assert_eq!(
10575        unsafe { ::std::ptr::addr_of!((*ptr).error_encountered) as usize - ptr as usize },
10576        53usize,
10577        "Offset of field: evp_encode_ctx_st::error_encountered"
10578    );
10579}
10580impl Default for evp_encode_ctx_st {
10581    fn default() -> Self {
10582        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10583        unsafe {
10584            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10585            s.assume_init()
10586        }
10587    }
10588}
10589#[repr(C)]
10590#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10591pub struct blake2b_state_st {
10592    pub h: [u64; 8usize],
10593    pub t_low: u64,
10594    pub t_high: u64,
10595    pub block: [u8; 128usize],
10596    pub block_used: usize,
10597}
10598#[test]
10599fn bindgen_test_layout_blake2b_state_st() {
10600    const UNINIT: ::std::mem::MaybeUninit<blake2b_state_st> = ::std::mem::MaybeUninit::uninit();
10601    let ptr = UNINIT.as_ptr();
10602    assert_eq!(
10603        ::std::mem::size_of::<blake2b_state_st>(),
10604        216usize,
10605        "Size of blake2b_state_st"
10606    );
10607    assert_eq!(
10608        ::std::mem::align_of::<blake2b_state_st>(),
10609        8usize,
10610        "Alignment of blake2b_state_st"
10611    );
10612    assert_eq!(
10613        unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
10614        0usize,
10615        "Offset of field: blake2b_state_st::h"
10616    );
10617    assert_eq!(
10618        unsafe { ::std::ptr::addr_of!((*ptr).t_low) as usize - ptr as usize },
10619        64usize,
10620        "Offset of field: blake2b_state_st::t_low"
10621    );
10622    assert_eq!(
10623        unsafe { ::std::ptr::addr_of!((*ptr).t_high) as usize - ptr as usize },
10624        72usize,
10625        "Offset of field: blake2b_state_st::t_high"
10626    );
10627    assert_eq!(
10628        unsafe { ::std::ptr::addr_of!((*ptr).block) as usize - ptr as usize },
10629        80usize,
10630        "Offset of field: blake2b_state_st::block"
10631    );
10632    assert_eq!(
10633        unsafe { ::std::ptr::addr_of!((*ptr).block_used) as usize - ptr as usize },
10634        208usize,
10635        "Offset of field: blake2b_state_st::block_used"
10636    );
10637}
10638impl Default for blake2b_state_st {
10639    fn default() -> Self {
10640        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10641        unsafe {
10642            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10643            s.assume_init()
10644        }
10645    }
10646}
10647extern "C" {
10648    #[link_name = "\u{1}aws_lc_fips_0_13_10_BLAKE2B256_Init"]
10649    pub fn BLAKE2B256_Init(b2b: *mut BLAKE2B_CTX);
10650}
10651extern "C" {
10652    #[link_name = "\u{1}aws_lc_fips_0_13_10_BLAKE2B256_Update"]
10653    pub fn BLAKE2B256_Update(
10654        b2b: *mut BLAKE2B_CTX,
10655        data: *const ::std::os::raw::c_void,
10656        len: usize,
10657    );
10658}
10659extern "C" {
10660    #[link_name = "\u{1}aws_lc_fips_0_13_10_BLAKE2B256_Final"]
10661    pub fn BLAKE2B256_Final(out: *mut u8, b2b: *mut BLAKE2B_CTX);
10662}
10663extern "C" {
10664    #[link_name = "\u{1}aws_lc_fips_0_13_10_BLAKE2B256"]
10665    pub fn BLAKE2B256(data: *const u8, len: usize, out: *mut u8);
10666}
10667#[repr(C)]
10668#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10669pub struct bf_key_st {
10670    pub P: [u32; 18usize],
10671    pub S: [u32; 1024usize],
10672}
10673#[test]
10674fn bindgen_test_layout_bf_key_st() {
10675    const UNINIT: ::std::mem::MaybeUninit<bf_key_st> = ::std::mem::MaybeUninit::uninit();
10676    let ptr = UNINIT.as_ptr();
10677    assert_eq!(
10678        ::std::mem::size_of::<bf_key_st>(),
10679        4168usize,
10680        "Size of bf_key_st"
10681    );
10682    assert_eq!(
10683        ::std::mem::align_of::<bf_key_st>(),
10684        4usize,
10685        "Alignment of bf_key_st"
10686    );
10687    assert_eq!(
10688        unsafe { ::std::ptr::addr_of!((*ptr).P) as usize - ptr as usize },
10689        0usize,
10690        "Offset of field: bf_key_st::P"
10691    );
10692    assert_eq!(
10693        unsafe { ::std::ptr::addr_of!((*ptr).S) as usize - ptr as usize },
10694        72usize,
10695        "Offset of field: bf_key_st::S"
10696    );
10697}
10698impl Default for bf_key_st {
10699    fn default() -> Self {
10700        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10701        unsafe {
10702            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10703            s.assume_init()
10704        }
10705    }
10706}
10707pub type BF_KEY = bf_key_st;
10708extern "C" {
10709    #[link_name = "\u{1}aws_lc_fips_0_13_10_BF_set_key"]
10710    pub fn BF_set_key(key: *mut BF_KEY, len: usize, data: *const u8);
10711}
10712extern "C" {
10713    #[link_name = "\u{1}aws_lc_fips_0_13_10_BF_encrypt"]
10714    pub fn BF_encrypt(data: *mut u32, key: *const BF_KEY);
10715}
10716extern "C" {
10717    #[link_name = "\u{1}aws_lc_fips_0_13_10_BF_decrypt"]
10718    pub fn BF_decrypt(data: *mut u32, key: *const BF_KEY);
10719}
10720extern "C" {
10721    #[link_name = "\u{1}aws_lc_fips_0_13_10_BF_ecb_encrypt"]
10722    pub fn BF_ecb_encrypt(
10723        in_: *const u8,
10724        out: *mut u8,
10725        key: *const BF_KEY,
10726        enc: ::std::os::raw::c_int,
10727    );
10728}
10729extern "C" {
10730    #[link_name = "\u{1}aws_lc_fips_0_13_10_BF_cbc_encrypt"]
10731    pub fn BF_cbc_encrypt(
10732        in_: *const u8,
10733        out: *mut u8,
10734        length: usize,
10735        schedule: *const BF_KEY,
10736        ivec: *mut u8,
10737        enc: ::std::os::raw::c_int,
10738    );
10739}
10740#[repr(C)]
10741#[derive(Debug, Copy, Clone, PartialEq, Eq)]
10742pub struct cbs_st {
10743    pub data: *const u8,
10744    pub len: usize,
10745}
10746#[test]
10747fn bindgen_test_layout_cbs_st() {
10748    const UNINIT: ::std::mem::MaybeUninit<cbs_st> = ::std::mem::MaybeUninit::uninit();
10749    let ptr = UNINIT.as_ptr();
10750    assert_eq!(::std::mem::size_of::<cbs_st>(), 16usize, "Size of cbs_st");
10751    assert_eq!(
10752        ::std::mem::align_of::<cbs_st>(),
10753        8usize,
10754        "Alignment of cbs_st"
10755    );
10756    assert_eq!(
10757        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
10758        0usize,
10759        "Offset of field: cbs_st::data"
10760    );
10761    assert_eq!(
10762        unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize },
10763        8usize,
10764        "Offset of field: cbs_st::len"
10765    );
10766}
10767impl Default for cbs_st {
10768    fn default() -> Self {
10769        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
10770        unsafe {
10771            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
10772            s.assume_init()
10773        }
10774    }
10775}
10776extern "C" {
10777    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_init"]
10778    pub fn CBS_init(cbs: *mut CBS, data: *const u8, len: usize);
10779}
10780extern "C" {
10781    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_skip"]
10782    pub fn CBS_skip(cbs: *mut CBS, len: usize) -> ::std::os::raw::c_int;
10783}
10784extern "C" {
10785    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_data"]
10786    pub fn CBS_data(cbs: *const CBS) -> *const u8;
10787}
10788extern "C" {
10789    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_len"]
10790    pub fn CBS_len(cbs: *const CBS) -> usize;
10791}
10792extern "C" {
10793    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_stow"]
10794    pub fn CBS_stow(
10795        cbs: *const CBS,
10796        out_ptr: *mut *mut u8,
10797        out_len: *mut usize,
10798    ) -> ::std::os::raw::c_int;
10799}
10800extern "C" {
10801    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_strdup"]
10802    pub fn CBS_strdup(
10803        cbs: *const CBS,
10804        out_ptr: *mut *mut ::std::os::raw::c_char,
10805    ) -> ::std::os::raw::c_int;
10806}
10807extern "C" {
10808    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_contains_zero_byte"]
10809    pub fn CBS_contains_zero_byte(cbs: *const CBS) -> ::std::os::raw::c_int;
10810}
10811extern "C" {
10812    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_mem_equal"]
10813    pub fn CBS_mem_equal(cbs: *const CBS, data: *const u8, len: usize) -> ::std::os::raw::c_int;
10814}
10815extern "C" {
10816    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u8"]
10817    pub fn CBS_get_u8(cbs: *mut CBS, out: *mut u8) -> ::std::os::raw::c_int;
10818}
10819extern "C" {
10820    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u16"]
10821    pub fn CBS_get_u16(cbs: *mut CBS, out: *mut u16) -> ::std::os::raw::c_int;
10822}
10823extern "C" {
10824    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u16le"]
10825    pub fn CBS_get_u16le(cbs: *mut CBS, out: *mut u16) -> ::std::os::raw::c_int;
10826}
10827extern "C" {
10828    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u24"]
10829    pub fn CBS_get_u24(cbs: *mut CBS, out: *mut u32) -> ::std::os::raw::c_int;
10830}
10831extern "C" {
10832    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u32"]
10833    pub fn CBS_get_u32(cbs: *mut CBS, out: *mut u32) -> ::std::os::raw::c_int;
10834}
10835extern "C" {
10836    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u32le"]
10837    pub fn CBS_get_u32le(cbs: *mut CBS, out: *mut u32) -> ::std::os::raw::c_int;
10838}
10839extern "C" {
10840    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u64"]
10841    pub fn CBS_get_u64(cbs: *mut CBS, out: *mut u64) -> ::std::os::raw::c_int;
10842}
10843extern "C" {
10844    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u64le"]
10845    pub fn CBS_get_u64le(cbs: *mut CBS, out: *mut u64) -> ::std::os::raw::c_int;
10846}
10847extern "C" {
10848    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_last_u8"]
10849    pub fn CBS_get_last_u8(cbs: *mut CBS, out: *mut u8) -> ::std::os::raw::c_int;
10850}
10851extern "C" {
10852    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_bytes"]
10853    pub fn CBS_get_bytes(cbs: *mut CBS, out: *mut CBS, len: usize) -> ::std::os::raw::c_int;
10854}
10855extern "C" {
10856    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_copy_bytes"]
10857    pub fn CBS_copy_bytes(cbs: *mut CBS, out: *mut u8, len: usize) -> ::std::os::raw::c_int;
10858}
10859extern "C" {
10860    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u8_length_prefixed"]
10861    pub fn CBS_get_u8_length_prefixed(cbs: *mut CBS, out: *mut CBS) -> ::std::os::raw::c_int;
10862}
10863extern "C" {
10864    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u16_length_prefixed"]
10865    pub fn CBS_get_u16_length_prefixed(cbs: *mut CBS, out: *mut CBS) -> ::std::os::raw::c_int;
10866}
10867extern "C" {
10868    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u24_length_prefixed"]
10869    pub fn CBS_get_u24_length_prefixed(cbs: *mut CBS, out: *mut CBS) -> ::std::os::raw::c_int;
10870}
10871extern "C" {
10872    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_until_first"]
10873    pub fn CBS_get_until_first(cbs: *mut CBS, out: *mut CBS, c: u8) -> ::std::os::raw::c_int;
10874}
10875extern "C" {
10876    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_u64_decimal"]
10877    pub fn CBS_get_u64_decimal(cbs: *mut CBS, out: *mut u64) -> ::std::os::raw::c_int;
10878}
10879extern "C" {
10880    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_asn1"]
10881    pub fn CBS_get_asn1(
10882        cbs: *mut CBS,
10883        out: *mut CBS,
10884        tag_value: CBS_ASN1_TAG,
10885    ) -> ::std::os::raw::c_int;
10886}
10887extern "C" {
10888    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_asn1_element"]
10889    pub fn CBS_get_asn1_element(
10890        cbs: *mut CBS,
10891        out: *mut CBS,
10892        tag_value: CBS_ASN1_TAG,
10893    ) -> ::std::os::raw::c_int;
10894}
10895extern "C" {
10896    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_peek_asn1_tag"]
10897    pub fn CBS_peek_asn1_tag(cbs: *const CBS, tag_value: CBS_ASN1_TAG) -> ::std::os::raw::c_int;
10898}
10899extern "C" {
10900    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_any_asn1"]
10901    pub fn CBS_get_any_asn1(
10902        cbs: *mut CBS,
10903        out: *mut CBS,
10904        out_tag: *mut CBS_ASN1_TAG,
10905    ) -> ::std::os::raw::c_int;
10906}
10907extern "C" {
10908    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_any_asn1_element"]
10909    pub fn CBS_get_any_asn1_element(
10910        cbs: *mut CBS,
10911        out: *mut CBS,
10912        out_tag: *mut CBS_ASN1_TAG,
10913        out_header_len: *mut usize,
10914    ) -> ::std::os::raw::c_int;
10915}
10916extern "C" {
10917    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_any_ber_asn1_element"]
10918    pub fn CBS_get_any_ber_asn1_element(
10919        cbs: *mut CBS,
10920        out: *mut CBS,
10921        out_tag: *mut CBS_ASN1_TAG,
10922        out_header_len: *mut usize,
10923        out_ber_found: *mut ::std::os::raw::c_int,
10924        out_indefinite: *mut ::std::os::raw::c_int,
10925    ) -> ::std::os::raw::c_int;
10926}
10927extern "C" {
10928    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_asn1_uint64"]
10929    pub fn CBS_get_asn1_uint64(cbs: *mut CBS, out: *mut u64) -> ::std::os::raw::c_int;
10930}
10931extern "C" {
10932    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_asn1_int64"]
10933    pub fn CBS_get_asn1_int64(cbs: *mut CBS, out: *mut i64) -> ::std::os::raw::c_int;
10934}
10935extern "C" {
10936    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_asn1_bool"]
10937    pub fn CBS_get_asn1_bool(
10938        cbs: *mut CBS,
10939        out: *mut ::std::os::raw::c_int,
10940    ) -> ::std::os::raw::c_int;
10941}
10942extern "C" {
10943    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_optional_asn1"]
10944    pub fn CBS_get_optional_asn1(
10945        cbs: *mut CBS,
10946        out: *mut CBS,
10947        out_present: *mut ::std::os::raw::c_int,
10948        tag: CBS_ASN1_TAG,
10949    ) -> ::std::os::raw::c_int;
10950}
10951extern "C" {
10952    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_optional_asn1_octet_string"]
10953    pub fn CBS_get_optional_asn1_octet_string(
10954        cbs: *mut CBS,
10955        out: *mut CBS,
10956        out_present: *mut ::std::os::raw::c_int,
10957        tag: CBS_ASN1_TAG,
10958    ) -> ::std::os::raw::c_int;
10959}
10960extern "C" {
10961    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_optional_asn1_uint64"]
10962    pub fn CBS_get_optional_asn1_uint64(
10963        cbs: *mut CBS,
10964        out: *mut u64,
10965        tag: CBS_ASN1_TAG,
10966        default_value: u64,
10967    ) -> ::std::os::raw::c_int;
10968}
10969extern "C" {
10970    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_optional_asn1_bool"]
10971    pub fn CBS_get_optional_asn1_bool(
10972        cbs: *mut CBS,
10973        out: *mut ::std::os::raw::c_int,
10974        tag: CBS_ASN1_TAG,
10975        default_value: ::std::os::raw::c_int,
10976    ) -> ::std::os::raw::c_int;
10977}
10978extern "C" {
10979    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_is_valid_asn1_bitstring"]
10980    pub fn CBS_is_valid_asn1_bitstring(cbs: *const CBS) -> ::std::os::raw::c_int;
10981}
10982extern "C" {
10983    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_asn1_bitstring_has_bit"]
10984    pub fn CBS_asn1_bitstring_has_bit(
10985        cbs: *const CBS,
10986        bit: ::std::os::raw::c_uint,
10987    ) -> ::std::os::raw::c_int;
10988}
10989extern "C" {
10990    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_is_valid_asn1_integer"]
10991    pub fn CBS_is_valid_asn1_integer(
10992        cbs: *const CBS,
10993        out_is_negative: *mut ::std::os::raw::c_int,
10994    ) -> ::std::os::raw::c_int;
10995}
10996extern "C" {
10997    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_is_unsigned_asn1_integer"]
10998    pub fn CBS_is_unsigned_asn1_integer(cbs: *const CBS) -> ::std::os::raw::c_int;
10999}
11000extern "C" {
11001    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_is_valid_asn1_oid"]
11002    pub fn CBS_is_valid_asn1_oid(cbs: *const CBS) -> ::std::os::raw::c_int;
11003}
11004extern "C" {
11005    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_asn1_oid_to_text"]
11006    pub fn CBS_asn1_oid_to_text(cbs: *const CBS) -> *mut ::std::os::raw::c_char;
11007}
11008extern "C" {
11009    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_parse_generalized_time"]
11010    pub fn CBS_parse_generalized_time(
11011        cbs: *const CBS,
11012        out_tm: *mut tm,
11013        allow_timezone_offset: ::std::os::raw::c_int,
11014    ) -> ::std::os::raw::c_int;
11015}
11016extern "C" {
11017    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_parse_utc_time"]
11018    pub fn CBS_parse_utc_time(
11019        cbs: *const CBS,
11020        out_tm: *mut tm,
11021        allow_timezone_offset: ::std::os::raw::c_int,
11022    ) -> ::std::os::raw::c_int;
11023}
11024extern "C" {
11025    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBS_get_optional_asn1_int64"]
11026    pub fn CBS_get_optional_asn1_int64(
11027        cbs: *mut CBS,
11028        out: *mut i64,
11029        tag: CBS_ASN1_TAG,
11030        default_value: i64,
11031    ) -> ::std::os::raw::c_int;
11032}
11033#[repr(C)]
11034#[derive(Debug, Copy, Clone, PartialEq, Eq)]
11035pub struct cbb_buffer_st {
11036    pub buf: *mut u8,
11037    pub len: usize,
11038    pub cap: usize,
11039    pub _bitfield_align_1: [u8; 0],
11040    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
11041    pub __bindgen_padding_0: [u8; 7usize],
11042}
11043#[test]
11044fn bindgen_test_layout_cbb_buffer_st() {
11045    const UNINIT: ::std::mem::MaybeUninit<cbb_buffer_st> = ::std::mem::MaybeUninit::uninit();
11046    let ptr = UNINIT.as_ptr();
11047    assert_eq!(
11048        ::std::mem::size_of::<cbb_buffer_st>(),
11049        32usize,
11050        "Size of cbb_buffer_st"
11051    );
11052    assert_eq!(
11053        ::std::mem::align_of::<cbb_buffer_st>(),
11054        8usize,
11055        "Alignment of cbb_buffer_st"
11056    );
11057    assert_eq!(
11058        unsafe { ::std::ptr::addr_of!((*ptr).buf) as usize - ptr as usize },
11059        0usize,
11060        "Offset of field: cbb_buffer_st::buf"
11061    );
11062    assert_eq!(
11063        unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize },
11064        8usize,
11065        "Offset of field: cbb_buffer_st::len"
11066    );
11067    assert_eq!(
11068        unsafe { ::std::ptr::addr_of!((*ptr).cap) as usize - ptr as usize },
11069        16usize,
11070        "Offset of field: cbb_buffer_st::cap"
11071    );
11072}
11073impl Default for cbb_buffer_st {
11074    fn default() -> Self {
11075        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11076        unsafe {
11077            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11078            s.assume_init()
11079        }
11080    }
11081}
11082impl cbb_buffer_st {
11083    #[inline]
11084    pub fn can_resize(&self) -> ::std::os::raw::c_uint {
11085        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
11086    }
11087    #[inline]
11088    pub fn set_can_resize(&mut self, val: ::std::os::raw::c_uint) {
11089        unsafe {
11090            let val: u32 = ::std::mem::transmute(val);
11091            self._bitfield_1.set(0usize, 1u8, val as u64)
11092        }
11093    }
11094    #[inline]
11095    pub unsafe fn can_resize_raw(this: *const Self) -> ::std::os::raw::c_uint {
11096        unsafe {
11097            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
11098                ::std::ptr::addr_of!((*this)._bitfield_1),
11099                0usize,
11100                1u8,
11101            ) as u32)
11102        }
11103    }
11104    #[inline]
11105    pub unsafe fn set_can_resize_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
11106        unsafe {
11107            let val: u32 = ::std::mem::transmute(val);
11108            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
11109                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
11110                0usize,
11111                1u8,
11112                val as u64,
11113            )
11114        }
11115    }
11116    #[inline]
11117    pub fn error(&self) -> ::std::os::raw::c_uint {
11118        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
11119    }
11120    #[inline]
11121    pub fn set_error(&mut self, val: ::std::os::raw::c_uint) {
11122        unsafe {
11123            let val: u32 = ::std::mem::transmute(val);
11124            self._bitfield_1.set(1usize, 1u8, val as u64)
11125        }
11126    }
11127    #[inline]
11128    pub unsafe fn error_raw(this: *const Self) -> ::std::os::raw::c_uint {
11129        unsafe {
11130            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
11131                ::std::ptr::addr_of!((*this)._bitfield_1),
11132                1usize,
11133                1u8,
11134            ) as u32)
11135        }
11136    }
11137    #[inline]
11138    pub unsafe fn set_error_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
11139        unsafe {
11140            let val: u32 = ::std::mem::transmute(val);
11141            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
11142                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
11143                1usize,
11144                1u8,
11145                val as u64,
11146            )
11147        }
11148    }
11149    #[inline]
11150    pub fn new_bitfield_1(
11151        can_resize: ::std::os::raw::c_uint,
11152        error: ::std::os::raw::c_uint,
11153    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
11154        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
11155        __bindgen_bitfield_unit.set(0usize, 1u8, {
11156            let can_resize: u32 = unsafe { ::std::mem::transmute(can_resize) };
11157            can_resize as u64
11158        });
11159        __bindgen_bitfield_unit.set(1usize, 1u8, {
11160            let error: u32 = unsafe { ::std::mem::transmute(error) };
11161            error as u64
11162        });
11163        __bindgen_bitfield_unit
11164    }
11165}
11166#[repr(C)]
11167#[derive(Debug, Copy, Clone, PartialEq, Eq)]
11168pub struct cbb_child_st {
11169    pub base: *mut cbb_buffer_st,
11170    pub offset: usize,
11171    pub pending_len_len: u8,
11172    pub _bitfield_align_1: [u8; 0],
11173    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
11174    pub __bindgen_padding_0: [u16; 3usize],
11175}
11176#[test]
11177fn bindgen_test_layout_cbb_child_st() {
11178    const UNINIT: ::std::mem::MaybeUninit<cbb_child_st> = ::std::mem::MaybeUninit::uninit();
11179    let ptr = UNINIT.as_ptr();
11180    assert_eq!(
11181        ::std::mem::size_of::<cbb_child_st>(),
11182        24usize,
11183        "Size of cbb_child_st"
11184    );
11185    assert_eq!(
11186        ::std::mem::align_of::<cbb_child_st>(),
11187        8usize,
11188        "Alignment of cbb_child_st"
11189    );
11190    assert_eq!(
11191        unsafe { ::std::ptr::addr_of!((*ptr).base) as usize - ptr as usize },
11192        0usize,
11193        "Offset of field: cbb_child_st::base"
11194    );
11195    assert_eq!(
11196        unsafe { ::std::ptr::addr_of!((*ptr).offset) as usize - ptr as usize },
11197        8usize,
11198        "Offset of field: cbb_child_st::offset"
11199    );
11200    assert_eq!(
11201        unsafe { ::std::ptr::addr_of!((*ptr).pending_len_len) as usize - ptr as usize },
11202        16usize,
11203        "Offset of field: cbb_child_st::pending_len_len"
11204    );
11205}
11206impl Default for cbb_child_st {
11207    fn default() -> Self {
11208        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11209        unsafe {
11210            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11211            s.assume_init()
11212        }
11213    }
11214}
11215impl cbb_child_st {
11216    #[inline]
11217    pub fn pending_is_asn1(&self) -> ::std::os::raw::c_uint {
11218        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
11219    }
11220    #[inline]
11221    pub fn set_pending_is_asn1(&mut self, val: ::std::os::raw::c_uint) {
11222        unsafe {
11223            let val: u32 = ::std::mem::transmute(val);
11224            self._bitfield_1.set(0usize, 1u8, val as u64)
11225        }
11226    }
11227    #[inline]
11228    pub unsafe fn pending_is_asn1_raw(this: *const Self) -> ::std::os::raw::c_uint {
11229        unsafe {
11230            ::std::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(
11231                ::std::ptr::addr_of!((*this)._bitfield_1),
11232                0usize,
11233                1u8,
11234            ) as u32)
11235        }
11236    }
11237    #[inline]
11238    pub unsafe fn set_pending_is_asn1_raw(this: *mut Self, val: ::std::os::raw::c_uint) {
11239        unsafe {
11240            let val: u32 = ::std::mem::transmute(val);
11241            <__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(
11242                ::std::ptr::addr_of_mut!((*this)._bitfield_1),
11243                0usize,
11244                1u8,
11245                val as u64,
11246            )
11247        }
11248    }
11249    #[inline]
11250    pub fn new_bitfield_1(
11251        pending_is_asn1: ::std::os::raw::c_uint,
11252    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
11253        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
11254        __bindgen_bitfield_unit.set(0usize, 1u8, {
11255            let pending_is_asn1: u32 = unsafe { ::std::mem::transmute(pending_is_asn1) };
11256            pending_is_asn1 as u64
11257        });
11258        __bindgen_bitfield_unit
11259    }
11260}
11261#[repr(C)]
11262#[derive(Copy, Clone)]
11263pub struct cbb_st {
11264    pub child: *mut CBB,
11265    pub is_child: ::std::os::raw::c_char,
11266    pub u: cbb_st__bindgen_ty_1,
11267}
11268#[repr(C)]
11269#[derive(Copy, Clone)]
11270pub union cbb_st__bindgen_ty_1 {
11271    pub base: cbb_buffer_st,
11272    pub child: cbb_child_st,
11273}
11274#[test]
11275fn bindgen_test_layout_cbb_st__bindgen_ty_1() {
11276    const UNINIT: ::std::mem::MaybeUninit<cbb_st__bindgen_ty_1> = ::std::mem::MaybeUninit::uninit();
11277    let ptr = UNINIT.as_ptr();
11278    assert_eq!(
11279        ::std::mem::size_of::<cbb_st__bindgen_ty_1>(),
11280        32usize,
11281        "Size of cbb_st__bindgen_ty_1"
11282    );
11283    assert_eq!(
11284        ::std::mem::align_of::<cbb_st__bindgen_ty_1>(),
11285        8usize,
11286        "Alignment of cbb_st__bindgen_ty_1"
11287    );
11288    assert_eq!(
11289        unsafe { ::std::ptr::addr_of!((*ptr).base) as usize - ptr as usize },
11290        0usize,
11291        "Offset of field: cbb_st__bindgen_ty_1::base"
11292    );
11293    assert_eq!(
11294        unsafe { ::std::ptr::addr_of!((*ptr).child) as usize - ptr as usize },
11295        0usize,
11296        "Offset of field: cbb_st__bindgen_ty_1::child"
11297    );
11298}
11299impl Default for cbb_st__bindgen_ty_1 {
11300    fn default() -> Self {
11301        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11302        unsafe {
11303            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11304            s.assume_init()
11305        }
11306    }
11307}
11308#[test]
11309fn bindgen_test_layout_cbb_st() {
11310    const UNINIT: ::std::mem::MaybeUninit<cbb_st> = ::std::mem::MaybeUninit::uninit();
11311    let ptr = UNINIT.as_ptr();
11312    assert_eq!(::std::mem::size_of::<cbb_st>(), 48usize, "Size of cbb_st");
11313    assert_eq!(
11314        ::std::mem::align_of::<cbb_st>(),
11315        8usize,
11316        "Alignment of cbb_st"
11317    );
11318    assert_eq!(
11319        unsafe { ::std::ptr::addr_of!((*ptr).child) as usize - ptr as usize },
11320        0usize,
11321        "Offset of field: cbb_st::child"
11322    );
11323    assert_eq!(
11324        unsafe { ::std::ptr::addr_of!((*ptr).is_child) as usize - ptr as usize },
11325        8usize,
11326        "Offset of field: cbb_st::is_child"
11327    );
11328    assert_eq!(
11329        unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize },
11330        16usize,
11331        "Offset of field: cbb_st::u"
11332    );
11333}
11334impl Default for cbb_st {
11335    fn default() -> Self {
11336        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
11337        unsafe {
11338            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
11339            s.assume_init()
11340        }
11341    }
11342}
11343extern "C" {
11344    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_zero"]
11345    pub fn CBB_zero(cbb: *mut CBB);
11346}
11347extern "C" {
11348    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_init"]
11349    pub fn CBB_init(cbb: *mut CBB, initial_capacity: usize) -> ::std::os::raw::c_int;
11350}
11351extern "C" {
11352    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_init_fixed"]
11353    pub fn CBB_init_fixed(cbb: *mut CBB, buf: *mut u8, len: usize) -> ::std::os::raw::c_int;
11354}
11355extern "C" {
11356    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_cleanup"]
11357    pub fn CBB_cleanup(cbb: *mut CBB);
11358}
11359extern "C" {
11360    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_finish"]
11361    pub fn CBB_finish(
11362        cbb: *mut CBB,
11363        out_data: *mut *mut u8,
11364        out_len: *mut usize,
11365    ) -> ::std::os::raw::c_int;
11366}
11367extern "C" {
11368    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_flush"]
11369    pub fn CBB_flush(cbb: *mut CBB) -> ::std::os::raw::c_int;
11370}
11371extern "C" {
11372    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_data"]
11373    pub fn CBB_data(cbb: *const CBB) -> *const u8;
11374}
11375extern "C" {
11376    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_len"]
11377    pub fn CBB_len(cbb: *const CBB) -> usize;
11378}
11379extern "C" {
11380    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u8_length_prefixed"]
11381    pub fn CBB_add_u8_length_prefixed(
11382        cbb: *mut CBB,
11383        out_contents: *mut CBB,
11384    ) -> ::std::os::raw::c_int;
11385}
11386extern "C" {
11387    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u16_length_prefixed"]
11388    pub fn CBB_add_u16_length_prefixed(
11389        cbb: *mut CBB,
11390        out_contents: *mut CBB,
11391    ) -> ::std::os::raw::c_int;
11392}
11393extern "C" {
11394    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u24_length_prefixed"]
11395    pub fn CBB_add_u24_length_prefixed(
11396        cbb: *mut CBB,
11397        out_contents: *mut CBB,
11398    ) -> ::std::os::raw::c_int;
11399}
11400extern "C" {
11401    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_asn1"]
11402    pub fn CBB_add_asn1(
11403        cbb: *mut CBB,
11404        out_contents: *mut CBB,
11405        tag: CBS_ASN1_TAG,
11406    ) -> ::std::os::raw::c_int;
11407}
11408extern "C" {
11409    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_bytes"]
11410    pub fn CBB_add_bytes(cbb: *mut CBB, data: *const u8, len: usize) -> ::std::os::raw::c_int;
11411}
11412extern "C" {
11413    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_zeros"]
11414    pub fn CBB_add_zeros(cbb: *mut CBB, len: usize) -> ::std::os::raw::c_int;
11415}
11416extern "C" {
11417    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_space"]
11418    pub fn CBB_add_space(
11419        cbb: *mut CBB,
11420        out_data: *mut *mut u8,
11421        len: usize,
11422    ) -> ::std::os::raw::c_int;
11423}
11424extern "C" {
11425    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_reserve"]
11426    pub fn CBB_reserve(cbb: *mut CBB, out_data: *mut *mut u8, len: usize) -> ::std::os::raw::c_int;
11427}
11428extern "C" {
11429    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_did_write"]
11430    pub fn CBB_did_write(cbb: *mut CBB, len: usize) -> ::std::os::raw::c_int;
11431}
11432extern "C" {
11433    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u8"]
11434    pub fn CBB_add_u8(cbb: *mut CBB, value: u8) -> ::std::os::raw::c_int;
11435}
11436extern "C" {
11437    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u16"]
11438    pub fn CBB_add_u16(cbb: *mut CBB, value: u16) -> ::std::os::raw::c_int;
11439}
11440extern "C" {
11441    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u16le"]
11442    pub fn CBB_add_u16le(cbb: *mut CBB, value: u16) -> ::std::os::raw::c_int;
11443}
11444extern "C" {
11445    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u24"]
11446    pub fn CBB_add_u24(cbb: *mut CBB, value: u32) -> ::std::os::raw::c_int;
11447}
11448extern "C" {
11449    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u32"]
11450    pub fn CBB_add_u32(cbb: *mut CBB, value: u32) -> ::std::os::raw::c_int;
11451}
11452extern "C" {
11453    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u32le"]
11454    pub fn CBB_add_u32le(cbb: *mut CBB, value: u32) -> ::std::os::raw::c_int;
11455}
11456extern "C" {
11457    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u64"]
11458    pub fn CBB_add_u64(cbb: *mut CBB, value: u64) -> ::std::os::raw::c_int;
11459}
11460extern "C" {
11461    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_u64le"]
11462    pub fn CBB_add_u64le(cbb: *mut CBB, value: u64) -> ::std::os::raw::c_int;
11463}
11464extern "C" {
11465    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_discard_child"]
11466    pub fn CBB_discard_child(cbb: *mut CBB);
11467}
11468extern "C" {
11469    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_asn1_uint64"]
11470    pub fn CBB_add_asn1_uint64(cbb: *mut CBB, value: u64) -> ::std::os::raw::c_int;
11471}
11472extern "C" {
11473    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_asn1_uint64_with_tag"]
11474    pub fn CBB_add_asn1_uint64_with_tag(
11475        cbb: *mut CBB,
11476        value: u64,
11477        tag: CBS_ASN1_TAG,
11478    ) -> ::std::os::raw::c_int;
11479}
11480extern "C" {
11481    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_asn1_int64"]
11482    pub fn CBB_add_asn1_int64(cbb: *mut CBB, value: i64) -> ::std::os::raw::c_int;
11483}
11484extern "C" {
11485    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_asn1_int64_with_tag"]
11486    pub fn CBB_add_asn1_int64_with_tag(
11487        cbb: *mut CBB,
11488        value: i64,
11489        tag: CBS_ASN1_TAG,
11490    ) -> ::std::os::raw::c_int;
11491}
11492extern "C" {
11493    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_asn1_octet_string"]
11494    pub fn CBB_add_asn1_octet_string(
11495        cbb: *mut CBB,
11496        data: *const u8,
11497        data_len: usize,
11498    ) -> ::std::os::raw::c_int;
11499}
11500extern "C" {
11501    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_asn1_bool"]
11502    pub fn CBB_add_asn1_bool(cbb: *mut CBB, value: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
11503}
11504extern "C" {
11505    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_add_asn1_oid_from_text"]
11506    pub fn CBB_add_asn1_oid_from_text(
11507        cbb: *mut CBB,
11508        text: *const ::std::os::raw::c_char,
11509        len: usize,
11510    ) -> ::std::os::raw::c_int;
11511}
11512extern "C" {
11513    #[link_name = "\u{1}aws_lc_fips_0_13_10_CBB_flush_asn1_set_of"]
11514    pub fn CBB_flush_asn1_set_of(cbb: *mut CBB) -> ::std::os::raw::c_int;
11515}
11516extern "C" {
11517    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_chacha_20"]
11518    pub fn CRYPTO_chacha_20(
11519        out: *mut u8,
11520        in_: *const u8,
11521        in_len: usize,
11522        key: *const u8,
11523        nonce: *const u8,
11524        counter: u32,
11525    );
11526}
11527extern "C" {
11528    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_rc4"]
11529    pub fn EVP_rc4() -> *const EVP_CIPHER;
11530}
11531extern "C" {
11532    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_des_cbc"]
11533    pub fn EVP_des_cbc() -> *const EVP_CIPHER;
11534}
11535extern "C" {
11536    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_des_ecb"]
11537    pub fn EVP_des_ecb() -> *const EVP_CIPHER;
11538}
11539extern "C" {
11540    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_des_ede"]
11541    pub fn EVP_des_ede() -> *const EVP_CIPHER;
11542}
11543extern "C" {
11544    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_des_ede3"]
11545    pub fn EVP_des_ede3() -> *const EVP_CIPHER;
11546}
11547extern "C" {
11548    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_des_ede_cbc"]
11549    pub fn EVP_des_ede_cbc() -> *const EVP_CIPHER;
11550}
11551extern "C" {
11552    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_des_ede3_cbc"]
11553    pub fn EVP_des_ede3_cbc() -> *const EVP_CIPHER;
11554}
11555extern "C" {
11556    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_ecb"]
11557    pub fn EVP_aes_128_ecb() -> *const EVP_CIPHER;
11558}
11559extern "C" {
11560    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_cbc"]
11561    pub fn EVP_aes_128_cbc() -> *const EVP_CIPHER;
11562}
11563extern "C" {
11564    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_ctr"]
11565    pub fn EVP_aes_128_ctr() -> *const EVP_CIPHER;
11566}
11567extern "C" {
11568    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_ofb"]
11569    pub fn EVP_aes_128_ofb() -> *const EVP_CIPHER;
11570}
11571extern "C" {
11572    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_ecb"]
11573    pub fn EVP_aes_256_ecb() -> *const EVP_CIPHER;
11574}
11575extern "C" {
11576    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_cbc"]
11577    pub fn EVP_aes_256_cbc() -> *const EVP_CIPHER;
11578}
11579extern "C" {
11580    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_ctr"]
11581    pub fn EVP_aes_256_ctr() -> *const EVP_CIPHER;
11582}
11583extern "C" {
11584    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_ofb"]
11585    pub fn EVP_aes_256_ofb() -> *const EVP_CIPHER;
11586}
11587extern "C" {
11588    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_xts"]
11589    pub fn EVP_aes_256_xts() -> *const EVP_CIPHER;
11590}
11591extern "C" {
11592    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_wrap"]
11593    pub fn EVP_aes_256_wrap() -> *const EVP_CIPHER;
11594}
11595extern "C" {
11596    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_enc_null"]
11597    pub fn EVP_enc_null() -> *const EVP_CIPHER;
11598}
11599extern "C" {
11600    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_rc2_cbc"]
11601    pub fn EVP_rc2_cbc() -> *const EVP_CIPHER;
11602}
11603extern "C" {
11604    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_rc2_40_cbc"]
11605    pub fn EVP_rc2_40_cbc() -> *const EVP_CIPHER;
11606}
11607extern "C" {
11608    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_chacha20_poly1305"]
11609    pub fn EVP_chacha20_poly1305() -> *const EVP_CIPHER;
11610}
11611extern "C" {
11612    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_get_cipherbynid"]
11613    pub fn EVP_get_cipherbynid(nid: ::std::os::raw::c_int) -> *const EVP_CIPHER;
11614}
11615extern "C" {
11616    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_init"]
11617    pub fn EVP_CIPHER_CTX_init(ctx: *mut EVP_CIPHER_CTX);
11618}
11619extern "C" {
11620    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_new"]
11621    pub fn EVP_CIPHER_CTX_new() -> *mut EVP_CIPHER_CTX;
11622}
11623extern "C" {
11624    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_cleanup"]
11625    pub fn EVP_CIPHER_CTX_cleanup(ctx: *mut EVP_CIPHER_CTX) -> ::std::os::raw::c_int;
11626}
11627extern "C" {
11628    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_free"]
11629    pub fn EVP_CIPHER_CTX_free(ctx: *mut EVP_CIPHER_CTX);
11630}
11631extern "C" {
11632    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_copy"]
11633    pub fn EVP_CIPHER_CTX_copy(
11634        out: *mut EVP_CIPHER_CTX,
11635        in_: *const EVP_CIPHER_CTX,
11636    ) -> ::std::os::raw::c_int;
11637}
11638extern "C" {
11639    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_reset"]
11640    pub fn EVP_CIPHER_CTX_reset(ctx: *mut EVP_CIPHER_CTX) -> ::std::os::raw::c_int;
11641}
11642extern "C" {
11643    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CipherInit_ex"]
11644    pub fn EVP_CipherInit_ex(
11645        ctx: *mut EVP_CIPHER_CTX,
11646        cipher: *const EVP_CIPHER,
11647        engine: *mut ENGINE,
11648        key: *const u8,
11649        iv: *const u8,
11650        enc: ::std::os::raw::c_int,
11651    ) -> ::std::os::raw::c_int;
11652}
11653extern "C" {
11654    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncryptInit_ex"]
11655    pub fn EVP_EncryptInit_ex(
11656        ctx: *mut EVP_CIPHER_CTX,
11657        cipher: *const EVP_CIPHER,
11658        impl_: *mut ENGINE,
11659        key: *const u8,
11660        iv: *const u8,
11661    ) -> ::std::os::raw::c_int;
11662}
11663extern "C" {
11664    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecryptInit_ex"]
11665    pub fn EVP_DecryptInit_ex(
11666        ctx: *mut EVP_CIPHER_CTX,
11667        cipher: *const EVP_CIPHER,
11668        impl_: *mut ENGINE,
11669        key: *const u8,
11670        iv: *const u8,
11671    ) -> ::std::os::raw::c_int;
11672}
11673extern "C" {
11674    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncryptUpdate"]
11675    pub fn EVP_EncryptUpdate(
11676        ctx: *mut EVP_CIPHER_CTX,
11677        out: *mut u8,
11678        out_len: *mut ::std::os::raw::c_int,
11679        in_: *const u8,
11680        in_len: ::std::os::raw::c_int,
11681    ) -> ::std::os::raw::c_int;
11682}
11683extern "C" {
11684    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncryptFinal_ex"]
11685    pub fn EVP_EncryptFinal_ex(
11686        ctx: *mut EVP_CIPHER_CTX,
11687        out: *mut u8,
11688        out_len: *mut ::std::os::raw::c_int,
11689    ) -> ::std::os::raw::c_int;
11690}
11691extern "C" {
11692    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecryptUpdate"]
11693    pub fn EVP_DecryptUpdate(
11694        ctx: *mut EVP_CIPHER_CTX,
11695        out: *mut u8,
11696        out_len: *mut ::std::os::raw::c_int,
11697        in_: *const u8,
11698        in_len: ::std::os::raw::c_int,
11699    ) -> ::std::os::raw::c_int;
11700}
11701extern "C" {
11702    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecryptFinal_ex"]
11703    pub fn EVP_DecryptFinal_ex(
11704        ctx: *mut EVP_CIPHER_CTX,
11705        out: *mut u8,
11706        out_len: *mut ::std::os::raw::c_int,
11707    ) -> ::std::os::raw::c_int;
11708}
11709extern "C" {
11710    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CipherUpdate"]
11711    pub fn EVP_CipherUpdate(
11712        ctx: *mut EVP_CIPHER_CTX,
11713        out: *mut u8,
11714        out_len: *mut ::std::os::raw::c_int,
11715        in_: *const u8,
11716        in_len: ::std::os::raw::c_int,
11717    ) -> ::std::os::raw::c_int;
11718}
11719extern "C" {
11720    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CipherFinal_ex"]
11721    pub fn EVP_CipherFinal_ex(
11722        ctx: *mut EVP_CIPHER_CTX,
11723        out: *mut u8,
11724        out_len: *mut ::std::os::raw::c_int,
11725    ) -> ::std::os::raw::c_int;
11726}
11727extern "C" {
11728    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_cipher"]
11729    pub fn EVP_CIPHER_CTX_cipher(ctx: *const EVP_CIPHER_CTX) -> *const EVP_CIPHER;
11730}
11731extern "C" {
11732    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_nid"]
11733    pub fn EVP_CIPHER_CTX_nid(ctx: *const EVP_CIPHER_CTX) -> ::std::os::raw::c_int;
11734}
11735extern "C" {
11736    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_encrypting"]
11737    pub fn EVP_CIPHER_CTX_encrypting(ctx: *const EVP_CIPHER_CTX) -> ::std::os::raw::c_int;
11738}
11739extern "C" {
11740    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_block_size"]
11741    pub fn EVP_CIPHER_CTX_block_size(ctx: *const EVP_CIPHER_CTX) -> ::std::os::raw::c_uint;
11742}
11743extern "C" {
11744    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_key_length"]
11745    pub fn EVP_CIPHER_CTX_key_length(ctx: *const EVP_CIPHER_CTX) -> ::std::os::raw::c_uint;
11746}
11747extern "C" {
11748    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_iv_length"]
11749    pub fn EVP_CIPHER_CTX_iv_length(ctx: *const EVP_CIPHER_CTX) -> ::std::os::raw::c_uint;
11750}
11751extern "C" {
11752    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_get_app_data"]
11753    pub fn EVP_CIPHER_CTX_get_app_data(ctx: *const EVP_CIPHER_CTX) -> *mut ::std::os::raw::c_void;
11754}
11755extern "C" {
11756    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_set_app_data"]
11757    pub fn EVP_CIPHER_CTX_set_app_data(ctx: *mut EVP_CIPHER_CTX, data: *mut ::std::os::raw::c_void);
11758}
11759extern "C" {
11760    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_flags"]
11761    pub fn EVP_CIPHER_CTX_flags(ctx: *const EVP_CIPHER_CTX) -> u32;
11762}
11763extern "C" {
11764    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_mode"]
11765    pub fn EVP_CIPHER_CTX_mode(ctx: *const EVP_CIPHER_CTX) -> u32;
11766}
11767extern "C" {
11768    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_ctrl"]
11769    pub fn EVP_CIPHER_CTX_ctrl(
11770        ctx: *mut EVP_CIPHER_CTX,
11771        command: ::std::os::raw::c_int,
11772        arg: ::std::os::raw::c_int,
11773        ptr: *mut ::std::os::raw::c_void,
11774    ) -> ::std::os::raw::c_int;
11775}
11776extern "C" {
11777    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_set_padding"]
11778    pub fn EVP_CIPHER_CTX_set_padding(
11779        ctx: *mut EVP_CIPHER_CTX,
11780        pad: ::std::os::raw::c_int,
11781    ) -> ::std::os::raw::c_int;
11782}
11783extern "C" {
11784    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_set_key_length"]
11785    pub fn EVP_CIPHER_CTX_set_key_length(
11786        ctx: *mut EVP_CIPHER_CTX,
11787        key_len: ::std::os::raw::c_uint,
11788    ) -> ::std::os::raw::c_int;
11789}
11790extern "C" {
11791    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_nid"]
11792    pub fn EVP_CIPHER_nid(cipher: *const EVP_CIPHER) -> ::std::os::raw::c_int;
11793}
11794extern "C" {
11795    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_name"]
11796    pub fn EVP_CIPHER_name(cipher: *const EVP_CIPHER) -> *const ::std::os::raw::c_char;
11797}
11798extern "C" {
11799    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_block_size"]
11800    pub fn EVP_CIPHER_block_size(cipher: *const EVP_CIPHER) -> ::std::os::raw::c_uint;
11801}
11802extern "C" {
11803    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_key_length"]
11804    pub fn EVP_CIPHER_key_length(cipher: *const EVP_CIPHER) -> ::std::os::raw::c_uint;
11805}
11806extern "C" {
11807    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_iv_length"]
11808    pub fn EVP_CIPHER_iv_length(cipher: *const EVP_CIPHER) -> ::std::os::raw::c_uint;
11809}
11810extern "C" {
11811    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_flags"]
11812    pub fn EVP_CIPHER_flags(cipher: *const EVP_CIPHER) -> u32;
11813}
11814extern "C" {
11815    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_mode"]
11816    pub fn EVP_CIPHER_mode(cipher: *const EVP_CIPHER) -> u32;
11817}
11818extern "C" {
11819    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_BytesToKey"]
11820    pub fn EVP_BytesToKey(
11821        type_: *const EVP_CIPHER,
11822        md: *const EVP_MD,
11823        salt: *const u8,
11824        data: *const u8,
11825        data_len: usize,
11826        count: ::std::os::raw::c_uint,
11827        key: *mut u8,
11828        iv: *mut u8,
11829    ) -> ::std::os::raw::c_int;
11830}
11831extern "C" {
11832    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_cbc_hmac_sha1"]
11833    pub fn EVP_aes_128_cbc_hmac_sha1() -> *const EVP_CIPHER;
11834}
11835extern "C" {
11836    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_cbc_hmac_sha1"]
11837    pub fn EVP_aes_256_cbc_hmac_sha1() -> *const EVP_CIPHER;
11838}
11839extern "C" {
11840    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_cbc_hmac_sha256"]
11841    pub fn EVP_aes_128_cbc_hmac_sha256() -> *const EVP_CIPHER;
11842}
11843extern "C" {
11844    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_cbc_hmac_sha256"]
11845    pub fn EVP_aes_256_cbc_hmac_sha256() -> *const EVP_CIPHER;
11846}
11847extern "C" {
11848    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CipherInit"]
11849    pub fn EVP_CipherInit(
11850        ctx: *mut EVP_CIPHER_CTX,
11851        cipher: *const EVP_CIPHER,
11852        key: *const u8,
11853        iv: *const u8,
11854        enc: ::std::os::raw::c_int,
11855    ) -> ::std::os::raw::c_int;
11856}
11857extern "C" {
11858    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncryptInit"]
11859    pub fn EVP_EncryptInit(
11860        ctx: *mut EVP_CIPHER_CTX,
11861        cipher: *const EVP_CIPHER,
11862        key: *const u8,
11863        iv: *const u8,
11864    ) -> ::std::os::raw::c_int;
11865}
11866extern "C" {
11867    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecryptInit"]
11868    pub fn EVP_DecryptInit(
11869        ctx: *mut EVP_CIPHER_CTX,
11870        cipher: *const EVP_CIPHER,
11871        key: *const u8,
11872        iv: *const u8,
11873    ) -> ::std::os::raw::c_int;
11874}
11875extern "C" {
11876    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CipherFinal"]
11877    pub fn EVP_CipherFinal(
11878        ctx: *mut EVP_CIPHER_CTX,
11879        out: *mut u8,
11880        out_len: *mut ::std::os::raw::c_int,
11881    ) -> ::std::os::raw::c_int;
11882}
11883extern "C" {
11884    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_EncryptFinal"]
11885    pub fn EVP_EncryptFinal(
11886        ctx: *mut EVP_CIPHER_CTX,
11887        out: *mut u8,
11888        out_len: *mut ::std::os::raw::c_int,
11889    ) -> ::std::os::raw::c_int;
11890}
11891extern "C" {
11892    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DecryptFinal"]
11893    pub fn EVP_DecryptFinal(
11894        ctx: *mut EVP_CIPHER_CTX,
11895        out: *mut u8,
11896        out_len: *mut ::std::os::raw::c_int,
11897    ) -> ::std::os::raw::c_int;
11898}
11899extern "C" {
11900    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_Cipher"]
11901    pub fn EVP_Cipher(
11902        ctx: *mut EVP_CIPHER_CTX,
11903        out: *mut u8,
11904        in_: *const u8,
11905        in_len: usize,
11906    ) -> ::std::os::raw::c_int;
11907}
11908extern "C" {
11909    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_get_cipherbyname"]
11910    pub fn EVP_get_cipherbyname(name: *const ::std::os::raw::c_char) -> *const EVP_CIPHER;
11911}
11912extern "C" {
11913    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_gcm"]
11914    pub fn EVP_aes_128_gcm() -> *const EVP_CIPHER;
11915}
11916extern "C" {
11917    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_gcm"]
11918    pub fn EVP_aes_256_gcm() -> *const EVP_CIPHER;
11919}
11920extern "C" {
11921    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_ccm"]
11922    pub fn EVP_aes_128_ccm() -> *const EVP_CIPHER;
11923}
11924extern "C" {
11925    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_ccm"]
11926    pub fn EVP_aes_192_ccm() -> *const EVP_CIPHER;
11927}
11928extern "C" {
11929    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_ccm"]
11930    pub fn EVP_aes_256_ccm() -> *const EVP_CIPHER;
11931}
11932extern "C" {
11933    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_ecb"]
11934    pub fn EVP_aes_192_ecb() -> *const EVP_CIPHER;
11935}
11936extern "C" {
11937    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_cbc"]
11938    pub fn EVP_aes_192_cbc() -> *const EVP_CIPHER;
11939}
11940extern "C" {
11941    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_ctr"]
11942    pub fn EVP_aes_192_ctr() -> *const EVP_CIPHER;
11943}
11944extern "C" {
11945    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_gcm"]
11946    pub fn EVP_aes_192_gcm() -> *const EVP_CIPHER;
11947}
11948extern "C" {
11949    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_ofb"]
11950    pub fn EVP_aes_192_ofb() -> *const EVP_CIPHER;
11951}
11952extern "C" {
11953    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_des_ede3_ecb"]
11954    pub fn EVP_des_ede3_ecb() -> *const EVP_CIPHER;
11955}
11956extern "C" {
11957    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_cfb128"]
11958    pub fn EVP_aes_128_cfb128() -> *const EVP_CIPHER;
11959}
11960extern "C" {
11961    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_cfb"]
11962    pub fn EVP_aes_128_cfb() -> *const EVP_CIPHER;
11963}
11964extern "C" {
11965    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_cfb1"]
11966    pub fn EVP_aes_128_cfb1() -> *const EVP_CIPHER;
11967}
11968extern "C" {
11969    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_128_cfb8"]
11970    pub fn EVP_aes_128_cfb8() -> *const EVP_CIPHER;
11971}
11972extern "C" {
11973    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_cfb128"]
11974    pub fn EVP_aes_192_cfb128() -> *const EVP_CIPHER;
11975}
11976extern "C" {
11977    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_cfb"]
11978    pub fn EVP_aes_192_cfb() -> *const EVP_CIPHER;
11979}
11980extern "C" {
11981    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_cfb1"]
11982    pub fn EVP_aes_192_cfb1() -> *const EVP_CIPHER;
11983}
11984extern "C" {
11985    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_192_cfb8"]
11986    pub fn EVP_aes_192_cfb8() -> *const EVP_CIPHER;
11987}
11988extern "C" {
11989    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_cfb128"]
11990    pub fn EVP_aes_256_cfb128() -> *const EVP_CIPHER;
11991}
11992extern "C" {
11993    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_cfb"]
11994    pub fn EVP_aes_256_cfb() -> *const EVP_CIPHER;
11995}
11996extern "C" {
11997    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_cfb1"]
11998    pub fn EVP_aes_256_cfb1() -> *const EVP_CIPHER;
11999}
12000extern "C" {
12001    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aes_256_cfb8"]
12002    pub fn EVP_aes_256_cfb8() -> *const EVP_CIPHER;
12003}
12004extern "C" {
12005    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_bf_ecb"]
12006    pub fn EVP_bf_ecb() -> *const EVP_CIPHER;
12007}
12008extern "C" {
12009    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_bf_cbc"]
12010    pub fn EVP_bf_cbc() -> *const EVP_CIPHER;
12011}
12012extern "C" {
12013    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_bf_cfb"]
12014    pub fn EVP_bf_cfb() -> *const EVP_CIPHER;
12015}
12016extern "C" {
12017    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_cast5_ecb"]
12018    pub fn EVP_cast5_ecb() -> *const EVP_CIPHER;
12019}
12020extern "C" {
12021    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_cast5_cbc"]
12022    pub fn EVP_cast5_cbc() -> *const EVP_CIPHER;
12023}
12024extern "C" {
12025    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_CTX_set_flags"]
12026    pub fn EVP_CIPHER_CTX_set_flags(ctx: *const EVP_CIPHER_CTX, flags: u32);
12027}
12028extern "C" {
12029    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_add_cipher_alias"]
12030    pub fn EVP_add_cipher_alias(
12031        a: *const ::std::os::raw::c_char,
12032        b: *const ::std::os::raw::c_char,
12033    ) -> ::std::os::raw::c_int;
12034}
12035#[repr(C)]
12036#[derive(Debug, Copy, Clone, PartialEq, Eq)]
12037pub struct evp_cipher_ctx_st {
12038    pub cipher: *const EVP_CIPHER,
12039    pub app_data: *mut ::std::os::raw::c_void,
12040    pub cipher_data: *mut ::std::os::raw::c_void,
12041    pub key_len: ::std::os::raw::c_uint,
12042    pub encrypt: ::std::os::raw::c_int,
12043    pub flags: u32,
12044    pub oiv: [u8; 16usize],
12045    pub iv: [u8; 16usize],
12046    pub buf: [u8; 32usize],
12047    pub buf_len: ::std::os::raw::c_int,
12048    pub num: ::std::os::raw::c_uint,
12049    pub final_used: ::std::os::raw::c_int,
12050    pub final_: [u8; 32usize],
12051    pub poisoned: ::std::os::raw::c_int,
12052}
12053#[test]
12054fn bindgen_test_layout_evp_cipher_ctx_st() {
12055    const UNINIT: ::std::mem::MaybeUninit<evp_cipher_ctx_st> = ::std::mem::MaybeUninit::uninit();
12056    let ptr = UNINIT.as_ptr();
12057    assert_eq!(
12058        ::std::mem::size_of::<evp_cipher_ctx_st>(),
12059        152usize,
12060        "Size of evp_cipher_ctx_st"
12061    );
12062    assert_eq!(
12063        ::std::mem::align_of::<evp_cipher_ctx_st>(),
12064        8usize,
12065        "Alignment of evp_cipher_ctx_st"
12066    );
12067    assert_eq!(
12068        unsafe { ::std::ptr::addr_of!((*ptr).cipher) as usize - ptr as usize },
12069        0usize,
12070        "Offset of field: evp_cipher_ctx_st::cipher"
12071    );
12072    assert_eq!(
12073        unsafe { ::std::ptr::addr_of!((*ptr).app_data) as usize - ptr as usize },
12074        8usize,
12075        "Offset of field: evp_cipher_ctx_st::app_data"
12076    );
12077    assert_eq!(
12078        unsafe { ::std::ptr::addr_of!((*ptr).cipher_data) as usize - ptr as usize },
12079        16usize,
12080        "Offset of field: evp_cipher_ctx_st::cipher_data"
12081    );
12082    assert_eq!(
12083        unsafe { ::std::ptr::addr_of!((*ptr).key_len) as usize - ptr as usize },
12084        24usize,
12085        "Offset of field: evp_cipher_ctx_st::key_len"
12086    );
12087    assert_eq!(
12088        unsafe { ::std::ptr::addr_of!((*ptr).encrypt) as usize - ptr as usize },
12089        28usize,
12090        "Offset of field: evp_cipher_ctx_st::encrypt"
12091    );
12092    assert_eq!(
12093        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
12094        32usize,
12095        "Offset of field: evp_cipher_ctx_st::flags"
12096    );
12097    assert_eq!(
12098        unsafe { ::std::ptr::addr_of!((*ptr).oiv) as usize - ptr as usize },
12099        36usize,
12100        "Offset of field: evp_cipher_ctx_st::oiv"
12101    );
12102    assert_eq!(
12103        unsafe { ::std::ptr::addr_of!((*ptr).iv) as usize - ptr as usize },
12104        52usize,
12105        "Offset of field: evp_cipher_ctx_st::iv"
12106    );
12107    assert_eq!(
12108        unsafe { ::std::ptr::addr_of!((*ptr).buf) as usize - ptr as usize },
12109        68usize,
12110        "Offset of field: evp_cipher_ctx_st::buf"
12111    );
12112    assert_eq!(
12113        unsafe { ::std::ptr::addr_of!((*ptr).buf_len) as usize - ptr as usize },
12114        100usize,
12115        "Offset of field: evp_cipher_ctx_st::buf_len"
12116    );
12117    assert_eq!(
12118        unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
12119        104usize,
12120        "Offset of field: evp_cipher_ctx_st::num"
12121    );
12122    assert_eq!(
12123        unsafe { ::std::ptr::addr_of!((*ptr).final_used) as usize - ptr as usize },
12124        108usize,
12125        "Offset of field: evp_cipher_ctx_st::final_used"
12126    );
12127    assert_eq!(
12128        unsafe { ::std::ptr::addr_of!((*ptr).final_) as usize - ptr as usize },
12129        112usize,
12130        "Offset of field: evp_cipher_ctx_st::final_"
12131    );
12132    assert_eq!(
12133        unsafe { ::std::ptr::addr_of!((*ptr).poisoned) as usize - ptr as usize },
12134        144usize,
12135        "Offset of field: evp_cipher_ctx_st::poisoned"
12136    );
12137}
12138impl Default for evp_cipher_ctx_st {
12139    fn default() -> Self {
12140        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12141        unsafe {
12142            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12143            s.assume_init()
12144        }
12145    }
12146}
12147#[repr(C)]
12148#[derive(Debug, Copy, Clone, PartialEq, Eq)]
12149pub struct evp_cipher_info_st {
12150    pub cipher: *const EVP_CIPHER,
12151    pub iv: [::std::os::raw::c_uchar; 16usize],
12152}
12153#[test]
12154fn bindgen_test_layout_evp_cipher_info_st() {
12155    const UNINIT: ::std::mem::MaybeUninit<evp_cipher_info_st> = ::std::mem::MaybeUninit::uninit();
12156    let ptr = UNINIT.as_ptr();
12157    assert_eq!(
12158        ::std::mem::size_of::<evp_cipher_info_st>(),
12159        24usize,
12160        "Size of evp_cipher_info_st"
12161    );
12162    assert_eq!(
12163        ::std::mem::align_of::<evp_cipher_info_st>(),
12164        8usize,
12165        "Alignment of evp_cipher_info_st"
12166    );
12167    assert_eq!(
12168        unsafe { ::std::ptr::addr_of!((*ptr).cipher) as usize - ptr as usize },
12169        0usize,
12170        "Offset of field: evp_cipher_info_st::cipher"
12171    );
12172    assert_eq!(
12173        unsafe { ::std::ptr::addr_of!((*ptr).iv) as usize - ptr as usize },
12174        8usize,
12175        "Offset of field: evp_cipher_info_st::iv"
12176    );
12177}
12178impl Default for evp_cipher_info_st {
12179    fn default() -> Self {
12180        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12181        unsafe {
12182            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12183            s.assume_init()
12184        }
12185    }
12186}
12187pub type EVP_CIPHER_INFO = evp_cipher_info_st;
12188extern "C" {
12189    #[link_name = "\u{1}aws_lc_fips_0_13_10_AES_CMAC"]
12190    pub fn AES_CMAC(
12191        out: *mut u8,
12192        key: *const u8,
12193        key_len: usize,
12194        in_: *const u8,
12195        in_len: usize,
12196    ) -> ::std::os::raw::c_int;
12197}
12198extern "C" {
12199    #[link_name = "\u{1}aws_lc_fips_0_13_10_CMAC_CTX_new"]
12200    pub fn CMAC_CTX_new() -> *mut CMAC_CTX;
12201}
12202extern "C" {
12203    #[link_name = "\u{1}aws_lc_fips_0_13_10_CMAC_CTX_free"]
12204    pub fn CMAC_CTX_free(ctx: *mut CMAC_CTX);
12205}
12206extern "C" {
12207    #[link_name = "\u{1}aws_lc_fips_0_13_10_CMAC_CTX_copy"]
12208    pub fn CMAC_CTX_copy(out: *mut CMAC_CTX, in_: *const CMAC_CTX) -> ::std::os::raw::c_int;
12209}
12210extern "C" {
12211    #[link_name = "\u{1}aws_lc_fips_0_13_10_CMAC_Init"]
12212    pub fn CMAC_Init(
12213        ctx: *mut CMAC_CTX,
12214        key: *const ::std::os::raw::c_void,
12215        key_len: usize,
12216        cipher: *const EVP_CIPHER,
12217        engine: *mut ENGINE,
12218    ) -> ::std::os::raw::c_int;
12219}
12220extern "C" {
12221    #[link_name = "\u{1}aws_lc_fips_0_13_10_CMAC_Reset"]
12222    pub fn CMAC_Reset(ctx: *mut CMAC_CTX) -> ::std::os::raw::c_int;
12223}
12224extern "C" {
12225    #[link_name = "\u{1}aws_lc_fips_0_13_10_CMAC_Update"]
12226    pub fn CMAC_Update(ctx: *mut CMAC_CTX, in_: *const u8, in_len: usize) -> ::std::os::raw::c_int;
12227}
12228extern "C" {
12229    #[link_name = "\u{1}aws_lc_fips_0_13_10_CMAC_Final"]
12230    pub fn CMAC_Final(
12231        ctx: *mut CMAC_CTX,
12232        out: *mut u8,
12233        out_len: *mut usize,
12234    ) -> ::std::os::raw::c_int;
12235}
12236extern "C" {
12237    #[link_name = "\u{1}aws_lc_fips_0_13_10_CMAC_CTX_get0_cipher_ctx"]
12238    pub fn CMAC_CTX_get0_cipher_ctx(ctx: *mut CMAC_CTX) -> *mut EVP_CIPHER_CTX;
12239}
12240#[repr(C)]
12241#[derive(Debug, Copy, Clone, PartialEq, Eq)]
12242pub struct conf_value_st {
12243    pub section: *mut ::std::os::raw::c_char,
12244    pub name: *mut ::std::os::raw::c_char,
12245    pub value: *mut ::std::os::raw::c_char,
12246}
12247#[test]
12248fn bindgen_test_layout_conf_value_st() {
12249    const UNINIT: ::std::mem::MaybeUninit<conf_value_st> = ::std::mem::MaybeUninit::uninit();
12250    let ptr = UNINIT.as_ptr();
12251    assert_eq!(
12252        ::std::mem::size_of::<conf_value_st>(),
12253        24usize,
12254        "Size of conf_value_st"
12255    );
12256    assert_eq!(
12257        ::std::mem::align_of::<conf_value_st>(),
12258        8usize,
12259        "Alignment of conf_value_st"
12260    );
12261    assert_eq!(
12262        unsafe { ::std::ptr::addr_of!((*ptr).section) as usize - ptr as usize },
12263        0usize,
12264        "Offset of field: conf_value_st::section"
12265    );
12266    assert_eq!(
12267        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
12268        8usize,
12269        "Offset of field: conf_value_st::name"
12270    );
12271    assert_eq!(
12272        unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
12273        16usize,
12274        "Offset of field: conf_value_st::value"
12275    );
12276}
12277impl Default for conf_value_st {
12278    fn default() -> Self {
12279        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
12280        unsafe {
12281            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
12282            s.assume_init()
12283        }
12284    }
12285}
12286#[repr(C)]
12287#[derive(Debug, Copy, Clone)]
12288pub struct stack_st_CONF_VALUE {
12289    _unused: [u8; 0],
12290}
12291pub type sk_CONF_VALUE_free_func =
12292    ::std::option::Option<unsafe extern "C" fn(arg1: *mut CONF_VALUE)>;
12293pub type sk_CONF_VALUE_copy_func =
12294    ::std::option::Option<unsafe extern "C" fn(arg1: *const CONF_VALUE) -> *mut CONF_VALUE>;
12295pub type sk_CONF_VALUE_cmp_func = ::std::option::Option<
12296    unsafe extern "C" fn(
12297        arg1: *const *const CONF_VALUE,
12298        arg2: *const *const CONF_VALUE,
12299    ) -> ::std::os::raw::c_int,
12300>;
12301pub type sk_CONF_VALUE_delete_if_func = ::std::option::Option<
12302    unsafe extern "C" fn(
12303        arg1: *mut CONF_VALUE,
12304        arg2: *mut ::std::os::raw::c_void,
12305    ) -> ::std::os::raw::c_int,
12306>;
12307#[repr(C)]
12308#[derive(Debug, Copy, Clone)]
12309pub struct lhash_st_CONF_VALUE {
12310    _unused: [u8; 0],
12311}
12312extern "C" {
12313    #[link_name = "\u{1}aws_lc_fips_0_13_10_NCONF_new"]
12314    pub fn NCONF_new(method: *mut ::std::os::raw::c_void) -> *mut CONF;
12315}
12316extern "C" {
12317    #[link_name = "\u{1}aws_lc_fips_0_13_10_NCONF_free"]
12318    pub fn NCONF_free(conf: *mut CONF);
12319}
12320extern "C" {
12321    #[link_name = "\u{1}aws_lc_fips_0_13_10_NCONF_load"]
12322    pub fn NCONF_load(
12323        conf: *mut CONF,
12324        filename: *const ::std::os::raw::c_char,
12325        out_error_line: *mut ::std::os::raw::c_long,
12326    ) -> ::std::os::raw::c_int;
12327}
12328extern "C" {
12329    #[link_name = "\u{1}aws_lc_fips_0_13_10_NCONF_load_bio"]
12330    pub fn NCONF_load_bio(
12331        conf: *mut CONF,
12332        bio: *mut BIO,
12333        out_error_line: *mut ::std::os::raw::c_long,
12334    ) -> ::std::os::raw::c_int;
12335}
12336extern "C" {
12337    #[link_name = "\u{1}aws_lc_fips_0_13_10_NCONF_get_section"]
12338    pub fn NCONF_get_section(
12339        conf: *const CONF,
12340        section: *const ::std::os::raw::c_char,
12341    ) -> *const stack_st_CONF_VALUE;
12342}
12343extern "C" {
12344    #[link_name = "\u{1}aws_lc_fips_0_13_10_NCONF_get_string"]
12345    pub fn NCONF_get_string(
12346        conf: *const CONF,
12347        section: *const ::std::os::raw::c_char,
12348        name: *const ::std::os::raw::c_char,
12349    ) -> *const ::std::os::raw::c_char;
12350}
12351extern "C" {
12352    #[link_name = "\u{1}aws_lc_fips_0_13_10_CONF_modules_load_file"]
12353    pub fn CONF_modules_load_file(
12354        filename: *const ::std::os::raw::c_char,
12355        appname: *const ::std::os::raw::c_char,
12356        flags: ::std::os::raw::c_ulong,
12357    ) -> ::std::os::raw::c_int;
12358}
12359extern "C" {
12360    #[link_name = "\u{1}aws_lc_fips_0_13_10_CONF_get1_default_config_file"]
12361    pub fn CONF_get1_default_config_file() -> *mut ::std::os::raw::c_char;
12362}
12363extern "C" {
12364    #[link_name = "\u{1}aws_lc_fips_0_13_10_CONF_modules_free"]
12365    pub fn CONF_modules_free();
12366}
12367extern "C" {
12368    #[link_name = "\u{1}aws_lc_fips_0_13_10_CONF_modules_unload"]
12369    pub fn CONF_modules_unload(all: ::std::os::raw::c_int);
12370}
12371extern "C" {
12372    #[link_name = "\u{1}aws_lc_fips_0_13_10_CONF_modules_finish"]
12373    pub fn CONF_modules_finish();
12374}
12375extern "C" {
12376    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_config"]
12377    pub fn OPENSSL_config(config_name: *const ::std::os::raw::c_char);
12378}
12379extern "C" {
12380    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_no_config"]
12381    pub fn OPENSSL_no_config();
12382}
12383extern "C" {
12384    #[link_name = "\u{1}aws_lc_fips_0_13_10_CTR_DRBG_new"]
12385    pub fn CTR_DRBG_new(
12386        entropy: *const u8,
12387        personalization: *const u8,
12388        personalization_len: usize,
12389    ) -> *mut CTR_DRBG_STATE;
12390}
12391extern "C" {
12392    #[link_name = "\u{1}aws_lc_fips_0_13_10_CTR_DRBG_free"]
12393    pub fn CTR_DRBG_free(state: *mut CTR_DRBG_STATE);
12394}
12395extern "C" {
12396    #[link_name = "\u{1}aws_lc_fips_0_13_10_CTR_DRBG_reseed"]
12397    pub fn CTR_DRBG_reseed(
12398        drbg: *mut CTR_DRBG_STATE,
12399        entropy: *const u8,
12400        additional_data: *const u8,
12401        additional_data_len: usize,
12402    ) -> ::std::os::raw::c_int;
12403}
12404extern "C" {
12405    #[link_name = "\u{1}aws_lc_fips_0_13_10_CTR_DRBG_generate"]
12406    pub fn CTR_DRBG_generate(
12407        drbg: *mut CTR_DRBG_STATE,
12408        out: *mut u8,
12409        out_len: usize,
12410        additional_data: *const u8,
12411        additional_data_len: usize,
12412    ) -> ::std::os::raw::c_int;
12413}
12414extern "C" {
12415    #[link_name = "\u{1}aws_lc_fips_0_13_10_CTR_DRBG_clear"]
12416    pub fn CTR_DRBG_clear(drbg: *mut CTR_DRBG_STATE);
12417}
12418extern "C" {
12419    #[link_name = "\u{1}aws_lc_fips_0_13_10_X25519_keypair"]
12420    pub fn X25519_keypair(out_public_value: *mut u8, out_private_key: *mut u8);
12421}
12422extern "C" {
12423    #[link_name = "\u{1}aws_lc_fips_0_13_10_X25519"]
12424    pub fn X25519(
12425        out_shared_key: *mut u8,
12426        private_key: *const u8,
12427        peer_public_value: *const u8,
12428    ) -> ::std::os::raw::c_int;
12429}
12430extern "C" {
12431    #[link_name = "\u{1}aws_lc_fips_0_13_10_X25519_public_from_private"]
12432    pub fn X25519_public_from_private(out_public_value: *mut u8, private_key: *const u8);
12433}
12434extern "C" {
12435    #[link_name = "\u{1}aws_lc_fips_0_13_10_ED25519_keypair"]
12436    pub fn ED25519_keypair(out_public_key: *mut u8, out_private_key: *mut u8);
12437}
12438extern "C" {
12439    #[link_name = "\u{1}aws_lc_fips_0_13_10_ED25519_sign"]
12440    pub fn ED25519_sign(
12441        out_sig: *mut u8,
12442        message: *const u8,
12443        message_len: usize,
12444        private_key: *const u8,
12445    ) -> ::std::os::raw::c_int;
12446}
12447extern "C" {
12448    #[link_name = "\u{1}aws_lc_fips_0_13_10_ED25519_verify"]
12449    pub fn ED25519_verify(
12450        message: *const u8,
12451        message_len: usize,
12452        signature: *const u8,
12453        public_key: *const u8,
12454    ) -> ::std::os::raw::c_int;
12455}
12456extern "C" {
12457    #[link_name = "\u{1}aws_lc_fips_0_13_10_ED25519_keypair_from_seed"]
12458    pub fn ED25519_keypair_from_seed(
12459        out_public_key: *mut u8,
12460        out_private_key: *mut u8,
12461        seed: *const u8,
12462    );
12463}
12464pub const spake2_role_t_spake2_role_alice: spake2_role_t = 0;
12465pub const spake2_role_t_spake2_role_bob: spake2_role_t = 1;
12466pub type spake2_role_t = ::std::os::raw::c_uint;
12467extern "C" {
12468    #[link_name = "\u{1}aws_lc_fips_0_13_10_SPAKE2_CTX_new"]
12469    pub fn SPAKE2_CTX_new(
12470        my_role: spake2_role_t,
12471        my_name: *const u8,
12472        my_name_len: usize,
12473        their_name: *const u8,
12474        their_name_len: usize,
12475    ) -> *mut SPAKE2_CTX;
12476}
12477extern "C" {
12478    #[link_name = "\u{1}aws_lc_fips_0_13_10_SPAKE2_CTX_free"]
12479    pub fn SPAKE2_CTX_free(ctx: *mut SPAKE2_CTX);
12480}
12481extern "C" {
12482    #[link_name = "\u{1}aws_lc_fips_0_13_10_SPAKE2_generate_msg"]
12483    pub fn SPAKE2_generate_msg(
12484        ctx: *mut SPAKE2_CTX,
12485        out: *mut u8,
12486        out_len: *mut usize,
12487        max_out_len: usize,
12488        password: *const u8,
12489        password_len: usize,
12490    ) -> ::std::os::raw::c_int;
12491}
12492extern "C" {
12493    #[link_name = "\u{1}aws_lc_fips_0_13_10_SPAKE2_process_msg"]
12494    pub fn SPAKE2_process_msg(
12495        ctx: *mut SPAKE2_CTX,
12496        out_key: *mut u8,
12497        out_key_len: *mut usize,
12498        max_out_key_len: usize,
12499        their_msg: *const u8,
12500        their_msg_len: usize,
12501    ) -> ::std::os::raw::c_int;
12502}
12503#[repr(C)]
12504#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
12505pub struct DES_cblock_st {
12506    pub bytes: [u8; 8usize],
12507}
12508#[test]
12509fn bindgen_test_layout_DES_cblock_st() {
12510    const UNINIT: ::std::mem::MaybeUninit<DES_cblock_st> = ::std::mem::MaybeUninit::uninit();
12511    let ptr = UNINIT.as_ptr();
12512    assert_eq!(
12513        ::std::mem::size_of::<DES_cblock_st>(),
12514        8usize,
12515        "Size of DES_cblock_st"
12516    );
12517    assert_eq!(
12518        ::std::mem::align_of::<DES_cblock_st>(),
12519        1usize,
12520        "Alignment of DES_cblock_st"
12521    );
12522    assert_eq!(
12523        unsafe { ::std::ptr::addr_of!((*ptr).bytes) as usize - ptr as usize },
12524        0usize,
12525        "Offset of field: DES_cblock_st::bytes"
12526    );
12527}
12528pub type DES_cblock = DES_cblock_st;
12529#[repr(C)]
12530#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
12531pub struct DES_ks {
12532    pub subkeys: [[u32; 2usize]; 16usize],
12533}
12534#[test]
12535fn bindgen_test_layout_DES_ks() {
12536    const UNINIT: ::std::mem::MaybeUninit<DES_ks> = ::std::mem::MaybeUninit::uninit();
12537    let ptr = UNINIT.as_ptr();
12538    assert_eq!(::std::mem::size_of::<DES_ks>(), 128usize, "Size of DES_ks");
12539    assert_eq!(
12540        ::std::mem::align_of::<DES_ks>(),
12541        4usize,
12542        "Alignment of DES_ks"
12543    );
12544    assert_eq!(
12545        unsafe { ::std::ptr::addr_of!((*ptr).subkeys) as usize - ptr as usize },
12546        0usize,
12547        "Offset of field: DES_ks::subkeys"
12548    );
12549}
12550pub type DES_key_schedule = DES_ks;
12551extern "C" {
12552    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_is_weak_key"]
12553    pub fn DES_is_weak_key(key: *const DES_cblock) -> ::std::os::raw::c_int;
12554}
12555extern "C" {
12556    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_set_key"]
12557    pub fn DES_set_key(
12558        key: *const DES_cblock,
12559        schedule: *mut DES_key_schedule,
12560    ) -> ::std::os::raw::c_int;
12561}
12562extern "C" {
12563    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_set_key_unchecked"]
12564    pub fn DES_set_key_unchecked(key: *const DES_cblock, schedule: *mut DES_key_schedule);
12565}
12566extern "C" {
12567    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_key_sched"]
12568    pub fn DES_key_sched(
12569        key: *const DES_cblock,
12570        schedule: *mut DES_key_schedule,
12571    ) -> ::std::os::raw::c_int;
12572}
12573extern "C" {
12574    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_set_odd_parity"]
12575    pub fn DES_set_odd_parity(key: *mut DES_cblock);
12576}
12577extern "C" {
12578    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_ecb_encrypt"]
12579    pub fn DES_ecb_encrypt(
12580        in_: *const DES_cblock,
12581        out: *mut DES_cblock,
12582        schedule: *const DES_key_schedule,
12583        is_encrypt: ::std::os::raw::c_int,
12584    );
12585}
12586extern "C" {
12587    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_ncbc_encrypt"]
12588    pub fn DES_ncbc_encrypt(
12589        in_: *const u8,
12590        out: *mut u8,
12591        len: usize,
12592        schedule: *const DES_key_schedule,
12593        ivec: *mut DES_cblock,
12594        enc: ::std::os::raw::c_int,
12595    );
12596}
12597extern "C" {
12598    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_ecb3_encrypt"]
12599    pub fn DES_ecb3_encrypt(
12600        input: *const DES_cblock,
12601        output: *mut DES_cblock,
12602        ks1: *const DES_key_schedule,
12603        ks2: *const DES_key_schedule,
12604        ks3: *const DES_key_schedule,
12605        enc: ::std::os::raw::c_int,
12606    );
12607}
12608extern "C" {
12609    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_ede3_cbc_encrypt"]
12610    pub fn DES_ede3_cbc_encrypt(
12611        in_: *const u8,
12612        out: *mut u8,
12613        len: usize,
12614        ks1: *const DES_key_schedule,
12615        ks2: *const DES_key_schedule,
12616        ks3: *const DES_key_schedule,
12617        ivec: *mut DES_cblock,
12618        enc: ::std::os::raw::c_int,
12619    );
12620}
12621extern "C" {
12622    #[link_name = "\u{1}aws_lc_fips_0_13_10_DES_ede2_cbc_encrypt"]
12623    pub fn DES_ede2_cbc_encrypt(
12624        in_: *const u8,
12625        out: *mut u8,
12626        len: usize,
12627        ks1: *const DES_key_schedule,
12628        ks2: *const DES_key_schedule,
12629        ivec: *mut DES_cblock,
12630        enc: ::std::os::raw::c_int,
12631    );
12632}
12633extern "C" {
12634    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_new"]
12635    pub fn DH_new() -> *mut DH;
12636}
12637extern "C" {
12638    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_new_by_nid"]
12639    pub fn DH_new_by_nid(nid: ::std::os::raw::c_int) -> *mut DH;
12640}
12641extern "C" {
12642    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_free"]
12643    pub fn DH_free(dh: *mut DH);
12644}
12645extern "C" {
12646    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_up_ref"]
12647    pub fn DH_up_ref(dh: *mut DH) -> ::std::os::raw::c_int;
12648}
12649extern "C" {
12650    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_bits"]
12651    pub fn DH_bits(dh: *const DH) -> ::std::os::raw::c_uint;
12652}
12653extern "C" {
12654    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get0_pub_key"]
12655    pub fn DH_get0_pub_key(dh: *const DH) -> *const BIGNUM;
12656}
12657extern "C" {
12658    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get0_priv_key"]
12659    pub fn DH_get0_priv_key(dh: *const DH) -> *const BIGNUM;
12660}
12661extern "C" {
12662    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get0_p"]
12663    pub fn DH_get0_p(dh: *const DH) -> *const BIGNUM;
12664}
12665extern "C" {
12666    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get0_q"]
12667    pub fn DH_get0_q(dh: *const DH) -> *const BIGNUM;
12668}
12669extern "C" {
12670    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get0_g"]
12671    pub fn DH_get0_g(dh: *const DH) -> *const BIGNUM;
12672}
12673extern "C" {
12674    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get0_key"]
12675    pub fn DH_get0_key(
12676        dh: *const DH,
12677        out_pub_key: *mut *const BIGNUM,
12678        out_priv_key: *mut *const BIGNUM,
12679    );
12680}
12681extern "C" {
12682    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_set0_key"]
12683    pub fn DH_set0_key(
12684        dh: *mut DH,
12685        pub_key: *mut BIGNUM,
12686        priv_key: *mut BIGNUM,
12687    ) -> ::std::os::raw::c_int;
12688}
12689extern "C" {
12690    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get0_pqg"]
12691    pub fn DH_get0_pqg(
12692        dh: *const DH,
12693        out_p: *mut *const BIGNUM,
12694        out_q: *mut *const BIGNUM,
12695        out_g: *mut *const BIGNUM,
12696    );
12697}
12698extern "C" {
12699    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_set0_pqg"]
12700    pub fn DH_set0_pqg(
12701        dh: *mut DH,
12702        p: *mut BIGNUM,
12703        q: *mut BIGNUM,
12704        g: *mut BIGNUM,
12705    ) -> ::std::os::raw::c_int;
12706}
12707extern "C" {
12708    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_set_length"]
12709    pub fn DH_set_length(dh: *mut DH, priv_length: ::std::os::raw::c_uint)
12710        -> ::std::os::raw::c_int;
12711}
12712extern "C" {
12713    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get_rfc7919_2048"]
12714    pub fn DH_get_rfc7919_2048() -> *mut DH;
12715}
12716extern "C" {
12717    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get_rfc7919_4096"]
12718    pub fn DH_get_rfc7919_4096() -> *mut DH;
12719}
12720extern "C" {
12721    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_rfc3526_prime_1536"]
12722    pub fn BN_get_rfc3526_prime_1536(ret: *mut BIGNUM) -> *mut BIGNUM;
12723}
12724extern "C" {
12725    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_rfc3526_prime_2048"]
12726    pub fn BN_get_rfc3526_prime_2048(ret: *mut BIGNUM) -> *mut BIGNUM;
12727}
12728extern "C" {
12729    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_rfc3526_prime_3072"]
12730    pub fn BN_get_rfc3526_prime_3072(ret: *mut BIGNUM) -> *mut BIGNUM;
12731}
12732extern "C" {
12733    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_rfc3526_prime_4096"]
12734    pub fn BN_get_rfc3526_prime_4096(ret: *mut BIGNUM) -> *mut BIGNUM;
12735}
12736extern "C" {
12737    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_rfc3526_prime_6144"]
12738    pub fn BN_get_rfc3526_prime_6144(ret: *mut BIGNUM) -> *mut BIGNUM;
12739}
12740extern "C" {
12741    #[link_name = "\u{1}aws_lc_fips_0_13_10_BN_get_rfc3526_prime_8192"]
12742    pub fn BN_get_rfc3526_prime_8192(ret: *mut BIGNUM) -> *mut BIGNUM;
12743}
12744extern "C" {
12745    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_generate_parameters_ex"]
12746    pub fn DH_generate_parameters_ex(
12747        dh: *mut DH,
12748        prime_bits: ::std::os::raw::c_int,
12749        generator: ::std::os::raw::c_int,
12750        cb: *mut BN_GENCB,
12751    ) -> ::std::os::raw::c_int;
12752}
12753extern "C" {
12754    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_generate_key"]
12755    pub fn DH_generate_key(dh: *mut DH) -> ::std::os::raw::c_int;
12756}
12757extern "C" {
12758    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_compute_key_padded"]
12759    pub fn DH_compute_key_padded(
12760        out: *mut u8,
12761        peers_key: *const BIGNUM,
12762        dh: *mut DH,
12763    ) -> ::std::os::raw::c_int;
12764}
12765extern "C" {
12766    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_compute_key_hashed"]
12767    pub fn DH_compute_key_hashed(
12768        dh: *mut DH,
12769        out: *mut u8,
12770        out_len: *mut usize,
12771        max_out_len: usize,
12772        peers_key: *const BIGNUM,
12773        digest: *const EVP_MD,
12774    ) -> ::std::os::raw::c_int;
12775}
12776extern "C" {
12777    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_size"]
12778    pub fn DH_size(dh: *const DH) -> ::std::os::raw::c_int;
12779}
12780extern "C" {
12781    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_num_bits"]
12782    pub fn DH_num_bits(dh: *const DH) -> ::std::os::raw::c_uint;
12783}
12784extern "C" {
12785    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_check"]
12786    pub fn DH_check(dh: *const DH, out_flags: *mut ::std::os::raw::c_int) -> ::std::os::raw::c_int;
12787}
12788extern "C" {
12789    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_check_pub_key"]
12790    pub fn DH_check_pub_key(
12791        dh: *const DH,
12792        pub_key: *const BIGNUM,
12793        out_flags: *mut ::std::os::raw::c_int,
12794    ) -> ::std::os::raw::c_int;
12795}
12796extern "C" {
12797    #[link_name = "\u{1}aws_lc_fips_0_13_10_DHparams_dup"]
12798    pub fn DHparams_dup(dh: *const DH) -> *mut DH;
12799}
12800extern "C" {
12801    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_parse_parameters"]
12802    pub fn DH_parse_parameters(cbs: *mut CBS) -> *mut DH;
12803}
12804extern "C" {
12805    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_marshal_parameters"]
12806    pub fn DH_marshal_parameters(cbb: *mut CBB, dh: *const DH) -> ::std::os::raw::c_int;
12807}
12808extern "C" {
12809    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_generate_parameters"]
12810    pub fn DH_generate_parameters(
12811        prime_len: ::std::os::raw::c_int,
12812        generator: ::std::os::raw::c_int,
12813        callback: ::std::option::Option<
12814            unsafe extern "C" fn(
12815                arg1: ::std::os::raw::c_int,
12816                arg2: ::std::os::raw::c_int,
12817                arg3: *mut ::std::os::raw::c_void,
12818            ),
12819        >,
12820        cb_arg: *mut ::std::os::raw::c_void,
12821    ) -> *mut DH;
12822}
12823extern "C" {
12824    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DHparams"]
12825    pub fn d2i_DHparams(
12826        ret: *mut *mut DH,
12827        inp: *mut *const ::std::os::raw::c_uchar,
12828        len: ::std::os::raw::c_long,
12829    ) -> *mut DH;
12830}
12831extern "C" {
12832    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DHparams"]
12833    pub fn i2d_DHparams(
12834        in_: *const DH,
12835        outp: *mut *mut ::std::os::raw::c_uchar,
12836    ) -> ::std::os::raw::c_int;
12837}
12838extern "C" {
12839    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_compute_key"]
12840    pub fn DH_compute_key(
12841        out: *mut u8,
12842        peers_key: *const BIGNUM,
12843        dh: *mut DH,
12844    ) -> ::std::os::raw::c_int;
12845}
12846extern "C" {
12847    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_get_2048_256"]
12848    pub fn DH_get_2048_256() -> *mut DH;
12849}
12850extern "C" {
12851    #[link_name = "\u{1}aws_lc_fips_0_13_10_DH_clear_flags"]
12852    pub fn DH_clear_flags(dh: *mut DH, flags: ::std::os::raw::c_int);
12853}
12854extern "C" {
12855    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_md4"]
12856    pub fn EVP_md4() -> *const EVP_MD;
12857}
12858extern "C" {
12859    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_md5"]
12860    pub fn EVP_md5() -> *const EVP_MD;
12861}
12862extern "C" {
12863    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_ripemd160"]
12864    pub fn EVP_ripemd160() -> *const EVP_MD;
12865}
12866extern "C" {
12867    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha1"]
12868    pub fn EVP_sha1() -> *const EVP_MD;
12869}
12870extern "C" {
12871    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha224"]
12872    pub fn EVP_sha224() -> *const EVP_MD;
12873}
12874extern "C" {
12875    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha256"]
12876    pub fn EVP_sha256() -> *const EVP_MD;
12877}
12878extern "C" {
12879    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha384"]
12880    pub fn EVP_sha384() -> *const EVP_MD;
12881}
12882extern "C" {
12883    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha512"]
12884    pub fn EVP_sha512() -> *const EVP_MD;
12885}
12886extern "C" {
12887    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha512_224"]
12888    pub fn EVP_sha512_224() -> *const EVP_MD;
12889}
12890extern "C" {
12891    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha512_256"]
12892    pub fn EVP_sha512_256() -> *const EVP_MD;
12893}
12894extern "C" {
12895    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha3_224"]
12896    pub fn EVP_sha3_224() -> *const EVP_MD;
12897}
12898extern "C" {
12899    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha3_256"]
12900    pub fn EVP_sha3_256() -> *const EVP_MD;
12901}
12902extern "C" {
12903    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha3_384"]
12904    pub fn EVP_sha3_384() -> *const EVP_MD;
12905}
12906extern "C" {
12907    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_sha3_512"]
12908    pub fn EVP_sha3_512() -> *const EVP_MD;
12909}
12910extern "C" {
12911    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_shake128"]
12912    pub fn EVP_shake128() -> *const EVP_MD;
12913}
12914extern "C" {
12915    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_shake256"]
12916    pub fn EVP_shake256() -> *const EVP_MD;
12917}
12918extern "C" {
12919    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_blake2b256"]
12920    pub fn EVP_blake2b256() -> *const EVP_MD;
12921}
12922extern "C" {
12923    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_md5_sha1"]
12924    pub fn EVP_md5_sha1() -> *const EVP_MD;
12925}
12926extern "C" {
12927    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_get_digestbynid"]
12928    pub fn EVP_get_digestbynid(nid: ::std::os::raw::c_int) -> *const EVP_MD;
12929}
12930extern "C" {
12931    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_get_digestbyobj"]
12932    pub fn EVP_get_digestbyobj(obj: *const ASN1_OBJECT) -> *const EVP_MD;
12933}
12934extern "C" {
12935    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_init"]
12936    pub fn EVP_MD_CTX_init(ctx: *mut EVP_MD_CTX);
12937}
12938extern "C" {
12939    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_new"]
12940    pub fn EVP_MD_CTX_new() -> *mut EVP_MD_CTX;
12941}
12942extern "C" {
12943    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_cleanup"]
12944    pub fn EVP_MD_CTX_cleanup(ctx: *mut EVP_MD_CTX) -> ::std::os::raw::c_int;
12945}
12946extern "C" {
12947    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_cleanse"]
12948    pub fn EVP_MD_CTX_cleanse(ctx: *mut EVP_MD_CTX);
12949}
12950extern "C" {
12951    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_free"]
12952    pub fn EVP_MD_CTX_free(ctx: *mut EVP_MD_CTX);
12953}
12954extern "C" {
12955    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_copy_ex"]
12956    pub fn EVP_MD_CTX_copy_ex(
12957        out: *mut EVP_MD_CTX,
12958        in_: *const EVP_MD_CTX,
12959    ) -> ::std::os::raw::c_int;
12960}
12961extern "C" {
12962    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_move"]
12963    pub fn EVP_MD_CTX_move(out: *mut EVP_MD_CTX, in_: *mut EVP_MD_CTX);
12964}
12965extern "C" {
12966    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_reset"]
12967    pub fn EVP_MD_CTX_reset(ctx: *mut EVP_MD_CTX) -> ::std::os::raw::c_int;
12968}
12969extern "C" {
12970    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestInit_ex"]
12971    pub fn EVP_DigestInit_ex(
12972        ctx: *mut EVP_MD_CTX,
12973        type_: *const EVP_MD,
12974        engine: *mut ENGINE,
12975    ) -> ::std::os::raw::c_int;
12976}
12977extern "C" {
12978    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestInit"]
12979    pub fn EVP_DigestInit(ctx: *mut EVP_MD_CTX, type_: *const EVP_MD) -> ::std::os::raw::c_int;
12980}
12981extern "C" {
12982    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestUpdate"]
12983    pub fn EVP_DigestUpdate(
12984        ctx: *mut EVP_MD_CTX,
12985        data: *const ::std::os::raw::c_void,
12986        len: usize,
12987    ) -> ::std::os::raw::c_int;
12988}
12989extern "C" {
12990    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestFinal_ex"]
12991    pub fn EVP_DigestFinal_ex(
12992        ctx: *mut EVP_MD_CTX,
12993        md_out: *mut u8,
12994        out_size: *mut ::std::os::raw::c_uint,
12995    ) -> ::std::os::raw::c_int;
12996}
12997extern "C" {
12998    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestFinal"]
12999    pub fn EVP_DigestFinal(
13000        ctx: *mut EVP_MD_CTX,
13001        md_out: *mut u8,
13002        out_size: *mut ::std::os::raw::c_uint,
13003    ) -> ::std::os::raw::c_int;
13004}
13005extern "C" {
13006    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_Digest"]
13007    pub fn EVP_Digest(
13008        data: *const ::std::os::raw::c_void,
13009        len: usize,
13010        md_out: *mut u8,
13011        out_size: *mut ::std::os::raw::c_uint,
13012        type_: *const EVP_MD,
13013        impl_: *mut ENGINE,
13014    ) -> ::std::os::raw::c_int;
13015}
13016extern "C" {
13017    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_type"]
13018    pub fn EVP_MD_type(md: *const EVP_MD) -> ::std::os::raw::c_int;
13019}
13020extern "C" {
13021    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_flags"]
13022    pub fn EVP_MD_flags(md: *const EVP_MD) -> u32;
13023}
13024extern "C" {
13025    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_size"]
13026    pub fn EVP_MD_size(md: *const EVP_MD) -> usize;
13027}
13028extern "C" {
13029    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_block_size"]
13030    pub fn EVP_MD_block_size(md: *const EVP_MD) -> usize;
13031}
13032extern "C" {
13033    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_md"]
13034    pub fn EVP_MD_CTX_md(ctx: *const EVP_MD_CTX) -> *const EVP_MD;
13035}
13036extern "C" {
13037    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_size"]
13038    pub fn EVP_MD_CTX_size(ctx: *const EVP_MD_CTX) -> usize;
13039}
13040extern "C" {
13041    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_block_size"]
13042    pub fn EVP_MD_CTX_block_size(ctx: *const EVP_MD_CTX) -> usize;
13043}
13044extern "C" {
13045    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_type"]
13046    pub fn EVP_MD_CTX_type(ctx: *const EVP_MD_CTX) -> ::std::os::raw::c_int;
13047}
13048extern "C" {
13049    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_parse_digest_algorithm"]
13050    pub fn EVP_parse_digest_algorithm(cbs: *mut CBS) -> *const EVP_MD;
13051}
13052extern "C" {
13053    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_marshal_digest_algorithm"]
13054    pub fn EVP_marshal_digest_algorithm(cbb: *mut CBB, md: *const EVP_MD) -> ::std::os::raw::c_int;
13055}
13056extern "C" {
13057    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_copy"]
13058    pub fn EVP_MD_CTX_copy(out: *mut EVP_MD_CTX, in_: *const EVP_MD_CTX) -> ::std::os::raw::c_int;
13059}
13060extern "C" {
13061    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_get_digestbyname"]
13062    pub fn EVP_get_digestbyname(arg1: *const ::std::os::raw::c_char) -> *const EVP_MD;
13063}
13064extern "C" {
13065    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_create"]
13066    pub fn EVP_MD_CTX_create() -> *mut EVP_MD_CTX;
13067}
13068extern "C" {
13069    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_destroy"]
13070    pub fn EVP_MD_CTX_destroy(ctx: *mut EVP_MD_CTX);
13071}
13072extern "C" {
13073    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestFinalXOF"]
13074    pub fn EVP_DigestFinalXOF(
13075        ctx: *mut EVP_MD_CTX,
13076        out: *mut u8,
13077        len: usize,
13078    ) -> ::std::os::raw::c_int;
13079}
13080extern "C" {
13081    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_meth_get_flags"]
13082    pub fn EVP_MD_meth_get_flags(md: *const EVP_MD) -> u32;
13083}
13084extern "C" {
13085    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_nid"]
13086    pub fn EVP_MD_nid(md: *const EVP_MD) -> ::std::os::raw::c_int;
13087}
13088extern "C" {
13089    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_set_pkey_ctx"]
13090    pub fn EVP_MD_CTX_set_pkey_ctx(ctx: *mut EVP_MD_CTX, pctx: *mut EVP_PKEY_CTX);
13091}
13092#[repr(C)]
13093#[derive(Debug, Copy, Clone)]
13094pub struct evp_md_pctx_ops {
13095    _unused: [u8; 0],
13096}
13097#[repr(C)]
13098#[derive(Debug, Copy, Clone, PartialEq, Eq)]
13099pub struct env_md_ctx_st {
13100    pub digest: *const EVP_MD,
13101    pub md_data: *mut ::std::os::raw::c_void,
13102    pub update: ::std::option::Option<
13103        unsafe extern "C" fn(
13104            ctx: *mut EVP_MD_CTX,
13105            data: *const ::std::os::raw::c_void,
13106            count: usize,
13107        ),
13108    >,
13109    pub pctx: *mut EVP_PKEY_CTX,
13110    pub pctx_ops: *const evp_md_pctx_ops,
13111    pub flags: ::std::os::raw::c_ulong,
13112}
13113#[test]
13114fn bindgen_test_layout_env_md_ctx_st() {
13115    const UNINIT: ::std::mem::MaybeUninit<env_md_ctx_st> = ::std::mem::MaybeUninit::uninit();
13116    let ptr = UNINIT.as_ptr();
13117    assert_eq!(
13118        ::std::mem::size_of::<env_md_ctx_st>(),
13119        48usize,
13120        "Size of env_md_ctx_st"
13121    );
13122    assert_eq!(
13123        ::std::mem::align_of::<env_md_ctx_st>(),
13124        8usize,
13125        "Alignment of env_md_ctx_st"
13126    );
13127    assert_eq!(
13128        unsafe { ::std::ptr::addr_of!((*ptr).digest) as usize - ptr as usize },
13129        0usize,
13130        "Offset of field: env_md_ctx_st::digest"
13131    );
13132    assert_eq!(
13133        unsafe { ::std::ptr::addr_of!((*ptr).md_data) as usize - ptr as usize },
13134        8usize,
13135        "Offset of field: env_md_ctx_st::md_data"
13136    );
13137    assert_eq!(
13138        unsafe { ::std::ptr::addr_of!((*ptr).update) as usize - ptr as usize },
13139        16usize,
13140        "Offset of field: env_md_ctx_st::update"
13141    );
13142    assert_eq!(
13143        unsafe { ::std::ptr::addr_of!((*ptr).pctx) as usize - ptr as usize },
13144        24usize,
13145        "Offset of field: env_md_ctx_st::pctx"
13146    );
13147    assert_eq!(
13148        unsafe { ::std::ptr::addr_of!((*ptr).pctx_ops) as usize - ptr as usize },
13149        32usize,
13150        "Offset of field: env_md_ctx_st::pctx_ops"
13151    );
13152    assert_eq!(
13153        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
13154        40usize,
13155        "Offset of field: env_md_ctx_st::flags"
13156    );
13157}
13158impl Default for env_md_ctx_st {
13159    fn default() -> Self {
13160        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13161        unsafe {
13162            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13163            s.assume_init()
13164        }
13165    }
13166}
13167extern "C" {
13168    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_unstable_sha3_enable"]
13169    pub fn EVP_MD_unstable_sha3_enable(enable: bool);
13170}
13171extern "C" {
13172    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_unstable_sha3_is_enabled"]
13173    pub fn EVP_MD_unstable_sha3_is_enabled() -> bool;
13174}
13175extern "C" {
13176    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_CTX_set_flags"]
13177    pub fn EVP_MD_CTX_set_flags(ctx: *mut EVP_MD_CTX, flags: ::std::os::raw::c_int);
13178}
13179extern "C" {
13180    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_add_digest"]
13181    pub fn EVP_add_digest(digest: *const EVP_MD) -> ::std::os::raw::c_int;
13182}
13183extern "C" {
13184    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_md_null"]
13185    pub fn EVP_md_null() -> *const EVP_MD;
13186}
13187extern "C" {
13188    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_new"]
13189    pub fn DSA_new() -> *mut DSA;
13190}
13191extern "C" {
13192    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_free"]
13193    pub fn DSA_free(dsa: *mut DSA);
13194}
13195extern "C" {
13196    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_up_ref"]
13197    pub fn DSA_up_ref(dsa: *mut DSA) -> ::std::os::raw::c_int;
13198}
13199extern "C" {
13200    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_print"]
13201    pub fn DSA_print(
13202        bio: *mut BIO,
13203        dsa: *const DSA,
13204        indent: ::std::os::raw::c_int,
13205    ) -> ::std::os::raw::c_int;
13206}
13207extern "C" {
13208    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_print_fp"]
13209    pub fn DSA_print_fp(
13210        fp: *mut FILE,
13211        dsa: *const DSA,
13212        indent: ::std::os::raw::c_int,
13213    ) -> ::std::os::raw::c_int;
13214}
13215extern "C" {
13216    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_bits"]
13217    pub fn DSA_bits(dsa: *const DSA) -> ::std::os::raw::c_uint;
13218}
13219extern "C" {
13220    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get0_pub_key"]
13221    pub fn DSA_get0_pub_key(dsa: *const DSA) -> *const BIGNUM;
13222}
13223extern "C" {
13224    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get0_priv_key"]
13225    pub fn DSA_get0_priv_key(dsa: *const DSA) -> *const BIGNUM;
13226}
13227extern "C" {
13228    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get0_p"]
13229    pub fn DSA_get0_p(dsa: *const DSA) -> *const BIGNUM;
13230}
13231extern "C" {
13232    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get0_q"]
13233    pub fn DSA_get0_q(dsa: *const DSA) -> *const BIGNUM;
13234}
13235extern "C" {
13236    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get0_g"]
13237    pub fn DSA_get0_g(dsa: *const DSA) -> *const BIGNUM;
13238}
13239extern "C" {
13240    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get0_key"]
13241    pub fn DSA_get0_key(
13242        dsa: *const DSA,
13243        out_pub_key: *mut *const BIGNUM,
13244        out_priv_key: *mut *const BIGNUM,
13245    );
13246}
13247extern "C" {
13248    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get0_pqg"]
13249    pub fn DSA_get0_pqg(
13250        dsa: *const DSA,
13251        out_p: *mut *const BIGNUM,
13252        out_q: *mut *const BIGNUM,
13253        out_g: *mut *const BIGNUM,
13254    );
13255}
13256extern "C" {
13257    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_set0_key"]
13258    pub fn DSA_set0_key(
13259        dsa: *mut DSA,
13260        pub_key: *mut BIGNUM,
13261        priv_key: *mut BIGNUM,
13262    ) -> ::std::os::raw::c_int;
13263}
13264extern "C" {
13265    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_set0_pqg"]
13266    pub fn DSA_set0_pqg(
13267        dsa: *mut DSA,
13268        p: *mut BIGNUM,
13269        q: *mut BIGNUM,
13270        g: *mut BIGNUM,
13271    ) -> ::std::os::raw::c_int;
13272}
13273extern "C" {
13274    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_generate_parameters_ex"]
13275    pub fn DSA_generate_parameters_ex(
13276        dsa: *mut DSA,
13277        bits: ::std::os::raw::c_uint,
13278        seed: *const u8,
13279        seed_len: usize,
13280        out_counter: *mut ::std::os::raw::c_int,
13281        out_h: *mut ::std::os::raw::c_ulong,
13282        cb: *mut BN_GENCB,
13283    ) -> ::std::os::raw::c_int;
13284}
13285extern "C" {
13286    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSAparams_dup"]
13287    pub fn DSAparams_dup(dsa: *const DSA) -> *mut DSA;
13288}
13289extern "C" {
13290    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_generate_key"]
13291    pub fn DSA_generate_key(dsa: *mut DSA) -> ::std::os::raw::c_int;
13292}
13293#[repr(C)]
13294#[derive(Debug, Copy, Clone, PartialEq, Eq)]
13295pub struct DSA_SIG_st {
13296    pub r: *mut BIGNUM,
13297    pub s: *mut BIGNUM,
13298}
13299#[test]
13300fn bindgen_test_layout_DSA_SIG_st() {
13301    const UNINIT: ::std::mem::MaybeUninit<DSA_SIG_st> = ::std::mem::MaybeUninit::uninit();
13302    let ptr = UNINIT.as_ptr();
13303    assert_eq!(
13304        ::std::mem::size_of::<DSA_SIG_st>(),
13305        16usize,
13306        "Size of DSA_SIG_st"
13307    );
13308    assert_eq!(
13309        ::std::mem::align_of::<DSA_SIG_st>(),
13310        8usize,
13311        "Alignment of DSA_SIG_st"
13312    );
13313    assert_eq!(
13314        unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize },
13315        0usize,
13316        "Offset of field: DSA_SIG_st::r"
13317    );
13318    assert_eq!(
13319        unsafe { ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize },
13320        8usize,
13321        "Offset of field: DSA_SIG_st::s"
13322    );
13323}
13324impl Default for DSA_SIG_st {
13325    fn default() -> Self {
13326        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13327        unsafe {
13328            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13329            s.assume_init()
13330        }
13331    }
13332}
13333extern "C" {
13334    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_SIG_new"]
13335    pub fn DSA_SIG_new() -> *mut DSA_SIG;
13336}
13337extern "C" {
13338    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_SIG_free"]
13339    pub fn DSA_SIG_free(sig: *mut DSA_SIG);
13340}
13341extern "C" {
13342    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_SIG_get0"]
13343    pub fn DSA_SIG_get0(sig: *const DSA_SIG, out_r: *mut *const BIGNUM, out_s: *mut *const BIGNUM);
13344}
13345extern "C" {
13346    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_SIG_set0"]
13347    pub fn DSA_SIG_set0(sig: *mut DSA_SIG, r: *mut BIGNUM, s: *mut BIGNUM)
13348        -> ::std::os::raw::c_int;
13349}
13350extern "C" {
13351    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_do_sign"]
13352    pub fn DSA_do_sign(digest: *const u8, digest_len: usize, dsa: *const DSA) -> *mut DSA_SIG;
13353}
13354extern "C" {
13355    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_do_verify"]
13356    pub fn DSA_do_verify(
13357        digest: *const u8,
13358        digest_len: usize,
13359        sig: *mut DSA_SIG,
13360        dsa: *const DSA,
13361    ) -> ::std::os::raw::c_int;
13362}
13363extern "C" {
13364    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_do_check_signature"]
13365    pub fn DSA_do_check_signature(
13366        out_valid: *mut ::std::os::raw::c_int,
13367        digest: *const u8,
13368        digest_len: usize,
13369        sig: *mut DSA_SIG,
13370        dsa: *const DSA,
13371    ) -> ::std::os::raw::c_int;
13372}
13373extern "C" {
13374    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_sign"]
13375    pub fn DSA_sign(
13376        type_: ::std::os::raw::c_int,
13377        digest: *const u8,
13378        digest_len: usize,
13379        out_sig: *mut u8,
13380        out_siglen: *mut ::std::os::raw::c_uint,
13381        dsa: *const DSA,
13382    ) -> ::std::os::raw::c_int;
13383}
13384extern "C" {
13385    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_verify"]
13386    pub fn DSA_verify(
13387        type_: ::std::os::raw::c_int,
13388        digest: *const u8,
13389        digest_len: usize,
13390        sig: *const u8,
13391        sig_len: usize,
13392        dsa: *const DSA,
13393    ) -> ::std::os::raw::c_int;
13394}
13395extern "C" {
13396    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_check_signature"]
13397    pub fn DSA_check_signature(
13398        out_valid: *mut ::std::os::raw::c_int,
13399        digest: *const u8,
13400        digest_len: usize,
13401        sig: *const u8,
13402        sig_len: usize,
13403        dsa: *const DSA,
13404    ) -> ::std::os::raw::c_int;
13405}
13406extern "C" {
13407    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_size"]
13408    pub fn DSA_size(dsa: *const DSA) -> ::std::os::raw::c_int;
13409}
13410extern "C" {
13411    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_SIG_parse"]
13412    pub fn DSA_SIG_parse(cbs: *mut CBS) -> *mut DSA_SIG;
13413}
13414extern "C" {
13415    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_SIG_marshal"]
13416    pub fn DSA_SIG_marshal(cbb: *mut CBB, sig: *const DSA_SIG) -> ::std::os::raw::c_int;
13417}
13418extern "C" {
13419    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_parse_public_key"]
13420    pub fn DSA_parse_public_key(cbs: *mut CBS) -> *mut DSA;
13421}
13422extern "C" {
13423    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_marshal_public_key"]
13424    pub fn DSA_marshal_public_key(cbb: *mut CBB, dsa: *const DSA) -> ::std::os::raw::c_int;
13425}
13426extern "C" {
13427    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_parse_private_key"]
13428    pub fn DSA_parse_private_key(cbs: *mut CBS) -> *mut DSA;
13429}
13430extern "C" {
13431    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_marshal_private_key"]
13432    pub fn DSA_marshal_private_key(cbb: *mut CBB, dsa: *const DSA) -> ::std::os::raw::c_int;
13433}
13434extern "C" {
13435    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_parse_parameters"]
13436    pub fn DSA_parse_parameters(cbs: *mut CBS) -> *mut DSA;
13437}
13438extern "C" {
13439    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_marshal_parameters"]
13440    pub fn DSA_marshal_parameters(cbb: *mut CBB, dsa: *const DSA) -> ::std::os::raw::c_int;
13441}
13442extern "C" {
13443    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_dup_DH"]
13444    pub fn DSA_dup_DH(dsa: *const DSA) -> *mut DH;
13445}
13446extern "C" {
13447    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get_ex_new_index"]
13448    pub fn DSA_get_ex_new_index(
13449        argl: ::std::os::raw::c_long,
13450        argp: *mut ::std::os::raw::c_void,
13451        unused: *mut CRYPTO_EX_unused,
13452        dup_unused: CRYPTO_EX_dup,
13453        free_func: CRYPTO_EX_free,
13454    ) -> ::std::os::raw::c_int;
13455}
13456extern "C" {
13457    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_set_ex_data"]
13458    pub fn DSA_set_ex_data(
13459        dsa: *mut DSA,
13460        idx: ::std::os::raw::c_int,
13461        arg: *mut ::std::os::raw::c_void,
13462    ) -> ::std::os::raw::c_int;
13463}
13464extern "C" {
13465    #[link_name = "\u{1}aws_lc_fips_0_13_10_DSA_get_ex_data"]
13466    pub fn DSA_get_ex_data(
13467        dsa: *const DSA,
13468        idx: ::std::os::raw::c_int,
13469    ) -> *mut ::std::os::raw::c_void;
13470}
13471extern "C" {
13472    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSA_SIG"]
13473    pub fn d2i_DSA_SIG(
13474        out_sig: *mut *mut DSA_SIG,
13475        inp: *mut *const u8,
13476        len: ::std::os::raw::c_long,
13477    ) -> *mut DSA_SIG;
13478}
13479extern "C" {
13480    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSA_SIG"]
13481    pub fn i2d_DSA_SIG(in_: *const DSA_SIG, outp: *mut *mut u8) -> ::std::os::raw::c_int;
13482}
13483extern "C" {
13484    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSAPublicKey"]
13485    pub fn d2i_DSAPublicKey(
13486        out: *mut *mut DSA,
13487        inp: *mut *const u8,
13488        len: ::std::os::raw::c_long,
13489    ) -> *mut DSA;
13490}
13491extern "C" {
13492    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSAPublicKey"]
13493    pub fn i2d_DSAPublicKey(in_: *const DSA, outp: *mut *mut u8) -> ::std::os::raw::c_int;
13494}
13495extern "C" {
13496    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSAPrivateKey"]
13497    pub fn d2i_DSAPrivateKey(
13498        out: *mut *mut DSA,
13499        inp: *mut *const u8,
13500        len: ::std::os::raw::c_long,
13501    ) -> *mut DSA;
13502}
13503extern "C" {
13504    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSAPrivateKey"]
13505    pub fn i2d_DSAPrivateKey(in_: *const DSA, outp: *mut *mut u8) -> ::std::os::raw::c_int;
13506}
13507extern "C" {
13508    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSAparams"]
13509    pub fn d2i_DSAparams(
13510        out: *mut *mut DSA,
13511        inp: *mut *const u8,
13512        len: ::std::os::raw::c_long,
13513    ) -> *mut DSA;
13514}
13515extern "C" {
13516    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSAparams"]
13517    pub fn i2d_DSAparams(in_: *const DSA, outp: *mut *mut u8) -> ::std::os::raw::c_int;
13518}
13519#[repr(u32)]
13520#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
13521pub enum point_conversion_form_t {
13522    POINT_CONVERSION_COMPRESSED = 2,
13523    POINT_CONVERSION_UNCOMPRESSED = 4,
13524    POINT_CONVERSION_HYBRID = 6,
13525}
13526extern "C" {
13527    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_group_p224"]
13528    pub fn EC_group_p224() -> *const EC_GROUP;
13529}
13530extern "C" {
13531    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_group_p256"]
13532    pub fn EC_group_p256() -> *const EC_GROUP;
13533}
13534extern "C" {
13535    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_group_p384"]
13536    pub fn EC_group_p384() -> *const EC_GROUP;
13537}
13538extern "C" {
13539    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_group_p521"]
13540    pub fn EC_group_p521() -> *const EC_GROUP;
13541}
13542extern "C" {
13543    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_group_secp256k1"]
13544    pub fn EC_group_secp256k1() -> *const EC_GROUP;
13545}
13546extern "C" {
13547    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_new_by_curve_name"]
13548    pub fn EC_GROUP_new_by_curve_name(nid: ::std::os::raw::c_int) -> *mut EC_GROUP;
13549}
13550extern "C" {
13551    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_cmp"]
13552    pub fn EC_GROUP_cmp(
13553        a: *const EC_GROUP,
13554        b: *const EC_GROUP,
13555        ignored: *mut BN_CTX,
13556    ) -> ::std::os::raw::c_int;
13557}
13558extern "C" {
13559    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get0_generator"]
13560    pub fn EC_GROUP_get0_generator(group: *const EC_GROUP) -> *const EC_POINT;
13561}
13562extern "C" {
13563    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get0_order"]
13564    pub fn EC_GROUP_get0_order(group: *const EC_GROUP) -> *const BIGNUM;
13565}
13566extern "C" {
13567    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_order_bits"]
13568    pub fn EC_GROUP_order_bits(group: *const EC_GROUP) -> ::std::os::raw::c_int;
13569}
13570extern "C" {
13571    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get_cofactor"]
13572    pub fn EC_GROUP_get_cofactor(
13573        group: *const EC_GROUP,
13574        cofactor: *mut BIGNUM,
13575        ctx: *mut BN_CTX,
13576    ) -> ::std::os::raw::c_int;
13577}
13578extern "C" {
13579    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get_curve_GFp"]
13580    pub fn EC_GROUP_get_curve_GFp(
13581        group: *const EC_GROUP,
13582        out_p: *mut BIGNUM,
13583        out_a: *mut BIGNUM,
13584        out_b: *mut BIGNUM,
13585        ctx: *mut BN_CTX,
13586    ) -> ::std::os::raw::c_int;
13587}
13588extern "C" {
13589    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get_curve_name"]
13590    pub fn EC_GROUP_get_curve_name(group: *const EC_GROUP) -> ::std::os::raw::c_int;
13591}
13592extern "C" {
13593    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get_degree"]
13594    pub fn EC_GROUP_get_degree(group: *const EC_GROUP) -> ::std::os::raw::c_uint;
13595}
13596extern "C" {
13597    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_curve_nid2nist"]
13598    pub fn EC_curve_nid2nist(nid: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
13599}
13600extern "C" {
13601    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_curve_nist2nid"]
13602    pub fn EC_curve_nist2nid(name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
13603}
13604extern "C" {
13605    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_new"]
13606    pub fn EC_POINT_new(group: *const EC_GROUP) -> *mut EC_POINT;
13607}
13608extern "C" {
13609    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_free"]
13610    pub fn EC_POINT_free(point: *mut EC_POINT);
13611}
13612extern "C" {
13613    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_copy"]
13614    pub fn EC_POINT_copy(dest: *mut EC_POINT, src: *const EC_POINT) -> ::std::os::raw::c_int;
13615}
13616extern "C" {
13617    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_dup"]
13618    pub fn EC_POINT_dup(src: *const EC_POINT, group: *const EC_GROUP) -> *mut EC_POINT;
13619}
13620extern "C" {
13621    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_set_to_infinity"]
13622    pub fn EC_POINT_set_to_infinity(
13623        group: *const EC_GROUP,
13624        point: *mut EC_POINT,
13625    ) -> ::std::os::raw::c_int;
13626}
13627extern "C" {
13628    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_is_at_infinity"]
13629    pub fn EC_POINT_is_at_infinity(
13630        group: *const EC_GROUP,
13631        point: *const EC_POINT,
13632    ) -> ::std::os::raw::c_int;
13633}
13634extern "C" {
13635    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_is_on_curve"]
13636    pub fn EC_POINT_is_on_curve(
13637        group: *const EC_GROUP,
13638        point: *const EC_POINT,
13639        ctx: *mut BN_CTX,
13640    ) -> ::std::os::raw::c_int;
13641}
13642extern "C" {
13643    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_cmp"]
13644    pub fn EC_POINT_cmp(
13645        group: *const EC_GROUP,
13646        a: *const EC_POINT,
13647        b: *const EC_POINT,
13648        ctx: *mut BN_CTX,
13649    ) -> ::std::os::raw::c_int;
13650}
13651extern "C" {
13652    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_get_affine_coordinates_GFp"]
13653    pub fn EC_POINT_get_affine_coordinates_GFp(
13654        group: *const EC_GROUP,
13655        point: *const EC_POINT,
13656        x: *mut BIGNUM,
13657        y: *mut BIGNUM,
13658        ctx: *mut BN_CTX,
13659    ) -> ::std::os::raw::c_int;
13660}
13661extern "C" {
13662    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_get_affine_coordinates"]
13663    pub fn EC_POINT_get_affine_coordinates(
13664        group: *const EC_GROUP,
13665        point: *const EC_POINT,
13666        x: *mut BIGNUM,
13667        y: *mut BIGNUM,
13668        ctx: *mut BN_CTX,
13669    ) -> ::std::os::raw::c_int;
13670}
13671extern "C" {
13672    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_set_affine_coordinates_GFp"]
13673    pub fn EC_POINT_set_affine_coordinates_GFp(
13674        group: *const EC_GROUP,
13675        point: *mut EC_POINT,
13676        x: *const BIGNUM,
13677        y: *const BIGNUM,
13678        ctx: *mut BN_CTX,
13679    ) -> ::std::os::raw::c_int;
13680}
13681extern "C" {
13682    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_set_affine_coordinates"]
13683    pub fn EC_POINT_set_affine_coordinates(
13684        group: *const EC_GROUP,
13685        point: *mut EC_POINT,
13686        x: *const BIGNUM,
13687        y: *const BIGNUM,
13688        ctx: *mut BN_CTX,
13689    ) -> ::std::os::raw::c_int;
13690}
13691extern "C" {
13692    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_point2oct"]
13693    pub fn EC_POINT_point2oct(
13694        group: *const EC_GROUP,
13695        point: *const EC_POINT,
13696        form: point_conversion_form_t,
13697        buf: *mut u8,
13698        len: usize,
13699        ctx: *mut BN_CTX,
13700    ) -> usize;
13701}
13702extern "C" {
13703    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_point2cbb"]
13704    pub fn EC_POINT_point2cbb(
13705        out: *mut CBB,
13706        group: *const EC_GROUP,
13707        point: *const EC_POINT,
13708        form: point_conversion_form_t,
13709        ctx: *mut BN_CTX,
13710    ) -> ::std::os::raw::c_int;
13711}
13712extern "C" {
13713    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_oct2point"]
13714    pub fn EC_POINT_oct2point(
13715        group: *const EC_GROUP,
13716        point: *mut EC_POINT,
13717        buf: *const u8,
13718        len: usize,
13719        ctx: *mut BN_CTX,
13720    ) -> ::std::os::raw::c_int;
13721}
13722extern "C" {
13723    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_set_compressed_coordinates_GFp"]
13724    pub fn EC_POINT_set_compressed_coordinates_GFp(
13725        group: *const EC_GROUP,
13726        point: *mut EC_POINT,
13727        x: *const BIGNUM,
13728        y_bit: ::std::os::raw::c_int,
13729        ctx: *mut BN_CTX,
13730    ) -> ::std::os::raw::c_int;
13731}
13732extern "C" {
13733    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_add"]
13734    pub fn EC_POINT_add(
13735        group: *const EC_GROUP,
13736        r: *mut EC_POINT,
13737        a: *const EC_POINT,
13738        b: *const EC_POINT,
13739        ctx: *mut BN_CTX,
13740    ) -> ::std::os::raw::c_int;
13741}
13742extern "C" {
13743    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_dbl"]
13744    pub fn EC_POINT_dbl(
13745        group: *const EC_GROUP,
13746        r: *mut EC_POINT,
13747        a: *const EC_POINT,
13748        ctx: *mut BN_CTX,
13749    ) -> ::std::os::raw::c_int;
13750}
13751extern "C" {
13752    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_invert"]
13753    pub fn EC_POINT_invert(
13754        group: *const EC_GROUP,
13755        a: *mut EC_POINT,
13756        ctx: *mut BN_CTX,
13757    ) -> ::std::os::raw::c_int;
13758}
13759extern "C" {
13760    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_mul"]
13761    pub fn EC_POINT_mul(
13762        group: *const EC_GROUP,
13763        r: *mut EC_POINT,
13764        n: *const BIGNUM,
13765        q: *const EC_POINT,
13766        m: *const BIGNUM,
13767        ctx: *mut BN_CTX,
13768    ) -> ::std::os::raw::c_int;
13769}
13770extern "C" {
13771    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_hash_to_curve_p256_xmd_sha256_sswu"]
13772    pub fn EC_hash_to_curve_p256_xmd_sha256_sswu(
13773        group: *const EC_GROUP,
13774        out: *mut EC_POINT,
13775        dst: *const u8,
13776        dst_len: usize,
13777        msg: *const u8,
13778        msg_len: usize,
13779    ) -> ::std::os::raw::c_int;
13780}
13781extern "C" {
13782    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_hash_to_curve_p384_xmd_sha384_sswu"]
13783    pub fn EC_hash_to_curve_p384_xmd_sha384_sswu(
13784        group: *const EC_GROUP,
13785        out: *mut EC_POINT,
13786        dst: *const u8,
13787        dst_len: usize,
13788        msg: *const u8,
13789        msg_len: usize,
13790    ) -> ::std::os::raw::c_int;
13791}
13792extern "C" {
13793    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_free"]
13794    pub fn EC_GROUP_free(group: *mut EC_GROUP);
13795}
13796extern "C" {
13797    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_dup"]
13798    pub fn EC_GROUP_dup(group: *const EC_GROUP) -> *mut EC_GROUP;
13799}
13800extern "C" {
13801    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_new_curve_GFp"]
13802    pub fn EC_GROUP_new_curve_GFp(
13803        p: *const BIGNUM,
13804        a: *const BIGNUM,
13805        b: *const BIGNUM,
13806        ctx: *mut BN_CTX,
13807    ) -> *mut EC_GROUP;
13808}
13809extern "C" {
13810    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_set_generator"]
13811    pub fn EC_GROUP_set_generator(
13812        group: *mut EC_GROUP,
13813        generator: *const EC_POINT,
13814        order: *const BIGNUM,
13815        cofactor: *const BIGNUM,
13816    ) -> ::std::os::raw::c_int;
13817}
13818extern "C" {
13819    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_point2bn"]
13820    pub fn EC_POINT_point2bn(
13821        group: *const EC_GROUP,
13822        point: *const EC_POINT,
13823        form: point_conversion_form_t,
13824        ret: *mut BIGNUM,
13825        ctx: *mut BN_CTX,
13826    ) -> *mut BIGNUM;
13827}
13828extern "C" {
13829    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_bn2point"]
13830    pub fn EC_POINT_bn2point(
13831        group: *const EC_GROUP,
13832        bn: *const BIGNUM,
13833        point: *mut EC_POINT,
13834        ctx: *mut BN_CTX,
13835    ) -> *mut EC_POINT;
13836}
13837extern "C" {
13838    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get_order"]
13839    pub fn EC_GROUP_get_order(
13840        group: *const EC_GROUP,
13841        order: *mut BIGNUM,
13842        ctx: *mut BN_CTX,
13843    ) -> ::std::os::raw::c_int;
13844}
13845#[repr(C)]
13846#[derive(Debug, Copy, Clone, PartialEq, Eq)]
13847pub struct EC_builtin_curve {
13848    pub nid: ::std::os::raw::c_int,
13849    pub comment: *const ::std::os::raw::c_char,
13850}
13851#[test]
13852fn bindgen_test_layout_EC_builtin_curve() {
13853    const UNINIT: ::std::mem::MaybeUninit<EC_builtin_curve> = ::std::mem::MaybeUninit::uninit();
13854    let ptr = UNINIT.as_ptr();
13855    assert_eq!(
13856        ::std::mem::size_of::<EC_builtin_curve>(),
13857        16usize,
13858        "Size of EC_builtin_curve"
13859    );
13860    assert_eq!(
13861        ::std::mem::align_of::<EC_builtin_curve>(),
13862        8usize,
13863        "Alignment of EC_builtin_curve"
13864    );
13865    assert_eq!(
13866        unsafe { ::std::ptr::addr_of!((*ptr).nid) as usize - ptr as usize },
13867        0usize,
13868        "Offset of field: EC_builtin_curve::nid"
13869    );
13870    assert_eq!(
13871        unsafe { ::std::ptr::addr_of!((*ptr).comment) as usize - ptr as usize },
13872        8usize,
13873        "Offset of field: EC_builtin_curve::comment"
13874    );
13875}
13876impl Default for EC_builtin_curve {
13877    fn default() -> Self {
13878        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
13879        unsafe {
13880            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
13881            s.assume_init()
13882        }
13883    }
13884}
13885extern "C" {
13886    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_get_builtin_curves"]
13887    pub fn EC_get_builtin_curves(out_curves: *mut EC_builtin_curve, max_num_curves: usize)
13888        -> usize;
13889}
13890extern "C" {
13891    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_POINT_clear_free"]
13892    pub fn EC_POINT_clear_free(point: *mut EC_POINT);
13893}
13894extern "C" {
13895    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_set_asn1_flag"]
13896    pub fn EC_GROUP_set_asn1_flag(group: *mut EC_GROUP, flag: ::std::os::raw::c_int);
13897}
13898extern "C" {
13899    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get_asn1_flag"]
13900    pub fn EC_GROUP_get_asn1_flag(group: *const EC_GROUP) -> ::std::os::raw::c_int;
13901}
13902extern "C" {
13903    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_set_point_conversion_form"]
13904    pub fn EC_GROUP_set_point_conversion_form(group: *mut EC_GROUP, form: point_conversion_form_t);
13905}
13906extern "C" {
13907    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_set_seed"]
13908    pub fn EC_GROUP_set_seed(
13909        group: *mut EC_GROUP,
13910        p: *const ::std::os::raw::c_uchar,
13911        len: usize,
13912    ) -> usize;
13913}
13914extern "C" {
13915    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get0_seed"]
13916    pub fn EC_GROUP_get0_seed(group: *const EC_GROUP) -> *mut ::std::os::raw::c_uchar;
13917}
13918extern "C" {
13919    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_get_seed_len"]
13920    pub fn EC_GROUP_get_seed_len(group: *const EC_GROUP) -> usize;
13921}
13922extern "C" {
13923    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECPKParameters_print"]
13924    pub fn ECPKParameters_print(
13925        bio: *mut BIO,
13926        group: *const EC_GROUP,
13927        offset: ::std::os::raw::c_int,
13928    ) -> ::std::os::raw::c_int;
13929}
13930#[repr(C)]
13931#[derive(Debug, Copy, Clone)]
13932pub struct ec_method_st {
13933    _unused: [u8; 0],
13934}
13935pub type EC_METHOD = ec_method_st;
13936extern "C" {
13937    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_GROUP_method_of"]
13938    pub fn EC_GROUP_method_of(group: *const EC_GROUP) -> *const EC_METHOD;
13939}
13940extern "C" {
13941    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_METHOD_get_field_type"]
13942    pub fn EC_METHOD_get_field_type(meth: *const EC_METHOD) -> ::std::os::raw::c_int;
13943}
13944extern "C" {
13945    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_new"]
13946    pub fn ENGINE_new() -> *mut ENGINE;
13947}
13948extern "C" {
13949    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_free"]
13950    pub fn ENGINE_free(engine: *mut ENGINE) -> ::std::os::raw::c_int;
13951}
13952extern "C" {
13953    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_set_RSA"]
13954    pub fn ENGINE_set_RSA(engine: *mut ENGINE, method: *const RSA_METHOD) -> ::std::os::raw::c_int;
13955}
13956extern "C" {
13957    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_get_RSA"]
13958    pub fn ENGINE_get_RSA(engine: *const ENGINE) -> *const RSA_METHOD;
13959}
13960extern "C" {
13961    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_set_EC"]
13962    pub fn ENGINE_set_EC(
13963        engine: *mut ENGINE,
13964        method: *const EC_KEY_METHOD,
13965    ) -> ::std::os::raw::c_int;
13966}
13967extern "C" {
13968    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_get_EC"]
13969    pub fn ENGINE_get_EC(engine: *const ENGINE) -> *const EC_KEY_METHOD;
13970}
13971extern "C" {
13972    #[link_name = "\u{1}aws_lc_fips_0_13_10_ENGINE_cleanup"]
13973    pub fn ENGINE_cleanup();
13974}
13975extern "C" {
13976    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_new"]
13977    pub fn EC_KEY_new() -> *mut EC_KEY;
13978}
13979extern "C" {
13980    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_new_method"]
13981    pub fn EC_KEY_new_method(engine: *const ENGINE) -> *mut EC_KEY;
13982}
13983extern "C" {
13984    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_new_by_curve_name"]
13985    pub fn EC_KEY_new_by_curve_name(nid: ::std::os::raw::c_int) -> *mut EC_KEY;
13986}
13987extern "C" {
13988    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_free"]
13989    pub fn EC_KEY_free(key: *mut EC_KEY);
13990}
13991extern "C" {
13992    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_dup"]
13993    pub fn EC_KEY_dup(src: *const EC_KEY) -> *mut EC_KEY;
13994}
13995extern "C" {
13996    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_up_ref"]
13997    pub fn EC_KEY_up_ref(key: *mut EC_KEY) -> ::std::os::raw::c_int;
13998}
13999extern "C" {
14000    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_is_opaque"]
14001    pub fn EC_KEY_is_opaque(key: *const EC_KEY) -> ::std::os::raw::c_int;
14002}
14003extern "C" {
14004    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get0_group"]
14005    pub fn EC_KEY_get0_group(key: *const EC_KEY) -> *const EC_GROUP;
14006}
14007extern "C" {
14008    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_group"]
14009    pub fn EC_KEY_set_group(key: *mut EC_KEY, group: *const EC_GROUP) -> ::std::os::raw::c_int;
14010}
14011extern "C" {
14012    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get0_private_key"]
14013    pub fn EC_KEY_get0_private_key(key: *const EC_KEY) -> *const BIGNUM;
14014}
14015extern "C" {
14016    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_private_key"]
14017    pub fn EC_KEY_set_private_key(key: *mut EC_KEY, priv_: *const BIGNUM) -> ::std::os::raw::c_int;
14018}
14019extern "C" {
14020    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get0_public_key"]
14021    pub fn EC_KEY_get0_public_key(key: *const EC_KEY) -> *const EC_POINT;
14022}
14023extern "C" {
14024    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_public_key"]
14025    pub fn EC_KEY_set_public_key(key: *mut EC_KEY, pub_: *const EC_POINT) -> ::std::os::raw::c_int;
14026}
14027extern "C" {
14028    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get_enc_flags"]
14029    pub fn EC_KEY_get_enc_flags(key: *const EC_KEY) -> ::std::os::raw::c_uint;
14030}
14031extern "C" {
14032    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_enc_flags"]
14033    pub fn EC_KEY_set_enc_flags(key: *mut EC_KEY, flags: ::std::os::raw::c_uint);
14034}
14035extern "C" {
14036    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get_conv_form"]
14037    pub fn EC_KEY_get_conv_form(key: *const EC_KEY) -> point_conversion_form_t;
14038}
14039extern "C" {
14040    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_conv_form"]
14041    pub fn EC_KEY_set_conv_form(key: *mut EC_KEY, cform: point_conversion_form_t);
14042}
14043extern "C" {
14044    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_check_key"]
14045    pub fn EC_KEY_check_key(key: *const EC_KEY) -> ::std::os::raw::c_int;
14046}
14047extern "C" {
14048    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_check_fips"]
14049    pub fn EC_KEY_check_fips(key: *const EC_KEY) -> ::std::os::raw::c_int;
14050}
14051extern "C" {
14052    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_public_key_affine_coordinates"]
14053    pub fn EC_KEY_set_public_key_affine_coordinates(
14054        key: *mut EC_KEY,
14055        x: *const BIGNUM,
14056        y: *const BIGNUM,
14057    ) -> ::std::os::raw::c_int;
14058}
14059extern "C" {
14060    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_key2buf"]
14061    pub fn EC_KEY_key2buf(
14062        key: *const EC_KEY,
14063        form: point_conversion_form_t,
14064        out_buf: *mut *mut ::std::os::raw::c_uchar,
14065        ctx: *mut BN_CTX,
14066    ) -> usize;
14067}
14068extern "C" {
14069    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_generate_key"]
14070    pub fn EC_KEY_generate_key(key: *mut EC_KEY) -> ::std::os::raw::c_int;
14071}
14072extern "C" {
14073    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_generate_key_fips"]
14074    pub fn EC_KEY_generate_key_fips(key: *mut EC_KEY) -> ::std::os::raw::c_int;
14075}
14076extern "C" {
14077    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_derive_from_secret"]
14078    pub fn EC_KEY_derive_from_secret(
14079        group: *const EC_GROUP,
14080        secret: *const u8,
14081        secret_len: usize,
14082    ) -> *mut EC_KEY;
14083}
14084extern "C" {
14085    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_parse_private_key"]
14086    pub fn EC_KEY_parse_private_key(cbs: *mut CBS, group: *const EC_GROUP) -> *mut EC_KEY;
14087}
14088extern "C" {
14089    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_marshal_private_key"]
14090    pub fn EC_KEY_marshal_private_key(
14091        cbb: *mut CBB,
14092        key: *const EC_KEY,
14093        enc_flags: ::std::os::raw::c_uint,
14094    ) -> ::std::os::raw::c_int;
14095}
14096extern "C" {
14097    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_parse_curve_name"]
14098    pub fn EC_KEY_parse_curve_name(cbs: *mut CBS) -> *mut EC_GROUP;
14099}
14100extern "C" {
14101    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_marshal_curve_name"]
14102    pub fn EC_KEY_marshal_curve_name(
14103        cbb: *mut CBB,
14104        group: *const EC_GROUP,
14105    ) -> ::std::os::raw::c_int;
14106}
14107extern "C" {
14108    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_parse_parameters"]
14109    pub fn EC_KEY_parse_parameters(cbs: *mut CBS) -> *mut EC_GROUP;
14110}
14111extern "C" {
14112    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get_ex_new_index"]
14113    pub fn EC_KEY_get_ex_new_index(
14114        argl: ::std::os::raw::c_long,
14115        argp: *mut ::std::os::raw::c_void,
14116        unused: *mut CRYPTO_EX_unused,
14117        dup_unused: CRYPTO_EX_dup,
14118        free_func: CRYPTO_EX_free,
14119    ) -> ::std::os::raw::c_int;
14120}
14121extern "C" {
14122    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_ex_data"]
14123    pub fn EC_KEY_set_ex_data(
14124        r: *mut EC_KEY,
14125        idx: ::std::os::raw::c_int,
14126        arg: *mut ::std::os::raw::c_void,
14127    ) -> ::std::os::raw::c_int;
14128}
14129extern "C" {
14130    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get_ex_data"]
14131    pub fn EC_KEY_get_ex_data(
14132        r: *const EC_KEY,
14133        idx: ::std::os::raw::c_int,
14134    ) -> *mut ::std::os::raw::c_void;
14135}
14136extern "C" {
14137    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ECPrivateKey"]
14138    pub fn d2i_ECPrivateKey(
14139        out_key: *mut *mut EC_KEY,
14140        inp: *mut *const u8,
14141        len: ::std::os::raw::c_long,
14142    ) -> *mut EC_KEY;
14143}
14144extern "C" {
14145    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ECPrivateKey"]
14146    pub fn i2d_ECPrivateKey(key: *const EC_KEY, outp: *mut *mut u8) -> ::std::os::raw::c_int;
14147}
14148extern "C" {
14149    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ECParameters"]
14150    pub fn d2i_ECParameters(
14151        out_key: *mut *mut EC_KEY,
14152        inp: *mut *const u8,
14153        len: ::std::os::raw::c_long,
14154    ) -> *mut EC_KEY;
14155}
14156extern "C" {
14157    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ECParameters"]
14158    pub fn i2d_ECParameters(key: *const EC_KEY, outp: *mut *mut u8) -> ::std::os::raw::c_int;
14159}
14160extern "C" {
14161    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ECPKParameters_bio"]
14162    pub fn d2i_ECPKParameters_bio(bio: *mut BIO, out_group: *mut *mut EC_GROUP) -> *mut EC_GROUP;
14163}
14164extern "C" {
14165    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ECPKParameters_bio"]
14166    pub fn i2d_ECPKParameters_bio(bio: *mut BIO, group: *const EC_GROUP) -> ::std::os::raw::c_int;
14167}
14168extern "C" {
14169    #[link_name = "\u{1}aws_lc_fips_0_13_10_o2i_ECPublicKey"]
14170    pub fn o2i_ECPublicKey(
14171        out_key: *mut *mut EC_KEY,
14172        inp: *mut *const u8,
14173        len: ::std::os::raw::c_long,
14174    ) -> *mut EC_KEY;
14175}
14176extern "C" {
14177    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2o_ECPublicKey"]
14178    pub fn i2o_ECPublicKey(
14179        key: *const EC_KEY,
14180        outp: *mut *mut ::std::os::raw::c_uchar,
14181    ) -> ::std::os::raw::c_int;
14182}
14183extern "C" {
14184    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get_default_method"]
14185    pub fn EC_KEY_get_default_method() -> *const EC_KEY_METHOD;
14186}
14187extern "C" {
14188    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_OpenSSL"]
14189    pub fn EC_KEY_OpenSSL() -> *const EC_KEY_METHOD;
14190}
14191extern "C" {
14192    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_METHOD_new"]
14193    pub fn EC_KEY_METHOD_new(eckey_meth: *const EC_KEY_METHOD) -> *mut EC_KEY_METHOD;
14194}
14195extern "C" {
14196    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_METHOD_free"]
14197    pub fn EC_KEY_METHOD_free(eckey_meth: *mut EC_KEY_METHOD);
14198}
14199extern "C" {
14200    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_method"]
14201    pub fn EC_KEY_set_method(ec: *mut EC_KEY, meth: *const EC_KEY_METHOD) -> ::std::os::raw::c_int;
14202}
14203extern "C" {
14204    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_get_method"]
14205    pub fn EC_KEY_get_method(ec: *const EC_KEY) -> *const EC_KEY_METHOD;
14206}
14207extern "C" {
14208    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_METHOD_set_sign_awslc"]
14209    pub fn EC_KEY_METHOD_set_sign_awslc(
14210        meth: *mut EC_KEY_METHOD,
14211        sign: ::std::option::Option<
14212            unsafe extern "C" fn(
14213                type_: ::std::os::raw::c_int,
14214                digest: *const u8,
14215                digest_len: ::std::os::raw::c_int,
14216                sig: *mut u8,
14217                siglen: *mut ::std::os::raw::c_uint,
14218                k_inv: *const BIGNUM,
14219                r: *const BIGNUM,
14220                eckey: *mut EC_KEY,
14221            ) -> ::std::os::raw::c_int,
14222        >,
14223        sign_sig: ::std::option::Option<
14224            unsafe extern "C" fn(
14225                digest: *const u8,
14226                digest_len: ::std::os::raw::c_int,
14227                in_kinv: *const BIGNUM,
14228                in_r: *const BIGNUM,
14229                eckey: *mut EC_KEY,
14230            ) -> *mut ECDSA_SIG,
14231        >,
14232    );
14233}
14234extern "C" {
14235    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_METHOD_set_init_awslc"]
14236    pub fn EC_KEY_METHOD_set_init_awslc(
14237        meth: *mut EC_KEY_METHOD,
14238        init: ::std::option::Option<
14239            unsafe extern "C" fn(key: *mut EC_KEY) -> ::std::os::raw::c_int,
14240        >,
14241        finish: ::std::option::Option<unsafe extern "C" fn(key: *mut EC_KEY)>,
14242    );
14243}
14244extern "C" {
14245    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_METHOD_set_flags"]
14246    pub fn EC_KEY_METHOD_set_flags(
14247        meth: *mut EC_KEY_METHOD,
14248        flags: ::std::os::raw::c_int,
14249    ) -> ::std::os::raw::c_int;
14250}
14251extern "C" {
14252    #[link_name = "\u{1}aws_lc_fips_0_13_10_EC_KEY_set_asn1_flag"]
14253    pub fn EC_KEY_set_asn1_flag(key: *mut EC_KEY, flag: ::std::os::raw::c_int);
14254}
14255extern "C" {
14256    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDH_compute_key"]
14257    pub fn ECDH_compute_key(
14258        out: *mut ::std::os::raw::c_void,
14259        outlen: usize,
14260        pub_key: *const EC_POINT,
14261        priv_key: *const EC_KEY,
14262        kdf: ::std::option::Option<
14263            unsafe extern "C" fn(
14264                in_: *const ::std::os::raw::c_void,
14265                inlen: usize,
14266                out: *mut ::std::os::raw::c_void,
14267                outlen: *mut usize,
14268            ) -> *mut ::std::os::raw::c_void,
14269        >,
14270    ) -> ::std::os::raw::c_int;
14271}
14272extern "C" {
14273    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDH_compute_key_fips"]
14274    pub fn ECDH_compute_key_fips(
14275        out: *mut u8,
14276        out_len: usize,
14277        pub_key: *const EC_POINT,
14278        priv_key: *const EC_KEY,
14279    ) -> ::std::os::raw::c_int;
14280}
14281extern "C" {
14282    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_sign"]
14283    pub fn ECDSA_sign(
14284        type_: ::std::os::raw::c_int,
14285        digest: *const u8,
14286        digest_len: usize,
14287        sig: *mut u8,
14288        sig_len: *mut ::std::os::raw::c_uint,
14289        key: *const EC_KEY,
14290    ) -> ::std::os::raw::c_int;
14291}
14292extern "C" {
14293    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_verify"]
14294    pub fn ECDSA_verify(
14295        type_: ::std::os::raw::c_int,
14296        digest: *const u8,
14297        digest_len: usize,
14298        sig: *const u8,
14299        sig_len: usize,
14300        key: *const EC_KEY,
14301    ) -> ::std::os::raw::c_int;
14302}
14303extern "C" {
14304    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_size"]
14305    pub fn ECDSA_size(key: *const EC_KEY) -> usize;
14306}
14307#[repr(C)]
14308#[derive(Debug, Copy, Clone, PartialEq, Eq)]
14309pub struct ecdsa_sig_st {
14310    pub r: *mut BIGNUM,
14311    pub s: *mut BIGNUM,
14312}
14313#[test]
14314fn bindgen_test_layout_ecdsa_sig_st() {
14315    const UNINIT: ::std::mem::MaybeUninit<ecdsa_sig_st> = ::std::mem::MaybeUninit::uninit();
14316    let ptr = UNINIT.as_ptr();
14317    assert_eq!(
14318        ::std::mem::size_of::<ecdsa_sig_st>(),
14319        16usize,
14320        "Size of ecdsa_sig_st"
14321    );
14322    assert_eq!(
14323        ::std::mem::align_of::<ecdsa_sig_st>(),
14324        8usize,
14325        "Alignment of ecdsa_sig_st"
14326    );
14327    assert_eq!(
14328        unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize },
14329        0usize,
14330        "Offset of field: ecdsa_sig_st::r"
14331    );
14332    assert_eq!(
14333        unsafe { ::std::ptr::addr_of!((*ptr).s) as usize - ptr as usize },
14334        8usize,
14335        "Offset of field: ecdsa_sig_st::s"
14336    );
14337}
14338impl Default for ecdsa_sig_st {
14339    fn default() -> Self {
14340        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14341        unsafe {
14342            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14343            s.assume_init()
14344        }
14345    }
14346}
14347extern "C" {
14348    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_new"]
14349    pub fn ECDSA_SIG_new() -> *mut ECDSA_SIG;
14350}
14351extern "C" {
14352    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_free"]
14353    pub fn ECDSA_SIG_free(sig: *mut ECDSA_SIG);
14354}
14355extern "C" {
14356    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_get0_r"]
14357    pub fn ECDSA_SIG_get0_r(sig: *const ECDSA_SIG) -> *const BIGNUM;
14358}
14359extern "C" {
14360    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_get0_s"]
14361    pub fn ECDSA_SIG_get0_s(sig: *const ECDSA_SIG) -> *const BIGNUM;
14362}
14363extern "C" {
14364    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_get0"]
14365    pub fn ECDSA_SIG_get0(
14366        sig: *const ECDSA_SIG,
14367        out_r: *mut *const BIGNUM,
14368        out_s: *mut *const BIGNUM,
14369    );
14370}
14371extern "C" {
14372    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_set0"]
14373    pub fn ECDSA_SIG_set0(
14374        sig: *mut ECDSA_SIG,
14375        r: *mut BIGNUM,
14376        s: *mut BIGNUM,
14377    ) -> ::std::os::raw::c_int;
14378}
14379extern "C" {
14380    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_do_sign"]
14381    pub fn ECDSA_do_sign(
14382        digest: *const u8,
14383        digest_len: usize,
14384        key: *const EC_KEY,
14385    ) -> *mut ECDSA_SIG;
14386}
14387extern "C" {
14388    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_do_verify"]
14389    pub fn ECDSA_do_verify(
14390        digest: *const u8,
14391        digest_len: usize,
14392        sig: *const ECDSA_SIG,
14393        key: *const EC_KEY,
14394    ) -> ::std::os::raw::c_int;
14395}
14396extern "C" {
14397    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_parse"]
14398    pub fn ECDSA_SIG_parse(cbs: *mut CBS) -> *mut ECDSA_SIG;
14399}
14400extern "C" {
14401    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_from_bytes"]
14402    pub fn ECDSA_SIG_from_bytes(in_: *const u8, in_len: usize) -> *mut ECDSA_SIG;
14403}
14404extern "C" {
14405    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_marshal"]
14406    pub fn ECDSA_SIG_marshal(cbb: *mut CBB, sig: *const ECDSA_SIG) -> ::std::os::raw::c_int;
14407}
14408extern "C" {
14409    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_to_bytes"]
14410    pub fn ECDSA_SIG_to_bytes(
14411        out_bytes: *mut *mut u8,
14412        out_len: *mut usize,
14413        sig: *const ECDSA_SIG,
14414    ) -> ::std::os::raw::c_int;
14415}
14416extern "C" {
14417    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_SIG_max_len"]
14418    pub fn ECDSA_SIG_max_len(order_len: usize) -> usize;
14419}
14420extern "C" {
14421    #[link_name = "\u{1}aws_lc_fips_0_13_10_ECDSA_sign_with_nonce_and_leak_private_key_for_testing"]
14422    pub fn ECDSA_sign_with_nonce_and_leak_private_key_for_testing(
14423        digest: *const u8,
14424        digest_len: usize,
14425        eckey: *const EC_KEY,
14426        nonce: *const u8,
14427        nonce_len: usize,
14428    ) -> *mut ECDSA_SIG;
14429}
14430extern "C" {
14431    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ECDSA_SIG"]
14432    pub fn d2i_ECDSA_SIG(
14433        out: *mut *mut ECDSA_SIG,
14434        inp: *mut *const u8,
14435        len: ::std::os::raw::c_long,
14436    ) -> *mut ECDSA_SIG;
14437}
14438extern "C" {
14439    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ECDSA_SIG"]
14440    pub fn i2d_ECDSA_SIG(sig: *const ECDSA_SIG, outp: *mut *mut u8) -> ::std::os::raw::c_int;
14441}
14442extern "C" {
14443    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_gcm"]
14444    pub fn EVP_aead_aes_128_gcm() -> *const EVP_AEAD;
14445}
14446extern "C" {
14447    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_192_gcm"]
14448    pub fn EVP_aead_aes_192_gcm() -> *const EVP_AEAD;
14449}
14450extern "C" {
14451    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_gcm"]
14452    pub fn EVP_aead_aes_256_gcm() -> *const EVP_AEAD;
14453}
14454extern "C" {
14455    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_chacha20_poly1305"]
14456    pub fn EVP_aead_chacha20_poly1305() -> *const EVP_AEAD;
14457}
14458extern "C" {
14459    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_xchacha20_poly1305"]
14460    pub fn EVP_aead_xchacha20_poly1305() -> *const EVP_AEAD;
14461}
14462extern "C" {
14463    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_ctr_hmac_sha256"]
14464    pub fn EVP_aead_aes_128_ctr_hmac_sha256() -> *const EVP_AEAD;
14465}
14466extern "C" {
14467    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_ctr_hmac_sha256"]
14468    pub fn EVP_aead_aes_256_ctr_hmac_sha256() -> *const EVP_AEAD;
14469}
14470extern "C" {
14471    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_gcm_siv"]
14472    pub fn EVP_aead_aes_128_gcm_siv() -> *const EVP_AEAD;
14473}
14474extern "C" {
14475    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_gcm_siv"]
14476    pub fn EVP_aead_aes_256_gcm_siv() -> *const EVP_AEAD;
14477}
14478extern "C" {
14479    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_gcm_randnonce"]
14480    pub fn EVP_aead_aes_128_gcm_randnonce() -> *const EVP_AEAD;
14481}
14482extern "C" {
14483    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_gcm_randnonce"]
14484    pub fn EVP_aead_aes_256_gcm_randnonce() -> *const EVP_AEAD;
14485}
14486extern "C" {
14487    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_ccm_bluetooth"]
14488    pub fn EVP_aead_aes_128_ccm_bluetooth() -> *const EVP_AEAD;
14489}
14490extern "C" {
14491    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_ccm_bluetooth_8"]
14492    pub fn EVP_aead_aes_128_ccm_bluetooth_8() -> *const EVP_AEAD;
14493}
14494extern "C" {
14495    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_ccm_matter"]
14496    pub fn EVP_aead_aes_128_ccm_matter() -> *const EVP_AEAD;
14497}
14498extern "C" {
14499    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_has_aes_hardware"]
14500    pub fn EVP_has_aes_hardware() -> ::std::os::raw::c_int;
14501}
14502extern "C" {
14503    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_key_length"]
14504    pub fn EVP_AEAD_key_length(aead: *const EVP_AEAD) -> usize;
14505}
14506extern "C" {
14507    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_nonce_length"]
14508    pub fn EVP_AEAD_nonce_length(aead: *const EVP_AEAD) -> usize;
14509}
14510extern "C" {
14511    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_max_overhead"]
14512    pub fn EVP_AEAD_max_overhead(aead: *const EVP_AEAD) -> usize;
14513}
14514extern "C" {
14515    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_max_tag_len"]
14516    pub fn EVP_AEAD_max_tag_len(aead: *const EVP_AEAD) -> usize;
14517}
14518#[repr(C)]
14519#[derive(Copy, Clone)]
14520pub union evp_aead_ctx_st_state {
14521    pub opaque: [u8; 564usize],
14522    pub alignment: u64,
14523    pub ptr: *mut ::std::os::raw::c_void,
14524}
14525#[test]
14526fn bindgen_test_layout_evp_aead_ctx_st_state() {
14527    const UNINIT: ::std::mem::MaybeUninit<evp_aead_ctx_st_state> =
14528        ::std::mem::MaybeUninit::uninit();
14529    let ptr = UNINIT.as_ptr();
14530    assert_eq!(
14531        ::std::mem::size_of::<evp_aead_ctx_st_state>(),
14532        568usize,
14533        "Size of evp_aead_ctx_st_state"
14534    );
14535    assert_eq!(
14536        ::std::mem::align_of::<evp_aead_ctx_st_state>(),
14537        8usize,
14538        "Alignment of evp_aead_ctx_st_state"
14539    );
14540    assert_eq!(
14541        unsafe { ::std::ptr::addr_of!((*ptr).opaque) as usize - ptr as usize },
14542        0usize,
14543        "Offset of field: evp_aead_ctx_st_state::opaque"
14544    );
14545    assert_eq!(
14546        unsafe { ::std::ptr::addr_of!((*ptr).alignment) as usize - ptr as usize },
14547        0usize,
14548        "Offset of field: evp_aead_ctx_st_state::alignment"
14549    );
14550    assert_eq!(
14551        unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
14552        0usize,
14553        "Offset of field: evp_aead_ctx_st_state::ptr"
14554    );
14555}
14556impl Default for evp_aead_ctx_st_state {
14557    fn default() -> Self {
14558        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14559        unsafe {
14560            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14561            s.assume_init()
14562        }
14563    }
14564}
14565#[repr(C)]
14566#[derive(Copy, Clone)]
14567pub struct evp_aead_ctx_st {
14568    pub aead: *const EVP_AEAD,
14569    pub state: evp_aead_ctx_st_state,
14570    pub state_offset: u8,
14571    pub tag_len: u8,
14572}
14573#[test]
14574fn bindgen_test_layout_evp_aead_ctx_st() {
14575    const UNINIT: ::std::mem::MaybeUninit<evp_aead_ctx_st> = ::std::mem::MaybeUninit::uninit();
14576    let ptr = UNINIT.as_ptr();
14577    assert_eq!(
14578        ::std::mem::size_of::<evp_aead_ctx_st>(),
14579        584usize,
14580        "Size of evp_aead_ctx_st"
14581    );
14582    assert_eq!(
14583        ::std::mem::align_of::<evp_aead_ctx_st>(),
14584        8usize,
14585        "Alignment of evp_aead_ctx_st"
14586    );
14587    assert_eq!(
14588        unsafe { ::std::ptr::addr_of!((*ptr).aead) as usize - ptr as usize },
14589        0usize,
14590        "Offset of field: evp_aead_ctx_st::aead"
14591    );
14592    assert_eq!(
14593        unsafe { ::std::ptr::addr_of!((*ptr).state) as usize - ptr as usize },
14594        8usize,
14595        "Offset of field: evp_aead_ctx_st::state"
14596    );
14597    assert_eq!(
14598        unsafe { ::std::ptr::addr_of!((*ptr).state_offset) as usize - ptr as usize },
14599        576usize,
14600        "Offset of field: evp_aead_ctx_st::state_offset"
14601    );
14602    assert_eq!(
14603        unsafe { ::std::ptr::addr_of!((*ptr).tag_len) as usize - ptr as usize },
14604        577usize,
14605        "Offset of field: evp_aead_ctx_st::tag_len"
14606    );
14607}
14608impl Default for evp_aead_ctx_st {
14609    fn default() -> Self {
14610        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14611        unsafe {
14612            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14613            s.assume_init()
14614        }
14615    }
14616}
14617extern "C" {
14618    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_zero"]
14619    pub fn EVP_AEAD_CTX_zero(ctx: *mut EVP_AEAD_CTX);
14620}
14621extern "C" {
14622    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_new"]
14623    pub fn EVP_AEAD_CTX_new(
14624        aead: *const EVP_AEAD,
14625        key: *const u8,
14626        key_len: usize,
14627        tag_len: usize,
14628    ) -> *mut EVP_AEAD_CTX;
14629}
14630extern "C" {
14631    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_free"]
14632    pub fn EVP_AEAD_CTX_free(ctx: *mut EVP_AEAD_CTX);
14633}
14634extern "C" {
14635    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_init"]
14636    pub fn EVP_AEAD_CTX_init(
14637        ctx: *mut EVP_AEAD_CTX,
14638        aead: *const EVP_AEAD,
14639        key: *const u8,
14640        key_len: usize,
14641        tag_len: usize,
14642        impl_: *mut ENGINE,
14643    ) -> ::std::os::raw::c_int;
14644}
14645extern "C" {
14646    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_cleanup"]
14647    pub fn EVP_AEAD_CTX_cleanup(ctx: *mut EVP_AEAD_CTX);
14648}
14649extern "C" {
14650    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_seal"]
14651    pub fn EVP_AEAD_CTX_seal(
14652        ctx: *const EVP_AEAD_CTX,
14653        out: *mut u8,
14654        out_len: *mut usize,
14655        max_out_len: usize,
14656        nonce: *const u8,
14657        nonce_len: usize,
14658        in_: *const u8,
14659        in_len: usize,
14660        ad: *const u8,
14661        ad_len: usize,
14662    ) -> ::std::os::raw::c_int;
14663}
14664extern "C" {
14665    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_open"]
14666    pub fn EVP_AEAD_CTX_open(
14667        ctx: *const EVP_AEAD_CTX,
14668        out: *mut u8,
14669        out_len: *mut usize,
14670        max_out_len: usize,
14671        nonce: *const u8,
14672        nonce_len: usize,
14673        in_: *const u8,
14674        in_len: usize,
14675        ad: *const u8,
14676        ad_len: usize,
14677    ) -> ::std::os::raw::c_int;
14678}
14679extern "C" {
14680    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_seal_scatter"]
14681    pub fn EVP_AEAD_CTX_seal_scatter(
14682        ctx: *const EVP_AEAD_CTX,
14683        out: *mut u8,
14684        out_tag: *mut u8,
14685        out_tag_len: *mut usize,
14686        max_out_tag_len: usize,
14687        nonce: *const u8,
14688        nonce_len: usize,
14689        in_: *const u8,
14690        in_len: usize,
14691        extra_in: *const u8,
14692        extra_in_len: usize,
14693        ad: *const u8,
14694        ad_len: usize,
14695    ) -> ::std::os::raw::c_int;
14696}
14697extern "C" {
14698    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_open_gather"]
14699    pub fn EVP_AEAD_CTX_open_gather(
14700        ctx: *const EVP_AEAD_CTX,
14701        out: *mut u8,
14702        nonce: *const u8,
14703        nonce_len: usize,
14704        in_: *const u8,
14705        in_len: usize,
14706        in_tag: *const u8,
14707        in_tag_len: usize,
14708        ad: *const u8,
14709        ad_len: usize,
14710    ) -> ::std::os::raw::c_int;
14711}
14712extern "C" {
14713    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_aead"]
14714    pub fn EVP_AEAD_CTX_aead(ctx: *const EVP_AEAD_CTX) -> *const EVP_AEAD;
14715}
14716extern "C" {
14717    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_cbc_sha1_tls"]
14718    pub fn EVP_aead_aes_128_cbc_sha1_tls() -> *const EVP_AEAD;
14719}
14720extern "C" {
14721    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_cbc_sha1_tls_implicit_iv"]
14722    pub fn EVP_aead_aes_128_cbc_sha1_tls_implicit_iv() -> *const EVP_AEAD;
14723}
14724extern "C" {
14725    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_cbc_sha1_tls"]
14726    pub fn EVP_aead_aes_256_cbc_sha1_tls() -> *const EVP_AEAD;
14727}
14728extern "C" {
14729    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_cbc_sha1_tls_implicit_iv"]
14730    pub fn EVP_aead_aes_256_cbc_sha1_tls_implicit_iv() -> *const EVP_AEAD;
14731}
14732extern "C" {
14733    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_cbc_sha256_tls"]
14734    pub fn EVP_aead_aes_128_cbc_sha256_tls() -> *const EVP_AEAD;
14735}
14736extern "C" {
14737    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_cbc_sha256_tls_implicit_iv"]
14738    pub fn EVP_aead_aes_128_cbc_sha256_tls_implicit_iv() -> *const EVP_AEAD;
14739}
14740extern "C" {
14741    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_cbc_sha384_tls"]
14742    pub fn EVP_aead_aes_256_cbc_sha384_tls() -> *const EVP_AEAD;
14743}
14744extern "C" {
14745    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_des_ede3_cbc_sha1_tls"]
14746    pub fn EVP_aead_des_ede3_cbc_sha1_tls() -> *const EVP_AEAD;
14747}
14748extern "C" {
14749    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_des_ede3_cbc_sha1_tls_implicit_iv"]
14750    pub fn EVP_aead_des_ede3_cbc_sha1_tls_implicit_iv() -> *const EVP_AEAD;
14751}
14752extern "C" {
14753    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_null_sha1_tls"]
14754    pub fn EVP_aead_null_sha1_tls() -> *const EVP_AEAD;
14755}
14756extern "C" {
14757    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_gcm_tls12"]
14758    pub fn EVP_aead_aes_128_gcm_tls12() -> *const EVP_AEAD;
14759}
14760extern "C" {
14761    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_gcm_tls12"]
14762    pub fn EVP_aead_aes_256_gcm_tls12() -> *const EVP_AEAD;
14763}
14764extern "C" {
14765    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_128_gcm_tls13"]
14766    pub fn EVP_aead_aes_128_gcm_tls13() -> *const EVP_AEAD;
14767}
14768extern "C" {
14769    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_aead_aes_256_gcm_tls13"]
14770    pub fn EVP_aead_aes_256_gcm_tls13() -> *const EVP_AEAD;
14771}
14772pub const evp_aead_direction_t_evp_aead_open: evp_aead_direction_t = 0;
14773pub const evp_aead_direction_t_evp_aead_seal: evp_aead_direction_t = 1;
14774pub type evp_aead_direction_t = ::std::os::raw::c_uint;
14775extern "C" {
14776    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_init_with_direction"]
14777    pub fn EVP_AEAD_CTX_init_with_direction(
14778        ctx: *mut EVP_AEAD_CTX,
14779        aead: *const EVP_AEAD,
14780        key: *const u8,
14781        key_len: usize,
14782        tag_len: usize,
14783        dir: evp_aead_direction_t,
14784    ) -> ::std::os::raw::c_int;
14785}
14786extern "C" {
14787    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_get_iv"]
14788    pub fn EVP_AEAD_CTX_get_iv(
14789        ctx: *const EVP_AEAD_CTX,
14790        out_iv: *mut *const u8,
14791        out_len: *mut usize,
14792    ) -> ::std::os::raw::c_int;
14793}
14794extern "C" {
14795    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_CTX_tag_len"]
14796    pub fn EVP_AEAD_CTX_tag_len(
14797        ctx: *const EVP_AEAD_CTX,
14798        out_tag_len: *mut usize,
14799        in_len: usize,
14800        extra_in_len: usize,
14801    ) -> ::std::os::raw::c_int;
14802}
14803extern "C" {
14804    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_AEAD_get_iv_from_ipv4_nanosecs"]
14805    pub fn EVP_AEAD_get_iv_from_ipv4_nanosecs(
14806        ipv4_address: u32,
14807        nanosecs: u64,
14808        out_iv: *mut u8,
14809    ) -> ::std::os::raw::c_int;
14810}
14811extern "C" {
14812    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_dup"]
14813    pub fn OBJ_dup(obj: *const ASN1_OBJECT) -> *mut ASN1_OBJECT;
14814}
14815extern "C" {
14816    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_cmp"]
14817    pub fn OBJ_cmp(a: *const ASN1_OBJECT, b: *const ASN1_OBJECT) -> ::std::os::raw::c_int;
14818}
14819extern "C" {
14820    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_get0_data"]
14821    pub fn OBJ_get0_data(obj: *const ASN1_OBJECT) -> *const u8;
14822}
14823extern "C" {
14824    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_length"]
14825    pub fn OBJ_length(obj: *const ASN1_OBJECT) -> usize;
14826}
14827extern "C" {
14828    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_obj2nid"]
14829    pub fn OBJ_obj2nid(obj: *const ASN1_OBJECT) -> ::std::os::raw::c_int;
14830}
14831extern "C" {
14832    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_cbs2nid"]
14833    pub fn OBJ_cbs2nid(cbs: *const CBS) -> ::std::os::raw::c_int;
14834}
14835extern "C" {
14836    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_sn2nid"]
14837    pub fn OBJ_sn2nid(short_name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
14838}
14839extern "C" {
14840    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_ln2nid"]
14841    pub fn OBJ_ln2nid(long_name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
14842}
14843extern "C" {
14844    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_txt2nid"]
14845    pub fn OBJ_txt2nid(s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
14846}
14847extern "C" {
14848    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_nid2obj"]
14849    pub fn OBJ_nid2obj(nid: ::std::os::raw::c_int) -> *mut ASN1_OBJECT;
14850}
14851extern "C" {
14852    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_get_undef"]
14853    pub fn OBJ_get_undef() -> *const ASN1_OBJECT;
14854}
14855extern "C" {
14856    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_nid2sn"]
14857    pub fn OBJ_nid2sn(nid: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
14858}
14859extern "C" {
14860    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_nid2ln"]
14861    pub fn OBJ_nid2ln(nid: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
14862}
14863extern "C" {
14864    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_nid2cbb"]
14865    pub fn OBJ_nid2cbb(out: *mut CBB, nid: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
14866}
14867extern "C" {
14868    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_txt2obj"]
14869    pub fn OBJ_txt2obj(
14870        s: *const ::std::os::raw::c_char,
14871        dont_search_names: ::std::os::raw::c_int,
14872    ) -> *mut ASN1_OBJECT;
14873}
14874extern "C" {
14875    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_obj2txt"]
14876    pub fn OBJ_obj2txt(
14877        out: *mut ::std::os::raw::c_char,
14878        out_len: ::std::os::raw::c_int,
14879        obj: *const ASN1_OBJECT,
14880        always_return_oid: ::std::os::raw::c_int,
14881    ) -> ::std::os::raw::c_int;
14882}
14883extern "C" {
14884    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_create"]
14885    pub fn OBJ_create(
14886        oid: *const ::std::os::raw::c_char,
14887        short_name: *const ::std::os::raw::c_char,
14888        long_name: *const ::std::os::raw::c_char,
14889    ) -> ::std::os::raw::c_int;
14890}
14891extern "C" {
14892    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_find_sigid_algs"]
14893    pub fn OBJ_find_sigid_algs(
14894        sign_nid: ::std::os::raw::c_int,
14895        out_digest_nid: *mut ::std::os::raw::c_int,
14896        out_pkey_nid: *mut ::std::os::raw::c_int,
14897    ) -> ::std::os::raw::c_int;
14898}
14899extern "C" {
14900    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_find_sigid_by_algs"]
14901    pub fn OBJ_find_sigid_by_algs(
14902        out_sign_nid: *mut ::std::os::raw::c_int,
14903        digest_nid: ::std::os::raw::c_int,
14904        pkey_nid: ::std::os::raw::c_int,
14905    ) -> ::std::os::raw::c_int;
14906}
14907#[repr(C)]
14908#[derive(Debug, Copy, Clone, PartialEq, Eq)]
14909pub struct obj_name_st {
14910    pub type_: ::std::os::raw::c_int,
14911    pub alias: ::std::os::raw::c_int,
14912    pub name: *const ::std::os::raw::c_char,
14913    pub data: *const ::std::os::raw::c_char,
14914}
14915#[test]
14916fn bindgen_test_layout_obj_name_st() {
14917    const UNINIT: ::std::mem::MaybeUninit<obj_name_st> = ::std::mem::MaybeUninit::uninit();
14918    let ptr = UNINIT.as_ptr();
14919    assert_eq!(
14920        ::std::mem::size_of::<obj_name_st>(),
14921        24usize,
14922        "Size of obj_name_st"
14923    );
14924    assert_eq!(
14925        ::std::mem::align_of::<obj_name_st>(),
14926        8usize,
14927        "Alignment of obj_name_st"
14928    );
14929    assert_eq!(
14930        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
14931        0usize,
14932        "Offset of field: obj_name_st::type_"
14933    );
14934    assert_eq!(
14935        unsafe { ::std::ptr::addr_of!((*ptr).alias) as usize - ptr as usize },
14936        4usize,
14937        "Offset of field: obj_name_st::alias"
14938    );
14939    assert_eq!(
14940        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
14941        8usize,
14942        "Offset of field: obj_name_st::name"
14943    );
14944    assert_eq!(
14945        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
14946        16usize,
14947        "Offset of field: obj_name_st::data"
14948    );
14949}
14950impl Default for obj_name_st {
14951    fn default() -> Self {
14952        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
14953        unsafe {
14954            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
14955            s.assume_init()
14956        }
14957    }
14958}
14959pub type OBJ_NAME = obj_name_st;
14960extern "C" {
14961    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_NAME_do_all_sorted"]
14962    pub fn OBJ_NAME_do_all_sorted(
14963        type_: ::std::os::raw::c_int,
14964        callback: ::std::option::Option<
14965            unsafe extern "C" fn(arg1: *const OBJ_NAME, arg: *mut ::std::os::raw::c_void),
14966        >,
14967        arg: *mut ::std::os::raw::c_void,
14968    );
14969}
14970extern "C" {
14971    #[link_name = "\u{1}aws_lc_fips_0_13_10_OBJ_cleanup"]
14972    pub fn OBJ_cleanup();
14973}
14974extern "C" {
14975    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_new"]
14976    pub fn EVP_PKEY_new() -> *mut EVP_PKEY;
14977}
14978extern "C" {
14979    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_free"]
14980    pub fn EVP_PKEY_free(pkey: *mut EVP_PKEY);
14981}
14982extern "C" {
14983    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_up_ref"]
14984    pub fn EVP_PKEY_up_ref(pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
14985}
14986extern "C" {
14987    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_is_opaque"]
14988    pub fn EVP_PKEY_is_opaque(pkey: *const EVP_PKEY) -> ::std::os::raw::c_int;
14989}
14990extern "C" {
14991    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_cmp"]
14992    pub fn EVP_PKEY_cmp(a: *const EVP_PKEY, b: *const EVP_PKEY) -> ::std::os::raw::c_int;
14993}
14994extern "C" {
14995    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_copy_parameters"]
14996    pub fn EVP_PKEY_copy_parameters(
14997        to: *mut EVP_PKEY,
14998        from: *const EVP_PKEY,
14999    ) -> ::std::os::raw::c_int;
15000}
15001extern "C" {
15002    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_missing_parameters"]
15003    pub fn EVP_PKEY_missing_parameters(pkey: *const EVP_PKEY) -> ::std::os::raw::c_int;
15004}
15005extern "C" {
15006    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_size"]
15007    pub fn EVP_PKEY_size(pkey: *const EVP_PKEY) -> ::std::os::raw::c_int;
15008}
15009extern "C" {
15010    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_bits"]
15011    pub fn EVP_PKEY_bits(pkey: *const EVP_PKEY) -> ::std::os::raw::c_int;
15012}
15013extern "C" {
15014    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_id"]
15015    pub fn EVP_PKEY_id(pkey: *const EVP_PKEY) -> ::std::os::raw::c_int;
15016}
15017extern "C" {
15018    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_type"]
15019    pub fn EVP_PKEY_type(nid: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
15020}
15021extern "C" {
15022    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_get0_name"]
15023    pub fn EVP_MD_get0_name(md: *const EVP_MD) -> *const ::std::os::raw::c_char;
15024}
15025extern "C" {
15026    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_name"]
15027    pub fn EVP_MD_name(md: *const EVP_MD) -> *const ::std::os::raw::c_char;
15028}
15029extern "C" {
15030    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_set1_RSA"]
15031    pub fn EVP_PKEY_set1_RSA(pkey: *mut EVP_PKEY, key: *mut RSA) -> ::std::os::raw::c_int;
15032}
15033extern "C" {
15034    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_assign_RSA"]
15035    pub fn EVP_PKEY_assign_RSA(pkey: *mut EVP_PKEY, key: *mut RSA) -> ::std::os::raw::c_int;
15036}
15037extern "C" {
15038    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get0_RSA"]
15039    pub fn EVP_PKEY_get0_RSA(pkey: *const EVP_PKEY) -> *mut RSA;
15040}
15041extern "C" {
15042    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get1_RSA"]
15043    pub fn EVP_PKEY_get1_RSA(pkey: *const EVP_PKEY) -> *mut RSA;
15044}
15045extern "C" {
15046    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_set1_DSA"]
15047    pub fn EVP_PKEY_set1_DSA(pkey: *mut EVP_PKEY, key: *mut DSA) -> ::std::os::raw::c_int;
15048}
15049extern "C" {
15050    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_assign_DSA"]
15051    pub fn EVP_PKEY_assign_DSA(pkey: *mut EVP_PKEY, key: *mut DSA) -> ::std::os::raw::c_int;
15052}
15053extern "C" {
15054    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get0_DSA"]
15055    pub fn EVP_PKEY_get0_DSA(pkey: *const EVP_PKEY) -> *mut DSA;
15056}
15057extern "C" {
15058    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get1_DSA"]
15059    pub fn EVP_PKEY_get1_DSA(pkey: *const EVP_PKEY) -> *mut DSA;
15060}
15061extern "C" {
15062    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_set1_EC_KEY"]
15063    pub fn EVP_PKEY_set1_EC_KEY(pkey: *mut EVP_PKEY, key: *mut EC_KEY) -> ::std::os::raw::c_int;
15064}
15065extern "C" {
15066    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_assign_EC_KEY"]
15067    pub fn EVP_PKEY_assign_EC_KEY(pkey: *mut EVP_PKEY, key: *mut EC_KEY) -> ::std::os::raw::c_int;
15068}
15069extern "C" {
15070    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get0_EC_KEY"]
15071    pub fn EVP_PKEY_get0_EC_KEY(pkey: *const EVP_PKEY) -> *mut EC_KEY;
15072}
15073extern "C" {
15074    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get1_EC_KEY"]
15075    pub fn EVP_PKEY_get1_EC_KEY(pkey: *const EVP_PKEY) -> *mut EC_KEY;
15076}
15077extern "C" {
15078    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_set1_DH"]
15079    pub fn EVP_PKEY_set1_DH(pkey: *mut EVP_PKEY, key: *mut DH) -> ::std::os::raw::c_int;
15080}
15081extern "C" {
15082    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_assign_DH"]
15083    pub fn EVP_PKEY_assign_DH(pkey: *mut EVP_PKEY, key: *mut DH) -> ::std::os::raw::c_int;
15084}
15085extern "C" {
15086    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get0_DH"]
15087    pub fn EVP_PKEY_get0_DH(pkey: *const EVP_PKEY) -> *mut DH;
15088}
15089extern "C" {
15090    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get1_DH"]
15091    pub fn EVP_PKEY_get1_DH(pkey: *const EVP_PKEY) -> *mut DH;
15092}
15093extern "C" {
15094    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_set_type"]
15095    pub fn EVP_PKEY_set_type(
15096        pkey: *mut EVP_PKEY,
15097        type_: ::std::os::raw::c_int,
15098    ) -> ::std::os::raw::c_int;
15099}
15100extern "C" {
15101    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_cmp_parameters"]
15102    pub fn EVP_PKEY_cmp_parameters(a: *const EVP_PKEY, b: *const EVP_PKEY)
15103        -> ::std::os::raw::c_int;
15104}
15105extern "C" {
15106    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_parse_public_key"]
15107    pub fn EVP_parse_public_key(cbs: *mut CBS) -> *mut EVP_PKEY;
15108}
15109extern "C" {
15110    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_marshal_public_key"]
15111    pub fn EVP_marshal_public_key(cbb: *mut CBB, key: *const EVP_PKEY) -> ::std::os::raw::c_int;
15112}
15113extern "C" {
15114    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_parse_private_key"]
15115    pub fn EVP_parse_private_key(cbs: *mut CBS) -> *mut EVP_PKEY;
15116}
15117extern "C" {
15118    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_marshal_private_key"]
15119    pub fn EVP_marshal_private_key(cbb: *mut CBB, key: *const EVP_PKEY) -> ::std::os::raw::c_int;
15120}
15121extern "C" {
15122    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_marshal_private_key_v2"]
15123    pub fn EVP_marshal_private_key_v2(cbb: *mut CBB, key: *const EVP_PKEY)
15124        -> ::std::os::raw::c_int;
15125}
15126extern "C" {
15127    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_new_raw_private_key"]
15128    pub fn EVP_PKEY_new_raw_private_key(
15129        type_: ::std::os::raw::c_int,
15130        unused: *mut ENGINE,
15131        in_: *const u8,
15132        len: usize,
15133    ) -> *mut EVP_PKEY;
15134}
15135extern "C" {
15136    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_new_raw_public_key"]
15137    pub fn EVP_PKEY_new_raw_public_key(
15138        type_: ::std::os::raw::c_int,
15139        unused: *mut ENGINE,
15140        in_: *const u8,
15141        len: usize,
15142    ) -> *mut EVP_PKEY;
15143}
15144extern "C" {
15145    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get_raw_private_key"]
15146    pub fn EVP_PKEY_get_raw_private_key(
15147        pkey: *const EVP_PKEY,
15148        out: *mut u8,
15149        out_len: *mut usize,
15150    ) -> ::std::os::raw::c_int;
15151}
15152extern "C" {
15153    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get_raw_public_key"]
15154    pub fn EVP_PKEY_get_raw_public_key(
15155        pkey: *const EVP_PKEY,
15156        out: *mut u8,
15157        out_len: *mut usize,
15158    ) -> ::std::os::raw::c_int;
15159}
15160extern "C" {
15161    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestSignInit"]
15162    pub fn EVP_DigestSignInit(
15163        ctx: *mut EVP_MD_CTX,
15164        pctx: *mut *mut EVP_PKEY_CTX,
15165        type_: *const EVP_MD,
15166        e: *mut ENGINE,
15167        pkey: *mut EVP_PKEY,
15168    ) -> ::std::os::raw::c_int;
15169}
15170extern "C" {
15171    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestSignUpdate"]
15172    pub fn EVP_DigestSignUpdate(
15173        ctx: *mut EVP_MD_CTX,
15174        data: *const ::std::os::raw::c_void,
15175        len: usize,
15176    ) -> ::std::os::raw::c_int;
15177}
15178extern "C" {
15179    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestSignFinal"]
15180    pub fn EVP_DigestSignFinal(
15181        ctx: *mut EVP_MD_CTX,
15182        out_sig: *mut u8,
15183        out_sig_len: *mut usize,
15184    ) -> ::std::os::raw::c_int;
15185}
15186extern "C" {
15187    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestSign"]
15188    pub fn EVP_DigestSign(
15189        ctx: *mut EVP_MD_CTX,
15190        out_sig: *mut u8,
15191        out_sig_len: *mut usize,
15192        data: *const u8,
15193        data_len: usize,
15194    ) -> ::std::os::raw::c_int;
15195}
15196extern "C" {
15197    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestVerifyInit"]
15198    pub fn EVP_DigestVerifyInit(
15199        ctx: *mut EVP_MD_CTX,
15200        pctx: *mut *mut EVP_PKEY_CTX,
15201        type_: *const EVP_MD,
15202        e: *mut ENGINE,
15203        pkey: *mut EVP_PKEY,
15204    ) -> ::std::os::raw::c_int;
15205}
15206extern "C" {
15207    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestVerifyUpdate"]
15208    pub fn EVP_DigestVerifyUpdate(
15209        ctx: *mut EVP_MD_CTX,
15210        data: *const ::std::os::raw::c_void,
15211        len: usize,
15212    ) -> ::std::os::raw::c_int;
15213}
15214extern "C" {
15215    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestVerifyFinal"]
15216    pub fn EVP_DigestVerifyFinal(
15217        ctx: *mut EVP_MD_CTX,
15218        sig: *const u8,
15219        sig_len: usize,
15220    ) -> ::std::os::raw::c_int;
15221}
15222extern "C" {
15223    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_DigestVerify"]
15224    pub fn EVP_DigestVerify(
15225        ctx: *mut EVP_MD_CTX,
15226        sig: *const u8,
15227        sig_len: usize,
15228        data: *const u8,
15229        len: usize,
15230    ) -> ::std::os::raw::c_int;
15231}
15232extern "C" {
15233    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_SignInit_ex"]
15234    pub fn EVP_SignInit_ex(
15235        ctx: *mut EVP_MD_CTX,
15236        type_: *const EVP_MD,
15237        impl_: *mut ENGINE,
15238    ) -> ::std::os::raw::c_int;
15239}
15240extern "C" {
15241    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_SignInit"]
15242    pub fn EVP_SignInit(ctx: *mut EVP_MD_CTX, type_: *const EVP_MD) -> ::std::os::raw::c_int;
15243}
15244extern "C" {
15245    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_SignUpdate"]
15246    pub fn EVP_SignUpdate(
15247        ctx: *mut EVP_MD_CTX,
15248        data: *const ::std::os::raw::c_void,
15249        len: usize,
15250    ) -> ::std::os::raw::c_int;
15251}
15252extern "C" {
15253    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_SignFinal"]
15254    pub fn EVP_SignFinal(
15255        ctx: *const EVP_MD_CTX,
15256        sig: *mut u8,
15257        out_sig_len: *mut ::std::os::raw::c_uint,
15258        pkey: *mut EVP_PKEY,
15259    ) -> ::std::os::raw::c_int;
15260}
15261extern "C" {
15262    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_VerifyInit_ex"]
15263    pub fn EVP_VerifyInit_ex(
15264        ctx: *mut EVP_MD_CTX,
15265        type_: *const EVP_MD,
15266        impl_: *mut ENGINE,
15267    ) -> ::std::os::raw::c_int;
15268}
15269extern "C" {
15270    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_VerifyInit"]
15271    pub fn EVP_VerifyInit(ctx: *mut EVP_MD_CTX, type_: *const EVP_MD) -> ::std::os::raw::c_int;
15272}
15273extern "C" {
15274    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_VerifyUpdate"]
15275    pub fn EVP_VerifyUpdate(
15276        ctx: *mut EVP_MD_CTX,
15277        data: *const ::std::os::raw::c_void,
15278        len: usize,
15279    ) -> ::std::os::raw::c_int;
15280}
15281extern "C" {
15282    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_VerifyFinal"]
15283    pub fn EVP_VerifyFinal(
15284        ctx: *mut EVP_MD_CTX,
15285        sig: *const u8,
15286        sig_len: usize,
15287        pkey: *mut EVP_PKEY,
15288    ) -> ::std::os::raw::c_int;
15289}
15290extern "C" {
15291    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_print_public"]
15292    pub fn EVP_PKEY_print_public(
15293        out: *mut BIO,
15294        pkey: *const EVP_PKEY,
15295        indent: ::std::os::raw::c_int,
15296        pctx: *mut ASN1_PCTX,
15297    ) -> ::std::os::raw::c_int;
15298}
15299extern "C" {
15300    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_print_private"]
15301    pub fn EVP_PKEY_print_private(
15302        out: *mut BIO,
15303        pkey: *const EVP_PKEY,
15304        indent: ::std::os::raw::c_int,
15305        pctx: *mut ASN1_PCTX,
15306    ) -> ::std::os::raw::c_int;
15307}
15308extern "C" {
15309    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_print_params"]
15310    pub fn EVP_PKEY_print_params(
15311        out: *mut BIO,
15312        pkey: *const EVP_PKEY,
15313        indent: ::std::os::raw::c_int,
15314        pctx: *mut ASN1_PCTX,
15315    ) -> ::std::os::raw::c_int;
15316}
15317extern "C" {
15318    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS5_PBKDF2_HMAC"]
15319    pub fn PKCS5_PBKDF2_HMAC(
15320        password: *const ::std::os::raw::c_char,
15321        password_len: usize,
15322        salt: *const u8,
15323        salt_len: usize,
15324        iterations: u32,
15325        digest: *const EVP_MD,
15326        key_len: usize,
15327        out_key: *mut u8,
15328    ) -> ::std::os::raw::c_int;
15329}
15330extern "C" {
15331    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS5_PBKDF2_HMAC_SHA1"]
15332    pub fn PKCS5_PBKDF2_HMAC_SHA1(
15333        password: *const ::std::os::raw::c_char,
15334        password_len: usize,
15335        salt: *const u8,
15336        salt_len: usize,
15337        iterations: u32,
15338        key_len: usize,
15339        out_key: *mut u8,
15340    ) -> ::std::os::raw::c_int;
15341}
15342extern "C" {
15343    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PBE_scrypt"]
15344    pub fn EVP_PBE_scrypt(
15345        password: *const ::std::os::raw::c_char,
15346        password_len: usize,
15347        salt: *const u8,
15348        salt_len: usize,
15349        N: u64,
15350        r: u64,
15351        p: u64,
15352        max_mem: usize,
15353        out_key: *mut u8,
15354        key_len: usize,
15355    ) -> ::std::os::raw::c_int;
15356}
15357extern "C" {
15358    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_new"]
15359    pub fn EVP_PKEY_CTX_new(pkey: *mut EVP_PKEY, e: *mut ENGINE) -> *mut EVP_PKEY_CTX;
15360}
15361extern "C" {
15362    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_new_id"]
15363    pub fn EVP_PKEY_CTX_new_id(id: ::std::os::raw::c_int, e: *mut ENGINE) -> *mut EVP_PKEY_CTX;
15364}
15365extern "C" {
15366    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_free"]
15367    pub fn EVP_PKEY_CTX_free(ctx: *mut EVP_PKEY_CTX);
15368}
15369extern "C" {
15370    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_dup"]
15371    pub fn EVP_PKEY_CTX_dup(ctx: *mut EVP_PKEY_CTX) -> *mut EVP_PKEY_CTX;
15372}
15373extern "C" {
15374    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get0_pkey"]
15375    pub fn EVP_PKEY_CTX_get0_pkey(ctx: *mut EVP_PKEY_CTX) -> *mut EVP_PKEY;
15376}
15377extern "C" {
15378    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_sign_init"]
15379    pub fn EVP_PKEY_sign_init(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int;
15380}
15381extern "C" {
15382    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_sign"]
15383    pub fn EVP_PKEY_sign(
15384        ctx: *mut EVP_PKEY_CTX,
15385        sig: *mut u8,
15386        sig_len: *mut usize,
15387        digest: *const u8,
15388        digest_len: usize,
15389    ) -> ::std::os::raw::c_int;
15390}
15391extern "C" {
15392    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_verify_init"]
15393    pub fn EVP_PKEY_verify_init(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int;
15394}
15395extern "C" {
15396    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_verify"]
15397    pub fn EVP_PKEY_verify(
15398        ctx: *mut EVP_PKEY_CTX,
15399        sig: *const u8,
15400        sig_len: usize,
15401        digest: *const u8,
15402        digest_len: usize,
15403    ) -> ::std::os::raw::c_int;
15404}
15405extern "C" {
15406    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_encrypt_init"]
15407    pub fn EVP_PKEY_encrypt_init(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int;
15408}
15409extern "C" {
15410    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_encrypt"]
15411    pub fn EVP_PKEY_encrypt(
15412        ctx: *mut EVP_PKEY_CTX,
15413        out: *mut u8,
15414        out_len: *mut usize,
15415        in_: *const u8,
15416        in_len: usize,
15417    ) -> ::std::os::raw::c_int;
15418}
15419extern "C" {
15420    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_decrypt_init"]
15421    pub fn EVP_PKEY_decrypt_init(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int;
15422}
15423extern "C" {
15424    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_decrypt"]
15425    pub fn EVP_PKEY_decrypt(
15426        ctx: *mut EVP_PKEY_CTX,
15427        out: *mut u8,
15428        out_len: *mut usize,
15429        in_: *const u8,
15430        in_len: usize,
15431    ) -> ::std::os::raw::c_int;
15432}
15433extern "C" {
15434    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_verify_recover_init"]
15435    pub fn EVP_PKEY_verify_recover_init(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int;
15436}
15437extern "C" {
15438    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_verify_recover"]
15439    pub fn EVP_PKEY_verify_recover(
15440        ctx: *mut EVP_PKEY_CTX,
15441        out: *mut u8,
15442        out_len: *mut usize,
15443        sig: *const u8,
15444        siglen: usize,
15445    ) -> ::std::os::raw::c_int;
15446}
15447extern "C" {
15448    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_derive_init"]
15449    pub fn EVP_PKEY_derive_init(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int;
15450}
15451extern "C" {
15452    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_derive_set_peer"]
15453    pub fn EVP_PKEY_derive_set_peer(
15454        ctx: *mut EVP_PKEY_CTX,
15455        peer: *mut EVP_PKEY,
15456    ) -> ::std::os::raw::c_int;
15457}
15458extern "C" {
15459    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_derive"]
15460    pub fn EVP_PKEY_derive(
15461        ctx: *mut EVP_PKEY_CTX,
15462        key: *mut u8,
15463        out_key_len: *mut usize,
15464    ) -> ::std::os::raw::c_int;
15465}
15466extern "C" {
15467    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_keygen_init"]
15468    pub fn EVP_PKEY_keygen_init(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int;
15469}
15470extern "C" {
15471    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_keygen"]
15472    pub fn EVP_PKEY_keygen(
15473        ctx: *mut EVP_PKEY_CTX,
15474        out_pkey: *mut *mut EVP_PKEY,
15475    ) -> ::std::os::raw::c_int;
15476}
15477extern "C" {
15478    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_encapsulate"]
15479    pub fn EVP_PKEY_encapsulate(
15480        ctx: *mut EVP_PKEY_CTX,
15481        ciphertext: *mut u8,
15482        ciphertext_len: *mut usize,
15483        shared_secret: *mut u8,
15484        shared_secret_len: *mut usize,
15485    ) -> ::std::os::raw::c_int;
15486}
15487extern "C" {
15488    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_decapsulate"]
15489    pub fn EVP_PKEY_decapsulate(
15490        ctx: *mut EVP_PKEY_CTX,
15491        shared_secret: *mut u8,
15492        shared_secret_len: *mut usize,
15493        ciphertext: *const u8,
15494        ciphertext_len: usize,
15495    ) -> ::std::os::raw::c_int;
15496}
15497extern "C" {
15498    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_paramgen_init"]
15499    pub fn EVP_PKEY_paramgen_init(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int;
15500}
15501extern "C" {
15502    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_paramgen"]
15503    pub fn EVP_PKEY_paramgen(
15504        ctx: *mut EVP_PKEY_CTX,
15505        out_pkey: *mut *mut EVP_PKEY,
15506    ) -> ::std::os::raw::c_int;
15507}
15508extern "C" {
15509    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_signature_md"]
15510    pub fn EVP_PKEY_CTX_set_signature_md(
15511        ctx: *mut EVP_PKEY_CTX,
15512        md: *const EVP_MD,
15513    ) -> ::std::os::raw::c_int;
15514}
15515extern "C" {
15516    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get_signature_md"]
15517    pub fn EVP_PKEY_CTX_get_signature_md(
15518        ctx: *mut EVP_PKEY_CTX,
15519        out_md: *mut *const EVP_MD,
15520    ) -> ::std::os::raw::c_int;
15521}
15522extern "C" {
15523    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_padding"]
15524    pub fn EVP_PKEY_CTX_set_rsa_padding(
15525        ctx: *mut EVP_PKEY_CTX,
15526        padding: ::std::os::raw::c_int,
15527    ) -> ::std::os::raw::c_int;
15528}
15529extern "C" {
15530    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get_rsa_padding"]
15531    pub fn EVP_PKEY_CTX_get_rsa_padding(
15532        ctx: *mut EVP_PKEY_CTX,
15533        out_padding: *mut ::std::os::raw::c_int,
15534    ) -> ::std::os::raw::c_int;
15535}
15536extern "C" {
15537    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_pss_saltlen"]
15538    pub fn EVP_PKEY_CTX_set_rsa_pss_saltlen(
15539        ctx: *mut EVP_PKEY_CTX,
15540        salt_len: ::std::os::raw::c_int,
15541    ) -> ::std::os::raw::c_int;
15542}
15543extern "C" {
15544    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get_rsa_pss_saltlen"]
15545    pub fn EVP_PKEY_CTX_get_rsa_pss_saltlen(
15546        ctx: *mut EVP_PKEY_CTX,
15547        out_salt_len: *mut ::std::os::raw::c_int,
15548    ) -> ::std::os::raw::c_int;
15549}
15550extern "C" {
15551    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_keygen_bits"]
15552    pub fn EVP_PKEY_CTX_set_rsa_keygen_bits(
15553        ctx: *mut EVP_PKEY_CTX,
15554        bits: ::std::os::raw::c_int,
15555    ) -> ::std::os::raw::c_int;
15556}
15557extern "C" {
15558    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_keygen_pubexp"]
15559    pub fn EVP_PKEY_CTX_set_rsa_keygen_pubexp(
15560        ctx: *mut EVP_PKEY_CTX,
15561        e: *mut BIGNUM,
15562    ) -> ::std::os::raw::c_int;
15563}
15564extern "C" {
15565    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_oaep_md"]
15566    pub fn EVP_PKEY_CTX_set_rsa_oaep_md(
15567        ctx: *mut EVP_PKEY_CTX,
15568        md: *const EVP_MD,
15569    ) -> ::std::os::raw::c_int;
15570}
15571extern "C" {
15572    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get_rsa_oaep_md"]
15573    pub fn EVP_PKEY_CTX_get_rsa_oaep_md(
15574        ctx: *mut EVP_PKEY_CTX,
15575        out_md: *mut *const EVP_MD,
15576    ) -> ::std::os::raw::c_int;
15577}
15578extern "C" {
15579    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_mgf1_md"]
15580    pub fn EVP_PKEY_CTX_set_rsa_mgf1_md(
15581        ctx: *mut EVP_PKEY_CTX,
15582        md: *const EVP_MD,
15583    ) -> ::std::os::raw::c_int;
15584}
15585extern "C" {
15586    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get_rsa_mgf1_md"]
15587    pub fn EVP_PKEY_CTX_get_rsa_mgf1_md(
15588        ctx: *mut EVP_PKEY_CTX,
15589        out_md: *mut *const EVP_MD,
15590    ) -> ::std::os::raw::c_int;
15591}
15592extern "C" {
15593    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set0_rsa_oaep_label"]
15594    pub fn EVP_PKEY_CTX_set0_rsa_oaep_label(
15595        ctx: *mut EVP_PKEY_CTX,
15596        label: *mut u8,
15597        label_len: usize,
15598    ) -> ::std::os::raw::c_int;
15599}
15600extern "C" {
15601    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get0_rsa_oaep_label"]
15602    pub fn EVP_PKEY_CTX_get0_rsa_oaep_label(
15603        ctx: *mut EVP_PKEY_CTX,
15604        out_label: *mut *const u8,
15605    ) -> ::std::os::raw::c_int;
15606}
15607extern "C" {
15608    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_ec_paramgen_curve_nid"]
15609    pub fn EVP_PKEY_CTX_set_ec_paramgen_curve_nid(
15610        ctx: *mut EVP_PKEY_CTX,
15611        nid: ::std::os::raw::c_int,
15612    ) -> ::std::os::raw::c_int;
15613}
15614extern "C" {
15615    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_kem_set_params"]
15616    pub fn EVP_PKEY_CTX_kem_set_params(
15617        ctx: *mut EVP_PKEY_CTX,
15618        nid: ::std::os::raw::c_int,
15619    ) -> ::std::os::raw::c_int;
15620}
15621extern "C" {
15622    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_kem_new_raw_public_key"]
15623    pub fn EVP_PKEY_kem_new_raw_public_key(
15624        nid: ::std::os::raw::c_int,
15625        in_: *const u8,
15626        len: usize,
15627    ) -> *mut EVP_PKEY;
15628}
15629extern "C" {
15630    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_kem_new_raw_secret_key"]
15631    pub fn EVP_PKEY_kem_new_raw_secret_key(
15632        nid: ::std::os::raw::c_int,
15633        in_: *const u8,
15634        len: usize,
15635    ) -> *mut EVP_PKEY;
15636}
15637extern "C" {
15638    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_kem_new_raw_key"]
15639    pub fn EVP_PKEY_kem_new_raw_key(
15640        nid: ::std::os::raw::c_int,
15641        in_public: *const u8,
15642        len_public: usize,
15643        in_secret: *const u8,
15644        len_secret: usize,
15645    ) -> *mut EVP_PKEY;
15646}
15647extern "C" {
15648    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_kem_check_key"]
15649    pub fn EVP_PKEY_kem_check_key(key: *mut EVP_PKEY) -> ::std::os::raw::c_int;
15650}
15651extern "C" {
15652    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_dh_pad"]
15653    pub fn EVP_PKEY_CTX_set_dh_pad(
15654        ctx: *mut EVP_PKEY_CTX,
15655        pad: ::std::os::raw::c_int,
15656    ) -> ::std::os::raw::c_int;
15657}
15658extern "C" {
15659    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_asn1_get_count"]
15660    pub fn EVP_PKEY_asn1_get_count() -> ::std::os::raw::c_int;
15661}
15662extern "C" {
15663    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_asn1_get0"]
15664    pub fn EVP_PKEY_asn1_get0(idx: ::std::os::raw::c_int) -> *const EVP_PKEY_ASN1_METHOD;
15665}
15666extern "C" {
15667    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_asn1_find"]
15668    pub fn EVP_PKEY_asn1_find(
15669        _pe: *mut *mut ENGINE,
15670        type_: ::std::os::raw::c_int,
15671    ) -> *const EVP_PKEY_ASN1_METHOD;
15672}
15673extern "C" {
15674    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_asn1_find_str"]
15675    pub fn EVP_PKEY_asn1_find_str(
15676        _pe: *mut *mut ENGINE,
15677        name: *const ::std::os::raw::c_char,
15678        len: ::std::os::raw::c_int,
15679    ) -> *const EVP_PKEY_ASN1_METHOD;
15680}
15681extern "C" {
15682    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_asn1_get0_info"]
15683    pub fn EVP_PKEY_asn1_get0_info(
15684        ppkey_id: *mut ::std::os::raw::c_int,
15685        pkey_base_id: *mut ::std::os::raw::c_int,
15686        ppkey_flags: *mut ::std::os::raw::c_int,
15687        pinfo: *mut *const ::std::os::raw::c_char,
15688        ppem_str: *mut *const ::std::os::raw::c_char,
15689        ameth: *const EVP_PKEY_ASN1_METHOD,
15690    ) -> ::std::os::raw::c_int;
15691}
15692extern "C" {
15693    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_get_pkey_type"]
15694    pub fn EVP_MD_get_pkey_type(md: *const EVP_MD) -> ::std::os::raw::c_int;
15695}
15696extern "C" {
15697    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_pkey_type"]
15698    pub fn EVP_MD_pkey_type(md: *const EVP_MD) -> ::std::os::raw::c_int;
15699}
15700extern "C" {
15701    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_CIPHER_do_all_sorted"]
15702    pub fn EVP_CIPHER_do_all_sorted(
15703        callback: ::std::option::Option<
15704            unsafe extern "C" fn(
15705                cipher: *const EVP_CIPHER,
15706                name: *const ::std::os::raw::c_char,
15707                unused: *const ::std::os::raw::c_char,
15708                arg: *mut ::std::os::raw::c_void,
15709            ),
15710        >,
15711        arg: *mut ::std::os::raw::c_void,
15712    );
15713}
15714extern "C" {
15715    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_do_all_sorted"]
15716    pub fn EVP_MD_do_all_sorted(
15717        callback: ::std::option::Option<
15718            unsafe extern "C" fn(
15719                cipher: *const EVP_MD,
15720                name: *const ::std::os::raw::c_char,
15721                unused: *const ::std::os::raw::c_char,
15722                arg: *mut ::std::os::raw::c_void,
15723            ),
15724        >,
15725        arg: *mut ::std::os::raw::c_void,
15726    );
15727}
15728extern "C" {
15729    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_MD_do_all"]
15730    pub fn EVP_MD_do_all(
15731        callback: ::std::option::Option<
15732            unsafe extern "C" fn(
15733                cipher: *const EVP_MD,
15734                name: *const ::std::os::raw::c_char,
15735                unused: *const ::std::os::raw::c_char,
15736                arg: *mut ::std::os::raw::c_void,
15737            ),
15738        >,
15739        arg: *mut ::std::os::raw::c_void,
15740    );
15741}
15742extern "C" {
15743    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PrivateKey"]
15744    pub fn i2d_PrivateKey(key: *const EVP_PKEY, outp: *mut *mut u8) -> ::std::os::raw::c_int;
15745}
15746extern "C" {
15747    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PublicKey"]
15748    pub fn i2d_PublicKey(key: *const EVP_PKEY, outp: *mut *mut u8) -> ::std::os::raw::c_int;
15749}
15750extern "C" {
15751    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PrivateKey"]
15752    pub fn d2i_PrivateKey(
15753        type_: ::std::os::raw::c_int,
15754        out: *mut *mut EVP_PKEY,
15755        inp: *mut *const u8,
15756        len: ::std::os::raw::c_long,
15757    ) -> *mut EVP_PKEY;
15758}
15759extern "C" {
15760    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_AutoPrivateKey"]
15761    pub fn d2i_AutoPrivateKey(
15762        out: *mut *mut EVP_PKEY,
15763        inp: *mut *const u8,
15764        len: ::std::os::raw::c_long,
15765    ) -> *mut EVP_PKEY;
15766}
15767extern "C" {
15768    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PublicKey"]
15769    pub fn d2i_PublicKey(
15770        type_: ::std::os::raw::c_int,
15771        out: *mut *mut EVP_PKEY,
15772        inp: *mut *const u8,
15773        len: ::std::os::raw::c_long,
15774    ) -> *mut EVP_PKEY;
15775}
15776extern "C" {
15777    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_ec_param_enc"]
15778    pub fn EVP_PKEY_CTX_set_ec_param_enc(
15779        ctx: *mut EVP_PKEY_CTX,
15780        encoding: ::std::os::raw::c_int,
15781    ) -> ::std::os::raw::c_int;
15782}
15783extern "C" {
15784    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_set1_tls_encodedpoint"]
15785    pub fn EVP_PKEY_set1_tls_encodedpoint(
15786        pkey: *mut EVP_PKEY,
15787        in_: *const u8,
15788        len: usize,
15789    ) -> ::std::os::raw::c_int;
15790}
15791extern "C" {
15792    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get1_tls_encodedpoint"]
15793    pub fn EVP_PKEY_get1_tls_encodedpoint(pkey: *const EVP_PKEY, out_ptr: *mut *mut u8) -> usize;
15794}
15795extern "C" {
15796    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_base_id"]
15797    pub fn EVP_PKEY_base_id(pkey: *const EVP_PKEY) -> ::std::os::raw::c_int;
15798}
15799extern "C" {
15800    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_pss_keygen_md"]
15801    pub fn EVP_PKEY_CTX_set_rsa_pss_keygen_md(
15802        ctx: *mut EVP_PKEY_CTX,
15803        md: *const EVP_MD,
15804    ) -> ::std::os::raw::c_int;
15805}
15806extern "C" {
15807    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen"]
15808    pub fn EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen(
15809        ctx: *mut EVP_PKEY_CTX,
15810        salt_len: ::std::os::raw::c_int,
15811    ) -> ::std::os::raw::c_int;
15812}
15813extern "C" {
15814    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md"]
15815    pub fn EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md(
15816        ctx: *mut EVP_PKEY_CTX,
15817        md: *const EVP_MD,
15818    ) -> ::std::os::raw::c_int;
15819}
15820extern "C" {
15821    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PUBKEY"]
15822    pub fn i2d_PUBKEY(pkey: *const EVP_PKEY, outp: *mut *mut u8) -> ::std::os::raw::c_int;
15823}
15824extern "C" {
15825    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PUBKEY"]
15826    pub fn d2i_PUBKEY(
15827        out: *mut *mut EVP_PKEY,
15828        inp: *mut *const u8,
15829        len: ::std::os::raw::c_long,
15830    ) -> *mut EVP_PKEY;
15831}
15832extern "C" {
15833    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSA_PUBKEY"]
15834    pub fn i2d_RSA_PUBKEY(rsa: *const RSA, outp: *mut *mut u8) -> ::std::os::raw::c_int;
15835}
15836extern "C" {
15837    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSA_PUBKEY"]
15838    pub fn d2i_RSA_PUBKEY(
15839        out: *mut *mut RSA,
15840        inp: *mut *const u8,
15841        len: ::std::os::raw::c_long,
15842    ) -> *mut RSA;
15843}
15844extern "C" {
15845    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSA_PUBKEY"]
15846    pub fn i2d_DSA_PUBKEY(dsa: *const DSA, outp: *mut *mut u8) -> ::std::os::raw::c_int;
15847}
15848extern "C" {
15849    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSA_PUBKEY"]
15850    pub fn d2i_DSA_PUBKEY(
15851        out: *mut *mut DSA,
15852        inp: *mut *const u8,
15853        len: ::std::os::raw::c_long,
15854    ) -> *mut DSA;
15855}
15856extern "C" {
15857    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_EC_PUBKEY"]
15858    pub fn i2d_EC_PUBKEY(ec_key: *const EC_KEY, outp: *mut *mut u8) -> ::std::os::raw::c_int;
15859}
15860extern "C" {
15861    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_EC_PUBKEY"]
15862    pub fn d2i_EC_PUBKEY(
15863        out: *mut *mut EC_KEY,
15864        inp: *mut *const u8,
15865        len: ::std::os::raw::c_long,
15866    ) -> *mut EC_KEY;
15867}
15868extern "C" {
15869    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_assign"]
15870    pub fn EVP_PKEY_assign(
15871        pkey: *mut EVP_PKEY,
15872        type_: ::std::os::raw::c_int,
15873        key: *mut ::std::os::raw::c_void,
15874    ) -> ::std::os::raw::c_int;
15875}
15876extern "C" {
15877    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_new_mac_key"]
15878    pub fn EVP_PKEY_new_mac_key(
15879        type_: ::std::os::raw::c_int,
15880        engine: *mut ENGINE,
15881        mac_key: *const u8,
15882        mac_key_len: usize,
15883    ) -> *mut EVP_PKEY;
15884}
15885extern "C" {
15886    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_get0"]
15887    pub fn EVP_PKEY_get0(pkey: *const EVP_PKEY) -> *mut ::std::os::raw::c_void;
15888}
15889extern "C" {
15890    #[link_name = "\u{1}aws_lc_fips_0_13_10_OpenSSL_add_all_algorithms"]
15891    pub fn OpenSSL_add_all_algorithms();
15892}
15893extern "C" {
15894    #[link_name = "\u{1}aws_lc_fips_0_13_10_OPENSSL_add_all_algorithms_conf"]
15895    pub fn OPENSSL_add_all_algorithms_conf();
15896}
15897extern "C" {
15898    #[link_name = "\u{1}aws_lc_fips_0_13_10_OpenSSL_add_all_ciphers"]
15899    pub fn OpenSSL_add_all_ciphers();
15900}
15901extern "C" {
15902    #[link_name = "\u{1}aws_lc_fips_0_13_10_OpenSSL_add_all_digests"]
15903    pub fn OpenSSL_add_all_digests();
15904}
15905extern "C" {
15906    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_cleanup"]
15907    pub fn EVP_cleanup();
15908}
15909extern "C" {
15910    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_dsa_paramgen_bits"]
15911    pub fn EVP_PKEY_CTX_set_dsa_paramgen_bits(
15912        ctx: *mut EVP_PKEY_CTX,
15913        nbits: ::std::os::raw::c_int,
15914    ) -> ::std::os::raw::c_int;
15915}
15916extern "C" {
15917    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_dsa_paramgen_q_bits"]
15918    pub fn EVP_PKEY_CTX_set_dsa_paramgen_q_bits(
15919        ctx: *mut EVP_PKEY_CTX,
15920        qbits: ::std::os::raw::c_int,
15921    ) -> ::std::os::raw::c_int;
15922}
15923extern "C" {
15924    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_ctrl_str"]
15925    pub fn EVP_PKEY_CTX_ctrl_str(
15926        ctx: *mut EVP_PKEY_CTX,
15927        type_: *const ::std::os::raw::c_char,
15928        value: *const ::std::os::raw::c_char,
15929    ) -> ::std::os::raw::c_int;
15930}
15931pub type EVP_PKEY_gen_cb =
15932    ::std::option::Option<unsafe extern "C" fn(ctx: *mut EVP_PKEY_CTX) -> ::std::os::raw::c_int>;
15933extern "C" {
15934    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_cb"]
15935    pub fn EVP_PKEY_CTX_set_cb(ctx: *mut EVP_PKEY_CTX, cb: EVP_PKEY_gen_cb);
15936}
15937extern "C" {
15938    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_app_data"]
15939    pub fn EVP_PKEY_CTX_set_app_data(ctx: *mut EVP_PKEY_CTX, data: *mut ::std::os::raw::c_void);
15940}
15941extern "C" {
15942    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get_app_data"]
15943    pub fn EVP_PKEY_CTX_get_app_data(ctx: *mut EVP_PKEY_CTX) -> *mut ::std::os::raw::c_void;
15944}
15945extern "C" {
15946    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_get_keygen_info"]
15947    pub fn EVP_PKEY_CTX_get_keygen_info(
15948        ctx: *mut EVP_PKEY_CTX,
15949        idx: ::std::os::raw::c_int,
15950    ) -> ::std::os::raw::c_int;
15951}
15952extern "C" {
15953    #[link_name = "\u{1}aws_lc_fips_0_13_10_HKDF"]
15954    pub fn HKDF(
15955        out_key: *mut u8,
15956        out_len: usize,
15957        digest: *const EVP_MD,
15958        secret: *const u8,
15959        secret_len: usize,
15960        salt: *const u8,
15961        salt_len: usize,
15962        info: *const u8,
15963        info_len: usize,
15964    ) -> ::std::os::raw::c_int;
15965}
15966extern "C" {
15967    #[link_name = "\u{1}aws_lc_fips_0_13_10_HKDF_extract"]
15968    pub fn HKDF_extract(
15969        out_key: *mut u8,
15970        out_len: *mut usize,
15971        digest: *const EVP_MD,
15972        secret: *const u8,
15973        secret_len: usize,
15974        salt: *const u8,
15975        salt_len: usize,
15976    ) -> ::std::os::raw::c_int;
15977}
15978extern "C" {
15979    #[link_name = "\u{1}aws_lc_fips_0_13_10_HKDF_expand"]
15980    pub fn HKDF_expand(
15981        out_key: *mut u8,
15982        out_len: usize,
15983        digest: *const EVP_MD,
15984        prk: *const u8,
15985        prk_len: usize,
15986        info: *const u8,
15987        info_len: usize,
15988    ) -> ::std::os::raw::c_int;
15989}
15990extern "C" {
15991    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD5_Init"]
15992    pub fn MD5_Init(md5: *mut MD5_CTX) -> ::std::os::raw::c_int;
15993}
15994extern "C" {
15995    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD5_Update"]
15996    pub fn MD5_Update(
15997        md5: *mut MD5_CTX,
15998        data: *const ::std::os::raw::c_void,
15999        len: usize,
16000    ) -> ::std::os::raw::c_int;
16001}
16002extern "C" {
16003    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD5_Final"]
16004    pub fn MD5_Final(out: *mut u8, md5: *mut MD5_CTX) -> ::std::os::raw::c_int;
16005}
16006extern "C" {
16007    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD5"]
16008    pub fn MD5(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
16009}
16010extern "C" {
16011    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD5_Transform"]
16012    pub fn MD5_Transform(md5: *mut MD5_CTX, block: *const u8);
16013}
16014#[repr(C)]
16015#[derive(Debug, Copy, Clone, PartialEq, Eq)]
16016pub struct md5_state_st {
16017    pub h: [u32; 4usize],
16018    pub Nl: u32,
16019    pub Nh: u32,
16020    pub data: [u8; 64usize],
16021    pub num: ::std::os::raw::c_uint,
16022}
16023#[test]
16024fn bindgen_test_layout_md5_state_st() {
16025    const UNINIT: ::std::mem::MaybeUninit<md5_state_st> = ::std::mem::MaybeUninit::uninit();
16026    let ptr = UNINIT.as_ptr();
16027    assert_eq!(
16028        ::std::mem::size_of::<md5_state_st>(),
16029        92usize,
16030        "Size of md5_state_st"
16031    );
16032    assert_eq!(
16033        ::std::mem::align_of::<md5_state_st>(),
16034        4usize,
16035        "Alignment of md5_state_st"
16036    );
16037    assert_eq!(
16038        unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
16039        0usize,
16040        "Offset of field: md5_state_st::h"
16041    );
16042    assert_eq!(
16043        unsafe { ::std::ptr::addr_of!((*ptr).Nl) as usize - ptr as usize },
16044        16usize,
16045        "Offset of field: md5_state_st::Nl"
16046    );
16047    assert_eq!(
16048        unsafe { ::std::ptr::addr_of!((*ptr).Nh) as usize - ptr as usize },
16049        20usize,
16050        "Offset of field: md5_state_st::Nh"
16051    );
16052    assert_eq!(
16053        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
16054        24usize,
16055        "Offset of field: md5_state_st::data"
16056    );
16057    assert_eq!(
16058        unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
16059        88usize,
16060        "Offset of field: md5_state_st::num"
16061    );
16062}
16063impl Default for md5_state_st {
16064    fn default() -> Self {
16065        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16066        unsafe {
16067            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16068            s.assume_init()
16069        }
16070    }
16071}
16072extern "C" {
16073    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC"]
16074    pub fn HMAC(
16075        evp_md: *const EVP_MD,
16076        key: *const ::std::os::raw::c_void,
16077        key_len: usize,
16078        data: *const u8,
16079        data_len: usize,
16080        out: *mut u8,
16081        out_len: *mut ::std::os::raw::c_uint,
16082    ) -> *mut u8;
16083}
16084extern "C" {
16085    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_init"]
16086    pub fn HMAC_CTX_init(ctx: *mut HMAC_CTX);
16087}
16088extern "C" {
16089    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_new"]
16090    pub fn HMAC_CTX_new() -> *mut HMAC_CTX;
16091}
16092extern "C" {
16093    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_cleanup"]
16094    pub fn HMAC_CTX_cleanup(ctx: *mut HMAC_CTX);
16095}
16096extern "C" {
16097    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_cleanse"]
16098    pub fn HMAC_CTX_cleanse(ctx: *mut HMAC_CTX);
16099}
16100extern "C" {
16101    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_free"]
16102    pub fn HMAC_CTX_free(ctx: *mut HMAC_CTX);
16103}
16104extern "C" {
16105    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_Init_ex"]
16106    pub fn HMAC_Init_ex(
16107        ctx: *mut HMAC_CTX,
16108        key: *const ::std::os::raw::c_void,
16109        key_len: usize,
16110        md: *const EVP_MD,
16111        impl_: *mut ENGINE,
16112    ) -> ::std::os::raw::c_int;
16113}
16114extern "C" {
16115    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_Update"]
16116    pub fn HMAC_Update(
16117        ctx: *mut HMAC_CTX,
16118        data: *const u8,
16119        data_len: usize,
16120    ) -> ::std::os::raw::c_int;
16121}
16122extern "C" {
16123    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_Final"]
16124    pub fn HMAC_Final(
16125        ctx: *mut HMAC_CTX,
16126        out: *mut u8,
16127        out_len: *mut ::std::os::raw::c_uint,
16128    ) -> ::std::os::raw::c_int;
16129}
16130extern "C" {
16131    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_size"]
16132    pub fn HMAC_size(ctx: *const HMAC_CTX) -> usize;
16133}
16134extern "C" {
16135    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_get_md"]
16136    pub fn HMAC_CTX_get_md(ctx: *const HMAC_CTX) -> *const EVP_MD;
16137}
16138extern "C" {
16139    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_copy_ex"]
16140    pub fn HMAC_CTX_copy_ex(dest: *mut HMAC_CTX, src: *const HMAC_CTX) -> ::std::os::raw::c_int;
16141}
16142extern "C" {
16143    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_reset"]
16144    pub fn HMAC_CTX_reset(ctx: *mut HMAC_CTX);
16145}
16146extern "C" {
16147    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_set_precomputed_key_export"]
16148    pub fn HMAC_set_precomputed_key_export(ctx: *mut HMAC_CTX) -> ::std::os::raw::c_int;
16149}
16150extern "C" {
16151    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_get_precomputed_key"]
16152    pub fn HMAC_get_precomputed_key(
16153        ctx: *mut HMAC_CTX,
16154        out: *mut u8,
16155        out_len: *mut usize,
16156    ) -> ::std::os::raw::c_int;
16157}
16158extern "C" {
16159    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_Init_from_precomputed_key"]
16160    pub fn HMAC_Init_from_precomputed_key(
16161        ctx: *mut HMAC_CTX,
16162        precomputed_key: *const u8,
16163        precompute_key_len: usize,
16164        md: *const EVP_MD,
16165    ) -> ::std::os::raw::c_int;
16166}
16167extern "C" {
16168    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_Init"]
16169    pub fn HMAC_Init(
16170        ctx: *mut HMAC_CTX,
16171        key: *const ::std::os::raw::c_void,
16172        key_len: ::std::os::raw::c_int,
16173        md: *const EVP_MD,
16174    ) -> ::std::os::raw::c_int;
16175}
16176extern "C" {
16177    #[link_name = "\u{1}aws_lc_fips_0_13_10_HMAC_CTX_copy"]
16178    pub fn HMAC_CTX_copy(dest: *mut HMAC_CTX, src: *const HMAC_CTX) -> ::std::os::raw::c_int;
16179}
16180#[repr(C)]
16181#[derive(Debug, Copy, Clone)]
16182pub struct hmac_methods_st {
16183    _unused: [u8; 0],
16184}
16185pub type HmacMethods = hmac_methods_st;
16186#[repr(C)]
16187#[derive(Copy, Clone)]
16188pub union md_ctx_union {
16189    pub md5: MD5_CTX,
16190    pub sha1: SHA_CTX,
16191    pub sha256: SHA256_CTX,
16192    pub sha512: SHA512_CTX,
16193}
16194#[test]
16195fn bindgen_test_layout_md_ctx_union() {
16196    const UNINIT: ::std::mem::MaybeUninit<md_ctx_union> = ::std::mem::MaybeUninit::uninit();
16197    let ptr = UNINIT.as_ptr();
16198    assert_eq!(
16199        ::std::mem::size_of::<md_ctx_union>(),
16200        216usize,
16201        "Size of md_ctx_union"
16202    );
16203    assert_eq!(
16204        ::std::mem::align_of::<md_ctx_union>(),
16205        8usize,
16206        "Alignment of md_ctx_union"
16207    );
16208    assert_eq!(
16209        unsafe { ::std::ptr::addr_of!((*ptr).md5) as usize - ptr as usize },
16210        0usize,
16211        "Offset of field: md_ctx_union::md5"
16212    );
16213    assert_eq!(
16214        unsafe { ::std::ptr::addr_of!((*ptr).sha1) as usize - ptr as usize },
16215        0usize,
16216        "Offset of field: md_ctx_union::sha1"
16217    );
16218    assert_eq!(
16219        unsafe { ::std::ptr::addr_of!((*ptr).sha256) as usize - ptr as usize },
16220        0usize,
16221        "Offset of field: md_ctx_union::sha256"
16222    );
16223    assert_eq!(
16224        unsafe { ::std::ptr::addr_of!((*ptr).sha512) as usize - ptr as usize },
16225        0usize,
16226        "Offset of field: md_ctx_union::sha512"
16227    );
16228}
16229impl Default for md_ctx_union {
16230    fn default() -> Self {
16231        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16232        unsafe {
16233            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16234            s.assume_init()
16235        }
16236    }
16237}
16238#[repr(C)]
16239#[derive(Copy, Clone)]
16240pub struct hmac_ctx_st {
16241    pub md: *const EVP_MD,
16242    pub methods: *const HmacMethods,
16243    pub md_ctx: md_ctx_union,
16244    pub i_ctx: md_ctx_union,
16245    pub o_ctx: md_ctx_union,
16246    pub state: i8,
16247}
16248#[test]
16249fn bindgen_test_layout_hmac_ctx_st() {
16250    const UNINIT: ::std::mem::MaybeUninit<hmac_ctx_st> = ::std::mem::MaybeUninit::uninit();
16251    let ptr = UNINIT.as_ptr();
16252    assert_eq!(
16253        ::std::mem::size_of::<hmac_ctx_st>(),
16254        672usize,
16255        "Size of hmac_ctx_st"
16256    );
16257    assert_eq!(
16258        ::std::mem::align_of::<hmac_ctx_st>(),
16259        8usize,
16260        "Alignment of hmac_ctx_st"
16261    );
16262    assert_eq!(
16263        unsafe { ::std::ptr::addr_of!((*ptr).md) as usize - ptr as usize },
16264        0usize,
16265        "Offset of field: hmac_ctx_st::md"
16266    );
16267    assert_eq!(
16268        unsafe { ::std::ptr::addr_of!((*ptr).methods) as usize - ptr as usize },
16269        8usize,
16270        "Offset of field: hmac_ctx_st::methods"
16271    );
16272    assert_eq!(
16273        unsafe { ::std::ptr::addr_of!((*ptr).md_ctx) as usize - ptr as usize },
16274        16usize,
16275        "Offset of field: hmac_ctx_st::md_ctx"
16276    );
16277    assert_eq!(
16278        unsafe { ::std::ptr::addr_of!((*ptr).i_ctx) as usize - ptr as usize },
16279        232usize,
16280        "Offset of field: hmac_ctx_st::i_ctx"
16281    );
16282    assert_eq!(
16283        unsafe { ::std::ptr::addr_of!((*ptr).o_ctx) as usize - ptr as usize },
16284        448usize,
16285        "Offset of field: hmac_ctx_st::o_ctx"
16286    );
16287    assert_eq!(
16288        unsafe { ::std::ptr::addr_of!((*ptr).state) as usize - ptr as usize },
16289        664usize,
16290        "Offset of field: hmac_ctx_st::state"
16291    );
16292}
16293impl Default for hmac_ctx_st {
16294    fn default() -> Self {
16295        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16296        unsafe {
16297            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16298            s.assume_init()
16299        }
16300    }
16301}
16302extern "C" {
16303    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_hpke_x25519_hkdf_sha256"]
16304    pub fn EVP_hpke_x25519_hkdf_sha256() -> *const EVP_HPKE_KEM;
16305}
16306extern "C" {
16307    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEM_id"]
16308    pub fn EVP_HPKE_KEM_id(kem: *const EVP_HPKE_KEM) -> u16;
16309}
16310extern "C" {
16311    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEM_public_key_len"]
16312    pub fn EVP_HPKE_KEM_public_key_len(kem: *const EVP_HPKE_KEM) -> usize;
16313}
16314extern "C" {
16315    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEM_private_key_len"]
16316    pub fn EVP_HPKE_KEM_private_key_len(kem: *const EVP_HPKE_KEM) -> usize;
16317}
16318extern "C" {
16319    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEM_enc_len"]
16320    pub fn EVP_HPKE_KEM_enc_len(kem: *const EVP_HPKE_KEM) -> usize;
16321}
16322extern "C" {
16323    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_hpke_hkdf_sha256"]
16324    pub fn EVP_hpke_hkdf_sha256() -> *const EVP_HPKE_KDF;
16325}
16326extern "C" {
16327    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KDF_id"]
16328    pub fn EVP_HPKE_KDF_id(kdf: *const EVP_HPKE_KDF) -> u16;
16329}
16330extern "C" {
16331    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KDF_hkdf_md"]
16332    pub fn EVP_HPKE_KDF_hkdf_md(kdf: *const EVP_HPKE_KDF) -> *const EVP_MD;
16333}
16334extern "C" {
16335    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_hpke_aes_128_gcm"]
16336    pub fn EVP_hpke_aes_128_gcm() -> *const EVP_HPKE_AEAD;
16337}
16338extern "C" {
16339    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_hpke_aes_256_gcm"]
16340    pub fn EVP_hpke_aes_256_gcm() -> *const EVP_HPKE_AEAD;
16341}
16342extern "C" {
16343    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_hpke_chacha20_poly1305"]
16344    pub fn EVP_hpke_chacha20_poly1305() -> *const EVP_HPKE_AEAD;
16345}
16346extern "C" {
16347    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_AEAD_id"]
16348    pub fn EVP_HPKE_AEAD_id(aead: *const EVP_HPKE_AEAD) -> u16;
16349}
16350extern "C" {
16351    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_AEAD_aead"]
16352    pub fn EVP_HPKE_AEAD_aead(aead: *const EVP_HPKE_AEAD) -> *const EVP_AEAD;
16353}
16354extern "C" {
16355    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_zero"]
16356    pub fn EVP_HPKE_KEY_zero(key: *mut EVP_HPKE_KEY);
16357}
16358extern "C" {
16359    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_cleanup"]
16360    pub fn EVP_HPKE_KEY_cleanup(key: *mut EVP_HPKE_KEY);
16361}
16362extern "C" {
16363    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_new"]
16364    pub fn EVP_HPKE_KEY_new() -> *mut EVP_HPKE_KEY;
16365}
16366extern "C" {
16367    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_free"]
16368    pub fn EVP_HPKE_KEY_free(key: *mut EVP_HPKE_KEY);
16369}
16370extern "C" {
16371    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_copy"]
16372    pub fn EVP_HPKE_KEY_copy(
16373        dst: *mut EVP_HPKE_KEY,
16374        src: *const EVP_HPKE_KEY,
16375    ) -> ::std::os::raw::c_int;
16376}
16377extern "C" {
16378    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_move"]
16379    pub fn EVP_HPKE_KEY_move(out: *mut EVP_HPKE_KEY, in_: *mut EVP_HPKE_KEY);
16380}
16381extern "C" {
16382    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_init"]
16383    pub fn EVP_HPKE_KEY_init(
16384        key: *mut EVP_HPKE_KEY,
16385        kem: *const EVP_HPKE_KEM,
16386        priv_key: *const u8,
16387        priv_key_len: usize,
16388    ) -> ::std::os::raw::c_int;
16389}
16390extern "C" {
16391    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_generate"]
16392    pub fn EVP_HPKE_KEY_generate(
16393        key: *mut EVP_HPKE_KEY,
16394        kem: *const EVP_HPKE_KEM,
16395    ) -> ::std::os::raw::c_int;
16396}
16397extern "C" {
16398    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_kem"]
16399    pub fn EVP_HPKE_KEY_kem(key: *const EVP_HPKE_KEY) -> *const EVP_HPKE_KEM;
16400}
16401extern "C" {
16402    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_public_key"]
16403    pub fn EVP_HPKE_KEY_public_key(
16404        key: *const EVP_HPKE_KEY,
16405        out: *mut u8,
16406        out_len: *mut usize,
16407        max_out: usize,
16408    ) -> ::std::os::raw::c_int;
16409}
16410extern "C" {
16411    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_KEY_private_key"]
16412    pub fn EVP_HPKE_KEY_private_key(
16413        key: *const EVP_HPKE_KEY,
16414        out: *mut u8,
16415        out_len: *mut usize,
16416        max_out: usize,
16417    ) -> ::std::os::raw::c_int;
16418}
16419extern "C" {
16420    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_zero"]
16421    pub fn EVP_HPKE_CTX_zero(ctx: *mut EVP_HPKE_CTX);
16422}
16423extern "C" {
16424    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_cleanup"]
16425    pub fn EVP_HPKE_CTX_cleanup(ctx: *mut EVP_HPKE_CTX);
16426}
16427extern "C" {
16428    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_new"]
16429    pub fn EVP_HPKE_CTX_new() -> *mut EVP_HPKE_CTX;
16430}
16431extern "C" {
16432    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_free"]
16433    pub fn EVP_HPKE_CTX_free(ctx: *mut EVP_HPKE_CTX);
16434}
16435extern "C" {
16436    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_setup_sender"]
16437    pub fn EVP_HPKE_CTX_setup_sender(
16438        ctx: *mut EVP_HPKE_CTX,
16439        out_enc: *mut u8,
16440        out_enc_len: *mut usize,
16441        max_enc: usize,
16442        kem: *const EVP_HPKE_KEM,
16443        kdf: *const EVP_HPKE_KDF,
16444        aead: *const EVP_HPKE_AEAD,
16445        peer_public_key: *const u8,
16446        peer_public_key_len: usize,
16447        info: *const u8,
16448        info_len: usize,
16449    ) -> ::std::os::raw::c_int;
16450}
16451extern "C" {
16452    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_setup_sender_with_seed_for_testing"]
16453    pub fn EVP_HPKE_CTX_setup_sender_with_seed_for_testing(
16454        ctx: *mut EVP_HPKE_CTX,
16455        out_enc: *mut u8,
16456        out_enc_len: *mut usize,
16457        max_enc: usize,
16458        kem: *const EVP_HPKE_KEM,
16459        kdf: *const EVP_HPKE_KDF,
16460        aead: *const EVP_HPKE_AEAD,
16461        peer_public_key: *const u8,
16462        peer_public_key_len: usize,
16463        info: *const u8,
16464        info_len: usize,
16465        seed: *const u8,
16466        seed_len: usize,
16467    ) -> ::std::os::raw::c_int;
16468}
16469extern "C" {
16470    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_setup_recipient"]
16471    pub fn EVP_HPKE_CTX_setup_recipient(
16472        ctx: *mut EVP_HPKE_CTX,
16473        key: *const EVP_HPKE_KEY,
16474        kdf: *const EVP_HPKE_KDF,
16475        aead: *const EVP_HPKE_AEAD,
16476        enc: *const u8,
16477        enc_len: usize,
16478        info: *const u8,
16479        info_len: usize,
16480    ) -> ::std::os::raw::c_int;
16481}
16482extern "C" {
16483    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_setup_auth_sender"]
16484    pub fn EVP_HPKE_CTX_setup_auth_sender(
16485        ctx: *mut EVP_HPKE_CTX,
16486        out_enc: *mut u8,
16487        out_enc_len: *mut usize,
16488        max_enc: usize,
16489        key: *const EVP_HPKE_KEY,
16490        kdf: *const EVP_HPKE_KDF,
16491        aead: *const EVP_HPKE_AEAD,
16492        peer_public_key: *const u8,
16493        peer_public_key_len: usize,
16494        info: *const u8,
16495        info_len: usize,
16496    ) -> ::std::os::raw::c_int;
16497}
16498extern "C" {
16499    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_setup_auth_sender_with_seed_for_testing"]
16500    pub fn EVP_HPKE_CTX_setup_auth_sender_with_seed_for_testing(
16501        ctx: *mut EVP_HPKE_CTX,
16502        out_enc: *mut u8,
16503        out_enc_len: *mut usize,
16504        max_enc: usize,
16505        key: *const EVP_HPKE_KEY,
16506        kdf: *const EVP_HPKE_KDF,
16507        aead: *const EVP_HPKE_AEAD,
16508        peer_public_key: *const u8,
16509        peer_public_key_len: usize,
16510        info: *const u8,
16511        info_len: usize,
16512        seed: *const u8,
16513        seed_len: usize,
16514    ) -> ::std::os::raw::c_int;
16515}
16516extern "C" {
16517    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_setup_auth_recipient"]
16518    pub fn EVP_HPKE_CTX_setup_auth_recipient(
16519        ctx: *mut EVP_HPKE_CTX,
16520        key: *const EVP_HPKE_KEY,
16521        kdf: *const EVP_HPKE_KDF,
16522        aead: *const EVP_HPKE_AEAD,
16523        enc: *const u8,
16524        enc_len: usize,
16525        info: *const u8,
16526        info_len: usize,
16527        peer_public_key: *const u8,
16528        peer_public_key_len: usize,
16529    ) -> ::std::os::raw::c_int;
16530}
16531extern "C" {
16532    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_open"]
16533    pub fn EVP_HPKE_CTX_open(
16534        ctx: *mut EVP_HPKE_CTX,
16535        out: *mut u8,
16536        out_len: *mut usize,
16537        max_out_len: usize,
16538        in_: *const u8,
16539        in_len: usize,
16540        ad: *const u8,
16541        ad_len: usize,
16542    ) -> ::std::os::raw::c_int;
16543}
16544extern "C" {
16545    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_seal"]
16546    pub fn EVP_HPKE_CTX_seal(
16547        ctx: *mut EVP_HPKE_CTX,
16548        out: *mut u8,
16549        out_len: *mut usize,
16550        max_out_len: usize,
16551        in_: *const u8,
16552        in_len: usize,
16553        ad: *const u8,
16554        ad_len: usize,
16555    ) -> ::std::os::raw::c_int;
16556}
16557extern "C" {
16558    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_export"]
16559    pub fn EVP_HPKE_CTX_export(
16560        ctx: *const EVP_HPKE_CTX,
16561        out: *mut u8,
16562        secret_len: usize,
16563        context: *const u8,
16564        context_len: usize,
16565    ) -> ::std::os::raw::c_int;
16566}
16567extern "C" {
16568    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_max_overhead"]
16569    pub fn EVP_HPKE_CTX_max_overhead(ctx: *const EVP_HPKE_CTX) -> usize;
16570}
16571extern "C" {
16572    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_kem"]
16573    pub fn EVP_HPKE_CTX_kem(ctx: *const EVP_HPKE_CTX) -> *const EVP_HPKE_KEM;
16574}
16575extern "C" {
16576    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_aead"]
16577    pub fn EVP_HPKE_CTX_aead(ctx: *const EVP_HPKE_CTX) -> *const EVP_HPKE_AEAD;
16578}
16579extern "C" {
16580    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_HPKE_CTX_kdf"]
16581    pub fn EVP_HPKE_CTX_kdf(ctx: *const EVP_HPKE_CTX) -> *const EVP_HPKE_KDF;
16582}
16583#[repr(C)]
16584#[derive(Copy, Clone)]
16585pub struct evp_hpke_ctx_st {
16586    pub kem: *const EVP_HPKE_KEM,
16587    pub aead: *const EVP_HPKE_AEAD,
16588    pub kdf: *const EVP_HPKE_KDF,
16589    pub aead_ctx: EVP_AEAD_CTX,
16590    pub base_nonce: [u8; 24usize],
16591    pub exporter_secret: [u8; 64usize],
16592    pub seq: u64,
16593    pub is_sender: ::std::os::raw::c_int,
16594}
16595#[test]
16596fn bindgen_test_layout_evp_hpke_ctx_st() {
16597    const UNINIT: ::std::mem::MaybeUninit<evp_hpke_ctx_st> = ::std::mem::MaybeUninit::uninit();
16598    let ptr = UNINIT.as_ptr();
16599    assert_eq!(
16600        ::std::mem::size_of::<evp_hpke_ctx_st>(),
16601        712usize,
16602        "Size of evp_hpke_ctx_st"
16603    );
16604    assert_eq!(
16605        ::std::mem::align_of::<evp_hpke_ctx_st>(),
16606        8usize,
16607        "Alignment of evp_hpke_ctx_st"
16608    );
16609    assert_eq!(
16610        unsafe { ::std::ptr::addr_of!((*ptr).kem) as usize - ptr as usize },
16611        0usize,
16612        "Offset of field: evp_hpke_ctx_st::kem"
16613    );
16614    assert_eq!(
16615        unsafe { ::std::ptr::addr_of!((*ptr).aead) as usize - ptr as usize },
16616        8usize,
16617        "Offset of field: evp_hpke_ctx_st::aead"
16618    );
16619    assert_eq!(
16620        unsafe { ::std::ptr::addr_of!((*ptr).kdf) as usize - ptr as usize },
16621        16usize,
16622        "Offset of field: evp_hpke_ctx_st::kdf"
16623    );
16624    assert_eq!(
16625        unsafe { ::std::ptr::addr_of!((*ptr).aead_ctx) as usize - ptr as usize },
16626        24usize,
16627        "Offset of field: evp_hpke_ctx_st::aead_ctx"
16628    );
16629    assert_eq!(
16630        unsafe { ::std::ptr::addr_of!((*ptr).base_nonce) as usize - ptr as usize },
16631        608usize,
16632        "Offset of field: evp_hpke_ctx_st::base_nonce"
16633    );
16634    assert_eq!(
16635        unsafe { ::std::ptr::addr_of!((*ptr).exporter_secret) as usize - ptr as usize },
16636        632usize,
16637        "Offset of field: evp_hpke_ctx_st::exporter_secret"
16638    );
16639    assert_eq!(
16640        unsafe { ::std::ptr::addr_of!((*ptr).seq) as usize - ptr as usize },
16641        696usize,
16642        "Offset of field: evp_hpke_ctx_st::seq"
16643    );
16644    assert_eq!(
16645        unsafe { ::std::ptr::addr_of!((*ptr).is_sender) as usize - ptr as usize },
16646        704usize,
16647        "Offset of field: evp_hpke_ctx_st::is_sender"
16648    );
16649}
16650impl Default for evp_hpke_ctx_st {
16651    fn default() -> Self {
16652        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16653        unsafe {
16654            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16655            s.assume_init()
16656        }
16657    }
16658}
16659#[repr(C)]
16660#[derive(Debug, Copy, Clone, PartialEq, Eq)]
16661pub struct evp_hpke_key_st {
16662    pub kem: *const EVP_HPKE_KEM,
16663    pub private_key: [u8; 32usize],
16664    pub public_key: [u8; 32usize],
16665}
16666#[test]
16667fn bindgen_test_layout_evp_hpke_key_st() {
16668    const UNINIT: ::std::mem::MaybeUninit<evp_hpke_key_st> = ::std::mem::MaybeUninit::uninit();
16669    let ptr = UNINIT.as_ptr();
16670    assert_eq!(
16671        ::std::mem::size_of::<evp_hpke_key_st>(),
16672        72usize,
16673        "Size of evp_hpke_key_st"
16674    );
16675    assert_eq!(
16676        ::std::mem::align_of::<evp_hpke_key_st>(),
16677        8usize,
16678        "Alignment of evp_hpke_key_st"
16679    );
16680    assert_eq!(
16681        unsafe { ::std::ptr::addr_of!((*ptr).kem) as usize - ptr as usize },
16682        0usize,
16683        "Offset of field: evp_hpke_key_st::kem"
16684    );
16685    assert_eq!(
16686        unsafe { ::std::ptr::addr_of!((*ptr).private_key) as usize - ptr as usize },
16687        8usize,
16688        "Offset of field: evp_hpke_key_st::private_key"
16689    );
16690    assert_eq!(
16691        unsafe { ::std::ptr::addr_of!((*ptr).public_key) as usize - ptr as usize },
16692        40usize,
16693        "Offset of field: evp_hpke_key_st::public_key"
16694    );
16695}
16696impl Default for evp_hpke_key_st {
16697    fn default() -> Self {
16698        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16699        unsafe {
16700            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16701            s.assume_init()
16702        }
16703    }
16704}
16705#[repr(C)]
16706#[derive(Debug, Copy, Clone, PartialEq, Eq)]
16707pub struct HRSS_private_key {
16708    pub opaque: [u8; 1808usize],
16709}
16710#[test]
16711fn bindgen_test_layout_HRSS_private_key() {
16712    const UNINIT: ::std::mem::MaybeUninit<HRSS_private_key> = ::std::mem::MaybeUninit::uninit();
16713    let ptr = UNINIT.as_ptr();
16714    assert_eq!(
16715        ::std::mem::size_of::<HRSS_private_key>(),
16716        1808usize,
16717        "Size of HRSS_private_key"
16718    );
16719    assert_eq!(
16720        ::std::mem::align_of::<HRSS_private_key>(),
16721        1usize,
16722        "Alignment of HRSS_private_key"
16723    );
16724    assert_eq!(
16725        unsafe { ::std::ptr::addr_of!((*ptr).opaque) as usize - ptr as usize },
16726        0usize,
16727        "Offset of field: HRSS_private_key::opaque"
16728    );
16729}
16730impl Default for HRSS_private_key {
16731    fn default() -> Self {
16732        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16733        unsafe {
16734            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16735            s.assume_init()
16736        }
16737    }
16738}
16739#[repr(C)]
16740#[derive(Debug, Copy, Clone, PartialEq, Eq)]
16741pub struct HRSS_public_key {
16742    pub opaque: [u8; 1424usize],
16743}
16744#[test]
16745fn bindgen_test_layout_HRSS_public_key() {
16746    const UNINIT: ::std::mem::MaybeUninit<HRSS_public_key> = ::std::mem::MaybeUninit::uninit();
16747    let ptr = UNINIT.as_ptr();
16748    assert_eq!(
16749        ::std::mem::size_of::<HRSS_public_key>(),
16750        1424usize,
16751        "Size of HRSS_public_key"
16752    );
16753    assert_eq!(
16754        ::std::mem::align_of::<HRSS_public_key>(),
16755        1usize,
16756        "Alignment of HRSS_public_key"
16757    );
16758    assert_eq!(
16759        unsafe { ::std::ptr::addr_of!((*ptr).opaque) as usize - ptr as usize },
16760        0usize,
16761        "Offset of field: HRSS_public_key::opaque"
16762    );
16763}
16764impl Default for HRSS_public_key {
16765    fn default() -> Self {
16766        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16767        unsafe {
16768            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16769            s.assume_init()
16770        }
16771    }
16772}
16773extern "C" {
16774    #[link_name = "\u{1}aws_lc_fips_0_13_10_HRSS_generate_key"]
16775    pub fn HRSS_generate_key(
16776        out_pub: *mut HRSS_public_key,
16777        out_priv: *mut HRSS_private_key,
16778        input: *const u8,
16779    ) -> ::std::os::raw::c_int;
16780}
16781extern "C" {
16782    #[link_name = "\u{1}aws_lc_fips_0_13_10_HRSS_encap"]
16783    pub fn HRSS_encap(
16784        out_ciphertext: *mut u8,
16785        out_shared_key: *mut u8,
16786        in_pub: *const HRSS_public_key,
16787        in_: *const u8,
16788    ) -> ::std::os::raw::c_int;
16789}
16790extern "C" {
16791    #[link_name = "\u{1}aws_lc_fips_0_13_10_HRSS_decap"]
16792    pub fn HRSS_decap(
16793        out_shared_key: *mut u8,
16794        in_priv: *const HRSS_private_key,
16795        ciphertext: *const u8,
16796        ciphertext_len: usize,
16797    ) -> ::std::os::raw::c_int;
16798}
16799extern "C" {
16800    #[link_name = "\u{1}aws_lc_fips_0_13_10_HRSS_marshal_public_key"]
16801    pub fn HRSS_marshal_public_key(out: *mut u8, in_pub: *const HRSS_public_key);
16802}
16803extern "C" {
16804    #[link_name = "\u{1}aws_lc_fips_0_13_10_HRSS_parse_public_key"]
16805    pub fn HRSS_parse_public_key(
16806        out: *mut HRSS_public_key,
16807        in_: *const u8,
16808    ) -> ::std::os::raw::c_int;
16809}
16810extern "C" {
16811    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_tls1_prf"]
16812    pub fn CRYPTO_tls1_prf(
16813        digest: *const EVP_MD,
16814        out: *mut u8,
16815        out_len: usize,
16816        secret: *const u8,
16817        secret_len: usize,
16818        label: *const ::std::os::raw::c_char,
16819        label_len: usize,
16820        seed1: *const u8,
16821        seed1_len: usize,
16822        seed2: *const u8,
16823        seed2_len: usize,
16824    ) -> ::std::os::raw::c_int;
16825}
16826extern "C" {
16827    #[link_name = "\u{1}aws_lc_fips_0_13_10_SSKDF_digest"]
16828    pub fn SSKDF_digest(
16829        out_key: *mut u8,
16830        out_len: usize,
16831        digest: *const EVP_MD,
16832        secret: *const u8,
16833        secret_len: usize,
16834        info: *const u8,
16835        info_len: usize,
16836    ) -> ::std::os::raw::c_int;
16837}
16838extern "C" {
16839    #[link_name = "\u{1}aws_lc_fips_0_13_10_SSKDF_hmac"]
16840    pub fn SSKDF_hmac(
16841        out_key: *mut u8,
16842        out_len: usize,
16843        digest: *const EVP_MD,
16844        secret: *const u8,
16845        secret_len: usize,
16846        info: *const u8,
16847        info_len: usize,
16848        salt: *const u8,
16849        salt_len: usize,
16850    ) -> ::std::os::raw::c_int;
16851}
16852extern "C" {
16853    #[link_name = "\u{1}aws_lc_fips_0_13_10_KBKDF_ctr_hmac"]
16854    pub fn KBKDF_ctr_hmac(
16855        out_key: *mut u8,
16856        out_len: usize,
16857        digest: *const EVP_MD,
16858        secret: *const u8,
16859        secret_len: usize,
16860        info: *const u8,
16861        info_len: usize,
16862    ) -> ::std::os::raw::c_int;
16863}
16864extern "C" {
16865    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_hkdf_mode"]
16866    pub fn EVP_PKEY_CTX_hkdf_mode(
16867        ctx: *mut EVP_PKEY_CTX,
16868        mode: ::std::os::raw::c_int,
16869    ) -> ::std::os::raw::c_int;
16870}
16871extern "C" {
16872    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set_hkdf_md"]
16873    pub fn EVP_PKEY_CTX_set_hkdf_md(
16874        ctx: *mut EVP_PKEY_CTX,
16875        md: *const EVP_MD,
16876    ) -> ::std::os::raw::c_int;
16877}
16878extern "C" {
16879    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set1_hkdf_key"]
16880    pub fn EVP_PKEY_CTX_set1_hkdf_key(
16881        ctx: *mut EVP_PKEY_CTX,
16882        key: *const u8,
16883        key_len: usize,
16884    ) -> ::std::os::raw::c_int;
16885}
16886extern "C" {
16887    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_set1_hkdf_salt"]
16888    pub fn EVP_PKEY_CTX_set1_hkdf_salt(
16889        ctx: *mut EVP_PKEY_CTX,
16890        salt: *const u8,
16891        salt_len: usize,
16892    ) -> ::std::os::raw::c_int;
16893}
16894extern "C" {
16895    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_CTX_add1_hkdf_info"]
16896    pub fn EVP_PKEY_CTX_add1_hkdf_info(
16897        ctx: *mut EVP_PKEY_CTX,
16898        info: *const u8,
16899        info_len: usize,
16900    ) -> ::std::os::raw::c_int;
16901}
16902extern "C" {
16903    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD4_Init"]
16904    pub fn MD4_Init(md4: *mut MD4_CTX) -> ::std::os::raw::c_int;
16905}
16906extern "C" {
16907    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD4_Update"]
16908    pub fn MD4_Update(
16909        md4: *mut MD4_CTX,
16910        data: *const ::std::os::raw::c_void,
16911        len: usize,
16912    ) -> ::std::os::raw::c_int;
16913}
16914extern "C" {
16915    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD4_Final"]
16916    pub fn MD4_Final(out: *mut u8, md4: *mut MD4_CTX) -> ::std::os::raw::c_int;
16917}
16918extern "C" {
16919    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD4"]
16920    pub fn MD4(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
16921}
16922extern "C" {
16923    #[link_name = "\u{1}aws_lc_fips_0_13_10_MD4_Transform"]
16924    pub fn MD4_Transform(md4: *mut MD4_CTX, block: *const u8);
16925}
16926#[repr(C)]
16927#[derive(Debug, Copy, Clone, PartialEq, Eq)]
16928pub struct md4_state_st {
16929    pub h: [u32; 4usize],
16930    pub Nl: u32,
16931    pub Nh: u32,
16932    pub data: [u8; 64usize],
16933    pub num: ::std::os::raw::c_uint,
16934}
16935#[test]
16936fn bindgen_test_layout_md4_state_st() {
16937    const UNINIT: ::std::mem::MaybeUninit<md4_state_st> = ::std::mem::MaybeUninit::uninit();
16938    let ptr = UNINIT.as_ptr();
16939    assert_eq!(
16940        ::std::mem::size_of::<md4_state_st>(),
16941        92usize,
16942        "Size of md4_state_st"
16943    );
16944    assert_eq!(
16945        ::std::mem::align_of::<md4_state_st>(),
16946        4usize,
16947        "Alignment of md4_state_st"
16948    );
16949    assert_eq!(
16950        unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
16951        0usize,
16952        "Offset of field: md4_state_st::h"
16953    );
16954    assert_eq!(
16955        unsafe { ::std::ptr::addr_of!((*ptr).Nl) as usize - ptr as usize },
16956        16usize,
16957        "Offset of field: md4_state_st::Nl"
16958    );
16959    assert_eq!(
16960        unsafe { ::std::ptr::addr_of!((*ptr).Nh) as usize - ptr as usize },
16961        20usize,
16962        "Offset of field: md4_state_st::Nh"
16963    );
16964    assert_eq!(
16965        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
16966        24usize,
16967        "Offset of field: md4_state_st::data"
16968    );
16969    assert_eq!(
16970        unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
16971        88usize,
16972        "Offset of field: md4_state_st::num"
16973    );
16974}
16975impl Default for md4_state_st {
16976    fn default() -> Self {
16977        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
16978        unsafe {
16979            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
16980            s.assume_init()
16981        }
16982    }
16983}
16984#[repr(C)]
16985#[derive(Debug, Copy, Clone)]
16986pub struct stack_st_CRYPTO_BUFFER {
16987    _unused: [u8; 0],
16988}
16989#[repr(C)]
16990#[derive(Debug, Copy, Clone)]
16991pub struct stack_st_X509 {
16992    _unused: [u8; 0],
16993}
16994#[repr(C)]
16995#[derive(Debug, Copy, Clone)]
16996pub struct stack_st_X509_CRL {
16997    _unused: [u8; 0],
16998}
16999extern "C" {
17000    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_get_raw_certificates"]
17001    pub fn PKCS7_get_raw_certificates(
17002        out_certs: *mut stack_st_CRYPTO_BUFFER,
17003        cbs: *mut CBS,
17004        pool: *mut CRYPTO_BUFFER_POOL,
17005    ) -> ::std::os::raw::c_int;
17006}
17007extern "C" {
17008    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_get_certificates"]
17009    pub fn PKCS7_get_certificates(
17010        out_certs: *mut stack_st_X509,
17011        cbs: *mut CBS,
17012    ) -> ::std::os::raw::c_int;
17013}
17014extern "C" {
17015    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_bundle_raw_certificates"]
17016    pub fn PKCS7_bundle_raw_certificates(
17017        out: *mut CBB,
17018        certs: *const stack_st_CRYPTO_BUFFER,
17019    ) -> ::std::os::raw::c_int;
17020}
17021extern "C" {
17022    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_bundle_certificates"]
17023    pub fn PKCS7_bundle_certificates(
17024        out: *mut CBB,
17025        certs: *const stack_st_X509,
17026    ) -> ::std::os::raw::c_int;
17027}
17028extern "C" {
17029    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_get_CRLs"]
17030    pub fn PKCS7_get_CRLs(out_crls: *mut stack_st_X509_CRL, cbs: *mut CBS)
17031        -> ::std::os::raw::c_int;
17032}
17033extern "C" {
17034    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_bundle_CRLs"]
17035    pub fn PKCS7_bundle_CRLs(
17036        out: *mut CBB,
17037        crls: *const stack_st_X509_CRL,
17038    ) -> ::std::os::raw::c_int;
17039}
17040extern "C" {
17041    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_get_PEM_certificates"]
17042    pub fn PKCS7_get_PEM_certificates(
17043        out_certs: *mut stack_st_X509,
17044        pem_bio: *mut BIO,
17045    ) -> ::std::os::raw::c_int;
17046}
17047extern "C" {
17048    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_get_PEM_CRLs"]
17049    pub fn PKCS7_get_PEM_CRLs(
17050        out_crls: *mut stack_st_X509_CRL,
17051        pem_bio: *mut BIO,
17052    ) -> ::std::os::raw::c_int;
17053}
17054#[repr(C)]
17055#[derive(Copy, Clone)]
17056pub struct pkcs7_st {
17057    pub type_: *mut ASN1_OBJECT,
17058    pub d: pkcs7_st__bindgen_ty_1,
17059}
17060#[repr(C)]
17061#[derive(Copy, Clone)]
17062pub union pkcs7_st__bindgen_ty_1 {
17063    pub ptr: *mut ::std::os::raw::c_char,
17064    pub data: *mut ASN1_OCTET_STRING,
17065    pub sign: *mut PKCS7_SIGNED,
17066    pub enveloped: *mut PKCS7_ENVELOPE,
17067    pub signed_and_enveloped: *mut PKCS7_SIGN_ENVELOPE,
17068    pub digest: *mut PKCS7_DIGEST,
17069    pub encrypted: *mut PKCS7_ENCRYPT,
17070    pub other: *mut ASN1_TYPE,
17071}
17072#[test]
17073fn bindgen_test_layout_pkcs7_st__bindgen_ty_1() {
17074    const UNINIT: ::std::mem::MaybeUninit<pkcs7_st__bindgen_ty_1> =
17075        ::std::mem::MaybeUninit::uninit();
17076    let ptr = UNINIT.as_ptr();
17077    assert_eq!(
17078        ::std::mem::size_of::<pkcs7_st__bindgen_ty_1>(),
17079        8usize,
17080        "Size of pkcs7_st__bindgen_ty_1"
17081    );
17082    assert_eq!(
17083        ::std::mem::align_of::<pkcs7_st__bindgen_ty_1>(),
17084        8usize,
17085        "Alignment of pkcs7_st__bindgen_ty_1"
17086    );
17087    assert_eq!(
17088        unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
17089        0usize,
17090        "Offset of field: pkcs7_st__bindgen_ty_1::ptr"
17091    );
17092    assert_eq!(
17093        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
17094        0usize,
17095        "Offset of field: pkcs7_st__bindgen_ty_1::data"
17096    );
17097    assert_eq!(
17098        unsafe { ::std::ptr::addr_of!((*ptr).sign) as usize - ptr as usize },
17099        0usize,
17100        "Offset of field: pkcs7_st__bindgen_ty_1::sign"
17101    );
17102    assert_eq!(
17103        unsafe { ::std::ptr::addr_of!((*ptr).enveloped) as usize - ptr as usize },
17104        0usize,
17105        "Offset of field: pkcs7_st__bindgen_ty_1::enveloped"
17106    );
17107    assert_eq!(
17108        unsafe { ::std::ptr::addr_of!((*ptr).signed_and_enveloped) as usize - ptr as usize },
17109        0usize,
17110        "Offset of field: pkcs7_st__bindgen_ty_1::signed_and_enveloped"
17111    );
17112    assert_eq!(
17113        unsafe { ::std::ptr::addr_of!((*ptr).digest) as usize - ptr as usize },
17114        0usize,
17115        "Offset of field: pkcs7_st__bindgen_ty_1::digest"
17116    );
17117    assert_eq!(
17118        unsafe { ::std::ptr::addr_of!((*ptr).encrypted) as usize - ptr as usize },
17119        0usize,
17120        "Offset of field: pkcs7_st__bindgen_ty_1::encrypted"
17121    );
17122    assert_eq!(
17123        unsafe { ::std::ptr::addr_of!((*ptr).other) as usize - ptr as usize },
17124        0usize,
17125        "Offset of field: pkcs7_st__bindgen_ty_1::other"
17126    );
17127}
17128impl Default for pkcs7_st__bindgen_ty_1 {
17129    fn default() -> Self {
17130        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17131        unsafe {
17132            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17133            s.assume_init()
17134        }
17135    }
17136}
17137#[test]
17138fn bindgen_test_layout_pkcs7_st() {
17139    const UNINIT: ::std::mem::MaybeUninit<pkcs7_st> = ::std::mem::MaybeUninit::uninit();
17140    let ptr = UNINIT.as_ptr();
17141    assert_eq!(
17142        ::std::mem::size_of::<pkcs7_st>(),
17143        16usize,
17144        "Size of pkcs7_st"
17145    );
17146    assert_eq!(
17147        ::std::mem::align_of::<pkcs7_st>(),
17148        8usize,
17149        "Alignment of pkcs7_st"
17150    );
17151    assert_eq!(
17152        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
17153        0usize,
17154        "Offset of field: pkcs7_st::type_"
17155    );
17156    assert_eq!(
17157        unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize },
17158        8usize,
17159        "Offset of field: pkcs7_st::d"
17160    );
17161}
17162impl Default for pkcs7_st {
17163    fn default() -> Self {
17164        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17165        unsafe {
17166            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17167            s.assume_init()
17168        }
17169    }
17170}
17171#[repr(C)]
17172#[derive(Debug, Copy, Clone, PartialEq, Eq)]
17173pub struct pkcs7_signed_st {
17174    pub version: *mut ASN1_INTEGER,
17175    pub md_algs: *mut stack_st_X509_ALGOR,
17176    pub contents: *mut PKCS7,
17177    pub cert: *mut stack_st_X509,
17178    pub crl: *mut stack_st_X509_CRL,
17179    pub signer_info: *mut stack_st_PKCS7_SIGNER_INFO,
17180}
17181#[test]
17182fn bindgen_test_layout_pkcs7_signed_st() {
17183    const UNINIT: ::std::mem::MaybeUninit<pkcs7_signed_st> = ::std::mem::MaybeUninit::uninit();
17184    let ptr = UNINIT.as_ptr();
17185    assert_eq!(
17186        ::std::mem::size_of::<pkcs7_signed_st>(),
17187        48usize,
17188        "Size of pkcs7_signed_st"
17189    );
17190    assert_eq!(
17191        ::std::mem::align_of::<pkcs7_signed_st>(),
17192        8usize,
17193        "Alignment of pkcs7_signed_st"
17194    );
17195    assert_eq!(
17196        unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize },
17197        0usize,
17198        "Offset of field: pkcs7_signed_st::version"
17199    );
17200    assert_eq!(
17201        unsafe { ::std::ptr::addr_of!((*ptr).md_algs) as usize - ptr as usize },
17202        8usize,
17203        "Offset of field: pkcs7_signed_st::md_algs"
17204    );
17205    assert_eq!(
17206        unsafe { ::std::ptr::addr_of!((*ptr).contents) as usize - ptr as usize },
17207        16usize,
17208        "Offset of field: pkcs7_signed_st::contents"
17209    );
17210    assert_eq!(
17211        unsafe { ::std::ptr::addr_of!((*ptr).cert) as usize - ptr as usize },
17212        24usize,
17213        "Offset of field: pkcs7_signed_st::cert"
17214    );
17215    assert_eq!(
17216        unsafe { ::std::ptr::addr_of!((*ptr).crl) as usize - ptr as usize },
17217        32usize,
17218        "Offset of field: pkcs7_signed_st::crl"
17219    );
17220    assert_eq!(
17221        unsafe { ::std::ptr::addr_of!((*ptr).signer_info) as usize - ptr as usize },
17222        40usize,
17223        "Offset of field: pkcs7_signed_st::signer_info"
17224    );
17225}
17226impl Default for pkcs7_signed_st {
17227    fn default() -> Self {
17228        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
17229        unsafe {
17230            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
17231            s.assume_init()
17232        }
17233    }
17234}
17235extern "C" {
17236    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_new"]
17237    pub fn PKCS7_new() -> *mut PKCS7;
17238}
17239extern "C" {
17240    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_free"]
17241    pub fn PKCS7_free(a: *mut PKCS7);
17242}
17243extern "C" {
17244    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS7"]
17245    pub fn d2i_PKCS7(
17246        a: *mut *mut PKCS7,
17247        in_: *mut *const ::std::os::raw::c_uchar,
17248        len: ::std::os::raw::c_long,
17249    ) -> *mut PKCS7;
17250}
17251extern "C" {
17252    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS7"]
17253    pub fn i2d_PKCS7(
17254        a: *mut PKCS7,
17255        out: *mut *mut ::std::os::raw::c_uchar,
17256    ) -> ::std::os::raw::c_int;
17257}
17258extern "C" {
17259    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_it"]
17260    pub static PKCS7_it: ASN1_ITEM;
17261}
17262extern "C" {
17263    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_RECIP_INFO_new"]
17264    pub fn PKCS7_RECIP_INFO_new() -> *mut PKCS7_RECIP_INFO;
17265}
17266extern "C" {
17267    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_RECIP_INFO_free"]
17268    pub fn PKCS7_RECIP_INFO_free(a: *mut PKCS7_RECIP_INFO);
17269}
17270extern "C" {
17271    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS7_RECIP_INFO"]
17272    pub fn d2i_PKCS7_RECIP_INFO(
17273        a: *mut *mut PKCS7_RECIP_INFO,
17274        in_: *mut *const ::std::os::raw::c_uchar,
17275        len: ::std::os::raw::c_long,
17276    ) -> *mut PKCS7_RECIP_INFO;
17277}
17278extern "C" {
17279    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS7_RECIP_INFO"]
17280    pub fn i2d_PKCS7_RECIP_INFO(
17281        a: *mut PKCS7_RECIP_INFO,
17282        out: *mut *mut ::std::os::raw::c_uchar,
17283    ) -> ::std::os::raw::c_int;
17284}
17285extern "C" {
17286    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_RECIP_INFO_it"]
17287    pub static PKCS7_RECIP_INFO_it: ASN1_ITEM;
17288}
17289extern "C" {
17290    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_SIGNER_INFO_new"]
17291    pub fn PKCS7_SIGNER_INFO_new() -> *mut PKCS7_SIGNER_INFO;
17292}
17293extern "C" {
17294    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_SIGNER_INFO_free"]
17295    pub fn PKCS7_SIGNER_INFO_free(a: *mut PKCS7_SIGNER_INFO);
17296}
17297extern "C" {
17298    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS7_SIGNER_INFO"]
17299    pub fn d2i_PKCS7_SIGNER_INFO(
17300        a: *mut *mut PKCS7_SIGNER_INFO,
17301        in_: *mut *const ::std::os::raw::c_uchar,
17302        len: ::std::os::raw::c_long,
17303    ) -> *mut PKCS7_SIGNER_INFO;
17304}
17305extern "C" {
17306    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS7_SIGNER_INFO"]
17307    pub fn i2d_PKCS7_SIGNER_INFO(
17308        a: *mut PKCS7_SIGNER_INFO,
17309        out: *mut *mut ::std::os::raw::c_uchar,
17310    ) -> ::std::os::raw::c_int;
17311}
17312extern "C" {
17313    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_SIGNER_INFO_it"]
17314    pub static PKCS7_SIGNER_INFO_it: ASN1_ITEM;
17315}
17316#[repr(C)]
17317#[derive(Debug, Copy, Clone)]
17318pub struct stack_st_PKCS7_RECIP_INFO {
17319    _unused: [u8; 0],
17320}
17321pub type sk_PKCS7_RECIP_INFO_free_func =
17322    ::std::option::Option<unsafe extern "C" fn(arg1: *mut PKCS7_RECIP_INFO)>;
17323pub type sk_PKCS7_RECIP_INFO_copy_func = ::std::option::Option<
17324    unsafe extern "C" fn(arg1: *const PKCS7_RECIP_INFO) -> *mut PKCS7_RECIP_INFO,
17325>;
17326pub type sk_PKCS7_RECIP_INFO_cmp_func = ::std::option::Option<
17327    unsafe extern "C" fn(
17328        arg1: *const *const PKCS7_RECIP_INFO,
17329        arg2: *const *const PKCS7_RECIP_INFO,
17330    ) -> ::std::os::raw::c_int,
17331>;
17332pub type sk_PKCS7_RECIP_INFO_delete_if_func = ::std::option::Option<
17333    unsafe extern "C" fn(
17334        arg1: *mut PKCS7_RECIP_INFO,
17335        arg2: *mut ::std::os::raw::c_void,
17336    ) -> ::std::os::raw::c_int,
17337>;
17338#[repr(C)]
17339#[derive(Debug, Copy, Clone)]
17340pub struct stack_st_PKCS7_SIGNER_INFO {
17341    _unused: [u8; 0],
17342}
17343pub type sk_PKCS7_SIGNER_INFO_free_func =
17344    ::std::option::Option<unsafe extern "C" fn(arg1: *mut PKCS7_SIGNER_INFO)>;
17345pub type sk_PKCS7_SIGNER_INFO_copy_func = ::std::option::Option<
17346    unsafe extern "C" fn(arg1: *const PKCS7_SIGNER_INFO) -> *mut PKCS7_SIGNER_INFO,
17347>;
17348pub type sk_PKCS7_SIGNER_INFO_cmp_func = ::std::option::Option<
17349    unsafe extern "C" fn(
17350        arg1: *const *const PKCS7_SIGNER_INFO,
17351        arg2: *const *const PKCS7_SIGNER_INFO,
17352    ) -> ::std::os::raw::c_int,
17353>;
17354pub type sk_PKCS7_SIGNER_INFO_delete_if_func = ::std::option::Option<
17355    unsafe extern "C" fn(
17356        arg1: *mut PKCS7_SIGNER_INFO,
17357        arg2: *mut ::std::os::raw::c_void,
17358    ) -> ::std::os::raw::c_int,
17359>;
17360extern "C" {
17361    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_dup"]
17362    pub fn PKCS7_dup(p7: *mut PKCS7) -> *mut PKCS7;
17363}
17364extern "C" {
17365    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS7_bio"]
17366    pub fn d2i_PKCS7_bio(bio: *mut BIO, out: *mut *mut PKCS7) -> *mut PKCS7;
17367}
17368extern "C" {
17369    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS7_bio"]
17370    pub fn i2d_PKCS7_bio(bio: *mut BIO, p7: *const PKCS7) -> ::std::os::raw::c_int;
17371}
17372extern "C" {
17373    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_get_signed_attribute"]
17374    pub fn PKCS7_get_signed_attribute(
17375        si: *const PKCS7_SIGNER_INFO,
17376        nid: ::std::os::raw::c_int,
17377    ) -> *mut ASN1_TYPE;
17378}
17379extern "C" {
17380    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_get_signer_info"]
17381    pub fn PKCS7_get_signer_info(p7: *mut PKCS7) -> *mut stack_st_PKCS7_SIGNER_INFO;
17382}
17383extern "C" {
17384    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_RECIP_INFO_set"]
17385    pub fn PKCS7_RECIP_INFO_set(
17386        p7i: *mut PKCS7_RECIP_INFO,
17387        x509: *mut X509,
17388    ) -> ::std::os::raw::c_int;
17389}
17390extern "C" {
17391    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_SIGNER_INFO_set"]
17392    pub fn PKCS7_SIGNER_INFO_set(
17393        p7i: *mut PKCS7_SIGNER_INFO,
17394        x509: *mut X509,
17395        pkey: *mut EVP_PKEY,
17396        dgst: *const EVP_MD,
17397    ) -> ::std::os::raw::c_int;
17398}
17399extern "C" {
17400    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_add_certificate"]
17401    pub fn PKCS7_add_certificate(p7: *mut PKCS7, x509: *mut X509) -> ::std::os::raw::c_int;
17402}
17403extern "C" {
17404    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_add_crl"]
17405    pub fn PKCS7_add_crl(p7: *mut PKCS7, x509: *mut X509_CRL) -> ::std::os::raw::c_int;
17406}
17407extern "C" {
17408    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_add_recipient_info"]
17409    pub fn PKCS7_add_recipient_info(
17410        p7: *mut PKCS7,
17411        ri: *mut PKCS7_RECIP_INFO,
17412    ) -> ::std::os::raw::c_int;
17413}
17414extern "C" {
17415    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_add_signer"]
17416    pub fn PKCS7_add_signer(p7: *mut PKCS7, p7i: *mut PKCS7_SIGNER_INFO) -> ::std::os::raw::c_int;
17417}
17418extern "C" {
17419    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_content_new"]
17420    pub fn PKCS7_content_new(p7: *mut PKCS7, nid: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
17421}
17422extern "C" {
17423    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_set_cipher"]
17424    pub fn PKCS7_set_cipher(p7: *mut PKCS7, cipher: *const EVP_CIPHER) -> ::std::os::raw::c_int;
17425}
17426extern "C" {
17427    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_set_content"]
17428    pub fn PKCS7_set_content(p7: *mut PKCS7, p7_data: *mut PKCS7) -> ::std::os::raw::c_int;
17429}
17430extern "C" {
17431    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_set_type"]
17432    pub fn PKCS7_set_type(p7: *mut PKCS7, type_: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
17433}
17434extern "C" {
17435    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_RECIP_INFO_get0_alg"]
17436    pub fn PKCS7_RECIP_INFO_get0_alg(ri: *mut PKCS7_RECIP_INFO, penc: *mut *mut X509_ALGOR);
17437}
17438extern "C" {
17439    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_SIGNER_INFO_get0_algs"]
17440    pub fn PKCS7_SIGNER_INFO_get0_algs(
17441        si: *mut PKCS7_SIGNER_INFO,
17442        pk: *mut *mut EVP_PKEY,
17443        pdig: *mut *mut X509_ALGOR,
17444        psig: *mut *mut X509_ALGOR,
17445    );
17446}
17447extern "C" {
17448    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_type_is_data"]
17449    pub fn PKCS7_type_is_data(p7: *const PKCS7) -> ::std::os::raw::c_int;
17450}
17451extern "C" {
17452    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_type_is_digest"]
17453    pub fn PKCS7_type_is_digest(p7: *const PKCS7) -> ::std::os::raw::c_int;
17454}
17455extern "C" {
17456    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_type_is_encrypted"]
17457    pub fn PKCS7_type_is_encrypted(p7: *const PKCS7) -> ::std::os::raw::c_int;
17458}
17459extern "C" {
17460    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_type_is_enveloped"]
17461    pub fn PKCS7_type_is_enveloped(p7: *const PKCS7) -> ::std::os::raw::c_int;
17462}
17463extern "C" {
17464    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_type_is_signed"]
17465    pub fn PKCS7_type_is_signed(p7: *const PKCS7) -> ::std::os::raw::c_int;
17466}
17467extern "C" {
17468    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_type_is_signedAndEnveloped"]
17469    pub fn PKCS7_type_is_signedAndEnveloped(p7: *const PKCS7) -> ::std::os::raw::c_int;
17470}
17471extern "C" {
17472    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS7_sign"]
17473    pub fn PKCS7_sign(
17474        sign_cert: *mut X509,
17475        pkey: *mut EVP_PKEY,
17476        certs: *mut stack_st_X509,
17477        data: *mut BIO,
17478        flags: ::std::os::raw::c_int,
17479    ) -> *mut PKCS7;
17480}
17481pub type sk_CRYPTO_BUFFER_free_func =
17482    ::std::option::Option<unsafe extern "C" fn(arg1: *mut CRYPTO_BUFFER)>;
17483pub type sk_CRYPTO_BUFFER_copy_func =
17484    ::std::option::Option<unsafe extern "C" fn(arg1: *const CRYPTO_BUFFER) -> *mut CRYPTO_BUFFER>;
17485pub type sk_CRYPTO_BUFFER_cmp_func = ::std::option::Option<
17486    unsafe extern "C" fn(
17487        arg1: *const *const CRYPTO_BUFFER,
17488        arg2: *const *const CRYPTO_BUFFER,
17489    ) -> ::std::os::raw::c_int,
17490>;
17491pub type sk_CRYPTO_BUFFER_delete_if_func = ::std::option::Option<
17492    unsafe extern "C" fn(
17493        arg1: *mut CRYPTO_BUFFER,
17494        arg2: *mut ::std::os::raw::c_void,
17495    ) -> ::std::os::raw::c_int,
17496>;
17497extern "C" {
17498    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_POOL_new"]
17499    pub fn CRYPTO_BUFFER_POOL_new() -> *mut CRYPTO_BUFFER_POOL;
17500}
17501extern "C" {
17502    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_POOL_free"]
17503    pub fn CRYPTO_BUFFER_POOL_free(pool: *mut CRYPTO_BUFFER_POOL);
17504}
17505extern "C" {
17506    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_new"]
17507    pub fn CRYPTO_BUFFER_new(
17508        data: *const u8,
17509        len: usize,
17510        pool: *mut CRYPTO_BUFFER_POOL,
17511    ) -> *mut CRYPTO_BUFFER;
17512}
17513extern "C" {
17514    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_alloc"]
17515    pub fn CRYPTO_BUFFER_alloc(out_data: *mut *mut u8, len: usize) -> *mut CRYPTO_BUFFER;
17516}
17517extern "C" {
17518    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_new_from_CBS"]
17519    pub fn CRYPTO_BUFFER_new_from_CBS(
17520        cbs: *const CBS,
17521        pool: *mut CRYPTO_BUFFER_POOL,
17522    ) -> *mut CRYPTO_BUFFER;
17523}
17524extern "C" {
17525    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_new_from_static_data_unsafe"]
17526    pub fn CRYPTO_BUFFER_new_from_static_data_unsafe(
17527        data: *const u8,
17528        len: usize,
17529        pool: *mut CRYPTO_BUFFER_POOL,
17530    ) -> *mut CRYPTO_BUFFER;
17531}
17532extern "C" {
17533    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_free"]
17534    pub fn CRYPTO_BUFFER_free(buf: *mut CRYPTO_BUFFER);
17535}
17536extern "C" {
17537    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_up_ref"]
17538    pub fn CRYPTO_BUFFER_up_ref(buf: *mut CRYPTO_BUFFER) -> ::std::os::raw::c_int;
17539}
17540extern "C" {
17541    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_data"]
17542    pub fn CRYPTO_BUFFER_data(buf: *const CRYPTO_BUFFER) -> *const u8;
17543}
17544extern "C" {
17545    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_len"]
17546    pub fn CRYPTO_BUFFER_len(buf: *const CRYPTO_BUFFER) -> usize;
17547}
17548extern "C" {
17549    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_BUFFER_init_CBS"]
17550    pub fn CRYPTO_BUFFER_init_CBS(buf: *const CRYPTO_BUFFER, out: *mut CBS);
17551}
17552extern "C" {
17553    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new_public_key"]
17554    pub fn RSA_new_public_key(n: *const BIGNUM, e: *const BIGNUM) -> *mut RSA;
17555}
17556extern "C" {
17557    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new_private_key"]
17558    pub fn RSA_new_private_key(
17559        n: *const BIGNUM,
17560        e: *const BIGNUM,
17561        d: *const BIGNUM,
17562        p: *const BIGNUM,
17563        q: *const BIGNUM,
17564        dmp1: *const BIGNUM,
17565        dmq1: *const BIGNUM,
17566        iqmp: *const BIGNUM,
17567    ) -> *mut RSA;
17568}
17569extern "C" {
17570    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new"]
17571    pub fn RSA_new() -> *mut RSA;
17572}
17573extern "C" {
17574    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new_method"]
17575    pub fn RSA_new_method(engine: *const ENGINE) -> *mut RSA;
17576}
17577extern "C" {
17578    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_free"]
17579    pub fn RSA_free(rsa: *mut RSA);
17580}
17581extern "C" {
17582    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_up_ref"]
17583    pub fn RSA_up_ref(rsa: *mut RSA) -> ::std::os::raw::c_int;
17584}
17585extern "C" {
17586    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_bits"]
17587    pub fn RSA_bits(rsa: *const RSA) -> ::std::os::raw::c_uint;
17588}
17589extern "C" {
17590    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_n"]
17591    pub fn RSA_get0_n(rsa: *const RSA) -> *const BIGNUM;
17592}
17593extern "C" {
17594    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_e"]
17595    pub fn RSA_get0_e(rsa: *const RSA) -> *const BIGNUM;
17596}
17597extern "C" {
17598    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_d"]
17599    pub fn RSA_get0_d(rsa: *const RSA) -> *const BIGNUM;
17600}
17601extern "C" {
17602    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_p"]
17603    pub fn RSA_get0_p(rsa: *const RSA) -> *const BIGNUM;
17604}
17605extern "C" {
17606    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_q"]
17607    pub fn RSA_get0_q(rsa: *const RSA) -> *const BIGNUM;
17608}
17609extern "C" {
17610    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_dmp1"]
17611    pub fn RSA_get0_dmp1(rsa: *const RSA) -> *const BIGNUM;
17612}
17613extern "C" {
17614    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_dmq1"]
17615    pub fn RSA_get0_dmq1(rsa: *const RSA) -> *const BIGNUM;
17616}
17617extern "C" {
17618    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_iqmp"]
17619    pub fn RSA_get0_iqmp(rsa: *const RSA) -> *const BIGNUM;
17620}
17621extern "C" {
17622    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_key"]
17623    pub fn RSA_get0_key(
17624        rsa: *const RSA,
17625        out_n: *mut *const BIGNUM,
17626        out_e: *mut *const BIGNUM,
17627        out_d: *mut *const BIGNUM,
17628    );
17629}
17630extern "C" {
17631    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_factors"]
17632    pub fn RSA_get0_factors(rsa: *const RSA, out_p: *mut *const BIGNUM, out_q: *mut *const BIGNUM);
17633}
17634extern "C" {
17635    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_crt_params"]
17636    pub fn RSA_get0_crt_params(
17637        rsa: *const RSA,
17638        out_dmp1: *mut *const BIGNUM,
17639        out_dmq1: *mut *const BIGNUM,
17640        out_iqmp: *mut *const BIGNUM,
17641    );
17642}
17643extern "C" {
17644    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_set0_key"]
17645    pub fn RSA_set0_key(
17646        rsa: *mut RSA,
17647        n: *mut BIGNUM,
17648        e: *mut BIGNUM,
17649        d: *mut BIGNUM,
17650    ) -> ::std::os::raw::c_int;
17651}
17652extern "C" {
17653    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_set0_factors"]
17654    pub fn RSA_set0_factors(rsa: *mut RSA, p: *mut BIGNUM, q: *mut BIGNUM)
17655        -> ::std::os::raw::c_int;
17656}
17657extern "C" {
17658    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_set0_crt_params"]
17659    pub fn RSA_set0_crt_params(
17660        rsa: *mut RSA,
17661        dmp1: *mut BIGNUM,
17662        dmq1: *mut BIGNUM,
17663        iqmp: *mut BIGNUM,
17664    ) -> ::std::os::raw::c_int;
17665}
17666extern "C" {
17667    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get_default_method"]
17668    pub fn RSA_get_default_method() -> *const RSA_METHOD;
17669}
17670extern "C" {
17671    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_new"]
17672    pub fn RSA_meth_new(
17673        name: *const ::std::os::raw::c_char,
17674        flags: ::std::os::raw::c_int,
17675    ) -> *mut RSA_METHOD;
17676}
17677extern "C" {
17678    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_set_method"]
17679    pub fn RSA_set_method(rsa: *mut RSA, meth: *const RSA_METHOD) -> ::std::os::raw::c_int;
17680}
17681extern "C" {
17682    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get_method"]
17683    pub fn RSA_get_method(rsa: *const RSA) -> *const RSA_METHOD;
17684}
17685extern "C" {
17686    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_free"]
17687    pub fn RSA_meth_free(meth: *mut RSA_METHOD);
17688}
17689extern "C" {
17690    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_set_init"]
17691    pub fn RSA_meth_set_init(
17692        meth: *mut RSA_METHOD,
17693        init: ::std::option::Option<unsafe extern "C" fn(rsa: *mut RSA) -> ::std::os::raw::c_int>,
17694    ) -> ::std::os::raw::c_int;
17695}
17696extern "C" {
17697    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_set_finish"]
17698    pub fn RSA_meth_set_finish(
17699        meth: *mut RSA_METHOD,
17700        finish: ::std::option::Option<unsafe extern "C" fn(rsa: *mut RSA) -> ::std::os::raw::c_int>,
17701    ) -> ::std::os::raw::c_int;
17702}
17703extern "C" {
17704    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_set_priv_dec"]
17705    pub fn RSA_meth_set_priv_dec(
17706        meth: *mut RSA_METHOD,
17707        priv_dec: ::std::option::Option<
17708            unsafe extern "C" fn(
17709                max_out: ::std::os::raw::c_int,
17710                from: *const u8,
17711                to: *mut u8,
17712                rsa: *mut RSA,
17713                padding: ::std::os::raw::c_int,
17714            ) -> ::std::os::raw::c_int,
17715        >,
17716    ) -> ::std::os::raw::c_int;
17717}
17718extern "C" {
17719    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_set_priv_enc"]
17720    pub fn RSA_meth_set_priv_enc(
17721        meth: *mut RSA_METHOD,
17722        priv_enc: ::std::option::Option<
17723            unsafe extern "C" fn(
17724                max_out: ::std::os::raw::c_int,
17725                from: *const u8,
17726                to: *mut u8,
17727                rsa: *mut RSA,
17728                padding: ::std::os::raw::c_int,
17729            ) -> ::std::os::raw::c_int,
17730        >,
17731    ) -> ::std::os::raw::c_int;
17732}
17733extern "C" {
17734    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_set_pub_dec"]
17735    pub fn RSA_meth_set_pub_dec(
17736        meth: *mut RSA_METHOD,
17737        pub_dec: ::std::option::Option<
17738            unsafe extern "C" fn(
17739                max_out: ::std::os::raw::c_int,
17740                from: *const u8,
17741                to: *mut u8,
17742                rsa: *mut RSA,
17743                padding: ::std::os::raw::c_int,
17744            ) -> ::std::os::raw::c_int,
17745        >,
17746    ) -> ::std::os::raw::c_int;
17747}
17748extern "C" {
17749    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_set_pub_enc"]
17750    pub fn RSA_meth_set_pub_enc(
17751        meth: *mut RSA_METHOD,
17752        pub_enc: ::std::option::Option<
17753            unsafe extern "C" fn(
17754                max_out: ::std::os::raw::c_int,
17755                from: *const u8,
17756                to: *mut u8,
17757                rsa: *mut RSA,
17758                padding: ::std::os::raw::c_int,
17759            ) -> ::std::os::raw::c_int,
17760        >,
17761    ) -> ::std::os::raw::c_int;
17762}
17763extern "C" {
17764    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_set0_app_data"]
17765    pub fn RSA_meth_set0_app_data(
17766        meth: *mut RSA_METHOD,
17767        app_data: *mut ::std::os::raw::c_void,
17768    ) -> ::std::os::raw::c_int;
17769}
17770extern "C" {
17771    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_meth_set_sign"]
17772    pub fn RSA_meth_set_sign(
17773        meth: *mut RSA_METHOD,
17774        sign: ::std::option::Option<
17775            unsafe extern "C" fn(
17776                type_: ::std::os::raw::c_int,
17777                m: *const ::std::os::raw::c_uchar,
17778                m_length: ::std::os::raw::c_uint,
17779                sigret: *mut ::std::os::raw::c_uchar,
17780                siglen: *mut ::std::os::raw::c_uint,
17781                rsa: *const RSA,
17782            ) -> ::std::os::raw::c_int,
17783        >,
17784    ) -> ::std::os::raw::c_int;
17785}
17786extern "C" {
17787    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_generate_key_ex"]
17788    pub fn RSA_generate_key_ex(
17789        rsa: *mut RSA,
17790        bits: ::std::os::raw::c_int,
17791        e: *const BIGNUM,
17792        cb: *mut BN_GENCB,
17793    ) -> ::std::os::raw::c_int;
17794}
17795extern "C" {
17796    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_generate_key_fips"]
17797    pub fn RSA_generate_key_fips(
17798        rsa: *mut RSA,
17799        bits: ::std::os::raw::c_int,
17800        cb: *mut BN_GENCB,
17801    ) -> ::std::os::raw::c_int;
17802}
17803extern "C" {
17804    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_encrypt"]
17805    pub fn RSA_encrypt(
17806        rsa: *mut RSA,
17807        out_len: *mut usize,
17808        out: *mut u8,
17809        max_out: usize,
17810        in_: *const u8,
17811        in_len: usize,
17812        padding: ::std::os::raw::c_int,
17813    ) -> ::std::os::raw::c_int;
17814}
17815extern "C" {
17816    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_decrypt"]
17817    pub fn RSA_decrypt(
17818        rsa: *mut RSA,
17819        out_len: *mut usize,
17820        out: *mut u8,
17821        max_out: usize,
17822        in_: *const u8,
17823        in_len: usize,
17824        padding: ::std::os::raw::c_int,
17825    ) -> ::std::os::raw::c_int;
17826}
17827extern "C" {
17828    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_public_encrypt"]
17829    pub fn RSA_public_encrypt(
17830        flen: usize,
17831        from: *const u8,
17832        to: *mut u8,
17833        rsa: *mut RSA,
17834        padding: ::std::os::raw::c_int,
17835    ) -> ::std::os::raw::c_int;
17836}
17837extern "C" {
17838    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_private_decrypt"]
17839    pub fn RSA_private_decrypt(
17840        flen: usize,
17841        from: *const u8,
17842        to: *mut u8,
17843        rsa: *mut RSA,
17844        padding: ::std::os::raw::c_int,
17845    ) -> ::std::os::raw::c_int;
17846}
17847extern "C" {
17848    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_sign"]
17849    pub fn RSA_sign(
17850        hash_nid: ::std::os::raw::c_int,
17851        digest: *const u8,
17852        digest_len: usize,
17853        out: *mut u8,
17854        out_len: *mut ::std::os::raw::c_uint,
17855        rsa: *mut RSA,
17856    ) -> ::std::os::raw::c_int;
17857}
17858extern "C" {
17859    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_sign_pss_mgf1"]
17860    pub fn RSA_sign_pss_mgf1(
17861        rsa: *mut RSA,
17862        out_len: *mut usize,
17863        out: *mut u8,
17864        max_out: usize,
17865        digest: *const u8,
17866        digest_len: usize,
17867        md: *const EVP_MD,
17868        mgf1_md: *const EVP_MD,
17869        salt_len: ::std::os::raw::c_int,
17870    ) -> ::std::os::raw::c_int;
17871}
17872extern "C" {
17873    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_sign_raw"]
17874    pub fn RSA_sign_raw(
17875        rsa: *mut RSA,
17876        out_len: *mut usize,
17877        out: *mut u8,
17878        max_out: usize,
17879        in_: *const u8,
17880        in_len: usize,
17881        padding: ::std::os::raw::c_int,
17882    ) -> ::std::os::raw::c_int;
17883}
17884extern "C" {
17885    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_verify"]
17886    pub fn RSA_verify(
17887        hash_nid: ::std::os::raw::c_int,
17888        digest: *const u8,
17889        digest_len: usize,
17890        sig: *const u8,
17891        sig_len: usize,
17892        rsa: *mut RSA,
17893    ) -> ::std::os::raw::c_int;
17894}
17895extern "C" {
17896    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_verify_pss_mgf1"]
17897    pub fn RSA_verify_pss_mgf1(
17898        rsa: *mut RSA,
17899        digest: *const u8,
17900        digest_len: usize,
17901        md: *const EVP_MD,
17902        mgf1_md: *const EVP_MD,
17903        salt_len: ::std::os::raw::c_int,
17904        sig: *const u8,
17905        sig_len: usize,
17906    ) -> ::std::os::raw::c_int;
17907}
17908extern "C" {
17909    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_verify_raw"]
17910    pub fn RSA_verify_raw(
17911        rsa: *mut RSA,
17912        out_len: *mut usize,
17913        out: *mut u8,
17914        max_out: usize,
17915        in_: *const u8,
17916        in_len: usize,
17917        padding: ::std::os::raw::c_int,
17918    ) -> ::std::os::raw::c_int;
17919}
17920extern "C" {
17921    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_private_encrypt"]
17922    pub fn RSA_private_encrypt(
17923        flen: usize,
17924        from: *const u8,
17925        to: *mut u8,
17926        rsa: *mut RSA,
17927        padding: ::std::os::raw::c_int,
17928    ) -> ::std::os::raw::c_int;
17929}
17930extern "C" {
17931    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_public_decrypt"]
17932    pub fn RSA_public_decrypt(
17933        flen: usize,
17934        from: *const u8,
17935        to: *mut u8,
17936        rsa: *mut RSA,
17937        padding: ::std::os::raw::c_int,
17938    ) -> ::std::os::raw::c_int;
17939}
17940extern "C" {
17941    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_size"]
17942    pub fn RSA_size(rsa: *const RSA) -> ::std::os::raw::c_uint;
17943}
17944extern "C" {
17945    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_is_opaque"]
17946    pub fn RSA_is_opaque(rsa: *const RSA) -> ::std::os::raw::c_int;
17947}
17948extern "C" {
17949    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSAPublicKey_dup"]
17950    pub fn RSAPublicKey_dup(rsa: *const RSA) -> *mut RSA;
17951}
17952extern "C" {
17953    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSAPrivateKey_dup"]
17954    pub fn RSAPrivateKey_dup(rsa: *const RSA) -> *mut RSA;
17955}
17956extern "C" {
17957    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_check_key"]
17958    pub fn RSA_check_key(rsa: *const RSA) -> ::std::os::raw::c_int;
17959}
17960extern "C" {
17961    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_check_fips"]
17962    pub fn RSA_check_fips(key: *mut RSA) -> ::std::os::raw::c_int;
17963}
17964extern "C" {
17965    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_verify_PKCS1_PSS_mgf1"]
17966    pub fn RSA_verify_PKCS1_PSS_mgf1(
17967        rsa: *const RSA,
17968        mHash: *const u8,
17969        Hash: *const EVP_MD,
17970        mgf1Hash: *const EVP_MD,
17971        EM: *const u8,
17972        sLen: ::std::os::raw::c_int,
17973    ) -> ::std::os::raw::c_int;
17974}
17975extern "C" {
17976    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_padding_add_PKCS1_PSS_mgf1"]
17977    pub fn RSA_padding_add_PKCS1_PSS_mgf1(
17978        rsa: *const RSA,
17979        EM: *mut u8,
17980        mHash: *const u8,
17981        Hash: *const EVP_MD,
17982        mgf1Hash: *const EVP_MD,
17983        sLen: ::std::os::raw::c_int,
17984    ) -> ::std::os::raw::c_int;
17985}
17986extern "C" {
17987    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_padding_add_PKCS1_OAEP_mgf1"]
17988    pub fn RSA_padding_add_PKCS1_OAEP_mgf1(
17989        to: *mut u8,
17990        to_len: usize,
17991        from: *const u8,
17992        from_len: usize,
17993        param: *const u8,
17994        param_len: usize,
17995        md: *const EVP_MD,
17996        mgf1md: *const EVP_MD,
17997    ) -> ::std::os::raw::c_int;
17998}
17999extern "C" {
18000    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS1_MGF1"]
18001    pub fn PKCS1_MGF1(
18002        out: *mut u8,
18003        len: usize,
18004        seed: *const u8,
18005        seed_len: usize,
18006        md: *const EVP_MD,
18007    ) -> ::std::os::raw::c_int;
18008}
18009extern "C" {
18010    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_add_pkcs1_prefix"]
18011    pub fn RSA_add_pkcs1_prefix(
18012        out_msg: *mut *mut u8,
18013        out_msg_len: *mut usize,
18014        is_alloced: *mut ::std::os::raw::c_int,
18015        hash_nid: ::std::os::raw::c_int,
18016        digest: *const u8,
18017        digest_len: usize,
18018    ) -> ::std::os::raw::c_int;
18019}
18020extern "C" {
18021    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_parse_public_key"]
18022    pub fn RSA_parse_public_key(cbs: *mut CBS) -> *mut RSA;
18023}
18024extern "C" {
18025    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_public_key_from_bytes"]
18026    pub fn RSA_public_key_from_bytes(in_: *const u8, in_len: usize) -> *mut RSA;
18027}
18028extern "C" {
18029    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_marshal_public_key"]
18030    pub fn RSA_marshal_public_key(cbb: *mut CBB, rsa: *const RSA) -> ::std::os::raw::c_int;
18031}
18032extern "C" {
18033    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_public_key_to_bytes"]
18034    pub fn RSA_public_key_to_bytes(
18035        out_bytes: *mut *mut u8,
18036        out_len: *mut usize,
18037        rsa: *const RSA,
18038    ) -> ::std::os::raw::c_int;
18039}
18040extern "C" {
18041    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_parse_private_key"]
18042    pub fn RSA_parse_private_key(cbs: *mut CBS) -> *mut RSA;
18043}
18044extern "C" {
18045    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_private_key_from_bytes"]
18046    pub fn RSA_private_key_from_bytes(in_: *const u8, in_len: usize) -> *mut RSA;
18047}
18048extern "C" {
18049    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_marshal_private_key"]
18050    pub fn RSA_marshal_private_key(cbb: *mut CBB, rsa: *const RSA) -> ::std::os::raw::c_int;
18051}
18052extern "C" {
18053    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_private_key_to_bytes"]
18054    pub fn RSA_private_key_to_bytes(
18055        out_bytes: *mut *mut u8,
18056        out_len: *mut usize,
18057        rsa: *const RSA,
18058    ) -> ::std::os::raw::c_int;
18059}
18060extern "C" {
18061    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new_private_key_no_crt"]
18062    pub fn RSA_new_private_key_no_crt(
18063        n: *const BIGNUM,
18064        e: *const BIGNUM,
18065        d: *const BIGNUM,
18066    ) -> *mut RSA;
18067}
18068extern "C" {
18069    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new_private_key_no_e"]
18070    pub fn RSA_new_private_key_no_e(n: *const BIGNUM, d: *const BIGNUM) -> *mut RSA;
18071}
18072extern "C" {
18073    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new_public_key_large_e"]
18074    pub fn RSA_new_public_key_large_e(n: *const BIGNUM, e: *const BIGNUM) -> *mut RSA;
18075}
18076extern "C" {
18077    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new_private_key_large_e"]
18078    pub fn RSA_new_private_key_large_e(
18079        n: *const BIGNUM,
18080        e: *const BIGNUM,
18081        d: *const BIGNUM,
18082        p: *const BIGNUM,
18083        q: *const BIGNUM,
18084        dmp1: *const BIGNUM,
18085        dmq1: *const BIGNUM,
18086        iqmp: *const BIGNUM,
18087    ) -> *mut RSA;
18088}
18089extern "C" {
18090    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get_ex_new_index"]
18091    pub fn RSA_get_ex_new_index(
18092        argl: ::std::os::raw::c_long,
18093        argp: *mut ::std::os::raw::c_void,
18094        unused: *mut CRYPTO_EX_unused,
18095        dup_unused: CRYPTO_EX_dup,
18096        free_func: CRYPTO_EX_free,
18097    ) -> ::std::os::raw::c_int;
18098}
18099extern "C" {
18100    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_set_ex_data"]
18101    pub fn RSA_set_ex_data(
18102        rsa: *mut RSA,
18103        idx: ::std::os::raw::c_int,
18104        arg: *mut ::std::os::raw::c_void,
18105    ) -> ::std::os::raw::c_int;
18106}
18107extern "C" {
18108    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get_ex_data"]
18109    pub fn RSA_get_ex_data(
18110        rsa: *const RSA,
18111        idx: ::std::os::raw::c_int,
18112    ) -> *mut ::std::os::raw::c_void;
18113}
18114extern "C" {
18115    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_flags"]
18116    pub fn RSA_flags(rsa: *const RSA) -> ::std::os::raw::c_int;
18117}
18118extern "C" {
18119    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_set_flags"]
18120    pub fn RSA_set_flags(rsa: *mut RSA, flags: ::std::os::raw::c_int);
18121}
18122extern "C" {
18123    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_test_flags"]
18124    pub fn RSA_test_flags(rsa: *const RSA, flags: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
18125}
18126extern "C" {
18127    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_blinding_on"]
18128    pub fn RSA_blinding_on(rsa: *mut RSA, ctx: *mut BN_CTX) -> ::std::os::raw::c_int;
18129}
18130extern "C" {
18131    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_blinding_off_temp_for_accp_compatibility"]
18132    pub fn RSA_blinding_off_temp_for_accp_compatibility(rsa: *mut RSA);
18133}
18134extern "C" {
18135    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_pkey_ctx_ctrl"]
18136    pub fn RSA_pkey_ctx_ctrl(
18137        ctx: *mut EVP_PKEY_CTX,
18138        optype: ::std::os::raw::c_int,
18139        cmd: ::std::os::raw::c_int,
18140        p1: ::std::os::raw::c_int,
18141        p2: *mut ::std::os::raw::c_void,
18142    ) -> ::std::os::raw::c_int;
18143}
18144extern "C" {
18145    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_generate_key"]
18146    pub fn RSA_generate_key(
18147        bits: ::std::os::raw::c_int,
18148        e: u64,
18149        callback: *mut ::std::os::raw::c_void,
18150        cb_arg: *mut ::std::os::raw::c_void,
18151    ) -> *mut RSA;
18152}
18153extern "C" {
18154    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSAPublicKey"]
18155    pub fn d2i_RSAPublicKey(
18156        out: *mut *mut RSA,
18157        inp: *mut *const u8,
18158        len: ::std::os::raw::c_long,
18159    ) -> *mut RSA;
18160}
18161extern "C" {
18162    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSAPublicKey"]
18163    pub fn i2d_RSAPublicKey(in_: *const RSA, outp: *mut *mut u8) -> ::std::os::raw::c_int;
18164}
18165extern "C" {
18166    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSAPrivateKey"]
18167    pub fn d2i_RSAPrivateKey(
18168        out: *mut *mut RSA,
18169        inp: *mut *const u8,
18170        len: ::std::os::raw::c_long,
18171    ) -> *mut RSA;
18172}
18173extern "C" {
18174    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSAPrivateKey"]
18175    pub fn i2d_RSAPrivateKey(in_: *const RSA, outp: *mut *mut u8) -> ::std::os::raw::c_int;
18176}
18177extern "C" {
18178    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_padding_add_PKCS1_PSS"]
18179    pub fn RSA_padding_add_PKCS1_PSS(
18180        rsa: *const RSA,
18181        EM: *mut u8,
18182        mHash: *const u8,
18183        Hash: *const EVP_MD,
18184        sLen: ::std::os::raw::c_int,
18185    ) -> ::std::os::raw::c_int;
18186}
18187extern "C" {
18188    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_verify_PKCS1_PSS"]
18189    pub fn RSA_verify_PKCS1_PSS(
18190        rsa: *const RSA,
18191        mHash: *const u8,
18192        Hash: *const EVP_MD,
18193        EM: *const u8,
18194        sLen: ::std::os::raw::c_int,
18195    ) -> ::std::os::raw::c_int;
18196}
18197extern "C" {
18198    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_padding_add_PKCS1_OAEP"]
18199    pub fn RSA_padding_add_PKCS1_OAEP(
18200        to: *mut u8,
18201        to_len: usize,
18202        from: *const u8,
18203        from_len: usize,
18204        param: *const u8,
18205        param_len: usize,
18206    ) -> ::std::os::raw::c_int;
18207}
18208extern "C" {
18209    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_print"]
18210    pub fn RSA_print(
18211        bio: *mut BIO,
18212        rsa: *const RSA,
18213        indent: ::std::os::raw::c_int,
18214    ) -> ::std::os::raw::c_int;
18215}
18216extern "C" {
18217    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_print_fp"]
18218    pub fn RSA_print_fp(
18219        fp: *mut FILE,
18220        rsa: *const RSA,
18221        indent: ::std::os::raw::c_int,
18222    ) -> ::std::os::raw::c_int;
18223}
18224extern "C" {
18225    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_get0_pss_params"]
18226    pub fn RSA_get0_pss_params(rsa: *const RSA) -> *const RSA_PSS_PARAMS;
18227}
18228extern "C" {
18229    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_new_method_no_e"]
18230    pub fn RSA_new_method_no_e(engine: *const ENGINE, n: *const BIGNUM) -> *mut RSA;
18231}
18232pub type sk_X509_free_func = ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509)>;
18233pub type sk_X509_copy_func =
18234    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509) -> *mut X509>;
18235pub type sk_X509_cmp_func = ::std::option::Option<
18236    unsafe extern "C" fn(
18237        arg1: *const *const X509,
18238        arg2: *const *const X509,
18239    ) -> ::std::os::raw::c_int,
18240>;
18241pub type sk_X509_delete_if_func = ::std::option::Option<
18242    unsafe extern "C" fn(
18243        arg1: *mut X509,
18244        arg2: *mut ::std::os::raw::c_void,
18245    ) -> ::std::os::raw::c_int,
18246>;
18247extern "C" {
18248    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_it"]
18249    pub static X509_it: ASN1_ITEM;
18250}
18251extern "C" {
18252    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_up_ref"]
18253    pub fn X509_up_ref(x509: *mut X509) -> ::std::os::raw::c_int;
18254}
18255extern "C" {
18256    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_chain_up_ref"]
18257    pub fn X509_chain_up_ref(chain: *mut stack_st_X509) -> *mut stack_st_X509;
18258}
18259extern "C" {
18260    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_dup"]
18261    pub fn X509_dup(x509: *mut X509) -> *mut X509;
18262}
18263extern "C" {
18264    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_free"]
18265    pub fn X509_free(x509: *mut X509);
18266}
18267extern "C" {
18268    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509"]
18269    pub fn d2i_X509(
18270        out: *mut *mut X509,
18271        inp: *mut *const u8,
18272        len: ::std::os::raw::c_long,
18273    ) -> *mut X509;
18274}
18275extern "C" {
18276    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_parse_from_buffer"]
18277    pub fn X509_parse_from_buffer(buf: *mut CRYPTO_BUFFER) -> *mut X509;
18278}
18279extern "C" {
18280    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509"]
18281    pub fn i2d_X509(x509: *mut X509, outp: *mut *mut u8) -> ::std::os::raw::c_int;
18282}
18283extern "C" {
18284    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_version"]
18285    pub fn X509_get_version(x509: *const X509) -> ::std::os::raw::c_long;
18286}
18287extern "C" {
18288    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_serialNumber"]
18289    pub fn X509_get0_serialNumber(x509: *const X509) -> *const ASN1_INTEGER;
18290}
18291extern "C" {
18292    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_notBefore"]
18293    pub fn X509_get0_notBefore(x509: *const X509) -> *const ASN1_TIME;
18294}
18295extern "C" {
18296    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_notAfter"]
18297    pub fn X509_get0_notAfter(x509: *const X509) -> *const ASN1_TIME;
18298}
18299extern "C" {
18300    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_issuer_name"]
18301    pub fn X509_get_issuer_name(x509: *const X509) -> *mut X509_NAME;
18302}
18303extern "C" {
18304    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_subject_name"]
18305    pub fn X509_get_subject_name(x509: *const X509) -> *mut X509_NAME;
18306}
18307extern "C" {
18308    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_X509_PUBKEY"]
18309    pub fn X509_get_X509_PUBKEY(x509: *const X509) -> *mut X509_PUBKEY;
18310}
18311extern "C" {
18312    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_pubkey"]
18313    pub fn X509_get0_pubkey(x509: *const X509) -> *mut EVP_PKEY;
18314}
18315extern "C" {
18316    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_pubkey"]
18317    pub fn X509_get_pubkey(x509: *const X509) -> *mut EVP_PKEY;
18318}
18319extern "C" {
18320    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_pubkey_bitstr"]
18321    pub fn X509_get0_pubkey_bitstr(x509: *const X509) -> *mut ASN1_BIT_STRING;
18322}
18323extern "C" {
18324    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_private_key"]
18325    pub fn X509_check_private_key(
18326        x509: *const X509,
18327        pkey: *const EVP_PKEY,
18328    ) -> ::std::os::raw::c_int;
18329}
18330extern "C" {
18331    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_uids"]
18332    pub fn X509_get0_uids(
18333        x509: *const X509,
18334        out_issuer_uid: *mut *const ASN1_BIT_STRING,
18335        out_subject_uid: *mut *const ASN1_BIT_STRING,
18336    );
18337}
18338extern "C" {
18339    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_extension_flags"]
18340    pub fn X509_get_extension_flags(x509: *mut X509) -> u32;
18341}
18342extern "C" {
18343    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_pathlen"]
18344    pub fn X509_get_pathlen(x509: *mut X509) -> ::std::os::raw::c_long;
18345}
18346extern "C" {
18347    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_key_usage"]
18348    pub fn X509_get_key_usage(x509: *mut X509) -> u32;
18349}
18350extern "C" {
18351    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_extended_key_usage"]
18352    pub fn X509_get_extended_key_usage(x509: *mut X509) -> u32;
18353}
18354extern "C" {
18355    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_subject_key_id"]
18356    pub fn X509_get0_subject_key_id(x509: *mut X509) -> *const ASN1_OCTET_STRING;
18357}
18358extern "C" {
18359    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_authority_key_id"]
18360    pub fn X509_get0_authority_key_id(x509: *mut X509) -> *const ASN1_OCTET_STRING;
18361}
18362#[repr(C)]
18363#[derive(Debug, Copy, Clone)]
18364pub struct stack_st_GENERAL_NAME {
18365    _unused: [u8; 0],
18366}
18367pub type sk_GENERAL_NAME_free_func =
18368    ::std::option::Option<unsafe extern "C" fn(arg1: *mut GENERAL_NAME)>;
18369pub type sk_GENERAL_NAME_copy_func =
18370    ::std::option::Option<unsafe extern "C" fn(arg1: *const GENERAL_NAME) -> *mut GENERAL_NAME>;
18371pub type sk_GENERAL_NAME_cmp_func = ::std::option::Option<
18372    unsafe extern "C" fn(
18373        arg1: *const *const GENERAL_NAME,
18374        arg2: *const *const GENERAL_NAME,
18375    ) -> ::std::os::raw::c_int,
18376>;
18377pub type sk_GENERAL_NAME_delete_if_func = ::std::option::Option<
18378    unsafe extern "C" fn(
18379        arg1: *mut GENERAL_NAME,
18380        arg2: *mut ::std::os::raw::c_void,
18381    ) -> ::std::os::raw::c_int,
18382>;
18383pub type GENERAL_NAMES = stack_st_GENERAL_NAME;
18384extern "C" {
18385    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_authority_issuer"]
18386    pub fn X509_get0_authority_issuer(x509: *mut X509) -> *const GENERAL_NAMES;
18387}
18388extern "C" {
18389    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_authority_serial"]
18390    pub fn X509_get0_authority_serial(x509: *mut X509) -> *const ASN1_INTEGER;
18391}
18392#[repr(C)]
18393#[derive(Debug, Copy, Clone)]
18394pub struct stack_st_X509_EXTENSION {
18395    _unused: [u8; 0],
18396}
18397extern "C" {
18398    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_extensions"]
18399    pub fn X509_get0_extensions(x509: *const X509) -> *const stack_st_X509_EXTENSION;
18400}
18401extern "C" {
18402    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_ext_count"]
18403    pub fn X509_get_ext_count(x: *const X509) -> ::std::os::raw::c_int;
18404}
18405extern "C" {
18406    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_ext_by_NID"]
18407    pub fn X509_get_ext_by_NID(
18408        x: *const X509,
18409        nid: ::std::os::raw::c_int,
18410        lastpos: ::std::os::raw::c_int,
18411    ) -> ::std::os::raw::c_int;
18412}
18413extern "C" {
18414    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_ext_by_OBJ"]
18415    pub fn X509_get_ext_by_OBJ(
18416        x: *const X509,
18417        obj: *const ASN1_OBJECT,
18418        lastpos: ::std::os::raw::c_int,
18419    ) -> ::std::os::raw::c_int;
18420}
18421extern "C" {
18422    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_ext_by_critical"]
18423    pub fn X509_get_ext_by_critical(
18424        x: *const X509,
18425        crit: ::std::os::raw::c_int,
18426        lastpos: ::std::os::raw::c_int,
18427    ) -> ::std::os::raw::c_int;
18428}
18429extern "C" {
18430    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_ext"]
18431    pub fn X509_get_ext(x: *const X509, loc: ::std::os::raw::c_int) -> *mut X509_EXTENSION;
18432}
18433extern "C" {
18434    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_ext_d2i"]
18435    pub fn X509_get_ext_d2i(
18436        x509: *const X509,
18437        nid: ::std::os::raw::c_int,
18438        out_critical: *mut ::std::os::raw::c_int,
18439        out_idx: *mut ::std::os::raw::c_int,
18440    ) -> *mut ::std::os::raw::c_void;
18441}
18442extern "C" {
18443    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_tbs_sigalg"]
18444    pub fn X509_get0_tbs_sigalg(x509: *const X509) -> *const X509_ALGOR;
18445}
18446extern "C" {
18447    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_signature_info"]
18448    pub fn X509_get_signature_info(
18449        x509: *mut X509,
18450        digest_nid: *mut ::std::os::raw::c_int,
18451        pubkey_nid: *mut ::std::os::raw::c_int,
18452        sec_bits: *mut ::std::os::raw::c_int,
18453        flags: *mut u32,
18454    ) -> ::std::os::raw::c_int;
18455}
18456extern "C" {
18457    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get0_signature"]
18458    pub fn X509_get0_signature(
18459        out_sig: *mut *const ASN1_BIT_STRING,
18460        out_alg: *mut *const X509_ALGOR,
18461        x509: *const X509,
18462    );
18463}
18464extern "C" {
18465    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_signature_nid"]
18466    pub fn X509_get_signature_nid(x509: *const X509) -> ::std::os::raw::c_int;
18467}
18468extern "C" {
18469    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_tbs"]
18470    pub fn i2d_X509_tbs(
18471        x509: *mut X509,
18472        outp: *mut *mut ::std::os::raw::c_uchar,
18473    ) -> ::std::os::raw::c_int;
18474}
18475extern "C" {
18476    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_verify"]
18477    pub fn X509_verify(x509: *mut X509, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
18478}
18479extern "C" {
18480    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get1_email"]
18481    pub fn X509_get1_email(x509: *const X509) -> *mut stack_st_OPENSSL_STRING;
18482}
18483extern "C" {
18484    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get1_ocsp"]
18485    pub fn X509_get1_ocsp(x509: *const X509) -> *mut stack_st_OPENSSL_STRING;
18486}
18487extern "C" {
18488    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_email_free"]
18489    pub fn X509_email_free(sk: *mut stack_st_OPENSSL_STRING);
18490}
18491extern "C" {
18492    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_new"]
18493    pub fn X509_new() -> *mut X509;
18494}
18495extern "C" {
18496    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set_version"]
18497    pub fn X509_set_version(
18498        x509: *mut X509,
18499        version: ::std::os::raw::c_long,
18500    ) -> ::std::os::raw::c_int;
18501}
18502extern "C" {
18503    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set_serialNumber"]
18504    pub fn X509_set_serialNumber(
18505        x509: *mut X509,
18506        serial: *const ASN1_INTEGER,
18507    ) -> ::std::os::raw::c_int;
18508}
18509extern "C" {
18510    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set1_notBefore"]
18511    pub fn X509_set1_notBefore(x509: *mut X509, tm: *const ASN1_TIME) -> ::std::os::raw::c_int;
18512}
18513extern "C" {
18514    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set1_notAfter"]
18515    pub fn X509_set1_notAfter(x509: *mut X509, tm: *const ASN1_TIME) -> ::std::os::raw::c_int;
18516}
18517extern "C" {
18518    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_getm_notBefore"]
18519    pub fn X509_getm_notBefore(x509: *mut X509) -> *mut ASN1_TIME;
18520}
18521extern "C" {
18522    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_getm_notAfter"]
18523    pub fn X509_getm_notAfter(x: *mut X509) -> *mut ASN1_TIME;
18524}
18525extern "C" {
18526    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set_issuer_name"]
18527    pub fn X509_set_issuer_name(x509: *mut X509, name: *mut X509_NAME) -> ::std::os::raw::c_int;
18528}
18529extern "C" {
18530    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set_subject_name"]
18531    pub fn X509_set_subject_name(x509: *mut X509, name: *mut X509_NAME) -> ::std::os::raw::c_int;
18532}
18533extern "C" {
18534    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set_pubkey"]
18535    pub fn X509_set_pubkey(x509: *mut X509, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
18536}
18537extern "C" {
18538    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_delete_ext"]
18539    pub fn X509_delete_ext(x: *mut X509, loc: ::std::os::raw::c_int) -> *mut X509_EXTENSION;
18540}
18541extern "C" {
18542    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_add_ext"]
18543    pub fn X509_add_ext(
18544        x: *mut X509,
18545        ex: *const X509_EXTENSION,
18546        loc: ::std::os::raw::c_int,
18547    ) -> ::std::os::raw::c_int;
18548}
18549extern "C" {
18550    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_add1_ext_i2d"]
18551    pub fn X509_add1_ext_i2d(
18552        x: *mut X509,
18553        nid: ::std::os::raw::c_int,
18554        value: *mut ::std::os::raw::c_void,
18555        crit: ::std::os::raw::c_int,
18556        flags: ::std::os::raw::c_ulong,
18557    ) -> ::std::os::raw::c_int;
18558}
18559extern "C" {
18560    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_sign"]
18561    pub fn X509_sign(
18562        x509: *mut X509,
18563        pkey: *mut EVP_PKEY,
18564        md: *const EVP_MD,
18565    ) -> ::std::os::raw::c_int;
18566}
18567extern "C" {
18568    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_sign_ctx"]
18569    pub fn X509_sign_ctx(x509: *mut X509, ctx: *mut EVP_MD_CTX) -> ::std::os::raw::c_int;
18570}
18571extern "C" {
18572    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_re_X509_tbs"]
18573    pub fn i2d_re_X509_tbs(
18574        x509: *mut X509,
18575        outp: *mut *mut ::std::os::raw::c_uchar,
18576    ) -> ::std::os::raw::c_int;
18577}
18578extern "C" {
18579    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set1_signature_algo"]
18580    pub fn X509_set1_signature_algo(
18581        x509: *mut X509,
18582        algo: *const X509_ALGOR,
18583    ) -> ::std::os::raw::c_int;
18584}
18585extern "C" {
18586    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set1_signature_value"]
18587    pub fn X509_set1_signature_value(
18588        x509: *mut X509,
18589        sig: *const u8,
18590        sig_len: usize,
18591    ) -> ::std::os::raw::c_int;
18592}
18593extern "C" {
18594    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_AUX"]
18595    pub fn i2d_X509_AUX(x509: *mut X509, outp: *mut *mut u8) -> ::std::os::raw::c_int;
18596}
18597extern "C" {
18598    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_AUX"]
18599    pub fn d2i_X509_AUX(
18600        x509: *mut *mut X509,
18601        inp: *mut *const u8,
18602        length: ::std::os::raw::c_long,
18603    ) -> *mut X509;
18604}
18605extern "C" {
18606    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_alias_set1"]
18607    pub fn X509_alias_set1(
18608        x509: *mut X509,
18609        name: *const u8,
18610        len: ossl_ssize_t,
18611    ) -> ::std::os::raw::c_int;
18612}
18613extern "C" {
18614    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_keyid_set1"]
18615    pub fn X509_keyid_set1(
18616        x509: *mut X509,
18617        id: *const u8,
18618        len: ossl_ssize_t,
18619    ) -> ::std::os::raw::c_int;
18620}
18621extern "C" {
18622    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_alias_get0"]
18623    pub fn X509_alias_get0(x509: *const X509, out_len: *mut ::std::os::raw::c_int) -> *const u8;
18624}
18625extern "C" {
18626    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_keyid_get0"]
18627    pub fn X509_keyid_get0(x509: *const X509, out_len: *mut ::std::os::raw::c_int) -> *const u8;
18628}
18629extern "C" {
18630    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_add1_trust_object"]
18631    pub fn X509_add1_trust_object(
18632        x509: *mut X509,
18633        obj: *const ASN1_OBJECT,
18634    ) -> ::std::os::raw::c_int;
18635}
18636extern "C" {
18637    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_add1_reject_object"]
18638    pub fn X509_add1_reject_object(
18639        x509: *mut X509,
18640        obj: *const ASN1_OBJECT,
18641    ) -> ::std::os::raw::c_int;
18642}
18643extern "C" {
18644    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_trust_clear"]
18645    pub fn X509_trust_clear(x509: *mut X509);
18646}
18647extern "C" {
18648    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_reject_clear"]
18649    pub fn X509_reject_clear(x509: *mut X509);
18650}
18651pub type sk_X509_CRL_free_func = ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_CRL)>;
18652pub type sk_X509_CRL_copy_func =
18653    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_CRL) -> *mut X509_CRL>;
18654pub type sk_X509_CRL_cmp_func = ::std::option::Option<
18655    unsafe extern "C" fn(
18656        arg1: *const *const X509_CRL,
18657        arg2: *const *const X509_CRL,
18658    ) -> ::std::os::raw::c_int,
18659>;
18660pub type sk_X509_CRL_delete_if_func = ::std::option::Option<
18661    unsafe extern "C" fn(
18662        arg1: *mut X509_CRL,
18663        arg2: *mut ::std::os::raw::c_void,
18664    ) -> ::std::os::raw::c_int,
18665>;
18666#[repr(C)]
18667#[derive(Debug, Copy, Clone)]
18668pub struct stack_st_X509_REVOKED {
18669    _unused: [u8; 0],
18670}
18671pub type sk_X509_REVOKED_free_func =
18672    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_REVOKED)>;
18673pub type sk_X509_REVOKED_copy_func =
18674    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_REVOKED) -> *mut X509_REVOKED>;
18675pub type sk_X509_REVOKED_cmp_func = ::std::option::Option<
18676    unsafe extern "C" fn(
18677        arg1: *const *const X509_REVOKED,
18678        arg2: *const *const X509_REVOKED,
18679    ) -> ::std::os::raw::c_int,
18680>;
18681pub type sk_X509_REVOKED_delete_if_func = ::std::option::Option<
18682    unsafe extern "C" fn(
18683        arg1: *mut X509_REVOKED,
18684        arg2: *mut ::std::os::raw::c_void,
18685    ) -> ::std::os::raw::c_int,
18686>;
18687extern "C" {
18688    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_it"]
18689    pub static X509_CRL_it: ASN1_ITEM;
18690}
18691extern "C" {
18692    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_up_ref"]
18693    pub fn X509_CRL_up_ref(crl: *mut X509_CRL) -> ::std::os::raw::c_int;
18694}
18695extern "C" {
18696    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_dup"]
18697    pub fn X509_CRL_dup(crl: *mut X509_CRL) -> *mut X509_CRL;
18698}
18699extern "C" {
18700    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_free"]
18701    pub fn X509_CRL_free(crl: *mut X509_CRL);
18702}
18703extern "C" {
18704    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_CRL"]
18705    pub fn d2i_X509_CRL(
18706        out: *mut *mut X509_CRL,
18707        inp: *mut *const u8,
18708        len: ::std::os::raw::c_long,
18709    ) -> *mut X509_CRL;
18710}
18711extern "C" {
18712    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_CRL"]
18713    pub fn i2d_X509_CRL(crl: *mut X509_CRL, outp: *mut *mut u8) -> ::std::os::raw::c_int;
18714}
18715extern "C" {
18716    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_version"]
18717    pub fn X509_CRL_get_version(crl: *const X509_CRL) -> ::std::os::raw::c_long;
18718}
18719extern "C" {
18720    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get0_lastUpdate"]
18721    pub fn X509_CRL_get0_lastUpdate(crl: *const X509_CRL) -> *const ASN1_TIME;
18722}
18723extern "C" {
18724    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get0_nextUpdate"]
18725    pub fn X509_CRL_get0_nextUpdate(crl: *const X509_CRL) -> *const ASN1_TIME;
18726}
18727extern "C" {
18728    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_issuer"]
18729    pub fn X509_CRL_get_issuer(crl: *const X509_CRL) -> *mut X509_NAME;
18730}
18731extern "C" {
18732    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get0_by_serial"]
18733    pub fn X509_CRL_get0_by_serial(
18734        crl: *mut X509_CRL,
18735        out: *mut *mut X509_REVOKED,
18736        serial: *const ASN1_INTEGER,
18737    ) -> ::std::os::raw::c_int;
18738}
18739extern "C" {
18740    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get0_by_cert"]
18741    pub fn X509_CRL_get0_by_cert(
18742        crl: *mut X509_CRL,
18743        out: *mut *mut X509_REVOKED,
18744        x509: *mut X509,
18745    ) -> ::std::os::raw::c_int;
18746}
18747extern "C" {
18748    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_REVOKED"]
18749    pub fn X509_CRL_get_REVOKED(crl: *mut X509_CRL) -> *mut stack_st_X509_REVOKED;
18750}
18751extern "C" {
18752    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get0_extensions"]
18753    pub fn X509_CRL_get0_extensions(crl: *const X509_CRL) -> *const stack_st_X509_EXTENSION;
18754}
18755extern "C" {
18756    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_ext_count"]
18757    pub fn X509_CRL_get_ext_count(x: *const X509_CRL) -> ::std::os::raw::c_int;
18758}
18759extern "C" {
18760    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_ext_by_NID"]
18761    pub fn X509_CRL_get_ext_by_NID(
18762        x: *const X509_CRL,
18763        nid: ::std::os::raw::c_int,
18764        lastpos: ::std::os::raw::c_int,
18765    ) -> ::std::os::raw::c_int;
18766}
18767extern "C" {
18768    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_ext_by_OBJ"]
18769    pub fn X509_CRL_get_ext_by_OBJ(
18770        x: *const X509_CRL,
18771        obj: *const ASN1_OBJECT,
18772        lastpos: ::std::os::raw::c_int,
18773    ) -> ::std::os::raw::c_int;
18774}
18775extern "C" {
18776    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_ext_by_critical"]
18777    pub fn X509_CRL_get_ext_by_critical(
18778        x: *const X509_CRL,
18779        crit: ::std::os::raw::c_int,
18780        lastpos: ::std::os::raw::c_int,
18781    ) -> ::std::os::raw::c_int;
18782}
18783extern "C" {
18784    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_ext"]
18785    pub fn X509_CRL_get_ext(x: *const X509_CRL, loc: ::std::os::raw::c_int) -> *mut X509_EXTENSION;
18786}
18787extern "C" {
18788    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_ext_d2i"]
18789    pub fn X509_CRL_get_ext_d2i(
18790        crl: *const X509_CRL,
18791        nid: ::std::os::raw::c_int,
18792        out_critical: *mut ::std::os::raw::c_int,
18793        out_idx: *mut ::std::os::raw::c_int,
18794    ) -> *mut ::std::os::raw::c_void;
18795}
18796extern "C" {
18797    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get0_signature"]
18798    pub fn X509_CRL_get0_signature(
18799        crl: *const X509_CRL,
18800        out_sig: *mut *const ASN1_BIT_STRING,
18801        out_alg: *mut *const X509_ALGOR,
18802    );
18803}
18804extern "C" {
18805    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_signature_nid"]
18806    pub fn X509_CRL_get_signature_nid(crl: *const X509_CRL) -> ::std::os::raw::c_int;
18807}
18808extern "C" {
18809    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_CRL_tbs"]
18810    pub fn i2d_X509_CRL_tbs(
18811        crl: *mut X509_CRL,
18812        outp: *mut *mut ::std::os::raw::c_uchar,
18813    ) -> ::std::os::raw::c_int;
18814}
18815extern "C" {
18816    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_verify"]
18817    pub fn X509_CRL_verify(crl: *mut X509_CRL, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
18818}
18819extern "C" {
18820    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_new"]
18821    pub fn X509_CRL_new() -> *mut X509_CRL;
18822}
18823extern "C" {
18824    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_set_version"]
18825    pub fn X509_CRL_set_version(
18826        crl: *mut X509_CRL,
18827        version: ::std::os::raw::c_long,
18828    ) -> ::std::os::raw::c_int;
18829}
18830extern "C" {
18831    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_set_issuer_name"]
18832    pub fn X509_CRL_set_issuer_name(
18833        crl: *mut X509_CRL,
18834        name: *mut X509_NAME,
18835    ) -> ::std::os::raw::c_int;
18836}
18837extern "C" {
18838    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_set1_lastUpdate"]
18839    pub fn X509_CRL_set1_lastUpdate(
18840        crl: *mut X509_CRL,
18841        tm: *const ASN1_TIME,
18842    ) -> ::std::os::raw::c_int;
18843}
18844extern "C" {
18845    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_set1_nextUpdate"]
18846    pub fn X509_CRL_set1_nextUpdate(
18847        crl: *mut X509_CRL,
18848        tm: *const ASN1_TIME,
18849    ) -> ::std::os::raw::c_int;
18850}
18851extern "C" {
18852    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_add0_revoked"]
18853    pub fn X509_CRL_add0_revoked(
18854        crl: *mut X509_CRL,
18855        rev: *mut X509_REVOKED,
18856    ) -> ::std::os::raw::c_int;
18857}
18858extern "C" {
18859    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_sort"]
18860    pub fn X509_CRL_sort(crl: *mut X509_CRL) -> ::std::os::raw::c_int;
18861}
18862extern "C" {
18863    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_delete_ext"]
18864    pub fn X509_CRL_delete_ext(x: *mut X509_CRL, loc: ::std::os::raw::c_int)
18865        -> *mut X509_EXTENSION;
18866}
18867extern "C" {
18868    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_add_ext"]
18869    pub fn X509_CRL_add_ext(
18870        x: *mut X509_CRL,
18871        ex: *const X509_EXTENSION,
18872        loc: ::std::os::raw::c_int,
18873    ) -> ::std::os::raw::c_int;
18874}
18875extern "C" {
18876    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_add1_ext_i2d"]
18877    pub fn X509_CRL_add1_ext_i2d(
18878        x: *mut X509_CRL,
18879        nid: ::std::os::raw::c_int,
18880        value: *mut ::std::os::raw::c_void,
18881        crit: ::std::os::raw::c_int,
18882        flags: ::std::os::raw::c_ulong,
18883    ) -> ::std::os::raw::c_int;
18884}
18885extern "C" {
18886    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_sign"]
18887    pub fn X509_CRL_sign(
18888        crl: *mut X509_CRL,
18889        pkey: *mut EVP_PKEY,
18890        md: *const EVP_MD,
18891    ) -> ::std::os::raw::c_int;
18892}
18893extern "C" {
18894    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_sign_ctx"]
18895    pub fn X509_CRL_sign_ctx(crl: *mut X509_CRL, ctx: *mut EVP_MD_CTX) -> ::std::os::raw::c_int;
18896}
18897extern "C" {
18898    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_re_X509_CRL_tbs"]
18899    pub fn i2d_re_X509_CRL_tbs(
18900        crl: *mut X509_CRL,
18901        outp: *mut *mut ::std::os::raw::c_uchar,
18902    ) -> ::std::os::raw::c_int;
18903}
18904extern "C" {
18905    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_set1_signature_algo"]
18906    pub fn X509_CRL_set1_signature_algo(
18907        crl: *mut X509_CRL,
18908        algo: *const X509_ALGOR,
18909    ) -> ::std::os::raw::c_int;
18910}
18911extern "C" {
18912    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_set1_signature_value"]
18913    pub fn X509_CRL_set1_signature_value(
18914        crl: *mut X509_CRL,
18915        sig: *const u8,
18916        sig_len: usize,
18917    ) -> ::std::os::raw::c_int;
18918}
18919extern "C" {
18920    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_http_nbio"]
18921    pub fn X509_CRL_http_nbio(
18922        rctx: *mut OCSP_REQ_CTX,
18923        pcrl: *mut *mut X509_CRL,
18924    ) -> ::std::os::raw::c_int;
18925}
18926extern "C" {
18927    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_it"]
18928    pub static X509_REVOKED_it: ASN1_ITEM;
18929}
18930extern "C" {
18931    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_new"]
18932    pub fn X509_REVOKED_new() -> *mut X509_REVOKED;
18933}
18934extern "C" {
18935    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_free"]
18936    pub fn X509_REVOKED_free(rev: *mut X509_REVOKED);
18937}
18938extern "C" {
18939    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_REVOKED"]
18940    pub fn d2i_X509_REVOKED(
18941        out: *mut *mut X509_REVOKED,
18942        inp: *mut *const u8,
18943        len: ::std::os::raw::c_long,
18944    ) -> *mut X509_REVOKED;
18945}
18946extern "C" {
18947    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_REVOKED"]
18948    pub fn i2d_X509_REVOKED(alg: *const X509_REVOKED, outp: *mut *mut u8) -> ::std::os::raw::c_int;
18949}
18950extern "C" {
18951    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_dup"]
18952    pub fn X509_REVOKED_dup(rev: *const X509_REVOKED) -> *mut X509_REVOKED;
18953}
18954extern "C" {
18955    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get0_serialNumber"]
18956    pub fn X509_REVOKED_get0_serialNumber(revoked: *const X509_REVOKED) -> *const ASN1_INTEGER;
18957}
18958extern "C" {
18959    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_set_serialNumber"]
18960    pub fn X509_REVOKED_set_serialNumber(
18961        revoked: *mut X509_REVOKED,
18962        serial: *const ASN1_INTEGER,
18963    ) -> ::std::os::raw::c_int;
18964}
18965extern "C" {
18966    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get0_revocationDate"]
18967    pub fn X509_REVOKED_get0_revocationDate(revoked: *const X509_REVOKED) -> *const ASN1_TIME;
18968}
18969extern "C" {
18970    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_set_revocationDate"]
18971    pub fn X509_REVOKED_set_revocationDate(
18972        revoked: *mut X509_REVOKED,
18973        tm: *const ASN1_TIME,
18974    ) -> ::std::os::raw::c_int;
18975}
18976extern "C" {
18977    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get0_extensions"]
18978    pub fn X509_REVOKED_get0_extensions(r: *const X509_REVOKED) -> *const stack_st_X509_EXTENSION;
18979}
18980extern "C" {
18981    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get_ext_count"]
18982    pub fn X509_REVOKED_get_ext_count(x: *const X509_REVOKED) -> ::std::os::raw::c_int;
18983}
18984extern "C" {
18985    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get_ext_by_NID"]
18986    pub fn X509_REVOKED_get_ext_by_NID(
18987        x: *const X509_REVOKED,
18988        nid: ::std::os::raw::c_int,
18989        lastpos: ::std::os::raw::c_int,
18990    ) -> ::std::os::raw::c_int;
18991}
18992extern "C" {
18993    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get_ext_by_OBJ"]
18994    pub fn X509_REVOKED_get_ext_by_OBJ(
18995        x: *const X509_REVOKED,
18996        obj: *const ASN1_OBJECT,
18997        lastpos: ::std::os::raw::c_int,
18998    ) -> ::std::os::raw::c_int;
18999}
19000extern "C" {
19001    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get_ext_by_critical"]
19002    pub fn X509_REVOKED_get_ext_by_critical(
19003        x: *const X509_REVOKED,
19004        crit: ::std::os::raw::c_int,
19005        lastpos: ::std::os::raw::c_int,
19006    ) -> ::std::os::raw::c_int;
19007}
19008extern "C" {
19009    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get_ext"]
19010    pub fn X509_REVOKED_get_ext(
19011        x: *const X509_REVOKED,
19012        loc: ::std::os::raw::c_int,
19013    ) -> *mut X509_EXTENSION;
19014}
19015extern "C" {
19016    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_delete_ext"]
19017    pub fn X509_REVOKED_delete_ext(
19018        x: *mut X509_REVOKED,
19019        loc: ::std::os::raw::c_int,
19020    ) -> *mut X509_EXTENSION;
19021}
19022extern "C" {
19023    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_add_ext"]
19024    pub fn X509_REVOKED_add_ext(
19025        x: *mut X509_REVOKED,
19026        ex: *const X509_EXTENSION,
19027        loc: ::std::os::raw::c_int,
19028    ) -> ::std::os::raw::c_int;
19029}
19030extern "C" {
19031    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_get_ext_d2i"]
19032    pub fn X509_REVOKED_get_ext_d2i(
19033        revoked: *const X509_REVOKED,
19034        nid: ::std::os::raw::c_int,
19035        out_critical: *mut ::std::os::raw::c_int,
19036        out_idx: *mut ::std::os::raw::c_int,
19037    ) -> *mut ::std::os::raw::c_void;
19038}
19039extern "C" {
19040    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REVOKED_add1_ext_i2d"]
19041    pub fn X509_REVOKED_add1_ext_i2d(
19042        x: *mut X509_REVOKED,
19043        nid: ::std::os::raw::c_int,
19044        value: *mut ::std::os::raw::c_void,
19045        crit: ::std::os::raw::c_int,
19046        flags: ::std::os::raw::c_ulong,
19047    ) -> ::std::os::raw::c_int;
19048}
19049extern "C" {
19050    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_it"]
19051    pub static X509_REQ_it: ASN1_ITEM;
19052}
19053extern "C" {
19054    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_dup"]
19055    pub fn X509_REQ_dup(req: *mut X509_REQ) -> *mut X509_REQ;
19056}
19057extern "C" {
19058    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_free"]
19059    pub fn X509_REQ_free(req: *mut X509_REQ);
19060}
19061extern "C" {
19062    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_REQ"]
19063    pub fn d2i_X509_REQ(
19064        out: *mut *mut X509_REQ,
19065        inp: *mut *const u8,
19066        len: ::std::os::raw::c_long,
19067    ) -> *mut X509_REQ;
19068}
19069extern "C" {
19070    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_REQ"]
19071    pub fn i2d_X509_REQ(req: *mut X509_REQ, outp: *mut *mut u8) -> ::std::os::raw::c_int;
19072}
19073extern "C" {
19074    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_version"]
19075    pub fn X509_REQ_get_version(req: *const X509_REQ) -> ::std::os::raw::c_long;
19076}
19077extern "C" {
19078    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_subject_name"]
19079    pub fn X509_REQ_get_subject_name(req: *const X509_REQ) -> *mut X509_NAME;
19080}
19081extern "C" {
19082    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get0_pubkey"]
19083    pub fn X509_REQ_get0_pubkey(req: *const X509_REQ) -> *mut EVP_PKEY;
19084}
19085extern "C" {
19086    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_pubkey"]
19087    pub fn X509_REQ_get_pubkey(req: *const X509_REQ) -> *mut EVP_PKEY;
19088}
19089extern "C" {
19090    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_check_private_key"]
19091    pub fn X509_REQ_check_private_key(
19092        req: *const X509_REQ,
19093        pkey: *const EVP_PKEY,
19094    ) -> ::std::os::raw::c_int;
19095}
19096extern "C" {
19097    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_attr_count"]
19098    pub fn X509_REQ_get_attr_count(req: *const X509_REQ) -> ::std::os::raw::c_int;
19099}
19100extern "C" {
19101    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_attr"]
19102    pub fn X509_REQ_get_attr(
19103        req: *const X509_REQ,
19104        loc: ::std::os::raw::c_int,
19105    ) -> *mut X509_ATTRIBUTE;
19106}
19107extern "C" {
19108    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_attr_by_NID"]
19109    pub fn X509_REQ_get_attr_by_NID(
19110        req: *const X509_REQ,
19111        nid: ::std::os::raw::c_int,
19112        lastpos: ::std::os::raw::c_int,
19113    ) -> ::std::os::raw::c_int;
19114}
19115extern "C" {
19116    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_attr_by_OBJ"]
19117    pub fn X509_REQ_get_attr_by_OBJ(
19118        req: *const X509_REQ,
19119        obj: *const ASN1_OBJECT,
19120        lastpos: ::std::os::raw::c_int,
19121    ) -> ::std::os::raw::c_int;
19122}
19123extern "C" {
19124    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_extension_nid"]
19125    pub fn X509_REQ_extension_nid(nid: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
19126}
19127extern "C" {
19128    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_extensions"]
19129    pub fn X509_REQ_get_extensions(req: *const X509_REQ) -> *mut stack_st_X509_EXTENSION;
19130}
19131extern "C" {
19132    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get0_signature"]
19133    pub fn X509_REQ_get0_signature(
19134        req: *const X509_REQ,
19135        out_sig: *mut *const ASN1_BIT_STRING,
19136        out_alg: *mut *const X509_ALGOR,
19137    );
19138}
19139extern "C" {
19140    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get_signature_nid"]
19141    pub fn X509_REQ_get_signature_nid(req: *const X509_REQ) -> ::std::os::raw::c_int;
19142}
19143extern "C" {
19144    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_verify"]
19145    pub fn X509_REQ_verify(req: *mut X509_REQ, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
19146}
19147extern "C" {
19148    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_get1_email"]
19149    pub fn X509_REQ_get1_email(req: *const X509_REQ) -> *mut stack_st_OPENSSL_STRING;
19150}
19151extern "C" {
19152    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_new"]
19153    pub fn X509_REQ_new() -> *mut X509_REQ;
19154}
19155extern "C" {
19156    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_set_version"]
19157    pub fn X509_REQ_set_version(
19158        req: *mut X509_REQ,
19159        version: ::std::os::raw::c_long,
19160    ) -> ::std::os::raw::c_int;
19161}
19162extern "C" {
19163    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_set_subject_name"]
19164    pub fn X509_REQ_set_subject_name(
19165        req: *mut X509_REQ,
19166        name: *mut X509_NAME,
19167    ) -> ::std::os::raw::c_int;
19168}
19169extern "C" {
19170    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_set_pubkey"]
19171    pub fn X509_REQ_set_pubkey(req: *mut X509_REQ, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
19172}
19173extern "C" {
19174    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_delete_attr"]
19175    pub fn X509_REQ_delete_attr(
19176        req: *mut X509_REQ,
19177        loc: ::std::os::raw::c_int,
19178    ) -> *mut X509_ATTRIBUTE;
19179}
19180extern "C" {
19181    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_add1_attr"]
19182    pub fn X509_REQ_add1_attr(
19183        req: *mut X509_REQ,
19184        attr: *const X509_ATTRIBUTE,
19185    ) -> ::std::os::raw::c_int;
19186}
19187extern "C" {
19188    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_add1_attr_by_OBJ"]
19189    pub fn X509_REQ_add1_attr_by_OBJ(
19190        req: *mut X509_REQ,
19191        obj: *const ASN1_OBJECT,
19192        attrtype: ::std::os::raw::c_int,
19193        data: *const ::std::os::raw::c_uchar,
19194        len: ::std::os::raw::c_int,
19195    ) -> ::std::os::raw::c_int;
19196}
19197extern "C" {
19198    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_add1_attr_by_NID"]
19199    pub fn X509_REQ_add1_attr_by_NID(
19200        req: *mut X509_REQ,
19201        nid: ::std::os::raw::c_int,
19202        attrtype: ::std::os::raw::c_int,
19203        data: *const ::std::os::raw::c_uchar,
19204        len: ::std::os::raw::c_int,
19205    ) -> ::std::os::raw::c_int;
19206}
19207extern "C" {
19208    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_add1_attr_by_txt"]
19209    pub fn X509_REQ_add1_attr_by_txt(
19210        req: *mut X509_REQ,
19211        attrname: *const ::std::os::raw::c_char,
19212        attrtype: ::std::os::raw::c_int,
19213        data: *const ::std::os::raw::c_uchar,
19214        len: ::std::os::raw::c_int,
19215    ) -> ::std::os::raw::c_int;
19216}
19217extern "C" {
19218    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_add_extensions_nid"]
19219    pub fn X509_REQ_add_extensions_nid(
19220        req: *mut X509_REQ,
19221        exts: *const stack_st_X509_EXTENSION,
19222        nid: ::std::os::raw::c_int,
19223    ) -> ::std::os::raw::c_int;
19224}
19225extern "C" {
19226    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_add_extensions"]
19227    pub fn X509_REQ_add_extensions(
19228        req: *mut X509_REQ,
19229        exts: *const stack_st_X509_EXTENSION,
19230    ) -> ::std::os::raw::c_int;
19231}
19232extern "C" {
19233    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_sign"]
19234    pub fn X509_REQ_sign(
19235        req: *mut X509_REQ,
19236        pkey: *mut EVP_PKEY,
19237        md: *const EVP_MD,
19238    ) -> ::std::os::raw::c_int;
19239}
19240extern "C" {
19241    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_sign_ctx"]
19242    pub fn X509_REQ_sign_ctx(req: *mut X509_REQ, ctx: *mut EVP_MD_CTX) -> ::std::os::raw::c_int;
19243}
19244extern "C" {
19245    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_re_X509_REQ_tbs"]
19246    pub fn i2d_re_X509_REQ_tbs(req: *mut X509_REQ, outp: *mut *mut u8) -> ::std::os::raw::c_int;
19247}
19248extern "C" {
19249    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_set1_signature_algo"]
19250    pub fn X509_REQ_set1_signature_algo(
19251        req: *mut X509_REQ,
19252        algo: *const X509_ALGOR,
19253    ) -> ::std::os::raw::c_int;
19254}
19255extern "C" {
19256    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_set1_signature_value"]
19257    pub fn X509_REQ_set1_signature_value(
19258        req: *mut X509_REQ,
19259        sig: *const u8,
19260        sig_len: usize,
19261    ) -> ::std::os::raw::c_int;
19262}
19263#[repr(C)]
19264#[derive(Debug, Copy, Clone)]
19265pub struct stack_st_X509_NAME_ENTRY {
19266    _unused: [u8; 0],
19267}
19268pub type sk_X509_NAME_ENTRY_free_func =
19269    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_NAME_ENTRY)>;
19270pub type sk_X509_NAME_ENTRY_copy_func = ::std::option::Option<
19271    unsafe extern "C" fn(arg1: *const X509_NAME_ENTRY) -> *mut X509_NAME_ENTRY,
19272>;
19273pub type sk_X509_NAME_ENTRY_cmp_func = ::std::option::Option<
19274    unsafe extern "C" fn(
19275        arg1: *const *const X509_NAME_ENTRY,
19276        arg2: *const *const X509_NAME_ENTRY,
19277    ) -> ::std::os::raw::c_int,
19278>;
19279pub type sk_X509_NAME_ENTRY_delete_if_func = ::std::option::Option<
19280    unsafe extern "C" fn(
19281        arg1: *mut X509_NAME_ENTRY,
19282        arg2: *mut ::std::os::raw::c_void,
19283    ) -> ::std::os::raw::c_int,
19284>;
19285#[repr(C)]
19286#[derive(Debug, Copy, Clone)]
19287pub struct stack_st_X509_NAME {
19288    _unused: [u8; 0],
19289}
19290pub type sk_X509_NAME_free_func = ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_NAME)>;
19291pub type sk_X509_NAME_copy_func =
19292    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_NAME) -> *mut X509_NAME>;
19293pub type sk_X509_NAME_cmp_func = ::std::option::Option<
19294    unsafe extern "C" fn(
19295        arg1: *const *const X509_NAME,
19296        arg2: *const *const X509_NAME,
19297    ) -> ::std::os::raw::c_int,
19298>;
19299pub type sk_X509_NAME_delete_if_func = ::std::option::Option<
19300    unsafe extern "C" fn(
19301        arg1: *mut X509_NAME,
19302        arg2: *mut ::std::os::raw::c_void,
19303    ) -> ::std::os::raw::c_int,
19304>;
19305extern "C" {
19306    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_it"]
19307    pub static X509_NAME_it: ASN1_ITEM;
19308}
19309extern "C" {
19310    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_new"]
19311    pub fn X509_NAME_new() -> *mut X509_NAME;
19312}
19313extern "C" {
19314    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_free"]
19315    pub fn X509_NAME_free(name: *mut X509_NAME);
19316}
19317extern "C" {
19318    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_NAME"]
19319    pub fn d2i_X509_NAME(
19320        out: *mut *mut X509_NAME,
19321        inp: *mut *const u8,
19322        len: ::std::os::raw::c_long,
19323    ) -> *mut X509_NAME;
19324}
19325extern "C" {
19326    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_NAME"]
19327    pub fn i2d_X509_NAME(in_: *mut X509_NAME, outp: *mut *mut u8) -> ::std::os::raw::c_int;
19328}
19329extern "C" {
19330    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_dup"]
19331    pub fn X509_NAME_dup(name: *mut X509_NAME) -> *mut X509_NAME;
19332}
19333extern "C" {
19334    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_cmp"]
19335    pub fn X509_NAME_cmp(a: *const X509_NAME, b: *const X509_NAME) -> ::std::os::raw::c_int;
19336}
19337extern "C" {
19338    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_get0_der"]
19339    pub fn X509_NAME_get0_der(
19340        name: *mut X509_NAME,
19341        out_der: *mut *const u8,
19342        out_der_len: *mut usize,
19343    ) -> ::std::os::raw::c_int;
19344}
19345extern "C" {
19346    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_set"]
19347    pub fn X509_NAME_set(xn: *mut *mut X509_NAME, name: *mut X509_NAME) -> ::std::os::raw::c_int;
19348}
19349extern "C" {
19350    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_entry_count"]
19351    pub fn X509_NAME_entry_count(name: *const X509_NAME) -> ::std::os::raw::c_int;
19352}
19353extern "C" {
19354    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_get_index_by_NID"]
19355    pub fn X509_NAME_get_index_by_NID(
19356        name: *const X509_NAME,
19357        nid: ::std::os::raw::c_int,
19358        lastpos: ::std::os::raw::c_int,
19359    ) -> ::std::os::raw::c_int;
19360}
19361extern "C" {
19362    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_get_index_by_OBJ"]
19363    pub fn X509_NAME_get_index_by_OBJ(
19364        name: *const X509_NAME,
19365        obj: *const ASN1_OBJECT,
19366        lastpos: ::std::os::raw::c_int,
19367    ) -> ::std::os::raw::c_int;
19368}
19369extern "C" {
19370    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_get_entry"]
19371    pub fn X509_NAME_get_entry(
19372        name: *const X509_NAME,
19373        loc: ::std::os::raw::c_int,
19374    ) -> *mut X509_NAME_ENTRY;
19375}
19376extern "C" {
19377    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_delete_entry"]
19378    pub fn X509_NAME_delete_entry(
19379        name: *mut X509_NAME,
19380        loc: ::std::os::raw::c_int,
19381    ) -> *mut X509_NAME_ENTRY;
19382}
19383extern "C" {
19384    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_add_entry"]
19385    pub fn X509_NAME_add_entry(
19386        name: *mut X509_NAME,
19387        entry: *const X509_NAME_ENTRY,
19388        loc: ::std::os::raw::c_int,
19389        set: ::std::os::raw::c_int,
19390    ) -> ::std::os::raw::c_int;
19391}
19392extern "C" {
19393    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_add_entry_by_OBJ"]
19394    pub fn X509_NAME_add_entry_by_OBJ(
19395        name: *mut X509_NAME,
19396        obj: *const ASN1_OBJECT,
19397        type_: ::std::os::raw::c_int,
19398        bytes: *const u8,
19399        len: ossl_ssize_t,
19400        loc: ::std::os::raw::c_int,
19401        set: ::std::os::raw::c_int,
19402    ) -> ::std::os::raw::c_int;
19403}
19404extern "C" {
19405    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_add_entry_by_NID"]
19406    pub fn X509_NAME_add_entry_by_NID(
19407        name: *mut X509_NAME,
19408        nid: ::std::os::raw::c_int,
19409        type_: ::std::os::raw::c_int,
19410        bytes: *const u8,
19411        len: ossl_ssize_t,
19412        loc: ::std::os::raw::c_int,
19413        set: ::std::os::raw::c_int,
19414    ) -> ::std::os::raw::c_int;
19415}
19416extern "C" {
19417    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_add_entry_by_txt"]
19418    pub fn X509_NAME_add_entry_by_txt(
19419        name: *mut X509_NAME,
19420        field: *const ::std::os::raw::c_char,
19421        type_: ::std::os::raw::c_int,
19422        bytes: *const u8,
19423        len: ossl_ssize_t,
19424        loc: ::std::os::raw::c_int,
19425        set: ::std::os::raw::c_int,
19426    ) -> ::std::os::raw::c_int;
19427}
19428extern "C" {
19429    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_it"]
19430    pub static X509_NAME_ENTRY_it: ASN1_ITEM;
19431}
19432extern "C" {
19433    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_new"]
19434    pub fn X509_NAME_ENTRY_new() -> *mut X509_NAME_ENTRY;
19435}
19436extern "C" {
19437    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_free"]
19438    pub fn X509_NAME_ENTRY_free(entry: *mut X509_NAME_ENTRY);
19439}
19440extern "C" {
19441    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_NAME_ENTRY"]
19442    pub fn d2i_X509_NAME_ENTRY(
19443        out: *mut *mut X509_NAME_ENTRY,
19444        inp: *mut *const u8,
19445        len: ::std::os::raw::c_long,
19446    ) -> *mut X509_NAME_ENTRY;
19447}
19448extern "C" {
19449    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_NAME_ENTRY"]
19450    pub fn i2d_X509_NAME_ENTRY(
19451        in_: *const X509_NAME_ENTRY,
19452        outp: *mut *mut u8,
19453    ) -> ::std::os::raw::c_int;
19454}
19455extern "C" {
19456    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_dup"]
19457    pub fn X509_NAME_ENTRY_dup(entry: *const X509_NAME_ENTRY) -> *mut X509_NAME_ENTRY;
19458}
19459extern "C" {
19460    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_get_object"]
19461    pub fn X509_NAME_ENTRY_get_object(entry: *const X509_NAME_ENTRY) -> *mut ASN1_OBJECT;
19462}
19463extern "C" {
19464    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_set_object"]
19465    pub fn X509_NAME_ENTRY_set_object(
19466        entry: *mut X509_NAME_ENTRY,
19467        obj: *const ASN1_OBJECT,
19468    ) -> ::std::os::raw::c_int;
19469}
19470extern "C" {
19471    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_get_data"]
19472    pub fn X509_NAME_ENTRY_get_data(entry: *const X509_NAME_ENTRY) -> *mut ASN1_STRING;
19473}
19474extern "C" {
19475    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_set_data"]
19476    pub fn X509_NAME_ENTRY_set_data(
19477        entry: *mut X509_NAME_ENTRY,
19478        type_: ::std::os::raw::c_int,
19479        bytes: *const u8,
19480        len: ossl_ssize_t,
19481    ) -> ::std::os::raw::c_int;
19482}
19483extern "C" {
19484    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_set"]
19485    pub fn X509_NAME_ENTRY_set(entry: *const X509_NAME_ENTRY) -> ::std::os::raw::c_int;
19486}
19487extern "C" {
19488    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_create_by_OBJ"]
19489    pub fn X509_NAME_ENTRY_create_by_OBJ(
19490        out: *mut *mut X509_NAME_ENTRY,
19491        obj: *const ASN1_OBJECT,
19492        type_: ::std::os::raw::c_int,
19493        bytes: *const u8,
19494        len: ossl_ssize_t,
19495    ) -> *mut X509_NAME_ENTRY;
19496}
19497extern "C" {
19498    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_create_by_NID"]
19499    pub fn X509_NAME_ENTRY_create_by_NID(
19500        out: *mut *mut X509_NAME_ENTRY,
19501        nid: ::std::os::raw::c_int,
19502        type_: ::std::os::raw::c_int,
19503        bytes: *const u8,
19504        len: ossl_ssize_t,
19505    ) -> *mut X509_NAME_ENTRY;
19506}
19507extern "C" {
19508    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_ENTRY_create_by_txt"]
19509    pub fn X509_NAME_ENTRY_create_by_txt(
19510        out: *mut *mut X509_NAME_ENTRY,
19511        field: *const ::std::os::raw::c_char,
19512        type_: ::std::os::raw::c_int,
19513        bytes: *const u8,
19514        len: ossl_ssize_t,
19515    ) -> *mut X509_NAME_ENTRY;
19516}
19517extern "C" {
19518    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_it"]
19519    pub static X509_PUBKEY_it: ASN1_ITEM;
19520}
19521extern "C" {
19522    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_new"]
19523    pub fn X509_PUBKEY_new() -> *mut X509_PUBKEY;
19524}
19525extern "C" {
19526    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_free"]
19527    pub fn X509_PUBKEY_free(key: *mut X509_PUBKEY);
19528}
19529extern "C" {
19530    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_PUBKEY"]
19531    pub fn d2i_X509_PUBKEY(
19532        out: *mut *mut X509_PUBKEY,
19533        inp: *mut *const u8,
19534        len: ::std::os::raw::c_long,
19535    ) -> *mut X509_PUBKEY;
19536}
19537extern "C" {
19538    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_PUBKEY"]
19539    pub fn i2d_X509_PUBKEY(key: *const X509_PUBKEY, outp: *mut *mut u8) -> ::std::os::raw::c_int;
19540}
19541extern "C" {
19542    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_set"]
19543    pub fn X509_PUBKEY_set(x: *mut *mut X509_PUBKEY, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
19544}
19545extern "C" {
19546    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_get0"]
19547    pub fn X509_PUBKEY_get0(key: *const X509_PUBKEY) -> *mut EVP_PKEY;
19548}
19549extern "C" {
19550    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_get"]
19551    pub fn X509_PUBKEY_get(key: *const X509_PUBKEY) -> *mut EVP_PKEY;
19552}
19553extern "C" {
19554    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_set0_param"]
19555    pub fn X509_PUBKEY_set0_param(
19556        pub_: *mut X509_PUBKEY,
19557        obj: *mut ASN1_OBJECT,
19558        param_type: ::std::os::raw::c_int,
19559        param_value: *mut ::std::os::raw::c_void,
19560        key: *mut u8,
19561        key_len: ::std::os::raw::c_int,
19562    ) -> ::std::os::raw::c_int;
19563}
19564extern "C" {
19565    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_get0_param"]
19566    pub fn X509_PUBKEY_get0_param(
19567        out_obj: *mut *mut ASN1_OBJECT,
19568        out_key: *mut *const u8,
19569        out_key_len: *mut ::std::os::raw::c_int,
19570        out_alg: *mut *mut X509_ALGOR,
19571        pub_: *mut X509_PUBKEY,
19572    ) -> ::std::os::raw::c_int;
19573}
19574extern "C" {
19575    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PUBKEY_get0_public_key"]
19576    pub fn X509_PUBKEY_get0_public_key(pub_: *const X509_PUBKEY) -> *const ASN1_BIT_STRING;
19577}
19578extern "C" {
19579    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_it"]
19580    pub static X509_EXTENSION_it: ASN1_ITEM;
19581}
19582extern "C" {
19583    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_new"]
19584    pub fn X509_EXTENSION_new() -> *mut X509_EXTENSION;
19585}
19586extern "C" {
19587    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_free"]
19588    pub fn X509_EXTENSION_free(ex: *mut X509_EXTENSION);
19589}
19590extern "C" {
19591    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_EXTENSION"]
19592    pub fn d2i_X509_EXTENSION(
19593        out: *mut *mut X509_EXTENSION,
19594        inp: *mut *const u8,
19595        len: ::std::os::raw::c_long,
19596    ) -> *mut X509_EXTENSION;
19597}
19598extern "C" {
19599    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_EXTENSION"]
19600    pub fn i2d_X509_EXTENSION(
19601        ex: *const X509_EXTENSION,
19602        outp: *mut *mut u8,
19603    ) -> ::std::os::raw::c_int;
19604}
19605extern "C" {
19606    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_dup"]
19607    pub fn X509_EXTENSION_dup(ex: *const X509_EXTENSION) -> *mut X509_EXTENSION;
19608}
19609extern "C" {
19610    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_create_by_NID"]
19611    pub fn X509_EXTENSION_create_by_NID(
19612        ex: *mut *mut X509_EXTENSION,
19613        nid: ::std::os::raw::c_int,
19614        crit: ::std::os::raw::c_int,
19615        data: *const ASN1_OCTET_STRING,
19616    ) -> *mut X509_EXTENSION;
19617}
19618extern "C" {
19619    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_create_by_OBJ"]
19620    pub fn X509_EXTENSION_create_by_OBJ(
19621        ex: *mut *mut X509_EXTENSION,
19622        obj: *const ASN1_OBJECT,
19623        crit: ::std::os::raw::c_int,
19624        data: *const ASN1_OCTET_STRING,
19625    ) -> *mut X509_EXTENSION;
19626}
19627extern "C" {
19628    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_get_object"]
19629    pub fn X509_EXTENSION_get_object(ex: *const X509_EXTENSION) -> *mut ASN1_OBJECT;
19630}
19631extern "C" {
19632    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_get_data"]
19633    pub fn X509_EXTENSION_get_data(ne: *const X509_EXTENSION) -> *mut ASN1_OCTET_STRING;
19634}
19635extern "C" {
19636    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_get_critical"]
19637    pub fn X509_EXTENSION_get_critical(ex: *const X509_EXTENSION) -> ::std::os::raw::c_int;
19638}
19639extern "C" {
19640    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_set_object"]
19641    pub fn X509_EXTENSION_set_object(
19642        ex: *mut X509_EXTENSION,
19643        obj: *const ASN1_OBJECT,
19644    ) -> ::std::os::raw::c_int;
19645}
19646extern "C" {
19647    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_set_critical"]
19648    pub fn X509_EXTENSION_set_critical(
19649        ex: *mut X509_EXTENSION,
19650        crit: ::std::os::raw::c_int,
19651    ) -> ::std::os::raw::c_int;
19652}
19653extern "C" {
19654    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSION_set_data"]
19655    pub fn X509_EXTENSION_set_data(
19656        ex: *mut X509_EXTENSION,
19657        data: *const ASN1_OCTET_STRING,
19658    ) -> ::std::os::raw::c_int;
19659}
19660pub type sk_X509_EXTENSION_free_func =
19661    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_EXTENSION)>;
19662pub type sk_X509_EXTENSION_copy_func =
19663    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_EXTENSION) -> *mut X509_EXTENSION>;
19664pub type sk_X509_EXTENSION_cmp_func = ::std::option::Option<
19665    unsafe extern "C" fn(
19666        arg1: *const *const X509_EXTENSION,
19667        arg2: *const *const X509_EXTENSION,
19668    ) -> ::std::os::raw::c_int,
19669>;
19670pub type sk_X509_EXTENSION_delete_if_func = ::std::option::Option<
19671    unsafe extern "C" fn(
19672        arg1: *mut X509_EXTENSION,
19673        arg2: *mut ::std::os::raw::c_void,
19674    ) -> ::std::os::raw::c_int,
19675>;
19676pub type X509_EXTENSIONS = stack_st_X509_EXTENSION;
19677extern "C" {
19678    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_EXTENSIONS_it"]
19679    pub static X509_EXTENSIONS_it: ASN1_ITEM;
19680}
19681extern "C" {
19682    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_EXTENSIONS"]
19683    pub fn d2i_X509_EXTENSIONS(
19684        out: *mut *mut X509_EXTENSIONS,
19685        inp: *mut *const u8,
19686        len: ::std::os::raw::c_long,
19687    ) -> *mut X509_EXTENSIONS;
19688}
19689extern "C" {
19690    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_EXTENSIONS"]
19691    pub fn i2d_X509_EXTENSIONS(
19692        alg: *const X509_EXTENSIONS,
19693        outp: *mut *mut u8,
19694    ) -> ::std::os::raw::c_int;
19695}
19696extern "C" {
19697    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509v3_get_ext_count"]
19698    pub fn X509v3_get_ext_count(x: *const stack_st_X509_EXTENSION) -> ::std::os::raw::c_int;
19699}
19700extern "C" {
19701    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509v3_get_ext_by_NID"]
19702    pub fn X509v3_get_ext_by_NID(
19703        x: *const stack_st_X509_EXTENSION,
19704        nid: ::std::os::raw::c_int,
19705        lastpos: ::std::os::raw::c_int,
19706    ) -> ::std::os::raw::c_int;
19707}
19708extern "C" {
19709    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509v3_get_ext_by_OBJ"]
19710    pub fn X509v3_get_ext_by_OBJ(
19711        x: *const stack_st_X509_EXTENSION,
19712        obj: *const ASN1_OBJECT,
19713        lastpos: ::std::os::raw::c_int,
19714    ) -> ::std::os::raw::c_int;
19715}
19716extern "C" {
19717    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509v3_get_ext_by_critical"]
19718    pub fn X509v3_get_ext_by_critical(
19719        x: *const stack_st_X509_EXTENSION,
19720        crit: ::std::os::raw::c_int,
19721        lastpos: ::std::os::raw::c_int,
19722    ) -> ::std::os::raw::c_int;
19723}
19724extern "C" {
19725    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509v3_get_ext"]
19726    pub fn X509v3_get_ext(
19727        x: *const stack_st_X509_EXTENSION,
19728        loc: ::std::os::raw::c_int,
19729    ) -> *mut X509_EXTENSION;
19730}
19731extern "C" {
19732    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509v3_delete_ext"]
19733    pub fn X509v3_delete_ext(
19734        x: *mut stack_st_X509_EXTENSION,
19735        loc: ::std::os::raw::c_int,
19736    ) -> *mut X509_EXTENSION;
19737}
19738extern "C" {
19739    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509v3_add_ext"]
19740    pub fn X509v3_add_ext(
19741        x: *mut *mut stack_st_X509_EXTENSION,
19742        ex: *const X509_EXTENSION,
19743        loc: ::std::os::raw::c_int,
19744    ) -> *mut stack_st_X509_EXTENSION;
19745}
19746#[repr(C)]
19747#[derive(Debug, Copy, Clone, PartialEq, Eq)]
19748pub struct otherName_st {
19749    pub type_id: *mut ASN1_OBJECT,
19750    pub value: *mut ASN1_TYPE,
19751}
19752#[test]
19753fn bindgen_test_layout_otherName_st() {
19754    const UNINIT: ::std::mem::MaybeUninit<otherName_st> = ::std::mem::MaybeUninit::uninit();
19755    let ptr = UNINIT.as_ptr();
19756    assert_eq!(
19757        ::std::mem::size_of::<otherName_st>(),
19758        16usize,
19759        "Size of otherName_st"
19760    );
19761    assert_eq!(
19762        ::std::mem::align_of::<otherName_st>(),
19763        8usize,
19764        "Alignment of otherName_st"
19765    );
19766    assert_eq!(
19767        unsafe { ::std::ptr::addr_of!((*ptr).type_id) as usize - ptr as usize },
19768        0usize,
19769        "Offset of field: otherName_st::type_id"
19770    );
19771    assert_eq!(
19772        unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
19773        8usize,
19774        "Offset of field: otherName_st::value"
19775    );
19776}
19777impl Default for otherName_st {
19778    fn default() -> Self {
19779        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19780        unsafe {
19781            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19782            s.assume_init()
19783        }
19784    }
19785}
19786pub type OTHERNAME = otherName_st;
19787#[repr(C)]
19788#[derive(Debug, Copy, Clone, PartialEq, Eq)]
19789pub struct EDIPartyName_st {
19790    pub nameAssigner: *mut ASN1_STRING,
19791    pub partyName: *mut ASN1_STRING,
19792}
19793#[test]
19794fn bindgen_test_layout_EDIPartyName_st() {
19795    const UNINIT: ::std::mem::MaybeUninit<EDIPartyName_st> = ::std::mem::MaybeUninit::uninit();
19796    let ptr = UNINIT.as_ptr();
19797    assert_eq!(
19798        ::std::mem::size_of::<EDIPartyName_st>(),
19799        16usize,
19800        "Size of EDIPartyName_st"
19801    );
19802    assert_eq!(
19803        ::std::mem::align_of::<EDIPartyName_st>(),
19804        8usize,
19805        "Alignment of EDIPartyName_st"
19806    );
19807    assert_eq!(
19808        unsafe { ::std::ptr::addr_of!((*ptr).nameAssigner) as usize - ptr as usize },
19809        0usize,
19810        "Offset of field: EDIPartyName_st::nameAssigner"
19811    );
19812    assert_eq!(
19813        unsafe { ::std::ptr::addr_of!((*ptr).partyName) as usize - ptr as usize },
19814        8usize,
19815        "Offset of field: EDIPartyName_st::partyName"
19816    );
19817}
19818impl Default for EDIPartyName_st {
19819    fn default() -> Self {
19820        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19821        unsafe {
19822            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19823            s.assume_init()
19824        }
19825    }
19826}
19827pub type EDIPARTYNAME = EDIPartyName_st;
19828#[repr(C)]
19829#[derive(Copy, Clone)]
19830pub struct GENERAL_NAME_st {
19831    pub type_: ::std::os::raw::c_int,
19832    pub d: GENERAL_NAME_st__bindgen_ty_1,
19833}
19834#[repr(C)]
19835#[derive(Copy, Clone)]
19836pub union GENERAL_NAME_st__bindgen_ty_1 {
19837    pub ptr: *mut ::std::os::raw::c_char,
19838    pub otherName: *mut OTHERNAME,
19839    pub rfc822Name: *mut ASN1_IA5STRING,
19840    pub dNSName: *mut ASN1_IA5STRING,
19841    pub x400Address: *mut ASN1_STRING,
19842    pub directoryName: *mut X509_NAME,
19843    pub ediPartyName: *mut EDIPARTYNAME,
19844    pub uniformResourceIdentifier: *mut ASN1_IA5STRING,
19845    pub iPAddress: *mut ASN1_OCTET_STRING,
19846    pub registeredID: *mut ASN1_OBJECT,
19847    pub ip: *mut ASN1_OCTET_STRING,
19848    pub dirn: *mut X509_NAME,
19849    pub ia5: *mut ASN1_IA5STRING,
19850    pub rid: *mut ASN1_OBJECT,
19851}
19852#[test]
19853fn bindgen_test_layout_GENERAL_NAME_st__bindgen_ty_1() {
19854    const UNINIT: ::std::mem::MaybeUninit<GENERAL_NAME_st__bindgen_ty_1> =
19855        ::std::mem::MaybeUninit::uninit();
19856    let ptr = UNINIT.as_ptr();
19857    assert_eq!(
19858        ::std::mem::size_of::<GENERAL_NAME_st__bindgen_ty_1>(),
19859        8usize,
19860        "Size of GENERAL_NAME_st__bindgen_ty_1"
19861    );
19862    assert_eq!(
19863        ::std::mem::align_of::<GENERAL_NAME_st__bindgen_ty_1>(),
19864        8usize,
19865        "Alignment of GENERAL_NAME_st__bindgen_ty_1"
19866    );
19867    assert_eq!(
19868        unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize },
19869        0usize,
19870        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::ptr"
19871    );
19872    assert_eq!(
19873        unsafe { ::std::ptr::addr_of!((*ptr).otherName) as usize - ptr as usize },
19874        0usize,
19875        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::otherName"
19876    );
19877    assert_eq!(
19878        unsafe { ::std::ptr::addr_of!((*ptr).rfc822Name) as usize - ptr as usize },
19879        0usize,
19880        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::rfc822Name"
19881    );
19882    assert_eq!(
19883        unsafe { ::std::ptr::addr_of!((*ptr).dNSName) as usize - ptr as usize },
19884        0usize,
19885        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::dNSName"
19886    );
19887    assert_eq!(
19888        unsafe { ::std::ptr::addr_of!((*ptr).x400Address) as usize - ptr as usize },
19889        0usize,
19890        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::x400Address"
19891    );
19892    assert_eq!(
19893        unsafe { ::std::ptr::addr_of!((*ptr).directoryName) as usize - ptr as usize },
19894        0usize,
19895        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::directoryName"
19896    );
19897    assert_eq!(
19898        unsafe { ::std::ptr::addr_of!((*ptr).ediPartyName) as usize - ptr as usize },
19899        0usize,
19900        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::ediPartyName"
19901    );
19902    assert_eq!(
19903        unsafe { ::std::ptr::addr_of!((*ptr).uniformResourceIdentifier) as usize - ptr as usize },
19904        0usize,
19905        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::uniformResourceIdentifier"
19906    );
19907    assert_eq!(
19908        unsafe { ::std::ptr::addr_of!((*ptr).iPAddress) as usize - ptr as usize },
19909        0usize,
19910        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::iPAddress"
19911    );
19912    assert_eq!(
19913        unsafe { ::std::ptr::addr_of!((*ptr).registeredID) as usize - ptr as usize },
19914        0usize,
19915        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::registeredID"
19916    );
19917    assert_eq!(
19918        unsafe { ::std::ptr::addr_of!((*ptr).ip) as usize - ptr as usize },
19919        0usize,
19920        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::ip"
19921    );
19922    assert_eq!(
19923        unsafe { ::std::ptr::addr_of!((*ptr).dirn) as usize - ptr as usize },
19924        0usize,
19925        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::dirn"
19926    );
19927    assert_eq!(
19928        unsafe { ::std::ptr::addr_of!((*ptr).ia5) as usize - ptr as usize },
19929        0usize,
19930        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::ia5"
19931    );
19932    assert_eq!(
19933        unsafe { ::std::ptr::addr_of!((*ptr).rid) as usize - ptr as usize },
19934        0usize,
19935        "Offset of field: GENERAL_NAME_st__bindgen_ty_1::rid"
19936    );
19937}
19938impl Default for GENERAL_NAME_st__bindgen_ty_1 {
19939    fn default() -> Self {
19940        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19941        unsafe {
19942            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19943            s.assume_init()
19944        }
19945    }
19946}
19947#[test]
19948fn bindgen_test_layout_GENERAL_NAME_st() {
19949    const UNINIT: ::std::mem::MaybeUninit<GENERAL_NAME_st> = ::std::mem::MaybeUninit::uninit();
19950    let ptr = UNINIT.as_ptr();
19951    assert_eq!(
19952        ::std::mem::size_of::<GENERAL_NAME_st>(),
19953        16usize,
19954        "Size of GENERAL_NAME_st"
19955    );
19956    assert_eq!(
19957        ::std::mem::align_of::<GENERAL_NAME_st>(),
19958        8usize,
19959        "Alignment of GENERAL_NAME_st"
19960    );
19961    assert_eq!(
19962        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
19963        0usize,
19964        "Offset of field: GENERAL_NAME_st::type_"
19965    );
19966    assert_eq!(
19967        unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize },
19968        8usize,
19969        "Offset of field: GENERAL_NAME_st::d"
19970    );
19971}
19972impl Default for GENERAL_NAME_st {
19973    fn default() -> Self {
19974        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
19975        unsafe {
19976            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
19977            s.assume_init()
19978        }
19979    }
19980}
19981extern "C" {
19982    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAME_new"]
19983    pub fn GENERAL_NAME_new() -> *mut GENERAL_NAME;
19984}
19985extern "C" {
19986    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAME_free"]
19987    pub fn GENERAL_NAME_free(gen_: *mut GENERAL_NAME);
19988}
19989extern "C" {
19990    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_GENERAL_NAME"]
19991    pub fn d2i_GENERAL_NAME(
19992        out: *mut *mut GENERAL_NAME,
19993        inp: *mut *const u8,
19994        len: ::std::os::raw::c_long,
19995    ) -> *mut GENERAL_NAME;
19996}
19997extern "C" {
19998    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_GENERAL_NAME"]
19999    pub fn i2d_GENERAL_NAME(in_: *mut GENERAL_NAME, outp: *mut *mut u8) -> ::std::os::raw::c_int;
20000}
20001extern "C" {
20002    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAME_dup"]
20003    pub fn GENERAL_NAME_dup(gen_: *mut GENERAL_NAME) -> *mut GENERAL_NAME;
20004}
20005extern "C" {
20006    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAMES_new"]
20007    pub fn GENERAL_NAMES_new() -> *mut GENERAL_NAMES;
20008}
20009extern "C" {
20010    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAMES_free"]
20011    pub fn GENERAL_NAMES_free(gens: *mut GENERAL_NAMES);
20012}
20013extern "C" {
20014    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_GENERAL_NAMES"]
20015    pub fn d2i_GENERAL_NAMES(
20016        out: *mut *mut GENERAL_NAMES,
20017        inp: *mut *const u8,
20018        len: ::std::os::raw::c_long,
20019    ) -> *mut GENERAL_NAMES;
20020}
20021extern "C" {
20022    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_GENERAL_NAMES"]
20023    pub fn i2d_GENERAL_NAMES(in_: *mut GENERAL_NAMES, outp: *mut *mut u8) -> ::std::os::raw::c_int;
20024}
20025extern "C" {
20026    #[link_name = "\u{1}aws_lc_fips_0_13_10_OTHERNAME_new"]
20027    pub fn OTHERNAME_new() -> *mut OTHERNAME;
20028}
20029extern "C" {
20030    #[link_name = "\u{1}aws_lc_fips_0_13_10_OTHERNAME_free"]
20031    pub fn OTHERNAME_free(name: *mut OTHERNAME);
20032}
20033extern "C" {
20034    #[link_name = "\u{1}aws_lc_fips_0_13_10_EDIPARTYNAME_new"]
20035    pub fn EDIPARTYNAME_new() -> *mut EDIPARTYNAME;
20036}
20037extern "C" {
20038    #[link_name = "\u{1}aws_lc_fips_0_13_10_EDIPARTYNAME_free"]
20039    pub fn EDIPARTYNAME_free(name: *mut EDIPARTYNAME);
20040}
20041extern "C" {
20042    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAME_set0_value"]
20043    pub fn GENERAL_NAME_set0_value(
20044        gen_: *mut GENERAL_NAME,
20045        type_: ::std::os::raw::c_int,
20046        value: *mut ::std::os::raw::c_void,
20047    );
20048}
20049extern "C" {
20050    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAME_get0_value"]
20051    pub fn GENERAL_NAME_get0_value(
20052        gen_: *const GENERAL_NAME,
20053        out_type: *mut ::std::os::raw::c_int,
20054    ) -> *mut ::std::os::raw::c_void;
20055}
20056extern "C" {
20057    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAME_set0_othername"]
20058    pub fn GENERAL_NAME_set0_othername(
20059        gen_: *mut GENERAL_NAME,
20060        oid: *mut ASN1_OBJECT,
20061        value: *mut ASN1_TYPE,
20062    ) -> ::std::os::raw::c_int;
20063}
20064extern "C" {
20065    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAME_get0_otherName"]
20066    pub fn GENERAL_NAME_get0_otherName(
20067        gen_: *const GENERAL_NAME,
20068        out_oid: *mut *mut ASN1_OBJECT,
20069        out_value: *mut *mut ASN1_TYPE,
20070    ) -> ::std::os::raw::c_int;
20071}
20072#[repr(C)]
20073#[derive(Debug, Copy, Clone)]
20074pub struct stack_st_X509_ALGOR {
20075    _unused: [u8; 0],
20076}
20077pub type sk_X509_ALGOR_free_func =
20078    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_ALGOR)>;
20079pub type sk_X509_ALGOR_copy_func =
20080    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_ALGOR) -> *mut X509_ALGOR>;
20081pub type sk_X509_ALGOR_cmp_func = ::std::option::Option<
20082    unsafe extern "C" fn(
20083        arg1: *const *const X509_ALGOR,
20084        arg2: *const *const X509_ALGOR,
20085    ) -> ::std::os::raw::c_int,
20086>;
20087pub type sk_X509_ALGOR_delete_if_func = ::std::option::Option<
20088    unsafe extern "C" fn(
20089        arg1: *mut X509_ALGOR,
20090        arg2: *mut ::std::os::raw::c_void,
20091    ) -> ::std::os::raw::c_int,
20092>;
20093extern "C" {
20094    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ALGOR_it"]
20095    pub static X509_ALGOR_it: ASN1_ITEM;
20096}
20097extern "C" {
20098    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ALGOR_new"]
20099    pub fn X509_ALGOR_new() -> *mut X509_ALGOR;
20100}
20101extern "C" {
20102    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ALGOR_dup"]
20103    pub fn X509_ALGOR_dup(alg: *const X509_ALGOR) -> *mut X509_ALGOR;
20104}
20105extern "C" {
20106    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ALGOR_free"]
20107    pub fn X509_ALGOR_free(alg: *mut X509_ALGOR);
20108}
20109extern "C" {
20110    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_ALGOR"]
20111    pub fn d2i_X509_ALGOR(
20112        out: *mut *mut X509_ALGOR,
20113        inp: *mut *const u8,
20114        len: ::std::os::raw::c_long,
20115    ) -> *mut X509_ALGOR;
20116}
20117extern "C" {
20118    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_ALGOR"]
20119    pub fn i2d_X509_ALGOR(alg: *const X509_ALGOR, outp: *mut *mut u8) -> ::std::os::raw::c_int;
20120}
20121extern "C" {
20122    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ALGOR_set0"]
20123    pub fn X509_ALGOR_set0(
20124        alg: *mut X509_ALGOR,
20125        obj: *mut ASN1_OBJECT,
20126        param_type: ::std::os::raw::c_int,
20127        param_value: *mut ::std::os::raw::c_void,
20128    ) -> ::std::os::raw::c_int;
20129}
20130extern "C" {
20131    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ALGOR_get0"]
20132    pub fn X509_ALGOR_get0(
20133        out_obj: *mut *const ASN1_OBJECT,
20134        out_param_type: *mut ::std::os::raw::c_int,
20135        out_param_value: *mut *const ::std::os::raw::c_void,
20136        alg: *const X509_ALGOR,
20137    );
20138}
20139extern "C" {
20140    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ALGOR_set_md"]
20141    pub fn X509_ALGOR_set_md(alg: *mut X509_ALGOR, md: *const EVP_MD);
20142}
20143extern "C" {
20144    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ALGOR_cmp"]
20145    pub fn X509_ALGOR_cmp(a: *const X509_ALGOR, b: *const X509_ALGOR) -> ::std::os::raw::c_int;
20146}
20147#[repr(C)]
20148#[derive(Debug, Copy, Clone)]
20149pub struct stack_st_X509_ATTRIBUTE {
20150    _unused: [u8; 0],
20151}
20152pub type sk_X509_ATTRIBUTE_free_func =
20153    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_ATTRIBUTE)>;
20154pub type sk_X509_ATTRIBUTE_copy_func =
20155    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_ATTRIBUTE) -> *mut X509_ATTRIBUTE>;
20156pub type sk_X509_ATTRIBUTE_cmp_func = ::std::option::Option<
20157    unsafe extern "C" fn(
20158        arg1: *const *const X509_ATTRIBUTE,
20159        arg2: *const *const X509_ATTRIBUTE,
20160    ) -> ::std::os::raw::c_int,
20161>;
20162pub type sk_X509_ATTRIBUTE_delete_if_func = ::std::option::Option<
20163    unsafe extern "C" fn(
20164        arg1: *mut X509_ATTRIBUTE,
20165        arg2: *mut ::std::os::raw::c_void,
20166    ) -> ::std::os::raw::c_int,
20167>;
20168extern "C" {
20169    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_it"]
20170    pub static X509_ATTRIBUTE_it: ASN1_ITEM;
20171}
20172extern "C" {
20173    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_new"]
20174    pub fn X509_ATTRIBUTE_new() -> *mut X509_ATTRIBUTE;
20175}
20176extern "C" {
20177    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_dup"]
20178    pub fn X509_ATTRIBUTE_dup(attr: *const X509_ATTRIBUTE) -> *mut X509_ATTRIBUTE;
20179}
20180extern "C" {
20181    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_free"]
20182    pub fn X509_ATTRIBUTE_free(attr: *mut X509_ATTRIBUTE);
20183}
20184extern "C" {
20185    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_ATTRIBUTE"]
20186    pub fn d2i_X509_ATTRIBUTE(
20187        out: *mut *mut X509_ATTRIBUTE,
20188        inp: *mut *const u8,
20189        len: ::std::os::raw::c_long,
20190    ) -> *mut X509_ATTRIBUTE;
20191}
20192extern "C" {
20193    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_ATTRIBUTE"]
20194    pub fn i2d_X509_ATTRIBUTE(
20195        alg: *const X509_ATTRIBUTE,
20196        outp: *mut *mut u8,
20197    ) -> ::std::os::raw::c_int;
20198}
20199extern "C" {
20200    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_create"]
20201    pub fn X509_ATTRIBUTE_create(
20202        nid: ::std::os::raw::c_int,
20203        attrtype: ::std::os::raw::c_int,
20204        value: *mut ::std::os::raw::c_void,
20205    ) -> *mut X509_ATTRIBUTE;
20206}
20207extern "C" {
20208    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_create_by_NID"]
20209    pub fn X509_ATTRIBUTE_create_by_NID(
20210        attr: *mut *mut X509_ATTRIBUTE,
20211        nid: ::std::os::raw::c_int,
20212        attrtype: ::std::os::raw::c_int,
20213        data: *const ::std::os::raw::c_void,
20214        len: ::std::os::raw::c_int,
20215    ) -> *mut X509_ATTRIBUTE;
20216}
20217extern "C" {
20218    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_create_by_OBJ"]
20219    pub fn X509_ATTRIBUTE_create_by_OBJ(
20220        attr: *mut *mut X509_ATTRIBUTE,
20221        obj: *const ASN1_OBJECT,
20222        attrtype: ::std::os::raw::c_int,
20223        data: *const ::std::os::raw::c_void,
20224        len: ::std::os::raw::c_int,
20225    ) -> *mut X509_ATTRIBUTE;
20226}
20227extern "C" {
20228    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_create_by_txt"]
20229    pub fn X509_ATTRIBUTE_create_by_txt(
20230        attr: *mut *mut X509_ATTRIBUTE,
20231        attrname: *const ::std::os::raw::c_char,
20232        type_: ::std::os::raw::c_int,
20233        bytes: *const ::std::os::raw::c_uchar,
20234        len: ::std::os::raw::c_int,
20235    ) -> *mut X509_ATTRIBUTE;
20236}
20237extern "C" {
20238    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_set1_object"]
20239    pub fn X509_ATTRIBUTE_set1_object(
20240        attr: *mut X509_ATTRIBUTE,
20241        obj: *const ASN1_OBJECT,
20242    ) -> ::std::os::raw::c_int;
20243}
20244extern "C" {
20245    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_set1_data"]
20246    pub fn X509_ATTRIBUTE_set1_data(
20247        attr: *mut X509_ATTRIBUTE,
20248        attrtype: ::std::os::raw::c_int,
20249        data: *const ::std::os::raw::c_void,
20250        len: ::std::os::raw::c_int,
20251    ) -> ::std::os::raw::c_int;
20252}
20253extern "C" {
20254    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_get0_data"]
20255    pub fn X509_ATTRIBUTE_get0_data(
20256        attr: *mut X509_ATTRIBUTE,
20257        idx: ::std::os::raw::c_int,
20258        attrtype: ::std::os::raw::c_int,
20259        unused: *mut ::std::os::raw::c_void,
20260    ) -> *mut ::std::os::raw::c_void;
20261}
20262extern "C" {
20263    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_count"]
20264    pub fn X509_ATTRIBUTE_count(attr: *const X509_ATTRIBUTE) -> ::std::os::raw::c_int;
20265}
20266extern "C" {
20267    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_get0_object"]
20268    pub fn X509_ATTRIBUTE_get0_object(attr: *mut X509_ATTRIBUTE) -> *mut ASN1_OBJECT;
20269}
20270extern "C" {
20271    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_ATTRIBUTE_get0_type"]
20272    pub fn X509_ATTRIBUTE_get0_type(
20273        attr: *mut X509_ATTRIBUTE,
20274        idx: ::std::os::raw::c_int,
20275    ) -> *mut ASN1_TYPE;
20276}
20277extern "C" {
20278    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_new"]
20279    pub fn X509_STORE_new() -> *mut X509_STORE;
20280}
20281extern "C" {
20282    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_up_ref"]
20283    pub fn X509_STORE_up_ref(store: *mut X509_STORE) -> ::std::os::raw::c_int;
20284}
20285extern "C" {
20286    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_free"]
20287    pub fn X509_STORE_free(store: *mut X509_STORE);
20288}
20289extern "C" {
20290    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_add_cert"]
20291    pub fn X509_STORE_add_cert(store: *mut X509_STORE, x509: *mut X509) -> ::std::os::raw::c_int;
20292}
20293extern "C" {
20294    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_add_crl"]
20295    pub fn X509_STORE_add_crl(store: *mut X509_STORE, crl: *mut X509_CRL) -> ::std::os::raw::c_int;
20296}
20297extern "C" {
20298    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_get0_param"]
20299    pub fn X509_STORE_get0_param(store: *mut X509_STORE) -> *mut X509_VERIFY_PARAM;
20300}
20301extern "C" {
20302    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set1_param"]
20303    pub fn X509_STORE_set1_param(
20304        store: *mut X509_STORE,
20305        param: *const X509_VERIFY_PARAM,
20306    ) -> ::std::os::raw::c_int;
20307}
20308extern "C" {
20309    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_flags"]
20310    pub fn X509_STORE_set_flags(
20311        store: *mut X509_STORE,
20312        flags: ::std::os::raw::c_ulong,
20313    ) -> ::std::os::raw::c_int;
20314}
20315extern "C" {
20316    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_depth"]
20317    pub fn X509_STORE_set_depth(
20318        store: *mut X509_STORE,
20319        depth: ::std::os::raw::c_int,
20320    ) -> ::std::os::raw::c_int;
20321}
20322extern "C" {
20323    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_purpose"]
20324    pub fn X509_STORE_set_purpose(
20325        store: *mut X509_STORE,
20326        purpose: ::std::os::raw::c_int,
20327    ) -> ::std::os::raw::c_int;
20328}
20329extern "C" {
20330    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_trust"]
20331    pub fn X509_STORE_set_trust(
20332        store: *mut X509_STORE,
20333        trust: ::std::os::raw::c_int,
20334    ) -> ::std::os::raw::c_int;
20335}
20336pub type X509_STORE_CTX_lookup_crls_fn = ::std::option::Option<
20337    unsafe extern "C" fn(ctx: *mut X509_STORE_CTX, nm: *mut X509_NAME) -> *mut stack_st_X509_CRL,
20338>;
20339extern "C" {
20340    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_get_lookup_crls"]
20341    pub fn X509_STORE_get_lookup_crls(ctx: *mut X509_STORE) -> X509_STORE_CTX_lookup_crls_fn;
20342}
20343extern "C" {
20344    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_lookup_crls"]
20345    pub fn X509_STORE_set_lookup_crls(
20346        ctx: *mut X509_STORE,
20347        lookup_crls: X509_STORE_CTX_lookup_crls_fn,
20348    );
20349}
20350extern "C" {
20351    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_new"]
20352    pub fn X509_STORE_CTX_new() -> *mut X509_STORE_CTX;
20353}
20354extern "C" {
20355    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_free"]
20356    pub fn X509_STORE_CTX_free(ctx: *mut X509_STORE_CTX);
20357}
20358extern "C" {
20359    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_init"]
20360    pub fn X509_STORE_CTX_init(
20361        ctx: *mut X509_STORE_CTX,
20362        store: *mut X509_STORE,
20363        x509: *mut X509,
20364        chain: *mut stack_st_X509,
20365    ) -> ::std::os::raw::c_int;
20366}
20367extern "C" {
20368    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_verify_cert"]
20369    pub fn X509_verify_cert(ctx: *mut X509_STORE_CTX) -> ::std::os::raw::c_int;
20370}
20371extern "C" {
20372    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get0_chain"]
20373    pub fn X509_STORE_CTX_get0_chain(ctx: *mut X509_STORE_CTX) -> *mut stack_st_X509;
20374}
20375extern "C" {
20376    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get1_chain"]
20377    pub fn X509_STORE_CTX_get1_chain(ctx: *mut X509_STORE_CTX) -> *mut stack_st_X509;
20378}
20379extern "C" {
20380    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_cert"]
20381    pub fn X509_STORE_CTX_set_cert(c: *mut X509_STORE_CTX, x: *mut X509);
20382}
20383extern "C" {
20384    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get_error"]
20385    pub fn X509_STORE_CTX_get_error(ctx: *mut X509_STORE_CTX) -> ::std::os::raw::c_int;
20386}
20387extern "C" {
20388    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_error"]
20389    pub fn X509_STORE_CTX_set_error(ctx: *mut X509_STORE_CTX, err: ::std::os::raw::c_int);
20390}
20391extern "C" {
20392    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_verify_cert_error_string"]
20393    pub fn X509_verify_cert_error_string(
20394        err: ::std::os::raw::c_long,
20395    ) -> *const ::std::os::raw::c_char;
20396}
20397extern "C" {
20398    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get_error_depth"]
20399    pub fn X509_STORE_CTX_get_error_depth(ctx: *mut X509_STORE_CTX) -> ::std::os::raw::c_int;
20400}
20401extern "C" {
20402    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get_current_cert"]
20403    pub fn X509_STORE_CTX_get_current_cert(ctx: *mut X509_STORE_CTX) -> *mut X509;
20404}
20405extern "C" {
20406    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get0_current_issuer"]
20407    pub fn X509_STORE_CTX_get0_current_issuer(ctx: *mut X509_STORE_CTX) -> *mut X509;
20408}
20409extern "C" {
20410    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get0_current_crl"]
20411    pub fn X509_STORE_CTX_get0_current_crl(ctx: *mut X509_STORE_CTX) -> *mut X509_CRL;
20412}
20413extern "C" {
20414    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get0_store"]
20415    pub fn X509_STORE_CTX_get0_store(ctx: *mut X509_STORE_CTX) -> *mut X509_STORE;
20416}
20417extern "C" {
20418    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get0_cert"]
20419    pub fn X509_STORE_CTX_get0_cert(ctx: *mut X509_STORE_CTX) -> *mut X509;
20420}
20421extern "C" {
20422    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get0_untrusted"]
20423    pub fn X509_STORE_CTX_get0_untrusted(ctx: *mut X509_STORE_CTX) -> *mut stack_st_X509;
20424}
20425extern "C" {
20426    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set0_trusted_stack"]
20427    pub fn X509_STORE_CTX_set0_trusted_stack(ctx: *mut X509_STORE_CTX, sk: *mut stack_st_X509);
20428}
20429extern "C" {
20430    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set0_crls"]
20431    pub fn X509_STORE_CTX_set0_crls(ctx: *mut X509_STORE_CTX, sk: *mut stack_st_X509_CRL);
20432}
20433extern "C" {
20434    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_default"]
20435    pub fn X509_STORE_CTX_set_default(
20436        ctx: *mut X509_STORE_CTX,
20437        name: *const ::std::os::raw::c_char,
20438    ) -> ::std::os::raw::c_int;
20439}
20440extern "C" {
20441    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get0_param"]
20442    pub fn X509_STORE_CTX_get0_param(ctx: *mut X509_STORE_CTX) -> *mut X509_VERIFY_PARAM;
20443}
20444extern "C" {
20445    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set0_param"]
20446    pub fn X509_STORE_CTX_set0_param(ctx: *mut X509_STORE_CTX, param: *mut X509_VERIFY_PARAM);
20447}
20448extern "C" {
20449    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_flags"]
20450    pub fn X509_STORE_CTX_set_flags(ctx: *mut X509_STORE_CTX, flags: ::std::os::raw::c_ulong);
20451}
20452extern "C" {
20453    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_time"]
20454    pub fn X509_STORE_CTX_set_time(
20455        ctx: *mut X509_STORE_CTX,
20456        flags: ::std::os::raw::c_ulong,
20457        t: time_t,
20458    );
20459}
20460extern "C" {
20461    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_time_posix"]
20462    pub fn X509_STORE_CTX_set_time_posix(
20463        ctx: *mut X509_STORE_CTX,
20464        flags: ::std::os::raw::c_ulong,
20465        t: i64,
20466    );
20467}
20468extern "C" {
20469    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_depth"]
20470    pub fn X509_STORE_CTX_set_depth(ctx: *mut X509_STORE_CTX, depth: ::std::os::raw::c_int);
20471}
20472extern "C" {
20473    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_purpose"]
20474    pub fn X509_STORE_CTX_set_purpose(
20475        ctx: *mut X509_STORE_CTX,
20476        purpose: ::std::os::raw::c_int,
20477    ) -> ::std::os::raw::c_int;
20478}
20479extern "C" {
20480    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_trust"]
20481    pub fn X509_STORE_CTX_set_trust(
20482        ctx: *mut X509_STORE_CTX,
20483        trust: ::std::os::raw::c_int,
20484    ) -> ::std::os::raw::c_int;
20485}
20486extern "C" {
20487    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_add_custom_crit_oid"]
20488    pub fn X509_STORE_CTX_add_custom_crit_oid(
20489        ctx: *mut X509_STORE_CTX,
20490        oid: *mut ASN1_OBJECT,
20491    ) -> ::std::os::raw::c_int;
20492}
20493pub type X509_STORE_CTX_verify_crit_oids_cb = ::std::option::Option<
20494    unsafe extern "C" fn(
20495        ctx: *mut X509_STORE_CTX,
20496        x509: *mut X509,
20497        oids: *mut stack_st_ASN1_OBJECT,
20498    ) -> ::std::os::raw::c_int,
20499>;
20500extern "C" {
20501    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_verify_crit_oids"]
20502    pub fn X509_STORE_CTX_set_verify_crit_oids(
20503        ctx: *mut X509_STORE_CTX,
20504        verify_custom_crit_oids: X509_STORE_CTX_verify_crit_oids_cb,
20505    );
20506}
20507extern "C" {
20508    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_new"]
20509    pub fn X509_VERIFY_PARAM_new() -> *mut X509_VERIFY_PARAM;
20510}
20511extern "C" {
20512    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_free"]
20513    pub fn X509_VERIFY_PARAM_free(param: *mut X509_VERIFY_PARAM);
20514}
20515extern "C" {
20516    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_inherit"]
20517    pub fn X509_VERIFY_PARAM_inherit(
20518        to: *mut X509_VERIFY_PARAM,
20519        from: *const X509_VERIFY_PARAM,
20520    ) -> ::std::os::raw::c_int;
20521}
20522extern "C" {
20523    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set1"]
20524    pub fn X509_VERIFY_PARAM_set1(
20525        to: *mut X509_VERIFY_PARAM,
20526        from: *const X509_VERIFY_PARAM,
20527    ) -> ::std::os::raw::c_int;
20528}
20529extern "C" {
20530    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set_flags"]
20531    pub fn X509_VERIFY_PARAM_set_flags(
20532        param: *mut X509_VERIFY_PARAM,
20533        flags: ::std::os::raw::c_ulong,
20534    ) -> ::std::os::raw::c_int;
20535}
20536extern "C" {
20537    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_clear_flags"]
20538    pub fn X509_VERIFY_PARAM_clear_flags(
20539        param: *mut X509_VERIFY_PARAM,
20540        flags: ::std::os::raw::c_ulong,
20541    ) -> ::std::os::raw::c_int;
20542}
20543extern "C" {
20544    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_get_flags"]
20545    pub fn X509_VERIFY_PARAM_get_flags(param: *const X509_VERIFY_PARAM) -> ::std::os::raw::c_ulong;
20546}
20547extern "C" {
20548    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set_depth"]
20549    pub fn X509_VERIFY_PARAM_set_depth(param: *mut X509_VERIFY_PARAM, depth: ::std::os::raw::c_int);
20550}
20551extern "C" {
20552    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_get_depth"]
20553    pub fn X509_VERIFY_PARAM_get_depth(param: *const X509_VERIFY_PARAM) -> ::std::os::raw::c_int;
20554}
20555extern "C" {
20556    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set_time"]
20557    pub fn X509_VERIFY_PARAM_set_time(param: *mut X509_VERIFY_PARAM, t: time_t);
20558}
20559extern "C" {
20560    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set_time_posix"]
20561    pub fn X509_VERIFY_PARAM_set_time_posix(param: *mut X509_VERIFY_PARAM, t: i64);
20562}
20563extern "C" {
20564    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_add0_policy"]
20565    pub fn X509_VERIFY_PARAM_add0_policy(
20566        param: *mut X509_VERIFY_PARAM,
20567        policy: *mut ASN1_OBJECT,
20568    ) -> ::std::os::raw::c_int;
20569}
20570extern "C" {
20571    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set1_policies"]
20572    pub fn X509_VERIFY_PARAM_set1_policies(
20573        param: *mut X509_VERIFY_PARAM,
20574        policies: *const stack_st_ASN1_OBJECT,
20575    ) -> ::std::os::raw::c_int;
20576}
20577extern "C" {
20578    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set1_host"]
20579    pub fn X509_VERIFY_PARAM_set1_host(
20580        param: *mut X509_VERIFY_PARAM,
20581        name: *const ::std::os::raw::c_char,
20582        name_len: usize,
20583    ) -> ::std::os::raw::c_int;
20584}
20585extern "C" {
20586    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_add1_host"]
20587    pub fn X509_VERIFY_PARAM_add1_host(
20588        param: *mut X509_VERIFY_PARAM,
20589        name: *const ::std::os::raw::c_char,
20590        name_len: usize,
20591    ) -> ::std::os::raw::c_int;
20592}
20593extern "C" {
20594    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set_hostflags"]
20595    pub fn X509_VERIFY_PARAM_set_hostflags(
20596        param: *mut X509_VERIFY_PARAM,
20597        flags: ::std::os::raw::c_uint,
20598    );
20599}
20600extern "C" {
20601    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set1_email"]
20602    pub fn X509_VERIFY_PARAM_set1_email(
20603        param: *mut X509_VERIFY_PARAM,
20604        email: *const ::std::os::raw::c_char,
20605        email_len: usize,
20606    ) -> ::std::os::raw::c_int;
20607}
20608extern "C" {
20609    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set1_ip"]
20610    pub fn X509_VERIFY_PARAM_set1_ip(
20611        param: *mut X509_VERIFY_PARAM,
20612        ip: *const u8,
20613        ip_len: usize,
20614    ) -> ::std::os::raw::c_int;
20615}
20616extern "C" {
20617    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set1_ip_asc"]
20618    pub fn X509_VERIFY_PARAM_set1_ip_asc(
20619        param: *mut X509_VERIFY_PARAM,
20620        ipasc: *const ::std::os::raw::c_char,
20621    ) -> ::std::os::raw::c_int;
20622}
20623extern "C" {
20624    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set_purpose"]
20625    pub fn X509_VERIFY_PARAM_set_purpose(
20626        param: *mut X509_VERIFY_PARAM,
20627        purpose: ::std::os::raw::c_int,
20628    ) -> ::std::os::raw::c_int;
20629}
20630extern "C" {
20631    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_VERIFY_PARAM_set_trust"]
20632    pub fn X509_VERIFY_PARAM_set_trust(
20633        param: *mut X509_VERIFY_PARAM,
20634        trust: ::std::os::raw::c_int,
20635    ) -> ::std::os::raw::c_int;
20636}
20637#[repr(C)]
20638#[derive(Debug, Copy, Clone, PartialEq, Eq)]
20639pub struct Netscape_spki_st {
20640    pub spkac: *mut NETSCAPE_SPKAC,
20641    pub sig_algor: *mut X509_ALGOR,
20642    pub signature: *mut ASN1_BIT_STRING,
20643}
20644#[test]
20645fn bindgen_test_layout_Netscape_spki_st() {
20646    const UNINIT: ::std::mem::MaybeUninit<Netscape_spki_st> = ::std::mem::MaybeUninit::uninit();
20647    let ptr = UNINIT.as_ptr();
20648    assert_eq!(
20649        ::std::mem::size_of::<Netscape_spki_st>(),
20650        24usize,
20651        "Size of Netscape_spki_st"
20652    );
20653    assert_eq!(
20654        ::std::mem::align_of::<Netscape_spki_st>(),
20655        8usize,
20656        "Alignment of Netscape_spki_st"
20657    );
20658    assert_eq!(
20659        unsafe { ::std::ptr::addr_of!((*ptr).spkac) as usize - ptr as usize },
20660        0usize,
20661        "Offset of field: Netscape_spki_st::spkac"
20662    );
20663    assert_eq!(
20664        unsafe { ::std::ptr::addr_of!((*ptr).sig_algor) as usize - ptr as usize },
20665        8usize,
20666        "Offset of field: Netscape_spki_st::sig_algor"
20667    );
20668    assert_eq!(
20669        unsafe { ::std::ptr::addr_of!((*ptr).signature) as usize - ptr as usize },
20670        16usize,
20671        "Offset of field: Netscape_spki_st::signature"
20672    );
20673}
20674impl Default for Netscape_spki_st {
20675    fn default() -> Self {
20676        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20677        unsafe {
20678            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20679            s.assume_init()
20680        }
20681    }
20682}
20683extern "C" {
20684    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_it"]
20685    pub static NETSCAPE_SPKI_it: ASN1_ITEM;
20686}
20687extern "C" {
20688    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_new"]
20689    pub fn NETSCAPE_SPKI_new() -> *mut NETSCAPE_SPKI;
20690}
20691extern "C" {
20692    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_free"]
20693    pub fn NETSCAPE_SPKI_free(spki: *mut NETSCAPE_SPKI);
20694}
20695extern "C" {
20696    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_NETSCAPE_SPKI"]
20697    pub fn d2i_NETSCAPE_SPKI(
20698        out: *mut *mut NETSCAPE_SPKI,
20699        inp: *mut *const u8,
20700        len: ::std::os::raw::c_long,
20701    ) -> *mut NETSCAPE_SPKI;
20702}
20703extern "C" {
20704    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_NETSCAPE_SPKI"]
20705    pub fn i2d_NETSCAPE_SPKI(
20706        spki: *const NETSCAPE_SPKI,
20707        outp: *mut *mut u8,
20708    ) -> ::std::os::raw::c_int;
20709}
20710extern "C" {
20711    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_verify"]
20712    pub fn NETSCAPE_SPKI_verify(
20713        spki: *mut NETSCAPE_SPKI,
20714        pkey: *mut EVP_PKEY,
20715    ) -> ::std::os::raw::c_int;
20716}
20717extern "C" {
20718    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_b64_decode"]
20719    pub fn NETSCAPE_SPKI_b64_decode(
20720        str_: *const ::std::os::raw::c_char,
20721        len: ossl_ssize_t,
20722    ) -> *mut NETSCAPE_SPKI;
20723}
20724extern "C" {
20725    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_b64_encode"]
20726    pub fn NETSCAPE_SPKI_b64_encode(spki: *mut NETSCAPE_SPKI) -> *mut ::std::os::raw::c_char;
20727}
20728extern "C" {
20729    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_get_pubkey"]
20730    pub fn NETSCAPE_SPKI_get_pubkey(spki: *const NETSCAPE_SPKI) -> *mut EVP_PKEY;
20731}
20732extern "C" {
20733    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_set_pubkey"]
20734    pub fn NETSCAPE_SPKI_set_pubkey(
20735        spki: *mut NETSCAPE_SPKI,
20736        pkey: *mut EVP_PKEY,
20737    ) -> ::std::os::raw::c_int;
20738}
20739extern "C" {
20740    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_sign"]
20741    pub fn NETSCAPE_SPKI_sign(
20742        spki: *mut NETSCAPE_SPKI,
20743        pkey: *mut EVP_PKEY,
20744        md: *const EVP_MD,
20745    ) -> ::std::os::raw::c_int;
20746}
20747#[repr(C)]
20748#[derive(Debug, Copy, Clone, PartialEq, Eq)]
20749pub struct Netscape_spkac_st {
20750    pub pubkey: *mut X509_PUBKEY,
20751    pub challenge: *mut ASN1_IA5STRING,
20752}
20753#[test]
20754fn bindgen_test_layout_Netscape_spkac_st() {
20755    const UNINIT: ::std::mem::MaybeUninit<Netscape_spkac_st> = ::std::mem::MaybeUninit::uninit();
20756    let ptr = UNINIT.as_ptr();
20757    assert_eq!(
20758        ::std::mem::size_of::<Netscape_spkac_st>(),
20759        16usize,
20760        "Size of Netscape_spkac_st"
20761    );
20762    assert_eq!(
20763        ::std::mem::align_of::<Netscape_spkac_st>(),
20764        8usize,
20765        "Alignment of Netscape_spkac_st"
20766    );
20767    assert_eq!(
20768        unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize },
20769        0usize,
20770        "Offset of field: Netscape_spkac_st::pubkey"
20771    );
20772    assert_eq!(
20773        unsafe { ::std::ptr::addr_of!((*ptr).challenge) as usize - ptr as usize },
20774        8usize,
20775        "Offset of field: Netscape_spkac_st::challenge"
20776    );
20777}
20778impl Default for Netscape_spkac_st {
20779    fn default() -> Self {
20780        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20781        unsafe {
20782            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20783            s.assume_init()
20784        }
20785    }
20786}
20787extern "C" {
20788    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKAC_it"]
20789    pub static NETSCAPE_SPKAC_it: ASN1_ITEM;
20790}
20791extern "C" {
20792    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKAC_new"]
20793    pub fn NETSCAPE_SPKAC_new() -> *mut NETSCAPE_SPKAC;
20794}
20795extern "C" {
20796    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKAC_free"]
20797    pub fn NETSCAPE_SPKAC_free(spkac: *mut NETSCAPE_SPKAC);
20798}
20799extern "C" {
20800    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_NETSCAPE_SPKAC"]
20801    pub fn d2i_NETSCAPE_SPKAC(
20802        out: *mut *mut NETSCAPE_SPKAC,
20803        inp: *mut *const u8,
20804        len: ::std::os::raw::c_long,
20805    ) -> *mut NETSCAPE_SPKAC;
20806}
20807extern "C" {
20808    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_NETSCAPE_SPKAC"]
20809    pub fn i2d_NETSCAPE_SPKAC(
20810        spkac: *const NETSCAPE_SPKAC,
20811        outp: *mut *mut u8,
20812    ) -> ::std::os::raw::c_int;
20813}
20814extern "C" {
20815    #[link_name = "\u{1}aws_lc_fips_0_13_10_NETSCAPE_SPKI_print"]
20816    pub fn NETSCAPE_SPKI_print(out: *mut BIO, spki: *mut NETSCAPE_SPKI) -> ::std::os::raw::c_int;
20817}
20818#[repr(C)]
20819#[derive(Debug, Copy, Clone, PartialEq, Eq)]
20820pub struct rsa_pss_params_st {
20821    pub hashAlgorithm: *mut X509_ALGOR,
20822    pub maskGenAlgorithm: *mut X509_ALGOR,
20823    pub saltLength: *mut ASN1_INTEGER,
20824    pub trailerField: *mut ASN1_INTEGER,
20825    pub maskHash: *mut X509_ALGOR,
20826}
20827#[test]
20828fn bindgen_test_layout_rsa_pss_params_st() {
20829    const UNINIT: ::std::mem::MaybeUninit<rsa_pss_params_st> = ::std::mem::MaybeUninit::uninit();
20830    let ptr = UNINIT.as_ptr();
20831    assert_eq!(
20832        ::std::mem::size_of::<rsa_pss_params_st>(),
20833        40usize,
20834        "Size of rsa_pss_params_st"
20835    );
20836    assert_eq!(
20837        ::std::mem::align_of::<rsa_pss_params_st>(),
20838        8usize,
20839        "Alignment of rsa_pss_params_st"
20840    );
20841    assert_eq!(
20842        unsafe { ::std::ptr::addr_of!((*ptr).hashAlgorithm) as usize - ptr as usize },
20843        0usize,
20844        "Offset of field: rsa_pss_params_st::hashAlgorithm"
20845    );
20846    assert_eq!(
20847        unsafe { ::std::ptr::addr_of!((*ptr).maskGenAlgorithm) as usize - ptr as usize },
20848        8usize,
20849        "Offset of field: rsa_pss_params_st::maskGenAlgorithm"
20850    );
20851    assert_eq!(
20852        unsafe { ::std::ptr::addr_of!((*ptr).saltLength) as usize - ptr as usize },
20853        16usize,
20854        "Offset of field: rsa_pss_params_st::saltLength"
20855    );
20856    assert_eq!(
20857        unsafe { ::std::ptr::addr_of!((*ptr).trailerField) as usize - ptr as usize },
20858        24usize,
20859        "Offset of field: rsa_pss_params_st::trailerField"
20860    );
20861    assert_eq!(
20862        unsafe { ::std::ptr::addr_of!((*ptr).maskHash) as usize - ptr as usize },
20863        32usize,
20864        "Offset of field: rsa_pss_params_st::maskHash"
20865    );
20866}
20867impl Default for rsa_pss_params_st {
20868    fn default() -> Self {
20869        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
20870        unsafe {
20871            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
20872            s.assume_init()
20873        }
20874    }
20875}
20876extern "C" {
20877    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_PSS_PARAMS_it"]
20878    pub static RSA_PSS_PARAMS_it: ASN1_ITEM;
20879}
20880extern "C" {
20881    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_PSS_PARAMS_new"]
20882    pub fn RSA_PSS_PARAMS_new() -> *mut RSA_PSS_PARAMS;
20883}
20884extern "C" {
20885    #[link_name = "\u{1}aws_lc_fips_0_13_10_RSA_PSS_PARAMS_free"]
20886    pub fn RSA_PSS_PARAMS_free(params: *mut RSA_PSS_PARAMS);
20887}
20888extern "C" {
20889    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSA_PSS_PARAMS"]
20890    pub fn d2i_RSA_PSS_PARAMS(
20891        out: *mut *mut RSA_PSS_PARAMS,
20892        inp: *mut *const u8,
20893        len: ::std::os::raw::c_long,
20894    ) -> *mut RSA_PSS_PARAMS;
20895}
20896extern "C" {
20897    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSA_PSS_PARAMS"]
20898    pub fn i2d_RSA_PSS_PARAMS(
20899        in_: *const RSA_PSS_PARAMS,
20900        outp: *mut *mut u8,
20901    ) -> ::std::os::raw::c_int;
20902}
20903extern "C" {
20904    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS8_PRIV_KEY_INFO_it"]
20905    pub static PKCS8_PRIV_KEY_INFO_it: ASN1_ITEM;
20906}
20907extern "C" {
20908    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS8_PRIV_KEY_INFO_new"]
20909    pub fn PKCS8_PRIV_KEY_INFO_new() -> *mut PKCS8_PRIV_KEY_INFO;
20910}
20911extern "C" {
20912    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS8_PRIV_KEY_INFO_free"]
20913    pub fn PKCS8_PRIV_KEY_INFO_free(key: *mut PKCS8_PRIV_KEY_INFO);
20914}
20915extern "C" {
20916    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS8_PRIV_KEY_INFO"]
20917    pub fn d2i_PKCS8_PRIV_KEY_INFO(
20918        out: *mut *mut PKCS8_PRIV_KEY_INFO,
20919        inp: *mut *const u8,
20920        len: ::std::os::raw::c_long,
20921    ) -> *mut PKCS8_PRIV_KEY_INFO;
20922}
20923extern "C" {
20924    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8_PRIV_KEY_INFO"]
20925    pub fn i2d_PKCS8_PRIV_KEY_INFO(
20926        key: *const PKCS8_PRIV_KEY_INFO,
20927        outp: *mut *mut u8,
20928    ) -> ::std::os::raw::c_int;
20929}
20930extern "C" {
20931    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKCS82PKEY"]
20932    pub fn EVP_PKCS82PKEY(p8: *const PKCS8_PRIV_KEY_INFO) -> *mut EVP_PKEY;
20933}
20934extern "C" {
20935    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY2PKCS8"]
20936    pub fn EVP_PKEY2PKCS8(pkey: *const EVP_PKEY) -> *mut PKCS8_PRIV_KEY_INFO;
20937}
20938extern "C" {
20939    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_SIG_it"]
20940    pub static X509_SIG_it: ASN1_ITEM;
20941}
20942extern "C" {
20943    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_SIG_new"]
20944    pub fn X509_SIG_new() -> *mut X509_SIG;
20945}
20946extern "C" {
20947    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_SIG_free"]
20948    pub fn X509_SIG_free(key: *mut X509_SIG);
20949}
20950extern "C" {
20951    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_SIG"]
20952    pub fn d2i_X509_SIG(
20953        out: *mut *mut X509_SIG,
20954        inp: *mut *const u8,
20955        len: ::std::os::raw::c_long,
20956    ) -> *mut X509_SIG;
20957}
20958extern "C" {
20959    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_SIG"]
20960    pub fn i2d_X509_SIG(sig: *const X509_SIG, outp: *mut *mut u8) -> ::std::os::raw::c_int;
20961}
20962extern "C" {
20963    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_SIG_get0"]
20964    pub fn X509_SIG_get0(
20965        sig: *const X509_SIG,
20966        out_alg: *mut *const X509_ALGOR,
20967        out_digest: *mut *const ASN1_OCTET_STRING,
20968    );
20969}
20970extern "C" {
20971    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_SIG_getm"]
20972    pub fn X509_SIG_getm(
20973        sig: *mut X509_SIG,
20974        out_alg: *mut *mut X509_ALGOR,
20975        out_digest: *mut *mut ASN1_OCTET_STRING,
20976    );
20977}
20978extern "C" {
20979    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_print_ex"]
20980    pub fn X509_print_ex(
20981        bp: *mut BIO,
20982        x: *mut X509,
20983        nmflag: ::std::os::raw::c_ulong,
20984        cflag: ::std::os::raw::c_ulong,
20985    ) -> ::std::os::raw::c_int;
20986}
20987extern "C" {
20988    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_print_ex_fp"]
20989    pub fn X509_print_ex_fp(
20990        fp: *mut FILE,
20991        x: *mut X509,
20992        nmflag: ::std::os::raw::c_ulong,
20993        cflag: ::std::os::raw::c_ulong,
20994    ) -> ::std::os::raw::c_int;
20995}
20996extern "C" {
20997    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_print"]
20998    pub fn X509_print(bp: *mut BIO, x: *mut X509) -> ::std::os::raw::c_int;
20999}
21000extern "C" {
21001    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_print_fp"]
21002    pub fn X509_print_fp(fp: *mut FILE, x: *mut X509) -> ::std::os::raw::c_int;
21003}
21004extern "C" {
21005    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_print"]
21006    pub fn X509_CRL_print(bp: *mut BIO, x: *mut X509_CRL) -> ::std::os::raw::c_int;
21007}
21008extern "C" {
21009    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_print_fp"]
21010    pub fn X509_CRL_print_fp(fp: *mut FILE, x: *mut X509_CRL) -> ::std::os::raw::c_int;
21011}
21012extern "C" {
21013    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_print_ex"]
21014    pub fn X509_REQ_print_ex(
21015        bp: *mut BIO,
21016        x: *mut X509_REQ,
21017        nmflag: ::std::os::raw::c_ulong,
21018        cflag: ::std::os::raw::c_ulong,
21019    ) -> ::std::os::raw::c_int;
21020}
21021extern "C" {
21022    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_print"]
21023    pub fn X509_REQ_print(bp: *mut BIO, req: *mut X509_REQ) -> ::std::os::raw::c_int;
21024}
21025extern "C" {
21026    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_print_fp"]
21027    pub fn X509_REQ_print_fp(fp: *mut FILE, req: *mut X509_REQ) -> ::std::os::raw::c_int;
21028}
21029extern "C" {
21030    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_print_ex"]
21031    pub fn X509_NAME_print_ex(
21032        out: *mut BIO,
21033        nm: *const X509_NAME,
21034        indent: ::std::os::raw::c_int,
21035        flags: ::std::os::raw::c_ulong,
21036    ) -> ::std::os::raw::c_int;
21037}
21038extern "C" {
21039    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_print"]
21040    pub fn X509_NAME_print(
21041        bp: *mut BIO,
21042        name: *const X509_NAME,
21043        obase: ::std::os::raw::c_int,
21044    ) -> ::std::os::raw::c_int;
21045}
21046extern "C" {
21047    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_oneline"]
21048    pub fn X509_NAME_oneline(
21049        name: *const X509_NAME,
21050        buf: *mut ::std::os::raw::c_char,
21051        size: ::std::os::raw::c_int,
21052    ) -> *mut ::std::os::raw::c_char;
21053}
21054extern "C" {
21055    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_print_ex_fp"]
21056    pub fn X509_NAME_print_ex_fp(
21057        fp: *mut FILE,
21058        nm: *const X509_NAME,
21059        indent: ::std::os::raw::c_int,
21060        flags: ::std::os::raw::c_ulong,
21061    ) -> ::std::os::raw::c_int;
21062}
21063extern "C" {
21064    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_signature_dump"]
21065    pub fn X509_signature_dump(
21066        bio: *mut BIO,
21067        sig: *const ASN1_STRING,
21068        indent: ::std::os::raw::c_int,
21069    ) -> ::std::os::raw::c_int;
21070}
21071extern "C" {
21072    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_signature_print"]
21073    pub fn X509_signature_print(
21074        bio: *mut BIO,
21075        alg: *const X509_ALGOR,
21076        sig: *const ASN1_STRING,
21077    ) -> ::std::os::raw::c_int;
21078}
21079extern "C" {
21080    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_print"]
21081    pub fn X509V3_EXT_print(
21082        out: *mut BIO,
21083        ext: *const X509_EXTENSION,
21084        flag: ::std::os::raw::c_ulong,
21085        indent: ::std::os::raw::c_int,
21086    ) -> ::std::os::raw::c_int;
21087}
21088extern "C" {
21089    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_print_fp"]
21090    pub fn X509V3_EXT_print_fp(
21091        out: *mut FILE,
21092        ext: *const X509_EXTENSION,
21093        flag: ::std::os::raw::c_int,
21094        indent: ::std::os::raw::c_int,
21095    ) -> ::std::os::raw::c_int;
21096}
21097extern "C" {
21098    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_extensions_print"]
21099    pub fn X509V3_extensions_print(
21100        out: *mut BIO,
21101        title: *const ::std::os::raw::c_char,
21102        exts: *const stack_st_X509_EXTENSION,
21103        flag: ::std::os::raw::c_ulong,
21104        indent: ::std::os::raw::c_int,
21105    ) -> ::std::os::raw::c_int;
21106}
21107extern "C" {
21108    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_NAME_print"]
21109    pub fn GENERAL_NAME_print(out: *mut BIO, gen_: *const GENERAL_NAME) -> ::std::os::raw::c_int;
21110}
21111extern "C" {
21112    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_pubkey_digest"]
21113    pub fn X509_pubkey_digest(
21114        x509: *const X509,
21115        md: *const EVP_MD,
21116        out: *mut u8,
21117        out_len: *mut ::std::os::raw::c_uint,
21118    ) -> ::std::os::raw::c_int;
21119}
21120extern "C" {
21121    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_digest"]
21122    pub fn X509_digest(
21123        x509: *const X509,
21124        md: *const EVP_MD,
21125        out: *mut u8,
21126        out_len: *mut ::std::os::raw::c_uint,
21127    ) -> ::std::os::raw::c_int;
21128}
21129extern "C" {
21130    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_digest"]
21131    pub fn X509_CRL_digest(
21132        crl: *const X509_CRL,
21133        md: *const EVP_MD,
21134        out: *mut u8,
21135        out_len: *mut ::std::os::raw::c_uint,
21136    ) -> ::std::os::raw::c_int;
21137}
21138extern "C" {
21139    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_REQ_digest"]
21140    pub fn X509_REQ_digest(
21141        req: *const X509_REQ,
21142        md: *const EVP_MD,
21143        out: *mut u8,
21144        out_len: *mut ::std::os::raw::c_uint,
21145    ) -> ::std::os::raw::c_int;
21146}
21147extern "C" {
21148    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_digest"]
21149    pub fn X509_NAME_digest(
21150        name: *const X509_NAME,
21151        md: *const EVP_MD,
21152        out: *mut u8,
21153        out_len: *mut ::std::os::raw::c_uint,
21154    ) -> ::std::os::raw::c_int;
21155}
21156extern "C" {
21157    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_bio"]
21158    pub fn d2i_X509_bio(bp: *mut BIO, x509: *mut *mut X509) -> *mut X509;
21159}
21160extern "C" {
21161    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_CRL_bio"]
21162    pub fn d2i_X509_CRL_bio(bp: *mut BIO, crl: *mut *mut X509_CRL) -> *mut X509_CRL;
21163}
21164extern "C" {
21165    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_REQ_bio"]
21166    pub fn d2i_X509_REQ_bio(bp: *mut BIO, req: *mut *mut X509_REQ) -> *mut X509_REQ;
21167}
21168extern "C" {
21169    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSAPrivateKey_bio"]
21170    pub fn d2i_RSAPrivateKey_bio(bp: *mut BIO, rsa: *mut *mut RSA) -> *mut RSA;
21171}
21172extern "C" {
21173    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSAPublicKey_bio"]
21174    pub fn d2i_RSAPublicKey_bio(bp: *mut BIO, rsa: *mut *mut RSA) -> *mut RSA;
21175}
21176extern "C" {
21177    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSA_PUBKEY_bio"]
21178    pub fn d2i_RSA_PUBKEY_bio(bp: *mut BIO, rsa: *mut *mut RSA) -> *mut RSA;
21179}
21180extern "C" {
21181    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSA_PUBKEY_bio"]
21182    pub fn d2i_DSA_PUBKEY_bio(bp: *mut BIO, dsa: *mut *mut DSA) -> *mut DSA;
21183}
21184extern "C" {
21185    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSAPrivateKey_bio"]
21186    pub fn d2i_DSAPrivateKey_bio(bp: *mut BIO, dsa: *mut *mut DSA) -> *mut DSA;
21187}
21188extern "C" {
21189    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_EC_PUBKEY_bio"]
21190    pub fn d2i_EC_PUBKEY_bio(bp: *mut BIO, eckey: *mut *mut EC_KEY) -> *mut EC_KEY;
21191}
21192extern "C" {
21193    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ECPrivateKey_bio"]
21194    pub fn d2i_ECPrivateKey_bio(bp: *mut BIO, eckey: *mut *mut EC_KEY) -> *mut EC_KEY;
21195}
21196extern "C" {
21197    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS8_bio"]
21198    pub fn d2i_PKCS8_bio(bp: *mut BIO, p8: *mut *mut X509_SIG) -> *mut X509_SIG;
21199}
21200extern "C" {
21201    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS8_PRIV_KEY_INFO_bio"]
21202    pub fn d2i_PKCS8_PRIV_KEY_INFO_bio(
21203        bp: *mut BIO,
21204        p8inf: *mut *mut PKCS8_PRIV_KEY_INFO,
21205    ) -> *mut PKCS8_PRIV_KEY_INFO;
21206}
21207extern "C" {
21208    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PUBKEY_bio"]
21209    pub fn d2i_PUBKEY_bio(bp: *mut BIO, a: *mut *mut EVP_PKEY) -> *mut EVP_PKEY;
21210}
21211extern "C" {
21212    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DHparams_bio"]
21213    pub fn d2i_DHparams_bio(bp: *mut BIO, dh: *mut *mut DH) -> *mut DH;
21214}
21215extern "C" {
21216    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PrivateKey_bio"]
21217    pub fn d2i_PrivateKey_bio(bp: *mut BIO, a: *mut *mut EVP_PKEY) -> *mut EVP_PKEY;
21218}
21219extern "C" {
21220    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_bio"]
21221    pub fn i2d_X509_bio(bp: *mut BIO, x509: *mut X509) -> ::std::os::raw::c_int;
21222}
21223extern "C" {
21224    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_CRL_bio"]
21225    pub fn i2d_X509_CRL_bio(bp: *mut BIO, crl: *mut X509_CRL) -> ::std::os::raw::c_int;
21226}
21227extern "C" {
21228    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_REQ_bio"]
21229    pub fn i2d_X509_REQ_bio(bp: *mut BIO, req: *mut X509_REQ) -> ::std::os::raw::c_int;
21230}
21231extern "C" {
21232    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSAPrivateKey_bio"]
21233    pub fn i2d_RSAPrivateKey_bio(bp: *mut BIO, rsa: *mut RSA) -> ::std::os::raw::c_int;
21234}
21235extern "C" {
21236    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSAPublicKey_bio"]
21237    pub fn i2d_RSAPublicKey_bio(bp: *mut BIO, rsa: *mut RSA) -> ::std::os::raw::c_int;
21238}
21239extern "C" {
21240    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSA_PUBKEY_bio"]
21241    pub fn i2d_RSA_PUBKEY_bio(bp: *mut BIO, rsa: *mut RSA) -> ::std::os::raw::c_int;
21242}
21243extern "C" {
21244    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSA_PUBKEY_bio"]
21245    pub fn i2d_DSA_PUBKEY_bio(bp: *mut BIO, dsa: *mut DSA) -> ::std::os::raw::c_int;
21246}
21247extern "C" {
21248    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSAPrivateKey_bio"]
21249    pub fn i2d_DSAPrivateKey_bio(bp: *mut BIO, dsa: *mut DSA) -> ::std::os::raw::c_int;
21250}
21251extern "C" {
21252    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_EC_PUBKEY_bio"]
21253    pub fn i2d_EC_PUBKEY_bio(bp: *mut BIO, eckey: *mut EC_KEY) -> ::std::os::raw::c_int;
21254}
21255extern "C" {
21256    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ECPrivateKey_bio"]
21257    pub fn i2d_ECPrivateKey_bio(bp: *mut BIO, eckey: *mut EC_KEY) -> ::std::os::raw::c_int;
21258}
21259extern "C" {
21260    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8_bio"]
21261    pub fn i2d_PKCS8_bio(bp: *mut BIO, p8: *mut X509_SIG) -> ::std::os::raw::c_int;
21262}
21263extern "C" {
21264    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8_PRIV_KEY_INFO_bio"]
21265    pub fn i2d_PKCS8_PRIV_KEY_INFO_bio(
21266        bp: *mut BIO,
21267        p8inf: *mut PKCS8_PRIV_KEY_INFO,
21268    ) -> ::std::os::raw::c_int;
21269}
21270extern "C" {
21271    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PrivateKey_bio"]
21272    pub fn i2d_PrivateKey_bio(bp: *mut BIO, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
21273}
21274extern "C" {
21275    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PUBKEY_bio"]
21276    pub fn i2d_PUBKEY_bio(bp: *mut BIO, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
21277}
21278extern "C" {
21279    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DHparams_bio"]
21280    pub fn i2d_DHparams_bio(bp: *mut BIO, dh: *const DH) -> ::std::os::raw::c_int;
21281}
21282extern "C" {
21283    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8PrivateKeyInfo_bio"]
21284    pub fn i2d_PKCS8PrivateKeyInfo_bio(bp: *mut BIO, key: *mut EVP_PKEY) -> ::std::os::raw::c_int;
21285}
21286extern "C" {
21287    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_fp"]
21288    pub fn d2i_X509_fp(fp: *mut FILE, x509: *mut *mut X509) -> *mut X509;
21289}
21290extern "C" {
21291    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_CRL_fp"]
21292    pub fn d2i_X509_CRL_fp(fp: *mut FILE, crl: *mut *mut X509_CRL) -> *mut X509_CRL;
21293}
21294extern "C" {
21295    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_X509_REQ_fp"]
21296    pub fn d2i_X509_REQ_fp(fp: *mut FILE, req: *mut *mut X509_REQ) -> *mut X509_REQ;
21297}
21298extern "C" {
21299    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSAPrivateKey_fp"]
21300    pub fn d2i_RSAPrivateKey_fp(fp: *mut FILE, rsa: *mut *mut RSA) -> *mut RSA;
21301}
21302extern "C" {
21303    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSAPublicKey_fp"]
21304    pub fn d2i_RSAPublicKey_fp(fp: *mut FILE, rsa: *mut *mut RSA) -> *mut RSA;
21305}
21306extern "C" {
21307    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_RSA_PUBKEY_fp"]
21308    pub fn d2i_RSA_PUBKEY_fp(fp: *mut FILE, rsa: *mut *mut RSA) -> *mut RSA;
21309}
21310extern "C" {
21311    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSA_PUBKEY_fp"]
21312    pub fn d2i_DSA_PUBKEY_fp(fp: *mut FILE, dsa: *mut *mut DSA) -> *mut DSA;
21313}
21314extern "C" {
21315    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DSAPrivateKey_fp"]
21316    pub fn d2i_DSAPrivateKey_fp(fp: *mut FILE, dsa: *mut *mut DSA) -> *mut DSA;
21317}
21318extern "C" {
21319    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_EC_PUBKEY_fp"]
21320    pub fn d2i_EC_PUBKEY_fp(fp: *mut FILE, eckey: *mut *mut EC_KEY) -> *mut EC_KEY;
21321}
21322extern "C" {
21323    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ECPrivateKey_fp"]
21324    pub fn d2i_ECPrivateKey_fp(fp: *mut FILE, eckey: *mut *mut EC_KEY) -> *mut EC_KEY;
21325}
21326extern "C" {
21327    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS8_fp"]
21328    pub fn d2i_PKCS8_fp(fp: *mut FILE, p8: *mut *mut X509_SIG) -> *mut X509_SIG;
21329}
21330extern "C" {
21331    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS8_PRIV_KEY_INFO_fp"]
21332    pub fn d2i_PKCS8_PRIV_KEY_INFO_fp(
21333        fp: *mut FILE,
21334        p8inf: *mut *mut PKCS8_PRIV_KEY_INFO,
21335    ) -> *mut PKCS8_PRIV_KEY_INFO;
21336}
21337extern "C" {
21338    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PrivateKey_fp"]
21339    pub fn d2i_PrivateKey_fp(fp: *mut FILE, a: *mut *mut EVP_PKEY) -> *mut EVP_PKEY;
21340}
21341extern "C" {
21342    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PUBKEY_fp"]
21343    pub fn d2i_PUBKEY_fp(fp: *mut FILE, a: *mut *mut EVP_PKEY) -> *mut EVP_PKEY;
21344}
21345extern "C" {
21346    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_fp"]
21347    pub fn i2d_X509_fp(fp: *mut FILE, x509: *mut X509) -> ::std::os::raw::c_int;
21348}
21349extern "C" {
21350    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_CRL_fp"]
21351    pub fn i2d_X509_CRL_fp(fp: *mut FILE, crl: *mut X509_CRL) -> ::std::os::raw::c_int;
21352}
21353extern "C" {
21354    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_X509_REQ_fp"]
21355    pub fn i2d_X509_REQ_fp(fp: *mut FILE, req: *mut X509_REQ) -> ::std::os::raw::c_int;
21356}
21357extern "C" {
21358    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSAPrivateKey_fp"]
21359    pub fn i2d_RSAPrivateKey_fp(fp: *mut FILE, rsa: *mut RSA) -> ::std::os::raw::c_int;
21360}
21361extern "C" {
21362    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSAPublicKey_fp"]
21363    pub fn i2d_RSAPublicKey_fp(fp: *mut FILE, rsa: *mut RSA) -> ::std::os::raw::c_int;
21364}
21365extern "C" {
21366    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_RSA_PUBKEY_fp"]
21367    pub fn i2d_RSA_PUBKEY_fp(fp: *mut FILE, rsa: *mut RSA) -> ::std::os::raw::c_int;
21368}
21369extern "C" {
21370    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSA_PUBKEY_fp"]
21371    pub fn i2d_DSA_PUBKEY_fp(fp: *mut FILE, dsa: *mut DSA) -> ::std::os::raw::c_int;
21372}
21373extern "C" {
21374    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DSAPrivateKey_fp"]
21375    pub fn i2d_DSAPrivateKey_fp(fp: *mut FILE, dsa: *mut DSA) -> ::std::os::raw::c_int;
21376}
21377extern "C" {
21378    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_EC_PUBKEY_fp"]
21379    pub fn i2d_EC_PUBKEY_fp(fp: *mut FILE, eckey: *mut EC_KEY) -> ::std::os::raw::c_int;
21380}
21381extern "C" {
21382    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ECPrivateKey_fp"]
21383    pub fn i2d_ECPrivateKey_fp(fp: *mut FILE, eckey: *mut EC_KEY) -> ::std::os::raw::c_int;
21384}
21385extern "C" {
21386    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8_fp"]
21387    pub fn i2d_PKCS8_fp(fp: *mut FILE, p8: *mut X509_SIG) -> ::std::os::raw::c_int;
21388}
21389extern "C" {
21390    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8_PRIV_KEY_INFO_fp"]
21391    pub fn i2d_PKCS8_PRIV_KEY_INFO_fp(
21392        fp: *mut FILE,
21393        p8inf: *mut PKCS8_PRIV_KEY_INFO,
21394    ) -> ::std::os::raw::c_int;
21395}
21396extern "C" {
21397    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8PrivateKeyInfo_fp"]
21398    pub fn i2d_PKCS8PrivateKeyInfo_fp(fp: *mut FILE, key: *mut EVP_PKEY) -> ::std::os::raw::c_int;
21399}
21400extern "C" {
21401    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PrivateKey_fp"]
21402    pub fn i2d_PrivateKey_fp(fp: *mut FILE, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
21403}
21404extern "C" {
21405    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PUBKEY_fp"]
21406    pub fn i2d_PUBKEY_fp(fp: *mut FILE, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
21407}
21408extern "C" {
21409    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_find_by_issuer_and_serial"]
21410    pub fn X509_find_by_issuer_and_serial(
21411        sk: *const stack_st_X509,
21412        name: *mut X509_NAME,
21413        serial: *const ASN1_INTEGER,
21414    ) -> *mut X509;
21415}
21416extern "C" {
21417    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_find_by_subject"]
21418    pub fn X509_find_by_subject(sk: *const stack_st_X509, name: *mut X509_NAME) -> *mut X509;
21419}
21420extern "C" {
21421    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_cmp_time"]
21422    pub fn X509_cmp_time(s: *const ASN1_TIME, t: *const time_t) -> ::std::os::raw::c_int;
21423}
21424extern "C" {
21425    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_cmp_time_posix"]
21426    pub fn X509_cmp_time_posix(s: *const ASN1_TIME, t: i64) -> ::std::os::raw::c_int;
21427}
21428extern "C" {
21429    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_cmp_current_time"]
21430    pub fn X509_cmp_current_time(s: *const ASN1_TIME) -> ::std::os::raw::c_int;
21431}
21432extern "C" {
21433    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_time_adj"]
21434    pub fn X509_time_adj(
21435        s: *mut ASN1_TIME,
21436        offset_sec: ::std::os::raw::c_long,
21437        t: *const time_t,
21438    ) -> *mut ASN1_TIME;
21439}
21440extern "C" {
21441    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_time_adj_ex"]
21442    pub fn X509_time_adj_ex(
21443        s: *mut ASN1_TIME,
21444        offset_day: ::std::os::raw::c_int,
21445        offset_sec: ::std::os::raw::c_long,
21446        t: *const time_t,
21447    ) -> *mut ASN1_TIME;
21448}
21449extern "C" {
21450    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_gmtime_adj"]
21451    pub fn X509_gmtime_adj(s: *mut ASN1_TIME, offset_sec: ::std::os::raw::c_long)
21452        -> *mut ASN1_TIME;
21453}
21454extern "C" {
21455    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_issuer_name_cmp"]
21456    pub fn X509_issuer_name_cmp(a: *const X509, b: *const X509) -> ::std::os::raw::c_int;
21457}
21458extern "C" {
21459    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_subject_name_cmp"]
21460    pub fn X509_subject_name_cmp(a: *const X509, b: *const X509) -> ::std::os::raw::c_int;
21461}
21462extern "C" {
21463    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_cmp"]
21464    pub fn X509_CRL_cmp(a: *const X509_CRL, b: *const X509_CRL) -> ::std::os::raw::c_int;
21465}
21466extern "C" {
21467    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_issuer_name_hash"]
21468    pub fn X509_issuer_name_hash(x509: *mut X509) -> u32;
21469}
21470extern "C" {
21471    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_subject_name_hash"]
21472    pub fn X509_subject_name_hash(x509: *mut X509) -> u32;
21473}
21474extern "C" {
21475    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_issuer_name_hash_old"]
21476    pub fn X509_issuer_name_hash_old(x509: *mut X509) -> u32;
21477}
21478extern "C" {
21479    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_subject_name_hash_old"]
21480    pub fn X509_subject_name_hash_old(x509: *mut X509) -> u32;
21481}
21482extern "C" {
21483    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_ex_new_index"]
21484    pub fn X509_get_ex_new_index(
21485        argl: ::std::os::raw::c_long,
21486        argp: *mut ::std::os::raw::c_void,
21487        unused: *mut CRYPTO_EX_unused,
21488        dup_unused: CRYPTO_EX_dup,
21489        free_func: CRYPTO_EX_free,
21490    ) -> ::std::os::raw::c_int;
21491}
21492extern "C" {
21493    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set_ex_data"]
21494    pub fn X509_set_ex_data(
21495        r: *mut X509,
21496        idx: ::std::os::raw::c_int,
21497        arg: *mut ::std::os::raw::c_void,
21498    ) -> ::std::os::raw::c_int;
21499}
21500extern "C" {
21501    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_ex_data"]
21502    pub fn X509_get_ex_data(
21503        r: *mut X509,
21504        idx: ::std::os::raw::c_int,
21505    ) -> *mut ::std::os::raw::c_void;
21506}
21507extern "C" {
21508    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get_ex_new_index"]
21509    pub fn X509_STORE_CTX_get_ex_new_index(
21510        argl: ::std::os::raw::c_long,
21511        argp: *mut ::std::os::raw::c_void,
21512        unused: *mut CRYPTO_EX_unused,
21513        dup_unused: CRYPTO_EX_dup,
21514        free_func: CRYPTO_EX_free,
21515    ) -> ::std::os::raw::c_int;
21516}
21517extern "C" {
21518    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_ex_data"]
21519    pub fn X509_STORE_CTX_set_ex_data(
21520        ctx: *mut X509_STORE_CTX,
21521        idx: ::std::os::raw::c_int,
21522        data: *mut ::std::os::raw::c_void,
21523    ) -> ::std::os::raw::c_int;
21524}
21525extern "C" {
21526    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get_ex_data"]
21527    pub fn X509_STORE_CTX_get_ex_data(
21528        ctx: *mut X509_STORE_CTX,
21529        idx: ::std::os::raw::c_int,
21530    ) -> *mut ::std::os::raw::c_void;
21531}
21532extern "C" {
21533    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_get_ex_new_index"]
21534    pub fn X509_STORE_get_ex_new_index(
21535        argl: ::std::os::raw::c_long,
21536        argp: *mut ::std::os::raw::c_void,
21537        unused: *mut CRYPTO_EX_unused,
21538        dup_unused: CRYPTO_EX_dup,
21539        free_func: CRYPTO_EX_free,
21540    ) -> ::std::os::raw::c_int;
21541}
21542extern "C" {
21543    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_ex_data"]
21544    pub fn X509_STORE_set_ex_data(
21545        ctx: *mut X509_STORE,
21546        idx: ::std::os::raw::c_int,
21547        data: *mut ::std::os::raw::c_void,
21548    ) -> ::std::os::raw::c_int;
21549}
21550extern "C" {
21551    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_get_ex_data"]
21552    pub fn X509_STORE_get_ex_data(
21553        ctx: *mut X509_STORE,
21554        idx: ::std::os::raw::c_int,
21555    ) -> *mut ::std::os::raw::c_void;
21556}
21557extern "C" {
21558    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_digest"]
21559    pub fn ASN1_digest(
21560        i2d: i2d_of_void,
21561        type_: *const EVP_MD,
21562        data: *mut ::std::os::raw::c_char,
21563        md: *mut ::std::os::raw::c_uchar,
21564        len: *mut ::std::os::raw::c_uint,
21565    ) -> ::std::os::raw::c_int;
21566}
21567extern "C" {
21568    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_digest"]
21569    pub fn ASN1_item_digest(
21570        it: *const ASN1_ITEM,
21571        type_: *const EVP_MD,
21572        data: *mut ::std::os::raw::c_void,
21573        md: *mut ::std::os::raw::c_uchar,
21574        len: *mut ::std::os::raw::c_uint,
21575    ) -> ::std::os::raw::c_int;
21576}
21577extern "C" {
21578    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_verify"]
21579    pub fn ASN1_item_verify(
21580        it: *const ASN1_ITEM,
21581        algor1: *const X509_ALGOR,
21582        signature: *const ASN1_BIT_STRING,
21583        data: *mut ::std::os::raw::c_void,
21584        pkey: *mut EVP_PKEY,
21585    ) -> ::std::os::raw::c_int;
21586}
21587extern "C" {
21588    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_sign"]
21589    pub fn ASN1_item_sign(
21590        it: *const ASN1_ITEM,
21591        algor1: *mut X509_ALGOR,
21592        algor2: *mut X509_ALGOR,
21593        signature: *mut ASN1_BIT_STRING,
21594        data: *mut ::std::os::raw::c_void,
21595        pkey: *mut EVP_PKEY,
21596        type_: *const EVP_MD,
21597    ) -> ::std::os::raw::c_int;
21598}
21599extern "C" {
21600    #[link_name = "\u{1}aws_lc_fips_0_13_10_ASN1_item_sign_ctx"]
21601    pub fn ASN1_item_sign_ctx(
21602        it: *const ASN1_ITEM,
21603        algor1: *mut X509_ALGOR,
21604        algor2: *mut X509_ALGOR,
21605        signature: *mut ASN1_BIT_STRING,
21606        asn: *mut ::std::os::raw::c_void,
21607        ctx: *mut EVP_MD_CTX,
21608    ) -> ::std::os::raw::c_int;
21609}
21610extern "C" {
21611    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_supported_extension"]
21612    pub fn X509_supported_extension(ex: *const X509_EXTENSION) -> ::std::os::raw::c_int;
21613}
21614extern "C" {
21615    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_ca"]
21616    pub fn X509_check_ca(x509: *mut X509) -> ::std::os::raw::c_int;
21617}
21618extern "C" {
21619    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_issued"]
21620    pub fn X509_check_issued(issuer: *mut X509, subject: *mut X509) -> ::std::os::raw::c_int;
21621}
21622extern "C" {
21623    #[link_name = "\u{1}aws_lc_fips_0_13_10_NAME_CONSTRAINTS_check"]
21624    pub fn NAME_CONSTRAINTS_check(
21625        x509: *mut X509,
21626        nc: *mut NAME_CONSTRAINTS,
21627    ) -> ::std::os::raw::c_int;
21628}
21629extern "C" {
21630    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_host"]
21631    pub fn X509_check_host(
21632        x509: *const X509,
21633        chk: *const ::std::os::raw::c_char,
21634        chklen: usize,
21635        flags: ::std::os::raw::c_uint,
21636        out_peername: *mut *mut ::std::os::raw::c_char,
21637    ) -> ::std::os::raw::c_int;
21638}
21639extern "C" {
21640    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_email"]
21641    pub fn X509_check_email(
21642        x509: *const X509,
21643        chk: *const ::std::os::raw::c_char,
21644        chklen: usize,
21645        flags: ::std::os::raw::c_uint,
21646    ) -> ::std::os::raw::c_int;
21647}
21648extern "C" {
21649    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_ip"]
21650    pub fn X509_check_ip(
21651        x509: *const X509,
21652        chk: *const u8,
21653        chklen: usize,
21654        flags: ::std::os::raw::c_uint,
21655    ) -> ::std::os::raw::c_int;
21656}
21657extern "C" {
21658    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_ip_asc"]
21659    pub fn X509_check_ip_asc(
21660        x509: *const X509,
21661        ipasc: *const ::std::os::raw::c_char,
21662        flags: ::std::os::raw::c_uint,
21663    ) -> ::std::os::raw::c_int;
21664}
21665extern "C" {
21666    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get1_issuer"]
21667    pub fn X509_STORE_CTX_get1_issuer(
21668        out_issuer: *mut *mut X509,
21669        ctx: *mut X509_STORE_CTX,
21670        x509: *mut X509,
21671    ) -> ::std::os::raw::c_int;
21672}
21673extern "C" {
21674    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_purpose"]
21675    pub fn X509_check_purpose(
21676        x509: *mut X509,
21677        purpose: ::std::os::raw::c_int,
21678        ca: ::std::os::raw::c_int,
21679    ) -> ::std::os::raw::c_int;
21680}
21681extern "C" {
21682    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_check_trust"]
21683    pub fn X509_check_trust(
21684        x509: *mut X509,
21685        id: ::std::os::raw::c_int,
21686        flags: ::std::os::raw::c_int,
21687    ) -> ::std::os::raw::c_int;
21688}
21689#[repr(C)]
21690#[derive(Debug, Copy, Clone, PartialEq, Eq)]
21691pub struct private_key_st {
21692    pub dec_pkey: *mut EVP_PKEY,
21693}
21694#[test]
21695fn bindgen_test_layout_private_key_st() {
21696    const UNINIT: ::std::mem::MaybeUninit<private_key_st> = ::std::mem::MaybeUninit::uninit();
21697    let ptr = UNINIT.as_ptr();
21698    assert_eq!(
21699        ::std::mem::size_of::<private_key_st>(),
21700        8usize,
21701        "Size of private_key_st"
21702    );
21703    assert_eq!(
21704        ::std::mem::align_of::<private_key_st>(),
21705        8usize,
21706        "Alignment of private_key_st"
21707    );
21708    assert_eq!(
21709        unsafe { ::std::ptr::addr_of!((*ptr).dec_pkey) as usize - ptr as usize },
21710        0usize,
21711        "Offset of field: private_key_st::dec_pkey"
21712    );
21713}
21714impl Default for private_key_st {
21715    fn default() -> Self {
21716        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21717        unsafe {
21718            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21719            s.assume_init()
21720        }
21721    }
21722}
21723#[repr(C)]
21724#[derive(Debug, Copy, Clone, PartialEq, Eq)]
21725pub struct X509_info_st {
21726    pub x509: *mut X509,
21727    pub crl: *mut X509_CRL,
21728    pub x_pkey: *mut X509_PKEY,
21729    pub enc_cipher: EVP_CIPHER_INFO,
21730    pub enc_len: ::std::os::raw::c_int,
21731    pub enc_data: *mut ::std::os::raw::c_char,
21732}
21733#[test]
21734fn bindgen_test_layout_X509_info_st() {
21735    const UNINIT: ::std::mem::MaybeUninit<X509_info_st> = ::std::mem::MaybeUninit::uninit();
21736    let ptr = UNINIT.as_ptr();
21737    assert_eq!(
21738        ::std::mem::size_of::<X509_info_st>(),
21739        64usize,
21740        "Size of X509_info_st"
21741    );
21742    assert_eq!(
21743        ::std::mem::align_of::<X509_info_st>(),
21744        8usize,
21745        "Alignment of X509_info_st"
21746    );
21747    assert_eq!(
21748        unsafe { ::std::ptr::addr_of!((*ptr).x509) as usize - ptr as usize },
21749        0usize,
21750        "Offset of field: X509_info_st::x509"
21751    );
21752    assert_eq!(
21753        unsafe { ::std::ptr::addr_of!((*ptr).crl) as usize - ptr as usize },
21754        8usize,
21755        "Offset of field: X509_info_st::crl"
21756    );
21757    assert_eq!(
21758        unsafe { ::std::ptr::addr_of!((*ptr).x_pkey) as usize - ptr as usize },
21759        16usize,
21760        "Offset of field: X509_info_st::x_pkey"
21761    );
21762    assert_eq!(
21763        unsafe { ::std::ptr::addr_of!((*ptr).enc_cipher) as usize - ptr as usize },
21764        24usize,
21765        "Offset of field: X509_info_st::enc_cipher"
21766    );
21767    assert_eq!(
21768        unsafe { ::std::ptr::addr_of!((*ptr).enc_len) as usize - ptr as usize },
21769        48usize,
21770        "Offset of field: X509_info_st::enc_len"
21771    );
21772    assert_eq!(
21773        unsafe { ::std::ptr::addr_of!((*ptr).enc_data) as usize - ptr as usize },
21774        56usize,
21775        "Offset of field: X509_info_st::enc_data"
21776    );
21777}
21778impl Default for X509_info_st {
21779    fn default() -> Self {
21780        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21781        unsafe {
21782            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21783            s.assume_init()
21784        }
21785    }
21786}
21787#[repr(C)]
21788#[derive(Debug, Copy, Clone)]
21789pub struct stack_st_X509_INFO {
21790    _unused: [u8; 0],
21791}
21792pub type sk_X509_INFO_free_func = ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_INFO)>;
21793pub type sk_X509_INFO_copy_func =
21794    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_INFO) -> *mut X509_INFO>;
21795pub type sk_X509_INFO_cmp_func = ::std::option::Option<
21796    unsafe extern "C" fn(
21797        arg1: *const *const X509_INFO,
21798        arg2: *const *const X509_INFO,
21799    ) -> ::std::os::raw::c_int,
21800>;
21801pub type sk_X509_INFO_delete_if_func = ::std::option::Option<
21802    unsafe extern "C" fn(
21803        arg1: *mut X509_INFO,
21804        arg2: *mut ::std::os::raw::c_void,
21805    ) -> ::std::os::raw::c_int,
21806>;
21807extern "C" {
21808    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_INFO_free"]
21809    pub fn X509_INFO_free(info: *mut X509_INFO);
21810}
21811#[repr(C)]
21812#[derive(Debug, Copy, Clone, PartialEq, Eq)]
21813pub struct v3_ext_ctx {
21814    pub flags: ::std::os::raw::c_int,
21815    pub issuer_cert: *const X509,
21816    pub subject_cert: *const X509,
21817    pub subject_req: *const X509_REQ,
21818    pub crl: *const X509_CRL,
21819    pub db: *const CONF,
21820}
21821#[test]
21822fn bindgen_test_layout_v3_ext_ctx() {
21823    const UNINIT: ::std::mem::MaybeUninit<v3_ext_ctx> = ::std::mem::MaybeUninit::uninit();
21824    let ptr = UNINIT.as_ptr();
21825    assert_eq!(
21826        ::std::mem::size_of::<v3_ext_ctx>(),
21827        48usize,
21828        "Size of v3_ext_ctx"
21829    );
21830    assert_eq!(
21831        ::std::mem::align_of::<v3_ext_ctx>(),
21832        8usize,
21833        "Alignment of v3_ext_ctx"
21834    );
21835    assert_eq!(
21836        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
21837        0usize,
21838        "Offset of field: v3_ext_ctx::flags"
21839    );
21840    assert_eq!(
21841        unsafe { ::std::ptr::addr_of!((*ptr).issuer_cert) as usize - ptr as usize },
21842        8usize,
21843        "Offset of field: v3_ext_ctx::issuer_cert"
21844    );
21845    assert_eq!(
21846        unsafe { ::std::ptr::addr_of!((*ptr).subject_cert) as usize - ptr as usize },
21847        16usize,
21848        "Offset of field: v3_ext_ctx::subject_cert"
21849    );
21850    assert_eq!(
21851        unsafe { ::std::ptr::addr_of!((*ptr).subject_req) as usize - ptr as usize },
21852        24usize,
21853        "Offset of field: v3_ext_ctx::subject_req"
21854    );
21855    assert_eq!(
21856        unsafe { ::std::ptr::addr_of!((*ptr).crl) as usize - ptr as usize },
21857        32usize,
21858        "Offset of field: v3_ext_ctx::crl"
21859    );
21860    assert_eq!(
21861        unsafe { ::std::ptr::addr_of!((*ptr).db) as usize - ptr as usize },
21862        40usize,
21863        "Offset of field: v3_ext_ctx::db"
21864    );
21865}
21866impl Default for v3_ext_ctx {
21867    fn default() -> Self {
21868        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
21869        unsafe {
21870            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
21871            s.assume_init()
21872        }
21873    }
21874}
21875extern "C" {
21876    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_set_ctx"]
21877    pub fn X509V3_set_ctx(
21878        ctx: *mut X509V3_CTX,
21879        issuer: *const X509,
21880        subject: *const X509,
21881        req: *const X509_REQ,
21882        crl: *const X509_CRL,
21883        flags: ::std::os::raw::c_int,
21884    );
21885}
21886extern "C" {
21887    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_set_nconf"]
21888    pub fn X509V3_set_nconf(ctx: *mut X509V3_CTX, conf: *const CONF);
21889}
21890extern "C" {
21891    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_nconf"]
21892    pub fn X509V3_EXT_nconf(
21893        conf: *const CONF,
21894        ctx: *const X509V3_CTX,
21895        name: *const ::std::os::raw::c_char,
21896        value: *const ::std::os::raw::c_char,
21897    ) -> *mut X509_EXTENSION;
21898}
21899extern "C" {
21900    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_nconf_nid"]
21901    pub fn X509V3_EXT_nconf_nid(
21902        conf: *const CONF,
21903        ctx: *const X509V3_CTX,
21904        ext_nid: ::std::os::raw::c_int,
21905        value: *const ::std::os::raw::c_char,
21906    ) -> *mut X509_EXTENSION;
21907}
21908extern "C" {
21909    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_conf_nid"]
21910    pub fn X509V3_EXT_conf_nid(
21911        conf: *mut lhash_st_CONF_VALUE,
21912        ctx: *const X509V3_CTX,
21913        ext_nid: ::std::os::raw::c_int,
21914        value: *const ::std::os::raw::c_char,
21915    ) -> *mut X509_EXTENSION;
21916}
21917extern "C" {
21918    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_add_nconf_sk"]
21919    pub fn X509V3_EXT_add_nconf_sk(
21920        conf: *const CONF,
21921        ctx: *const X509V3_CTX,
21922        section: *const ::std::os::raw::c_char,
21923        sk: *mut *mut stack_st_X509_EXTENSION,
21924    ) -> ::std::os::raw::c_int;
21925}
21926extern "C" {
21927    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_add_nconf"]
21928    pub fn X509V3_EXT_add_nconf(
21929        conf: *const CONF,
21930        ctx: *const X509V3_CTX,
21931        section: *const ::std::os::raw::c_char,
21932        cert: *mut X509,
21933    ) -> ::std::os::raw::c_int;
21934}
21935extern "C" {
21936    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_REQ_add_nconf"]
21937    pub fn X509V3_EXT_REQ_add_nconf(
21938        conf: *const CONF,
21939        ctx: *const X509V3_CTX,
21940        section: *const ::std::os::raw::c_char,
21941        req: *mut X509_REQ,
21942    ) -> ::std::os::raw::c_int;
21943}
21944extern "C" {
21945    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_CRL_add_nconf"]
21946    pub fn X509V3_EXT_CRL_add_nconf(
21947        conf: *const CONF,
21948        ctx: *const X509V3_CTX,
21949        section: *const ::std::os::raw::c_char,
21950        crl: *mut X509_CRL,
21951    ) -> ::std::os::raw::c_int;
21952}
21953extern "C" {
21954    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_conf"]
21955    pub fn X509V3_EXT_conf(
21956        conf: *mut lhash_st_CONF_VALUE,
21957        ctx: *mut X509V3_CTX,
21958        name: *const ::std::os::raw::c_char,
21959        value: *const ::std::os::raw::c_char,
21960    ) -> *mut X509_EXTENSION;
21961}
21962extern "C" {
21963    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2s_ASN1_OCTET_STRING"]
21964    pub fn i2s_ASN1_OCTET_STRING(
21965        method: *const X509V3_EXT_METHOD,
21966        oct: *const ASN1_OCTET_STRING,
21967    ) -> *mut ::std::os::raw::c_char;
21968}
21969extern "C" {
21970    #[link_name = "\u{1}aws_lc_fips_0_13_10_s2i_ASN1_OCTET_STRING"]
21971    pub fn s2i_ASN1_OCTET_STRING(
21972        method: *const X509V3_EXT_METHOD,
21973        ctx: *const X509V3_CTX,
21974        str_: *const ::std::os::raw::c_char,
21975    ) -> *mut ASN1_OCTET_STRING;
21976}
21977extern "C" {
21978    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2s_ASN1_INTEGER"]
21979    pub fn i2s_ASN1_INTEGER(
21980        method: *const X509V3_EXT_METHOD,
21981        aint: *const ASN1_INTEGER,
21982    ) -> *mut ::std::os::raw::c_char;
21983}
21984extern "C" {
21985    #[link_name = "\u{1}aws_lc_fips_0_13_10_s2i_ASN1_INTEGER"]
21986    pub fn s2i_ASN1_INTEGER(
21987        method: *const X509V3_EXT_METHOD,
21988        value: *const ::std::os::raw::c_char,
21989    ) -> *mut ASN1_INTEGER;
21990}
21991extern "C" {
21992    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2s_ASN1_ENUMERATED"]
21993    pub fn i2s_ASN1_ENUMERATED(
21994        method: *const X509V3_EXT_METHOD,
21995        aint: *const ASN1_ENUMERATED,
21996    ) -> *mut ::std::os::raw::c_char;
21997}
21998extern "C" {
21999    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_conf_free"]
22000    pub fn X509V3_conf_free(val: *mut CONF_VALUE);
22001}
22002extern "C" {
22003    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2v_GENERAL_NAME"]
22004    pub fn i2v_GENERAL_NAME(
22005        method: *const X509V3_EXT_METHOD,
22006        gen_: *const GENERAL_NAME,
22007        ret: *mut stack_st_CONF_VALUE,
22008    ) -> *mut stack_st_CONF_VALUE;
22009}
22010extern "C" {
22011    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2v_GENERAL_NAMES"]
22012    pub fn i2v_GENERAL_NAMES(
22013        method: *const X509V3_EXT_METHOD,
22014        gen_: *const GENERAL_NAMES,
22015        extlist: *mut stack_st_CONF_VALUE,
22016    ) -> *mut stack_st_CONF_VALUE;
22017}
22018extern "C" {
22019    #[link_name = "\u{1}aws_lc_fips_0_13_10_a2i_IPADDRESS"]
22020    pub fn a2i_IPADDRESS(ipasc: *const ::std::os::raw::c_char) -> *mut ASN1_OCTET_STRING;
22021}
22022extern "C" {
22023    #[link_name = "\u{1}aws_lc_fips_0_13_10_a2i_IPADDRESS_NC"]
22024    pub fn a2i_IPADDRESS_NC(ipasc: *const ::std::os::raw::c_char) -> *mut ASN1_OCTET_STRING;
22025}
22026extern "C" {
22027    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_notBefore"]
22028    pub fn X509_get_notBefore(x509: *const X509) -> *mut ASN1_TIME;
22029}
22030extern "C" {
22031    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_notAfter"]
22032    pub fn X509_get_notAfter(x509: *const X509) -> *mut ASN1_TIME;
22033}
22034extern "C" {
22035    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set_notBefore"]
22036    pub fn X509_set_notBefore(x509: *mut X509, tm: *const ASN1_TIME) -> ::std::os::raw::c_int;
22037}
22038extern "C" {
22039    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_set_notAfter"]
22040    pub fn X509_set_notAfter(x509: *mut X509, tm: *const ASN1_TIME) -> ::std::os::raw::c_int;
22041}
22042extern "C" {
22043    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_lastUpdate"]
22044    pub fn X509_CRL_get_lastUpdate(crl: *mut X509_CRL) -> *mut ASN1_TIME;
22045}
22046extern "C" {
22047    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_get_nextUpdate"]
22048    pub fn X509_CRL_get_nextUpdate(crl: *mut X509_CRL) -> *mut ASN1_TIME;
22049}
22050extern "C" {
22051    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_serialNumber"]
22052    pub fn X509_get_serialNumber(x509: *mut X509) -> *mut ASN1_INTEGER;
22053}
22054extern "C" {
22055    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_get_text_by_OBJ"]
22056    pub fn X509_NAME_get_text_by_OBJ(
22057        name: *const X509_NAME,
22058        obj: *const ASN1_OBJECT,
22059        buf: *mut ::std::os::raw::c_char,
22060        len: ::std::os::raw::c_int,
22061    ) -> ::std::os::raw::c_int;
22062}
22063extern "C" {
22064    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_get_text_by_NID"]
22065    pub fn X509_NAME_get_text_by_NID(
22066        name: *const X509_NAME,
22067        nid: ::std::os::raw::c_int,
22068        buf: *mut ::std::os::raw::c_char,
22069        len: ::std::os::raw::c_int,
22070    ) -> ::std::os::raw::c_int;
22071}
22072extern "C" {
22073    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get0_parent_ctx"]
22074    pub fn X509_STORE_CTX_get0_parent_ctx(ctx: *mut X509_STORE_CTX) -> *mut X509_STORE_CTX;
22075}
22076extern "C" {
22077    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_LOOKUP_free"]
22078    pub fn X509_LOOKUP_free(ctx: *mut X509_LOOKUP);
22079}
22080extern "C" {
22081    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_cleanup"]
22082    pub fn X509_STORE_CTX_cleanup(ctx: *mut X509_STORE_CTX);
22083}
22084extern "C" {
22085    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_add_standard_extensions"]
22086    pub fn X509V3_add_standard_extensions() -> ::std::os::raw::c_int;
22087}
22088extern "C" {
22089    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_parse_list"]
22090    pub fn X509V3_parse_list(line: *const ::std::os::raw::c_char) -> *mut stack_st_CONF_VALUE;
22091}
22092extern "C" {
22093    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get_chain"]
22094    pub fn X509_STORE_CTX_get_chain(ctx: *mut X509_STORE_CTX) -> *mut stack_st_X509;
22095}
22096extern "C" {
22097    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_trusted_stack"]
22098    pub fn X509_STORE_CTX_trusted_stack(ctx: *mut X509_STORE_CTX, sk: *mut stack_st_X509);
22099}
22100pub type X509_STORE_CTX_verify_cb = ::std::option::Option<
22101    unsafe extern "C" fn(
22102        arg1: ::std::os::raw::c_int,
22103        arg2: *mut X509_STORE_CTX,
22104    ) -> ::std::os::raw::c_int,
22105>;
22106extern "C" {
22107    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_verify_cb"]
22108    pub fn X509_STORE_CTX_set_verify_cb(
22109        ctx: *mut X509_STORE_CTX,
22110        verify_cb: ::std::option::Option<
22111            unsafe extern "C" fn(
22112                ok: ::std::os::raw::c_int,
22113                ctx: *mut X509_STORE_CTX,
22114            ) -> ::std::os::raw::c_int,
22115        >,
22116    );
22117}
22118extern "C" {
22119    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_get_verify_cb"]
22120    pub fn X509_STORE_get_verify_cb(ctx: *mut X509_STORE) -> X509_STORE_CTX_verify_cb;
22121}
22122extern "C" {
22123    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_verify_cb"]
22124    pub fn X509_STORE_set_verify_cb(store: *mut X509_STORE, verify_cb: X509_STORE_CTX_verify_cb);
22125}
22126pub type X509_STORE_CTX_get_crl_fn = ::std::option::Option<
22127    unsafe extern "C" fn(
22128        ctx: *mut X509_STORE_CTX,
22129        crl: *mut *mut X509_CRL,
22130        x: *mut X509,
22131    ) -> ::std::os::raw::c_int,
22132>;
22133pub type X509_STORE_CTX_check_crl_fn = ::std::option::Option<
22134    unsafe extern "C" fn(ctx: *mut X509_STORE_CTX, crl: *mut X509_CRL) -> ::std::os::raw::c_int,
22135>;
22136extern "C" {
22137    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_get_crl"]
22138    pub fn X509_STORE_set_get_crl(store: *mut X509_STORE, get_crl: X509_STORE_CTX_get_crl_fn);
22139}
22140extern "C" {
22141    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_check_crl"]
22142    pub fn X509_STORE_set_check_crl(store: *mut X509_STORE, check_crl: X509_STORE_CTX_check_crl_fn);
22143}
22144extern "C" {
22145    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_set_chain"]
22146    pub fn X509_STORE_CTX_set_chain(ctx: *mut X509_STORE_CTX, sk: *mut stack_st_X509);
22147}
22148#[repr(C)]
22149#[derive(Debug, Copy, Clone, PartialEq, Eq)]
22150pub struct X509_algor_st {
22151    pub algorithm: *mut ASN1_OBJECT,
22152    pub parameter: *mut ASN1_TYPE,
22153}
22154#[test]
22155fn bindgen_test_layout_X509_algor_st() {
22156    const UNINIT: ::std::mem::MaybeUninit<X509_algor_st> = ::std::mem::MaybeUninit::uninit();
22157    let ptr = UNINIT.as_ptr();
22158    assert_eq!(
22159        ::std::mem::size_of::<X509_algor_st>(),
22160        16usize,
22161        "Size of X509_algor_st"
22162    );
22163    assert_eq!(
22164        ::std::mem::align_of::<X509_algor_st>(),
22165        8usize,
22166        "Alignment of X509_algor_st"
22167    );
22168    assert_eq!(
22169        unsafe { ::std::ptr::addr_of!((*ptr).algorithm) as usize - ptr as usize },
22170        0usize,
22171        "Offset of field: X509_algor_st::algorithm"
22172    );
22173    assert_eq!(
22174        unsafe { ::std::ptr::addr_of!((*ptr).parameter) as usize - ptr as usize },
22175        8usize,
22176        "Offset of field: X509_algor_st::parameter"
22177    );
22178}
22179impl Default for X509_algor_st {
22180    fn default() -> Self {
22181        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22182        unsafe {
22183            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22184            s.assume_init()
22185        }
22186    }
22187}
22188#[repr(C)]
22189#[derive(Debug, Copy, Clone)]
22190pub struct stack_st_DIST_POINT {
22191    _unused: [u8; 0],
22192}
22193#[repr(C)]
22194#[derive(Debug, Copy, Clone, PartialEq, Eq)]
22195pub struct x509_trust_st {
22196    pub trust: ::std::os::raw::c_int,
22197    pub flags: ::std::os::raw::c_int,
22198    pub check_trust: ::std::option::Option<
22199        unsafe extern "C" fn(
22200            arg1: *const X509_TRUST,
22201            arg2: *mut X509,
22202            arg3: ::std::os::raw::c_int,
22203        ) -> ::std::os::raw::c_int,
22204    >,
22205    pub name: *mut ::std::os::raw::c_char,
22206    pub arg1: ::std::os::raw::c_int,
22207    pub arg2: *mut ::std::os::raw::c_void,
22208}
22209#[test]
22210fn bindgen_test_layout_x509_trust_st() {
22211    const UNINIT: ::std::mem::MaybeUninit<x509_trust_st> = ::std::mem::MaybeUninit::uninit();
22212    let ptr = UNINIT.as_ptr();
22213    assert_eq!(
22214        ::std::mem::size_of::<x509_trust_st>(),
22215        40usize,
22216        "Size of x509_trust_st"
22217    );
22218    assert_eq!(
22219        ::std::mem::align_of::<x509_trust_st>(),
22220        8usize,
22221        "Alignment of x509_trust_st"
22222    );
22223    assert_eq!(
22224        unsafe { ::std::ptr::addr_of!((*ptr).trust) as usize - ptr as usize },
22225        0usize,
22226        "Offset of field: x509_trust_st::trust"
22227    );
22228    assert_eq!(
22229        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
22230        4usize,
22231        "Offset of field: x509_trust_st::flags"
22232    );
22233    assert_eq!(
22234        unsafe { ::std::ptr::addr_of!((*ptr).check_trust) as usize - ptr as usize },
22235        8usize,
22236        "Offset of field: x509_trust_st::check_trust"
22237    );
22238    assert_eq!(
22239        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
22240        16usize,
22241        "Offset of field: x509_trust_st::name"
22242    );
22243    assert_eq!(
22244        unsafe { ::std::ptr::addr_of!((*ptr).arg1) as usize - ptr as usize },
22245        24usize,
22246        "Offset of field: x509_trust_st::arg1"
22247    );
22248    assert_eq!(
22249        unsafe { ::std::ptr::addr_of!((*ptr).arg2) as usize - ptr as usize },
22250        32usize,
22251        "Offset of field: x509_trust_st::arg2"
22252    );
22253}
22254impl Default for x509_trust_st {
22255    fn default() -> Self {
22256        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22257        unsafe {
22258            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22259            s.assume_init()
22260        }
22261    }
22262}
22263#[repr(C)]
22264#[derive(Debug, Copy, Clone)]
22265pub struct stack_st_X509_TRUST {
22266    _unused: [u8; 0],
22267}
22268pub type sk_X509_TRUST_free_func =
22269    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_TRUST)>;
22270pub type sk_X509_TRUST_copy_func =
22271    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_TRUST) -> *mut X509_TRUST>;
22272pub type sk_X509_TRUST_cmp_func = ::std::option::Option<
22273    unsafe extern "C" fn(
22274        arg1: *const *const X509_TRUST,
22275        arg2: *const *const X509_TRUST,
22276    ) -> ::std::os::raw::c_int,
22277>;
22278pub type sk_X509_TRUST_delete_if_func = ::std::option::Option<
22279    unsafe extern "C" fn(
22280        arg1: *mut X509_TRUST,
22281        arg2: *mut ::std::os::raw::c_void,
22282    ) -> ::std::os::raw::c_int,
22283>;
22284extern "C" {
22285    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_default_cert_area"]
22286    pub fn X509_get_default_cert_area() -> *const ::std::os::raw::c_char;
22287}
22288extern "C" {
22289    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_default_cert_dir"]
22290    pub fn X509_get_default_cert_dir() -> *const ::std::os::raw::c_char;
22291}
22292extern "C" {
22293    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_default_cert_file"]
22294    pub fn X509_get_default_cert_file() -> *const ::std::os::raw::c_char;
22295}
22296extern "C" {
22297    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_default_cert_dir_env"]
22298    pub fn X509_get_default_cert_dir_env() -> *const ::std::os::raw::c_char;
22299}
22300extern "C" {
22301    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_default_cert_file_env"]
22302    pub fn X509_get_default_cert_file_env() -> *const ::std::os::raw::c_char;
22303}
22304extern "C" {
22305    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_get_default_private_dir"]
22306    pub fn X509_get_default_private_dir() -> *const ::std::os::raw::c_char;
22307}
22308extern "C" {
22309    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_TRUST_set"]
22310    pub fn X509_TRUST_set(
22311        t: *mut ::std::os::raw::c_int,
22312        trust: ::std::os::raw::c_int,
22313    ) -> ::std::os::raw::c_int;
22314}
22315extern "C" {
22316    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_cmp"]
22317    pub fn X509_cmp(a: *const X509, b: *const X509) -> ::std::os::raw::c_int;
22318}
22319extern "C" {
22320    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_hash"]
22321    pub fn X509_NAME_hash(name: *mut X509_NAME) -> u32;
22322}
22323extern "C" {
22324    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_NAME_hash_old"]
22325    pub fn X509_NAME_hash_old(name: *mut X509_NAME) -> u32;
22326}
22327extern "C" {
22328    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_CRL_match"]
22329    pub fn X509_CRL_match(a: *const X509_CRL, b: *const X509_CRL) -> ::std::os::raw::c_int;
22330}
22331extern "C" {
22332    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_TRUST_get_count"]
22333    pub fn X509_TRUST_get_count() -> ::std::os::raw::c_int;
22334}
22335extern "C" {
22336    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_TRUST_get0"]
22337    pub fn X509_TRUST_get0(idx: ::std::os::raw::c_int) -> *const X509_TRUST;
22338}
22339extern "C" {
22340    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_TRUST_get_by_id"]
22341    pub fn X509_TRUST_get_by_id(id: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
22342}
22343extern "C" {
22344    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_TRUST_get_flags"]
22345    pub fn X509_TRUST_get_flags(xp: *const X509_TRUST) -> ::std::os::raw::c_int;
22346}
22347extern "C" {
22348    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_TRUST_get0_name"]
22349    pub fn X509_TRUST_get0_name(xp: *const X509_TRUST) -> *mut ::std::os::raw::c_char;
22350}
22351extern "C" {
22352    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_TRUST_get_trust"]
22353    pub fn X509_TRUST_get_trust(xp: *const X509_TRUST) -> ::std::os::raw::c_int;
22354}
22355#[repr(C)]
22356#[derive(Debug, Copy, Clone)]
22357pub struct stack_st_X509_OBJECT {
22358    _unused: [u8; 0],
22359}
22360pub type sk_X509_OBJECT_free_func =
22361    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_OBJECT)>;
22362pub type sk_X509_OBJECT_copy_func =
22363    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_OBJECT) -> *mut X509_OBJECT>;
22364pub type sk_X509_OBJECT_cmp_func = ::std::option::Option<
22365    unsafe extern "C" fn(
22366        arg1: *const *const X509_OBJECT,
22367        arg2: *const *const X509_OBJECT,
22368    ) -> ::std::os::raw::c_int,
22369>;
22370pub type sk_X509_OBJECT_delete_if_func = ::std::option::Option<
22371    unsafe extern "C" fn(
22372        arg1: *mut X509_OBJECT,
22373        arg2: *mut ::std::os::raw::c_void,
22374    ) -> ::std::os::raw::c_int,
22375>;
22376extern "C" {
22377    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_LOOKUP_load_file"]
22378    pub fn X509_LOOKUP_load_file(
22379        lookup: *mut X509_LOOKUP,
22380        path: *const ::std::os::raw::c_char,
22381        type_: ::std::os::raw::c_int,
22382    ) -> ::std::os::raw::c_int;
22383}
22384extern "C" {
22385    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_LOOKUP_add_dir"]
22386    pub fn X509_LOOKUP_add_dir(
22387        lookup: *mut X509_LOOKUP,
22388        path: *const ::std::os::raw::c_char,
22389        type_: ::std::os::raw::c_int,
22390    ) -> ::std::os::raw::c_int;
22391}
22392extern "C" {
22393    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_OBJECT_new"]
22394    pub fn X509_OBJECT_new() -> *mut X509_OBJECT;
22395}
22396extern "C" {
22397    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_OBJECT_free"]
22398    pub fn X509_OBJECT_free(obj: *mut X509_OBJECT);
22399}
22400extern "C" {
22401    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_OBJECT_get_type"]
22402    pub fn X509_OBJECT_get_type(obj: *const X509_OBJECT) -> ::std::os::raw::c_int;
22403}
22404extern "C" {
22405    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_OBJECT_get0_X509"]
22406    pub fn X509_OBJECT_get0_X509(obj: *const X509_OBJECT) -> *mut X509;
22407}
22408extern "C" {
22409    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_OBJECT_get0_X509_CRL"]
22410    pub fn X509_OBJECT_get0_X509_CRL(a: *const X509_OBJECT) -> *mut X509_CRL;
22411}
22412extern "C" {
22413    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_OBJECT_set1_X509"]
22414    pub fn X509_OBJECT_set1_X509(a: *mut X509_OBJECT, obj: *mut X509) -> ::std::os::raw::c_int;
22415}
22416extern "C" {
22417    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_OBJECT_set1_X509_CRL"]
22418    pub fn X509_OBJECT_set1_X509_CRL(
22419        a: *mut X509_OBJECT,
22420        obj: *mut X509_CRL,
22421    ) -> ::std::os::raw::c_int;
22422}
22423extern "C" {
22424    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_lock"]
22425    pub fn X509_STORE_lock(v: *mut X509_STORE) -> ::std::os::raw::c_int;
22426}
22427extern "C" {
22428    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_unlock"]
22429    pub fn X509_STORE_unlock(v: *mut X509_STORE) -> ::std::os::raw::c_int;
22430}
22431extern "C" {
22432    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_get0_objects"]
22433    pub fn X509_STORE_get0_objects(st: *mut X509_STORE) -> *mut stack_st_X509_OBJECT;
22434}
22435extern "C" {
22436    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get1_certs"]
22437    pub fn X509_STORE_CTX_get1_certs(
22438        st: *mut X509_STORE_CTX,
22439        nm: *mut X509_NAME,
22440    ) -> *mut stack_st_X509;
22441}
22442extern "C" {
22443    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get1_crls"]
22444    pub fn X509_STORE_CTX_get1_crls(
22445        st: *mut X509_STORE_CTX,
22446        nm: *mut X509_NAME,
22447    ) -> *mut stack_st_X509_CRL;
22448}
22449extern "C" {
22450    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_add_lookup"]
22451    pub fn X509_STORE_add_lookup(
22452        v: *mut X509_STORE,
22453        m: *const X509_LOOKUP_METHOD,
22454    ) -> *mut X509_LOOKUP;
22455}
22456extern "C" {
22457    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_LOOKUP_hash_dir"]
22458    pub fn X509_LOOKUP_hash_dir() -> *const X509_LOOKUP_METHOD;
22459}
22460extern "C" {
22461    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_LOOKUP_file"]
22462    pub fn X509_LOOKUP_file() -> *const X509_LOOKUP_METHOD;
22463}
22464extern "C" {
22465    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_CTX_get_by_subject"]
22466    pub fn X509_STORE_CTX_get_by_subject(
22467        vs: *mut X509_STORE_CTX,
22468        type_: ::std::os::raw::c_int,
22469        name: *mut X509_NAME,
22470        ret: *mut X509_OBJECT,
22471    ) -> ::std::os::raw::c_int;
22472}
22473extern "C" {
22474    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_LOOKUP_ctrl"]
22475    pub fn X509_LOOKUP_ctrl(
22476        ctx: *mut X509_LOOKUP,
22477        cmd: ::std::os::raw::c_int,
22478        argc: *const ::std::os::raw::c_char,
22479        argl: ::std::os::raw::c_long,
22480        ret: *mut *mut ::std::os::raw::c_char,
22481    ) -> ::std::os::raw::c_int;
22482}
22483extern "C" {
22484    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_load_cert_file"]
22485    pub fn X509_load_cert_file(
22486        ctx: *mut X509_LOOKUP,
22487        file: *const ::std::os::raw::c_char,
22488        type_: ::std::os::raw::c_int,
22489    ) -> ::std::os::raw::c_int;
22490}
22491extern "C" {
22492    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_load_crl_file"]
22493    pub fn X509_load_crl_file(
22494        ctx: *mut X509_LOOKUP,
22495        file: *const ::std::os::raw::c_char,
22496        type_: ::std::os::raw::c_int,
22497    ) -> ::std::os::raw::c_int;
22498}
22499extern "C" {
22500    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_load_cert_crl_file"]
22501    pub fn X509_load_cert_crl_file(
22502        ctx: *mut X509_LOOKUP,
22503        file: *const ::std::os::raw::c_char,
22504        type_: ::std::os::raw::c_int,
22505    ) -> ::std::os::raw::c_int;
22506}
22507extern "C" {
22508    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_load_locations"]
22509    pub fn X509_STORE_load_locations(
22510        ctx: *mut X509_STORE,
22511        file: *const ::std::os::raw::c_char,
22512        dir: *const ::std::os::raw::c_char,
22513    ) -> ::std::os::raw::c_int;
22514}
22515extern "C" {
22516    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_STORE_set_default_paths"]
22517    pub fn X509_STORE_set_default_paths(ctx: *mut X509_STORE) -> ::std::os::raw::c_int;
22518}
22519pub type X509V3_EXT_NEW =
22520    ::std::option::Option<unsafe extern "C" fn() -> *mut ::std::os::raw::c_void>;
22521pub type X509V3_EXT_FREE =
22522    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
22523pub type X509V3_EXT_D2I = ::std::option::Option<
22524    unsafe extern "C" fn(
22525        arg1: *mut ::std::os::raw::c_void,
22526        arg2: *mut *const ::std::os::raw::c_uchar,
22527        arg3: ::std::os::raw::c_long,
22528    ) -> *mut ::std::os::raw::c_void,
22529>;
22530pub type X509V3_EXT_I2D = ::std::option::Option<
22531    unsafe extern "C" fn(
22532        arg1: *mut ::std::os::raw::c_void,
22533        arg2: *mut *mut ::std::os::raw::c_uchar,
22534    ) -> ::std::os::raw::c_int,
22535>;
22536pub type X509V3_EXT_I2V = ::std::option::Option<
22537    unsafe extern "C" fn(
22538        method: *const X509V3_EXT_METHOD,
22539        ext: *mut ::std::os::raw::c_void,
22540        extlist: *mut stack_st_CONF_VALUE,
22541    ) -> *mut stack_st_CONF_VALUE,
22542>;
22543pub type X509V3_EXT_V2I = ::std::option::Option<
22544    unsafe extern "C" fn(
22545        method: *const X509V3_EXT_METHOD,
22546        ctx: *const X509V3_CTX,
22547        values: *const stack_st_CONF_VALUE,
22548    ) -> *mut ::std::os::raw::c_void,
22549>;
22550pub type X509V3_EXT_I2S = ::std::option::Option<
22551    unsafe extern "C" fn(
22552        method: *const X509V3_EXT_METHOD,
22553        ext: *mut ::std::os::raw::c_void,
22554    ) -> *mut ::std::os::raw::c_char,
22555>;
22556pub type X509V3_EXT_S2I = ::std::option::Option<
22557    unsafe extern "C" fn(
22558        method: *const X509V3_EXT_METHOD,
22559        ctx: *const X509V3_CTX,
22560        str_: *const ::std::os::raw::c_char,
22561    ) -> *mut ::std::os::raw::c_void,
22562>;
22563pub type X509V3_EXT_I2R = ::std::option::Option<
22564    unsafe extern "C" fn(
22565        method: *const X509V3_EXT_METHOD,
22566        ext: *mut ::std::os::raw::c_void,
22567        out: *mut BIO,
22568        indent: ::std::os::raw::c_int,
22569    ) -> ::std::os::raw::c_int,
22570>;
22571pub type X509V3_EXT_R2I = ::std::option::Option<
22572    unsafe extern "C" fn(
22573        method: *const X509V3_EXT_METHOD,
22574        ctx: *const X509V3_CTX,
22575        str_: *const ::std::os::raw::c_char,
22576    ) -> *mut ::std::os::raw::c_void,
22577>;
22578#[repr(C)]
22579#[derive(Debug, Copy, Clone, PartialEq, Eq)]
22580pub struct v3_ext_method {
22581    pub ext_nid: ::std::os::raw::c_int,
22582    pub ext_flags: ::std::os::raw::c_int,
22583    pub it: *const ASN1_ITEM_st,
22584    pub ext_new: X509V3_EXT_NEW,
22585    pub ext_free: X509V3_EXT_FREE,
22586    pub d2i: X509V3_EXT_D2I,
22587    pub i2d: X509V3_EXT_I2D,
22588    pub i2s: X509V3_EXT_I2S,
22589    pub s2i: X509V3_EXT_S2I,
22590    pub i2v: X509V3_EXT_I2V,
22591    pub v2i: X509V3_EXT_V2I,
22592    pub i2r: X509V3_EXT_I2R,
22593    pub r2i: X509V3_EXT_R2I,
22594    pub usr_data: *mut ::std::os::raw::c_void,
22595}
22596#[test]
22597fn bindgen_test_layout_v3_ext_method() {
22598    const UNINIT: ::std::mem::MaybeUninit<v3_ext_method> = ::std::mem::MaybeUninit::uninit();
22599    let ptr = UNINIT.as_ptr();
22600    assert_eq!(
22601        ::std::mem::size_of::<v3_ext_method>(),
22602        104usize,
22603        "Size of v3_ext_method"
22604    );
22605    assert_eq!(
22606        ::std::mem::align_of::<v3_ext_method>(),
22607        8usize,
22608        "Alignment of v3_ext_method"
22609    );
22610    assert_eq!(
22611        unsafe { ::std::ptr::addr_of!((*ptr).ext_nid) as usize - ptr as usize },
22612        0usize,
22613        "Offset of field: v3_ext_method::ext_nid"
22614    );
22615    assert_eq!(
22616        unsafe { ::std::ptr::addr_of!((*ptr).ext_flags) as usize - ptr as usize },
22617        4usize,
22618        "Offset of field: v3_ext_method::ext_flags"
22619    );
22620    assert_eq!(
22621        unsafe { ::std::ptr::addr_of!((*ptr).it) as usize - ptr as usize },
22622        8usize,
22623        "Offset of field: v3_ext_method::it"
22624    );
22625    assert_eq!(
22626        unsafe { ::std::ptr::addr_of!((*ptr).ext_new) as usize - ptr as usize },
22627        16usize,
22628        "Offset of field: v3_ext_method::ext_new"
22629    );
22630    assert_eq!(
22631        unsafe { ::std::ptr::addr_of!((*ptr).ext_free) as usize - ptr as usize },
22632        24usize,
22633        "Offset of field: v3_ext_method::ext_free"
22634    );
22635    assert_eq!(
22636        unsafe { ::std::ptr::addr_of!((*ptr).d2i) as usize - ptr as usize },
22637        32usize,
22638        "Offset of field: v3_ext_method::d2i"
22639    );
22640    assert_eq!(
22641        unsafe { ::std::ptr::addr_of!((*ptr).i2d) as usize - ptr as usize },
22642        40usize,
22643        "Offset of field: v3_ext_method::i2d"
22644    );
22645    assert_eq!(
22646        unsafe { ::std::ptr::addr_of!((*ptr).i2s) as usize - ptr as usize },
22647        48usize,
22648        "Offset of field: v3_ext_method::i2s"
22649    );
22650    assert_eq!(
22651        unsafe { ::std::ptr::addr_of!((*ptr).s2i) as usize - ptr as usize },
22652        56usize,
22653        "Offset of field: v3_ext_method::s2i"
22654    );
22655    assert_eq!(
22656        unsafe { ::std::ptr::addr_of!((*ptr).i2v) as usize - ptr as usize },
22657        64usize,
22658        "Offset of field: v3_ext_method::i2v"
22659    );
22660    assert_eq!(
22661        unsafe { ::std::ptr::addr_of!((*ptr).v2i) as usize - ptr as usize },
22662        72usize,
22663        "Offset of field: v3_ext_method::v2i"
22664    );
22665    assert_eq!(
22666        unsafe { ::std::ptr::addr_of!((*ptr).i2r) as usize - ptr as usize },
22667        80usize,
22668        "Offset of field: v3_ext_method::i2r"
22669    );
22670    assert_eq!(
22671        unsafe { ::std::ptr::addr_of!((*ptr).r2i) as usize - ptr as usize },
22672        88usize,
22673        "Offset of field: v3_ext_method::r2i"
22674    );
22675    assert_eq!(
22676        unsafe { ::std::ptr::addr_of!((*ptr).usr_data) as usize - ptr as usize },
22677        96usize,
22678        "Offset of field: v3_ext_method::usr_data"
22679    );
22680}
22681impl Default for v3_ext_method {
22682    fn default() -> Self {
22683        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22684        unsafe {
22685            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22686            s.assume_init()
22687        }
22688    }
22689}
22690#[repr(C)]
22691#[derive(Debug, Copy, Clone)]
22692pub struct stack_st_X509V3_EXT_METHOD {
22693    _unused: [u8; 0],
22694}
22695pub type sk_X509V3_EXT_METHOD_free_func =
22696    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509V3_EXT_METHOD)>;
22697pub type sk_X509V3_EXT_METHOD_copy_func = ::std::option::Option<
22698    unsafe extern "C" fn(arg1: *const X509V3_EXT_METHOD) -> *mut X509V3_EXT_METHOD,
22699>;
22700pub type sk_X509V3_EXT_METHOD_cmp_func = ::std::option::Option<
22701    unsafe extern "C" fn(
22702        arg1: *const *const X509V3_EXT_METHOD,
22703        arg2: *const *const X509V3_EXT_METHOD,
22704    ) -> ::std::os::raw::c_int,
22705>;
22706pub type sk_X509V3_EXT_METHOD_delete_if_func = ::std::option::Option<
22707    unsafe extern "C" fn(
22708        arg1: *mut X509V3_EXT_METHOD,
22709        arg2: *mut ::std::os::raw::c_void,
22710    ) -> ::std::os::raw::c_int,
22711>;
22712#[repr(C)]
22713#[derive(Debug, Copy, Clone, PartialEq, Eq)]
22714pub struct BASIC_CONSTRAINTS_st {
22715    pub ca: ::std::os::raw::c_int,
22716    pub pathlen: *mut ASN1_INTEGER,
22717}
22718#[test]
22719fn bindgen_test_layout_BASIC_CONSTRAINTS_st() {
22720    const UNINIT: ::std::mem::MaybeUninit<BASIC_CONSTRAINTS_st> = ::std::mem::MaybeUninit::uninit();
22721    let ptr = UNINIT.as_ptr();
22722    assert_eq!(
22723        ::std::mem::size_of::<BASIC_CONSTRAINTS_st>(),
22724        16usize,
22725        "Size of BASIC_CONSTRAINTS_st"
22726    );
22727    assert_eq!(
22728        ::std::mem::align_of::<BASIC_CONSTRAINTS_st>(),
22729        8usize,
22730        "Alignment of BASIC_CONSTRAINTS_st"
22731    );
22732    assert_eq!(
22733        unsafe { ::std::ptr::addr_of!((*ptr).ca) as usize - ptr as usize },
22734        0usize,
22735        "Offset of field: BASIC_CONSTRAINTS_st::ca"
22736    );
22737    assert_eq!(
22738        unsafe { ::std::ptr::addr_of!((*ptr).pathlen) as usize - ptr as usize },
22739        8usize,
22740        "Offset of field: BASIC_CONSTRAINTS_st::pathlen"
22741    );
22742}
22743impl Default for BASIC_CONSTRAINTS_st {
22744    fn default() -> Self {
22745        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22746        unsafe {
22747            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22748            s.assume_init()
22749        }
22750    }
22751}
22752#[repr(C)]
22753#[derive(Debug, Copy, Clone, PartialEq, Eq)]
22754pub struct ACCESS_DESCRIPTION_st {
22755    pub method: *mut ASN1_OBJECT,
22756    pub location: *mut GENERAL_NAME,
22757}
22758#[test]
22759fn bindgen_test_layout_ACCESS_DESCRIPTION_st() {
22760    const UNINIT: ::std::mem::MaybeUninit<ACCESS_DESCRIPTION_st> =
22761        ::std::mem::MaybeUninit::uninit();
22762    let ptr = UNINIT.as_ptr();
22763    assert_eq!(
22764        ::std::mem::size_of::<ACCESS_DESCRIPTION_st>(),
22765        16usize,
22766        "Size of ACCESS_DESCRIPTION_st"
22767    );
22768    assert_eq!(
22769        ::std::mem::align_of::<ACCESS_DESCRIPTION_st>(),
22770        8usize,
22771        "Alignment of ACCESS_DESCRIPTION_st"
22772    );
22773    assert_eq!(
22774        unsafe { ::std::ptr::addr_of!((*ptr).method) as usize - ptr as usize },
22775        0usize,
22776        "Offset of field: ACCESS_DESCRIPTION_st::method"
22777    );
22778    assert_eq!(
22779        unsafe { ::std::ptr::addr_of!((*ptr).location) as usize - ptr as usize },
22780        8usize,
22781        "Offset of field: ACCESS_DESCRIPTION_st::location"
22782    );
22783}
22784impl Default for ACCESS_DESCRIPTION_st {
22785    fn default() -> Self {
22786        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22787        unsafe {
22788            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22789            s.assume_init()
22790        }
22791    }
22792}
22793pub type ACCESS_DESCRIPTION = ACCESS_DESCRIPTION_st;
22794#[repr(C)]
22795#[derive(Debug, Copy, Clone)]
22796pub struct stack_st_ACCESS_DESCRIPTION {
22797    _unused: [u8; 0],
22798}
22799pub type sk_ACCESS_DESCRIPTION_free_func =
22800    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ACCESS_DESCRIPTION)>;
22801pub type sk_ACCESS_DESCRIPTION_copy_func = ::std::option::Option<
22802    unsafe extern "C" fn(arg1: *const ACCESS_DESCRIPTION) -> *mut ACCESS_DESCRIPTION,
22803>;
22804pub type sk_ACCESS_DESCRIPTION_cmp_func = ::std::option::Option<
22805    unsafe extern "C" fn(
22806        arg1: *const *const ACCESS_DESCRIPTION,
22807        arg2: *const *const ACCESS_DESCRIPTION,
22808    ) -> ::std::os::raw::c_int,
22809>;
22810pub type sk_ACCESS_DESCRIPTION_delete_if_func = ::std::option::Option<
22811    unsafe extern "C" fn(
22812        arg1: *mut ACCESS_DESCRIPTION,
22813        arg2: *mut ::std::os::raw::c_void,
22814    ) -> ::std::os::raw::c_int,
22815>;
22816pub type AUTHORITY_INFO_ACCESS = stack_st_ACCESS_DESCRIPTION;
22817pub type EXTENDED_KEY_USAGE = stack_st_ASN1_OBJECT;
22818#[repr(C)]
22819#[derive(Copy, Clone)]
22820pub struct DIST_POINT_NAME_st {
22821    pub type_: ::std::os::raw::c_int,
22822    pub name: DIST_POINT_NAME_st__bindgen_ty_1,
22823    pub dpname: *mut X509_NAME,
22824}
22825#[repr(C)]
22826#[derive(Copy, Clone)]
22827pub union DIST_POINT_NAME_st__bindgen_ty_1 {
22828    pub fullname: *mut GENERAL_NAMES,
22829    pub relativename: *mut stack_st_X509_NAME_ENTRY,
22830}
22831#[test]
22832fn bindgen_test_layout_DIST_POINT_NAME_st__bindgen_ty_1() {
22833    const UNINIT: ::std::mem::MaybeUninit<DIST_POINT_NAME_st__bindgen_ty_1> =
22834        ::std::mem::MaybeUninit::uninit();
22835    let ptr = UNINIT.as_ptr();
22836    assert_eq!(
22837        ::std::mem::size_of::<DIST_POINT_NAME_st__bindgen_ty_1>(),
22838        8usize,
22839        "Size of DIST_POINT_NAME_st__bindgen_ty_1"
22840    );
22841    assert_eq!(
22842        ::std::mem::align_of::<DIST_POINT_NAME_st__bindgen_ty_1>(),
22843        8usize,
22844        "Alignment of DIST_POINT_NAME_st__bindgen_ty_1"
22845    );
22846    assert_eq!(
22847        unsafe { ::std::ptr::addr_of!((*ptr).fullname) as usize - ptr as usize },
22848        0usize,
22849        "Offset of field: DIST_POINT_NAME_st__bindgen_ty_1::fullname"
22850    );
22851    assert_eq!(
22852        unsafe { ::std::ptr::addr_of!((*ptr).relativename) as usize - ptr as usize },
22853        0usize,
22854        "Offset of field: DIST_POINT_NAME_st__bindgen_ty_1::relativename"
22855    );
22856}
22857impl Default for DIST_POINT_NAME_st__bindgen_ty_1 {
22858    fn default() -> Self {
22859        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22860        unsafe {
22861            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22862            s.assume_init()
22863        }
22864    }
22865}
22866#[test]
22867fn bindgen_test_layout_DIST_POINT_NAME_st() {
22868    const UNINIT: ::std::mem::MaybeUninit<DIST_POINT_NAME_st> = ::std::mem::MaybeUninit::uninit();
22869    let ptr = UNINIT.as_ptr();
22870    assert_eq!(
22871        ::std::mem::size_of::<DIST_POINT_NAME_st>(),
22872        24usize,
22873        "Size of DIST_POINT_NAME_st"
22874    );
22875    assert_eq!(
22876        ::std::mem::align_of::<DIST_POINT_NAME_st>(),
22877        8usize,
22878        "Alignment of DIST_POINT_NAME_st"
22879    );
22880    assert_eq!(
22881        unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
22882        0usize,
22883        "Offset of field: DIST_POINT_NAME_st::type_"
22884    );
22885    assert_eq!(
22886        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
22887        8usize,
22888        "Offset of field: DIST_POINT_NAME_st::name"
22889    );
22890    assert_eq!(
22891        unsafe { ::std::ptr::addr_of!((*ptr).dpname) as usize - ptr as usize },
22892        16usize,
22893        "Offset of field: DIST_POINT_NAME_st::dpname"
22894    );
22895}
22896impl Default for DIST_POINT_NAME_st {
22897    fn default() -> Self {
22898        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22899        unsafe {
22900            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22901            s.assume_init()
22902        }
22903    }
22904}
22905pub type DIST_POINT_NAME = DIST_POINT_NAME_st;
22906#[repr(C)]
22907#[derive(Debug, Copy, Clone, PartialEq, Eq)]
22908pub struct DIST_POINT_st {
22909    pub distpoint: *mut DIST_POINT_NAME,
22910    pub reasons: *mut ASN1_BIT_STRING,
22911    pub CRLissuer: *mut GENERAL_NAMES,
22912}
22913#[test]
22914fn bindgen_test_layout_DIST_POINT_st() {
22915    const UNINIT: ::std::mem::MaybeUninit<DIST_POINT_st> = ::std::mem::MaybeUninit::uninit();
22916    let ptr = UNINIT.as_ptr();
22917    assert_eq!(
22918        ::std::mem::size_of::<DIST_POINT_st>(),
22919        24usize,
22920        "Size of DIST_POINT_st"
22921    );
22922    assert_eq!(
22923        ::std::mem::align_of::<DIST_POINT_st>(),
22924        8usize,
22925        "Alignment of DIST_POINT_st"
22926    );
22927    assert_eq!(
22928        unsafe { ::std::ptr::addr_of!((*ptr).distpoint) as usize - ptr as usize },
22929        0usize,
22930        "Offset of field: DIST_POINT_st::distpoint"
22931    );
22932    assert_eq!(
22933        unsafe { ::std::ptr::addr_of!((*ptr).reasons) as usize - ptr as usize },
22934        8usize,
22935        "Offset of field: DIST_POINT_st::reasons"
22936    );
22937    assert_eq!(
22938        unsafe { ::std::ptr::addr_of!((*ptr).CRLissuer) as usize - ptr as usize },
22939        16usize,
22940        "Offset of field: DIST_POINT_st::CRLissuer"
22941    );
22942}
22943impl Default for DIST_POINT_st {
22944    fn default() -> Self {
22945        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
22946        unsafe {
22947            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
22948            s.assume_init()
22949        }
22950    }
22951}
22952pub type CRL_DIST_POINTS = stack_st_DIST_POINT;
22953pub type sk_DIST_POINT_free_func =
22954    ::std::option::Option<unsafe extern "C" fn(arg1: *mut DIST_POINT)>;
22955pub type sk_DIST_POINT_copy_func =
22956    ::std::option::Option<unsafe extern "C" fn(arg1: *const DIST_POINT) -> *mut DIST_POINT>;
22957pub type sk_DIST_POINT_cmp_func = ::std::option::Option<
22958    unsafe extern "C" fn(
22959        arg1: *const *const DIST_POINT,
22960        arg2: *const *const DIST_POINT,
22961    ) -> ::std::os::raw::c_int,
22962>;
22963pub type sk_DIST_POINT_delete_if_func = ::std::option::Option<
22964    unsafe extern "C" fn(
22965        arg1: *mut DIST_POINT,
22966        arg2: *mut ::std::os::raw::c_void,
22967    ) -> ::std::os::raw::c_int,
22968>;
22969#[repr(C)]
22970#[derive(Debug, Copy, Clone, PartialEq, Eq)]
22971pub struct AUTHORITY_KEYID_st {
22972    pub keyid: *mut ASN1_OCTET_STRING,
22973    pub issuer: *mut GENERAL_NAMES,
22974    pub serial: *mut ASN1_INTEGER,
22975}
22976#[test]
22977fn bindgen_test_layout_AUTHORITY_KEYID_st() {
22978    const UNINIT: ::std::mem::MaybeUninit<AUTHORITY_KEYID_st> = ::std::mem::MaybeUninit::uninit();
22979    let ptr = UNINIT.as_ptr();
22980    assert_eq!(
22981        ::std::mem::size_of::<AUTHORITY_KEYID_st>(),
22982        24usize,
22983        "Size of AUTHORITY_KEYID_st"
22984    );
22985    assert_eq!(
22986        ::std::mem::align_of::<AUTHORITY_KEYID_st>(),
22987        8usize,
22988        "Alignment of AUTHORITY_KEYID_st"
22989    );
22990    assert_eq!(
22991        unsafe { ::std::ptr::addr_of!((*ptr).keyid) as usize - ptr as usize },
22992        0usize,
22993        "Offset of field: AUTHORITY_KEYID_st::keyid"
22994    );
22995    assert_eq!(
22996        unsafe { ::std::ptr::addr_of!((*ptr).issuer) as usize - ptr as usize },
22997        8usize,
22998        "Offset of field: AUTHORITY_KEYID_st::issuer"
22999    );
23000    assert_eq!(
23001        unsafe { ::std::ptr::addr_of!((*ptr).serial) as usize - ptr as usize },
23002        16usize,
23003        "Offset of field: AUTHORITY_KEYID_st::serial"
23004    );
23005}
23006impl Default for AUTHORITY_KEYID_st {
23007    fn default() -> Self {
23008        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23009        unsafe {
23010            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23011            s.assume_init()
23012        }
23013    }
23014}
23015#[repr(C)]
23016#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23017pub struct NOTICEREF_st {
23018    pub organization: *mut ASN1_STRING,
23019    pub noticenos: *mut stack_st_ASN1_INTEGER,
23020}
23021#[test]
23022fn bindgen_test_layout_NOTICEREF_st() {
23023    const UNINIT: ::std::mem::MaybeUninit<NOTICEREF_st> = ::std::mem::MaybeUninit::uninit();
23024    let ptr = UNINIT.as_ptr();
23025    assert_eq!(
23026        ::std::mem::size_of::<NOTICEREF_st>(),
23027        16usize,
23028        "Size of NOTICEREF_st"
23029    );
23030    assert_eq!(
23031        ::std::mem::align_of::<NOTICEREF_st>(),
23032        8usize,
23033        "Alignment of NOTICEREF_st"
23034    );
23035    assert_eq!(
23036        unsafe { ::std::ptr::addr_of!((*ptr).organization) as usize - ptr as usize },
23037        0usize,
23038        "Offset of field: NOTICEREF_st::organization"
23039    );
23040    assert_eq!(
23041        unsafe { ::std::ptr::addr_of!((*ptr).noticenos) as usize - ptr as usize },
23042        8usize,
23043        "Offset of field: NOTICEREF_st::noticenos"
23044    );
23045}
23046impl Default for NOTICEREF_st {
23047    fn default() -> Self {
23048        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23049        unsafe {
23050            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23051            s.assume_init()
23052        }
23053    }
23054}
23055pub type NOTICEREF = NOTICEREF_st;
23056#[repr(C)]
23057#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23058pub struct USERNOTICE_st {
23059    pub noticeref: *mut NOTICEREF,
23060    pub exptext: *mut ASN1_STRING,
23061}
23062#[test]
23063fn bindgen_test_layout_USERNOTICE_st() {
23064    const UNINIT: ::std::mem::MaybeUninit<USERNOTICE_st> = ::std::mem::MaybeUninit::uninit();
23065    let ptr = UNINIT.as_ptr();
23066    assert_eq!(
23067        ::std::mem::size_of::<USERNOTICE_st>(),
23068        16usize,
23069        "Size of USERNOTICE_st"
23070    );
23071    assert_eq!(
23072        ::std::mem::align_of::<USERNOTICE_st>(),
23073        8usize,
23074        "Alignment of USERNOTICE_st"
23075    );
23076    assert_eq!(
23077        unsafe { ::std::ptr::addr_of!((*ptr).noticeref) as usize - ptr as usize },
23078        0usize,
23079        "Offset of field: USERNOTICE_st::noticeref"
23080    );
23081    assert_eq!(
23082        unsafe { ::std::ptr::addr_of!((*ptr).exptext) as usize - ptr as usize },
23083        8usize,
23084        "Offset of field: USERNOTICE_st::exptext"
23085    );
23086}
23087impl Default for USERNOTICE_st {
23088    fn default() -> Self {
23089        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23090        unsafe {
23091            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23092            s.assume_init()
23093        }
23094    }
23095}
23096pub type USERNOTICE = USERNOTICE_st;
23097#[repr(C)]
23098#[derive(Copy, Clone)]
23099pub struct POLICYQUALINFO_st {
23100    pub pqualid: *mut ASN1_OBJECT,
23101    pub d: POLICYQUALINFO_st__bindgen_ty_1,
23102}
23103#[repr(C)]
23104#[derive(Copy, Clone)]
23105pub union POLICYQUALINFO_st__bindgen_ty_1 {
23106    pub cpsuri: *mut ASN1_IA5STRING,
23107    pub usernotice: *mut USERNOTICE,
23108    pub other: *mut ASN1_TYPE,
23109}
23110#[test]
23111fn bindgen_test_layout_POLICYQUALINFO_st__bindgen_ty_1() {
23112    const UNINIT: ::std::mem::MaybeUninit<POLICYQUALINFO_st__bindgen_ty_1> =
23113        ::std::mem::MaybeUninit::uninit();
23114    let ptr = UNINIT.as_ptr();
23115    assert_eq!(
23116        ::std::mem::size_of::<POLICYQUALINFO_st__bindgen_ty_1>(),
23117        8usize,
23118        "Size of POLICYQUALINFO_st__bindgen_ty_1"
23119    );
23120    assert_eq!(
23121        ::std::mem::align_of::<POLICYQUALINFO_st__bindgen_ty_1>(),
23122        8usize,
23123        "Alignment of POLICYQUALINFO_st__bindgen_ty_1"
23124    );
23125    assert_eq!(
23126        unsafe { ::std::ptr::addr_of!((*ptr).cpsuri) as usize - ptr as usize },
23127        0usize,
23128        "Offset of field: POLICYQUALINFO_st__bindgen_ty_1::cpsuri"
23129    );
23130    assert_eq!(
23131        unsafe { ::std::ptr::addr_of!((*ptr).usernotice) as usize - ptr as usize },
23132        0usize,
23133        "Offset of field: POLICYQUALINFO_st__bindgen_ty_1::usernotice"
23134    );
23135    assert_eq!(
23136        unsafe { ::std::ptr::addr_of!((*ptr).other) as usize - ptr as usize },
23137        0usize,
23138        "Offset of field: POLICYQUALINFO_st__bindgen_ty_1::other"
23139    );
23140}
23141impl Default for POLICYQUALINFO_st__bindgen_ty_1 {
23142    fn default() -> Self {
23143        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23144        unsafe {
23145            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23146            s.assume_init()
23147        }
23148    }
23149}
23150#[test]
23151fn bindgen_test_layout_POLICYQUALINFO_st() {
23152    const UNINIT: ::std::mem::MaybeUninit<POLICYQUALINFO_st> = ::std::mem::MaybeUninit::uninit();
23153    let ptr = UNINIT.as_ptr();
23154    assert_eq!(
23155        ::std::mem::size_of::<POLICYQUALINFO_st>(),
23156        16usize,
23157        "Size of POLICYQUALINFO_st"
23158    );
23159    assert_eq!(
23160        ::std::mem::align_of::<POLICYQUALINFO_st>(),
23161        8usize,
23162        "Alignment of POLICYQUALINFO_st"
23163    );
23164    assert_eq!(
23165        unsafe { ::std::ptr::addr_of!((*ptr).pqualid) as usize - ptr as usize },
23166        0usize,
23167        "Offset of field: POLICYQUALINFO_st::pqualid"
23168    );
23169    assert_eq!(
23170        unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize },
23171        8usize,
23172        "Offset of field: POLICYQUALINFO_st::d"
23173    );
23174}
23175impl Default for POLICYQUALINFO_st {
23176    fn default() -> Self {
23177        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23178        unsafe {
23179            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23180            s.assume_init()
23181        }
23182    }
23183}
23184pub type POLICYQUALINFO = POLICYQUALINFO_st;
23185#[repr(C)]
23186#[derive(Debug, Copy, Clone)]
23187pub struct stack_st_POLICYQUALINFO {
23188    _unused: [u8; 0],
23189}
23190pub type sk_POLICYQUALINFO_free_func =
23191    ::std::option::Option<unsafe extern "C" fn(arg1: *mut POLICYQUALINFO)>;
23192pub type sk_POLICYQUALINFO_copy_func =
23193    ::std::option::Option<unsafe extern "C" fn(arg1: *const POLICYQUALINFO) -> *mut POLICYQUALINFO>;
23194pub type sk_POLICYQUALINFO_cmp_func = ::std::option::Option<
23195    unsafe extern "C" fn(
23196        arg1: *const *const POLICYQUALINFO,
23197        arg2: *const *const POLICYQUALINFO,
23198    ) -> ::std::os::raw::c_int,
23199>;
23200pub type sk_POLICYQUALINFO_delete_if_func = ::std::option::Option<
23201    unsafe extern "C" fn(
23202        arg1: *mut POLICYQUALINFO,
23203        arg2: *mut ::std::os::raw::c_void,
23204    ) -> ::std::os::raw::c_int,
23205>;
23206#[repr(C)]
23207#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23208pub struct POLICYINFO_st {
23209    pub policyid: *mut ASN1_OBJECT,
23210    pub qualifiers: *mut stack_st_POLICYQUALINFO,
23211}
23212#[test]
23213fn bindgen_test_layout_POLICYINFO_st() {
23214    const UNINIT: ::std::mem::MaybeUninit<POLICYINFO_st> = ::std::mem::MaybeUninit::uninit();
23215    let ptr = UNINIT.as_ptr();
23216    assert_eq!(
23217        ::std::mem::size_of::<POLICYINFO_st>(),
23218        16usize,
23219        "Size of POLICYINFO_st"
23220    );
23221    assert_eq!(
23222        ::std::mem::align_of::<POLICYINFO_st>(),
23223        8usize,
23224        "Alignment of POLICYINFO_st"
23225    );
23226    assert_eq!(
23227        unsafe { ::std::ptr::addr_of!((*ptr).policyid) as usize - ptr as usize },
23228        0usize,
23229        "Offset of field: POLICYINFO_st::policyid"
23230    );
23231    assert_eq!(
23232        unsafe { ::std::ptr::addr_of!((*ptr).qualifiers) as usize - ptr as usize },
23233        8usize,
23234        "Offset of field: POLICYINFO_st::qualifiers"
23235    );
23236}
23237impl Default for POLICYINFO_st {
23238    fn default() -> Self {
23239        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23240        unsafe {
23241            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23242            s.assume_init()
23243        }
23244    }
23245}
23246pub type POLICYINFO = POLICYINFO_st;
23247#[repr(C)]
23248#[derive(Debug, Copy, Clone)]
23249pub struct stack_st_POLICYINFO {
23250    _unused: [u8; 0],
23251}
23252pub type CERTIFICATEPOLICIES = stack_st_POLICYINFO;
23253pub type sk_POLICYINFO_free_func =
23254    ::std::option::Option<unsafe extern "C" fn(arg1: *mut POLICYINFO)>;
23255pub type sk_POLICYINFO_copy_func =
23256    ::std::option::Option<unsafe extern "C" fn(arg1: *const POLICYINFO) -> *mut POLICYINFO>;
23257pub type sk_POLICYINFO_cmp_func = ::std::option::Option<
23258    unsafe extern "C" fn(
23259        arg1: *const *const POLICYINFO,
23260        arg2: *const *const POLICYINFO,
23261    ) -> ::std::os::raw::c_int,
23262>;
23263pub type sk_POLICYINFO_delete_if_func = ::std::option::Option<
23264    unsafe extern "C" fn(
23265        arg1: *mut POLICYINFO,
23266        arg2: *mut ::std::os::raw::c_void,
23267    ) -> ::std::os::raw::c_int,
23268>;
23269#[repr(C)]
23270#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23271pub struct POLICY_MAPPING_st {
23272    pub issuerDomainPolicy: *mut ASN1_OBJECT,
23273    pub subjectDomainPolicy: *mut ASN1_OBJECT,
23274}
23275#[test]
23276fn bindgen_test_layout_POLICY_MAPPING_st() {
23277    const UNINIT: ::std::mem::MaybeUninit<POLICY_MAPPING_st> = ::std::mem::MaybeUninit::uninit();
23278    let ptr = UNINIT.as_ptr();
23279    assert_eq!(
23280        ::std::mem::size_of::<POLICY_MAPPING_st>(),
23281        16usize,
23282        "Size of POLICY_MAPPING_st"
23283    );
23284    assert_eq!(
23285        ::std::mem::align_of::<POLICY_MAPPING_st>(),
23286        8usize,
23287        "Alignment of POLICY_MAPPING_st"
23288    );
23289    assert_eq!(
23290        unsafe { ::std::ptr::addr_of!((*ptr).issuerDomainPolicy) as usize - ptr as usize },
23291        0usize,
23292        "Offset of field: POLICY_MAPPING_st::issuerDomainPolicy"
23293    );
23294    assert_eq!(
23295        unsafe { ::std::ptr::addr_of!((*ptr).subjectDomainPolicy) as usize - ptr as usize },
23296        8usize,
23297        "Offset of field: POLICY_MAPPING_st::subjectDomainPolicy"
23298    );
23299}
23300impl Default for POLICY_MAPPING_st {
23301    fn default() -> Self {
23302        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23303        unsafe {
23304            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23305            s.assume_init()
23306        }
23307    }
23308}
23309pub type POLICY_MAPPING = POLICY_MAPPING_st;
23310#[repr(C)]
23311#[derive(Debug, Copy, Clone)]
23312pub struct stack_st_POLICY_MAPPING {
23313    _unused: [u8; 0],
23314}
23315pub type sk_POLICY_MAPPING_free_func =
23316    ::std::option::Option<unsafe extern "C" fn(arg1: *mut POLICY_MAPPING)>;
23317pub type sk_POLICY_MAPPING_copy_func =
23318    ::std::option::Option<unsafe extern "C" fn(arg1: *const POLICY_MAPPING) -> *mut POLICY_MAPPING>;
23319pub type sk_POLICY_MAPPING_cmp_func = ::std::option::Option<
23320    unsafe extern "C" fn(
23321        arg1: *const *const POLICY_MAPPING,
23322        arg2: *const *const POLICY_MAPPING,
23323    ) -> ::std::os::raw::c_int,
23324>;
23325pub type sk_POLICY_MAPPING_delete_if_func = ::std::option::Option<
23326    unsafe extern "C" fn(
23327        arg1: *mut POLICY_MAPPING,
23328        arg2: *mut ::std::os::raw::c_void,
23329    ) -> ::std::os::raw::c_int,
23330>;
23331pub type POLICY_MAPPINGS = stack_st_POLICY_MAPPING;
23332#[repr(C)]
23333#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23334pub struct GENERAL_SUBTREE_st {
23335    pub base: *mut GENERAL_NAME,
23336    pub minimum: *mut ASN1_INTEGER,
23337    pub maximum: *mut ASN1_INTEGER,
23338}
23339#[test]
23340fn bindgen_test_layout_GENERAL_SUBTREE_st() {
23341    const UNINIT: ::std::mem::MaybeUninit<GENERAL_SUBTREE_st> = ::std::mem::MaybeUninit::uninit();
23342    let ptr = UNINIT.as_ptr();
23343    assert_eq!(
23344        ::std::mem::size_of::<GENERAL_SUBTREE_st>(),
23345        24usize,
23346        "Size of GENERAL_SUBTREE_st"
23347    );
23348    assert_eq!(
23349        ::std::mem::align_of::<GENERAL_SUBTREE_st>(),
23350        8usize,
23351        "Alignment of GENERAL_SUBTREE_st"
23352    );
23353    assert_eq!(
23354        unsafe { ::std::ptr::addr_of!((*ptr).base) as usize - ptr as usize },
23355        0usize,
23356        "Offset of field: GENERAL_SUBTREE_st::base"
23357    );
23358    assert_eq!(
23359        unsafe { ::std::ptr::addr_of!((*ptr).minimum) as usize - ptr as usize },
23360        8usize,
23361        "Offset of field: GENERAL_SUBTREE_st::minimum"
23362    );
23363    assert_eq!(
23364        unsafe { ::std::ptr::addr_of!((*ptr).maximum) as usize - ptr as usize },
23365        16usize,
23366        "Offset of field: GENERAL_SUBTREE_st::maximum"
23367    );
23368}
23369impl Default for GENERAL_SUBTREE_st {
23370    fn default() -> Self {
23371        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23372        unsafe {
23373            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23374            s.assume_init()
23375        }
23376    }
23377}
23378pub type GENERAL_SUBTREE = GENERAL_SUBTREE_st;
23379#[repr(C)]
23380#[derive(Debug, Copy, Clone)]
23381pub struct stack_st_GENERAL_SUBTREE {
23382    _unused: [u8; 0],
23383}
23384pub type sk_GENERAL_SUBTREE_free_func =
23385    ::std::option::Option<unsafe extern "C" fn(arg1: *mut GENERAL_SUBTREE)>;
23386pub type sk_GENERAL_SUBTREE_copy_func = ::std::option::Option<
23387    unsafe extern "C" fn(arg1: *const GENERAL_SUBTREE) -> *mut GENERAL_SUBTREE,
23388>;
23389pub type sk_GENERAL_SUBTREE_cmp_func = ::std::option::Option<
23390    unsafe extern "C" fn(
23391        arg1: *const *const GENERAL_SUBTREE,
23392        arg2: *const *const GENERAL_SUBTREE,
23393    ) -> ::std::os::raw::c_int,
23394>;
23395pub type sk_GENERAL_SUBTREE_delete_if_func = ::std::option::Option<
23396    unsafe extern "C" fn(
23397        arg1: *mut GENERAL_SUBTREE,
23398        arg2: *mut ::std::os::raw::c_void,
23399    ) -> ::std::os::raw::c_int,
23400>;
23401#[repr(C)]
23402#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23403pub struct NAME_CONSTRAINTS_st {
23404    pub permittedSubtrees: *mut stack_st_GENERAL_SUBTREE,
23405    pub excludedSubtrees: *mut stack_st_GENERAL_SUBTREE,
23406}
23407#[test]
23408fn bindgen_test_layout_NAME_CONSTRAINTS_st() {
23409    const UNINIT: ::std::mem::MaybeUninit<NAME_CONSTRAINTS_st> = ::std::mem::MaybeUninit::uninit();
23410    let ptr = UNINIT.as_ptr();
23411    assert_eq!(
23412        ::std::mem::size_of::<NAME_CONSTRAINTS_st>(),
23413        16usize,
23414        "Size of NAME_CONSTRAINTS_st"
23415    );
23416    assert_eq!(
23417        ::std::mem::align_of::<NAME_CONSTRAINTS_st>(),
23418        8usize,
23419        "Alignment of NAME_CONSTRAINTS_st"
23420    );
23421    assert_eq!(
23422        unsafe { ::std::ptr::addr_of!((*ptr).permittedSubtrees) as usize - ptr as usize },
23423        0usize,
23424        "Offset of field: NAME_CONSTRAINTS_st::permittedSubtrees"
23425    );
23426    assert_eq!(
23427        unsafe { ::std::ptr::addr_of!((*ptr).excludedSubtrees) as usize - ptr as usize },
23428        8usize,
23429        "Offset of field: NAME_CONSTRAINTS_st::excludedSubtrees"
23430    );
23431}
23432impl Default for NAME_CONSTRAINTS_st {
23433    fn default() -> Self {
23434        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23435        unsafe {
23436            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23437            s.assume_init()
23438        }
23439    }
23440}
23441#[repr(C)]
23442#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23443pub struct POLICY_CONSTRAINTS_st {
23444    pub requireExplicitPolicy: *mut ASN1_INTEGER,
23445    pub inhibitPolicyMapping: *mut ASN1_INTEGER,
23446}
23447#[test]
23448fn bindgen_test_layout_POLICY_CONSTRAINTS_st() {
23449    const UNINIT: ::std::mem::MaybeUninit<POLICY_CONSTRAINTS_st> =
23450        ::std::mem::MaybeUninit::uninit();
23451    let ptr = UNINIT.as_ptr();
23452    assert_eq!(
23453        ::std::mem::size_of::<POLICY_CONSTRAINTS_st>(),
23454        16usize,
23455        "Size of POLICY_CONSTRAINTS_st"
23456    );
23457    assert_eq!(
23458        ::std::mem::align_of::<POLICY_CONSTRAINTS_st>(),
23459        8usize,
23460        "Alignment of POLICY_CONSTRAINTS_st"
23461    );
23462    assert_eq!(
23463        unsafe { ::std::ptr::addr_of!((*ptr).requireExplicitPolicy) as usize - ptr as usize },
23464        0usize,
23465        "Offset of field: POLICY_CONSTRAINTS_st::requireExplicitPolicy"
23466    );
23467    assert_eq!(
23468        unsafe { ::std::ptr::addr_of!((*ptr).inhibitPolicyMapping) as usize - ptr as usize },
23469        8usize,
23470        "Offset of field: POLICY_CONSTRAINTS_st::inhibitPolicyMapping"
23471    );
23472}
23473impl Default for POLICY_CONSTRAINTS_st {
23474    fn default() -> Self {
23475        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23476        unsafe {
23477            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23478            s.assume_init()
23479        }
23480    }
23481}
23482pub type POLICY_CONSTRAINTS = POLICY_CONSTRAINTS_st;
23483#[repr(C)]
23484#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23485pub struct ISSUING_DIST_POINT_st {
23486    pub distpoint: *mut DIST_POINT_NAME,
23487    pub onlyuser: ASN1_BOOLEAN,
23488    pub onlyCA: ASN1_BOOLEAN,
23489    pub onlysomereasons: *mut ASN1_BIT_STRING,
23490    pub indirectCRL: ASN1_BOOLEAN,
23491    pub onlyattr: ASN1_BOOLEAN,
23492}
23493#[test]
23494fn bindgen_test_layout_ISSUING_DIST_POINT_st() {
23495    const UNINIT: ::std::mem::MaybeUninit<ISSUING_DIST_POINT_st> =
23496        ::std::mem::MaybeUninit::uninit();
23497    let ptr = UNINIT.as_ptr();
23498    assert_eq!(
23499        ::std::mem::size_of::<ISSUING_DIST_POINT_st>(),
23500        32usize,
23501        "Size of ISSUING_DIST_POINT_st"
23502    );
23503    assert_eq!(
23504        ::std::mem::align_of::<ISSUING_DIST_POINT_st>(),
23505        8usize,
23506        "Alignment of ISSUING_DIST_POINT_st"
23507    );
23508    assert_eq!(
23509        unsafe { ::std::ptr::addr_of!((*ptr).distpoint) as usize - ptr as usize },
23510        0usize,
23511        "Offset of field: ISSUING_DIST_POINT_st::distpoint"
23512    );
23513    assert_eq!(
23514        unsafe { ::std::ptr::addr_of!((*ptr).onlyuser) as usize - ptr as usize },
23515        8usize,
23516        "Offset of field: ISSUING_DIST_POINT_st::onlyuser"
23517    );
23518    assert_eq!(
23519        unsafe { ::std::ptr::addr_of!((*ptr).onlyCA) as usize - ptr as usize },
23520        12usize,
23521        "Offset of field: ISSUING_DIST_POINT_st::onlyCA"
23522    );
23523    assert_eq!(
23524        unsafe { ::std::ptr::addr_of!((*ptr).onlysomereasons) as usize - ptr as usize },
23525        16usize,
23526        "Offset of field: ISSUING_DIST_POINT_st::onlysomereasons"
23527    );
23528    assert_eq!(
23529        unsafe { ::std::ptr::addr_of!((*ptr).indirectCRL) as usize - ptr as usize },
23530        24usize,
23531        "Offset of field: ISSUING_DIST_POINT_st::indirectCRL"
23532    );
23533    assert_eq!(
23534        unsafe { ::std::ptr::addr_of!((*ptr).onlyattr) as usize - ptr as usize },
23535        28usize,
23536        "Offset of field: ISSUING_DIST_POINT_st::onlyattr"
23537    );
23538}
23539impl Default for ISSUING_DIST_POINT_st {
23540    fn default() -> Self {
23541        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23542        unsafe {
23543            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23544            s.assume_init()
23545        }
23546    }
23547}
23548#[repr(C)]
23549#[derive(Debug, Copy, Clone, PartialEq, Eq)]
23550pub struct x509_purpose_st {
23551    pub purpose: ::std::os::raw::c_int,
23552    pub trust: ::std::os::raw::c_int,
23553    pub flags: ::std::os::raw::c_int,
23554    pub check_purpose: ::std::option::Option<
23555        unsafe extern "C" fn(
23556            arg1: *const x509_purpose_st,
23557            arg2: *const X509,
23558            arg3: ::std::os::raw::c_int,
23559        ) -> ::std::os::raw::c_int,
23560    >,
23561    pub name: *mut ::std::os::raw::c_char,
23562    pub sname: *mut ::std::os::raw::c_char,
23563    pub usr_data: *mut ::std::os::raw::c_void,
23564}
23565#[test]
23566fn bindgen_test_layout_x509_purpose_st() {
23567    const UNINIT: ::std::mem::MaybeUninit<x509_purpose_st> = ::std::mem::MaybeUninit::uninit();
23568    let ptr = UNINIT.as_ptr();
23569    assert_eq!(
23570        ::std::mem::size_of::<x509_purpose_st>(),
23571        48usize,
23572        "Size of x509_purpose_st"
23573    );
23574    assert_eq!(
23575        ::std::mem::align_of::<x509_purpose_st>(),
23576        8usize,
23577        "Alignment of x509_purpose_st"
23578    );
23579    assert_eq!(
23580        unsafe { ::std::ptr::addr_of!((*ptr).purpose) as usize - ptr as usize },
23581        0usize,
23582        "Offset of field: x509_purpose_st::purpose"
23583    );
23584    assert_eq!(
23585        unsafe { ::std::ptr::addr_of!((*ptr).trust) as usize - ptr as usize },
23586        4usize,
23587        "Offset of field: x509_purpose_st::trust"
23588    );
23589    assert_eq!(
23590        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
23591        8usize,
23592        "Offset of field: x509_purpose_st::flags"
23593    );
23594    assert_eq!(
23595        unsafe { ::std::ptr::addr_of!((*ptr).check_purpose) as usize - ptr as usize },
23596        16usize,
23597        "Offset of field: x509_purpose_st::check_purpose"
23598    );
23599    assert_eq!(
23600        unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
23601        24usize,
23602        "Offset of field: x509_purpose_st::name"
23603    );
23604    assert_eq!(
23605        unsafe { ::std::ptr::addr_of!((*ptr).sname) as usize - ptr as usize },
23606        32usize,
23607        "Offset of field: x509_purpose_st::sname"
23608    );
23609    assert_eq!(
23610        unsafe { ::std::ptr::addr_of!((*ptr).usr_data) as usize - ptr as usize },
23611        40usize,
23612        "Offset of field: x509_purpose_st::usr_data"
23613    );
23614}
23615impl Default for x509_purpose_st {
23616    fn default() -> Self {
23617        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
23618        unsafe {
23619            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
23620            s.assume_init()
23621        }
23622    }
23623}
23624pub type X509_PURPOSE = x509_purpose_st;
23625#[repr(C)]
23626#[derive(Debug, Copy, Clone)]
23627pub struct stack_st_X509_PURPOSE {
23628    _unused: [u8; 0],
23629}
23630pub type sk_X509_PURPOSE_free_func =
23631    ::std::option::Option<unsafe extern "C" fn(arg1: *mut X509_PURPOSE)>;
23632pub type sk_X509_PURPOSE_copy_func =
23633    ::std::option::Option<unsafe extern "C" fn(arg1: *const X509_PURPOSE) -> *mut X509_PURPOSE>;
23634pub type sk_X509_PURPOSE_cmp_func = ::std::option::Option<
23635    unsafe extern "C" fn(
23636        arg1: *const *const X509_PURPOSE,
23637        arg2: *const *const X509_PURPOSE,
23638    ) -> ::std::os::raw::c_int,
23639>;
23640pub type sk_X509_PURPOSE_delete_if_func = ::std::option::Option<
23641    unsafe extern "C" fn(
23642        arg1: *mut X509_PURPOSE,
23643        arg2: *mut ::std::os::raw::c_void,
23644    ) -> ::std::os::raw::c_int,
23645>;
23646extern "C" {
23647    #[link_name = "\u{1}aws_lc_fips_0_13_10_BASIC_CONSTRAINTS_new"]
23648    pub fn BASIC_CONSTRAINTS_new() -> *mut BASIC_CONSTRAINTS;
23649}
23650extern "C" {
23651    #[link_name = "\u{1}aws_lc_fips_0_13_10_BASIC_CONSTRAINTS_free"]
23652    pub fn BASIC_CONSTRAINTS_free(a: *mut BASIC_CONSTRAINTS);
23653}
23654extern "C" {
23655    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_BASIC_CONSTRAINTS"]
23656    pub fn d2i_BASIC_CONSTRAINTS(
23657        a: *mut *mut BASIC_CONSTRAINTS,
23658        in_: *mut *const ::std::os::raw::c_uchar,
23659        len: ::std::os::raw::c_long,
23660    ) -> *mut BASIC_CONSTRAINTS;
23661}
23662extern "C" {
23663    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_BASIC_CONSTRAINTS"]
23664    pub fn i2d_BASIC_CONSTRAINTS(
23665        a: *const BASIC_CONSTRAINTS,
23666        out: *mut *mut ::std::os::raw::c_uchar,
23667    ) -> ::std::os::raw::c_int;
23668}
23669extern "C" {
23670    #[link_name = "\u{1}aws_lc_fips_0_13_10_BASIC_CONSTRAINTS_it"]
23671    pub static BASIC_CONSTRAINTS_it: ASN1_ITEM;
23672}
23673extern "C" {
23674    #[link_name = "\u{1}aws_lc_fips_0_13_10_AUTHORITY_KEYID_new"]
23675    pub fn AUTHORITY_KEYID_new() -> *mut AUTHORITY_KEYID;
23676}
23677extern "C" {
23678    #[link_name = "\u{1}aws_lc_fips_0_13_10_AUTHORITY_KEYID_free"]
23679    pub fn AUTHORITY_KEYID_free(a: *mut AUTHORITY_KEYID);
23680}
23681extern "C" {
23682    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_AUTHORITY_KEYID"]
23683    pub fn d2i_AUTHORITY_KEYID(
23684        a: *mut *mut AUTHORITY_KEYID,
23685        in_: *mut *const ::std::os::raw::c_uchar,
23686        len: ::std::os::raw::c_long,
23687    ) -> *mut AUTHORITY_KEYID;
23688}
23689extern "C" {
23690    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_AUTHORITY_KEYID"]
23691    pub fn i2d_AUTHORITY_KEYID(
23692        a: *mut AUTHORITY_KEYID,
23693        out: *mut *mut ::std::os::raw::c_uchar,
23694    ) -> ::std::os::raw::c_int;
23695}
23696extern "C" {
23697    #[link_name = "\u{1}aws_lc_fips_0_13_10_AUTHORITY_KEYID_it"]
23698    pub static AUTHORITY_KEYID_it: ASN1_ITEM;
23699}
23700extern "C" {
23701    #[link_name = "\u{1}aws_lc_fips_0_13_10_EXTENDED_KEY_USAGE_new"]
23702    pub fn EXTENDED_KEY_USAGE_new() -> *mut EXTENDED_KEY_USAGE;
23703}
23704extern "C" {
23705    #[link_name = "\u{1}aws_lc_fips_0_13_10_EXTENDED_KEY_USAGE_free"]
23706    pub fn EXTENDED_KEY_USAGE_free(a: *mut EXTENDED_KEY_USAGE);
23707}
23708extern "C" {
23709    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_EXTENDED_KEY_USAGE"]
23710    pub fn d2i_EXTENDED_KEY_USAGE(
23711        a: *mut *mut EXTENDED_KEY_USAGE,
23712        in_: *mut *const ::std::os::raw::c_uchar,
23713        len: ::std::os::raw::c_long,
23714    ) -> *mut EXTENDED_KEY_USAGE;
23715}
23716extern "C" {
23717    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_EXTENDED_KEY_USAGE"]
23718    pub fn i2d_EXTENDED_KEY_USAGE(
23719        a: *const EXTENDED_KEY_USAGE,
23720        out: *mut *mut ::std::os::raw::c_uchar,
23721    ) -> ::std::os::raw::c_int;
23722}
23723extern "C" {
23724    #[link_name = "\u{1}aws_lc_fips_0_13_10_EXTENDED_KEY_USAGE_it"]
23725    pub static EXTENDED_KEY_USAGE_it: ASN1_ITEM;
23726}
23727extern "C" {
23728    #[link_name = "\u{1}aws_lc_fips_0_13_10_CERTIFICATEPOLICIES_new"]
23729    pub fn CERTIFICATEPOLICIES_new() -> *mut CERTIFICATEPOLICIES;
23730}
23731extern "C" {
23732    #[link_name = "\u{1}aws_lc_fips_0_13_10_CERTIFICATEPOLICIES_free"]
23733    pub fn CERTIFICATEPOLICIES_free(a: *mut CERTIFICATEPOLICIES);
23734}
23735extern "C" {
23736    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_CERTIFICATEPOLICIES"]
23737    pub fn d2i_CERTIFICATEPOLICIES(
23738        a: *mut *mut CERTIFICATEPOLICIES,
23739        in_: *mut *const ::std::os::raw::c_uchar,
23740        len: ::std::os::raw::c_long,
23741    ) -> *mut CERTIFICATEPOLICIES;
23742}
23743extern "C" {
23744    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_CERTIFICATEPOLICIES"]
23745    pub fn i2d_CERTIFICATEPOLICIES(
23746        a: *const CERTIFICATEPOLICIES,
23747        out: *mut *mut ::std::os::raw::c_uchar,
23748    ) -> ::std::os::raw::c_int;
23749}
23750extern "C" {
23751    #[link_name = "\u{1}aws_lc_fips_0_13_10_CERTIFICATEPOLICIES_it"]
23752    pub static CERTIFICATEPOLICIES_it: ASN1_ITEM;
23753}
23754extern "C" {
23755    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICYINFO_new"]
23756    pub fn POLICYINFO_new() -> *mut POLICYINFO;
23757}
23758extern "C" {
23759    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICYINFO_free"]
23760    pub fn POLICYINFO_free(a: *mut POLICYINFO);
23761}
23762extern "C" {
23763    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_POLICYINFO"]
23764    pub fn d2i_POLICYINFO(
23765        a: *mut *mut POLICYINFO,
23766        in_: *mut *const ::std::os::raw::c_uchar,
23767        len: ::std::os::raw::c_long,
23768    ) -> *mut POLICYINFO;
23769}
23770extern "C" {
23771    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_POLICYINFO"]
23772    pub fn i2d_POLICYINFO(
23773        a: *const POLICYINFO,
23774        out: *mut *mut ::std::os::raw::c_uchar,
23775    ) -> ::std::os::raw::c_int;
23776}
23777extern "C" {
23778    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICYINFO_it"]
23779    pub static POLICYINFO_it: ASN1_ITEM;
23780}
23781extern "C" {
23782    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICYQUALINFO_new"]
23783    pub fn POLICYQUALINFO_new() -> *mut POLICYQUALINFO;
23784}
23785extern "C" {
23786    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICYQUALINFO_free"]
23787    pub fn POLICYQUALINFO_free(a: *mut POLICYQUALINFO);
23788}
23789extern "C" {
23790    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_POLICYQUALINFO"]
23791    pub fn d2i_POLICYQUALINFO(
23792        a: *mut *mut POLICYQUALINFO,
23793        in_: *mut *const ::std::os::raw::c_uchar,
23794        len: ::std::os::raw::c_long,
23795    ) -> *mut POLICYQUALINFO;
23796}
23797extern "C" {
23798    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_POLICYQUALINFO"]
23799    pub fn i2d_POLICYQUALINFO(
23800        a: *const POLICYQUALINFO,
23801        out: *mut *mut ::std::os::raw::c_uchar,
23802    ) -> ::std::os::raw::c_int;
23803}
23804extern "C" {
23805    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICYQUALINFO_it"]
23806    pub static POLICYQUALINFO_it: ASN1_ITEM;
23807}
23808extern "C" {
23809    #[link_name = "\u{1}aws_lc_fips_0_13_10_USERNOTICE_new"]
23810    pub fn USERNOTICE_new() -> *mut USERNOTICE;
23811}
23812extern "C" {
23813    #[link_name = "\u{1}aws_lc_fips_0_13_10_USERNOTICE_free"]
23814    pub fn USERNOTICE_free(a: *mut USERNOTICE);
23815}
23816extern "C" {
23817    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_USERNOTICE"]
23818    pub fn d2i_USERNOTICE(
23819        a: *mut *mut USERNOTICE,
23820        in_: *mut *const ::std::os::raw::c_uchar,
23821        len: ::std::os::raw::c_long,
23822    ) -> *mut USERNOTICE;
23823}
23824extern "C" {
23825    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_USERNOTICE"]
23826    pub fn i2d_USERNOTICE(
23827        a: *const USERNOTICE,
23828        out: *mut *mut ::std::os::raw::c_uchar,
23829    ) -> ::std::os::raw::c_int;
23830}
23831extern "C" {
23832    #[link_name = "\u{1}aws_lc_fips_0_13_10_USERNOTICE_it"]
23833    pub static USERNOTICE_it: ASN1_ITEM;
23834}
23835extern "C" {
23836    #[link_name = "\u{1}aws_lc_fips_0_13_10_NOTICEREF_new"]
23837    pub fn NOTICEREF_new() -> *mut NOTICEREF;
23838}
23839extern "C" {
23840    #[link_name = "\u{1}aws_lc_fips_0_13_10_NOTICEREF_free"]
23841    pub fn NOTICEREF_free(a: *mut NOTICEREF);
23842}
23843extern "C" {
23844    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_NOTICEREF"]
23845    pub fn d2i_NOTICEREF(
23846        a: *mut *mut NOTICEREF,
23847        in_: *mut *const ::std::os::raw::c_uchar,
23848        len: ::std::os::raw::c_long,
23849    ) -> *mut NOTICEREF;
23850}
23851extern "C" {
23852    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_NOTICEREF"]
23853    pub fn i2d_NOTICEREF(
23854        a: *const NOTICEREF,
23855        out: *mut *mut ::std::os::raw::c_uchar,
23856    ) -> ::std::os::raw::c_int;
23857}
23858extern "C" {
23859    #[link_name = "\u{1}aws_lc_fips_0_13_10_NOTICEREF_it"]
23860    pub static NOTICEREF_it: ASN1_ITEM;
23861}
23862extern "C" {
23863    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRL_DIST_POINTS_new"]
23864    pub fn CRL_DIST_POINTS_new() -> *mut CRL_DIST_POINTS;
23865}
23866extern "C" {
23867    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRL_DIST_POINTS_free"]
23868    pub fn CRL_DIST_POINTS_free(a: *mut CRL_DIST_POINTS);
23869}
23870extern "C" {
23871    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_CRL_DIST_POINTS"]
23872    pub fn d2i_CRL_DIST_POINTS(
23873        a: *mut *mut CRL_DIST_POINTS,
23874        in_: *mut *const ::std::os::raw::c_uchar,
23875        len: ::std::os::raw::c_long,
23876    ) -> *mut CRL_DIST_POINTS;
23877}
23878extern "C" {
23879    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_CRL_DIST_POINTS"]
23880    pub fn i2d_CRL_DIST_POINTS(
23881        a: *mut CRL_DIST_POINTS,
23882        out: *mut *mut ::std::os::raw::c_uchar,
23883    ) -> ::std::os::raw::c_int;
23884}
23885extern "C" {
23886    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRL_DIST_POINTS_it"]
23887    pub static CRL_DIST_POINTS_it: ASN1_ITEM;
23888}
23889extern "C" {
23890    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIST_POINT_new"]
23891    pub fn DIST_POINT_new() -> *mut DIST_POINT;
23892}
23893extern "C" {
23894    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIST_POINT_free"]
23895    pub fn DIST_POINT_free(a: *mut DIST_POINT);
23896}
23897extern "C" {
23898    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DIST_POINT"]
23899    pub fn d2i_DIST_POINT(
23900        a: *mut *mut DIST_POINT,
23901        in_: *mut *const ::std::os::raw::c_uchar,
23902        len: ::std::os::raw::c_long,
23903    ) -> *mut DIST_POINT;
23904}
23905extern "C" {
23906    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DIST_POINT"]
23907    pub fn i2d_DIST_POINT(
23908        a: *mut DIST_POINT,
23909        out: *mut *mut ::std::os::raw::c_uchar,
23910    ) -> ::std::os::raw::c_int;
23911}
23912extern "C" {
23913    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIST_POINT_it"]
23914    pub static DIST_POINT_it: ASN1_ITEM;
23915}
23916extern "C" {
23917    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIST_POINT_NAME_new"]
23918    pub fn DIST_POINT_NAME_new() -> *mut DIST_POINT_NAME;
23919}
23920extern "C" {
23921    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIST_POINT_NAME_free"]
23922    pub fn DIST_POINT_NAME_free(a: *mut DIST_POINT_NAME);
23923}
23924extern "C" {
23925    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_DIST_POINT_NAME"]
23926    pub fn d2i_DIST_POINT_NAME(
23927        a: *mut *mut DIST_POINT_NAME,
23928        in_: *mut *const ::std::os::raw::c_uchar,
23929        len: ::std::os::raw::c_long,
23930    ) -> *mut DIST_POINT_NAME;
23931}
23932extern "C" {
23933    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_DIST_POINT_NAME"]
23934    pub fn i2d_DIST_POINT_NAME(
23935        a: *mut DIST_POINT_NAME,
23936        out: *mut *mut ::std::os::raw::c_uchar,
23937    ) -> ::std::os::raw::c_int;
23938}
23939extern "C" {
23940    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIST_POINT_NAME_it"]
23941    pub static DIST_POINT_NAME_it: ASN1_ITEM;
23942}
23943extern "C" {
23944    #[link_name = "\u{1}aws_lc_fips_0_13_10_ISSUING_DIST_POINT_new"]
23945    pub fn ISSUING_DIST_POINT_new() -> *mut ISSUING_DIST_POINT;
23946}
23947extern "C" {
23948    #[link_name = "\u{1}aws_lc_fips_0_13_10_ISSUING_DIST_POINT_free"]
23949    pub fn ISSUING_DIST_POINT_free(a: *mut ISSUING_DIST_POINT);
23950}
23951extern "C" {
23952    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ISSUING_DIST_POINT"]
23953    pub fn d2i_ISSUING_DIST_POINT(
23954        a: *mut *mut ISSUING_DIST_POINT,
23955        in_: *mut *const ::std::os::raw::c_uchar,
23956        len: ::std::os::raw::c_long,
23957    ) -> *mut ISSUING_DIST_POINT;
23958}
23959extern "C" {
23960    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ISSUING_DIST_POINT"]
23961    pub fn i2d_ISSUING_DIST_POINT(
23962        a: *mut ISSUING_DIST_POINT,
23963        out: *mut *mut ::std::os::raw::c_uchar,
23964    ) -> ::std::os::raw::c_int;
23965}
23966extern "C" {
23967    #[link_name = "\u{1}aws_lc_fips_0_13_10_ISSUING_DIST_POINT_it"]
23968    pub static ISSUING_DIST_POINT_it: ASN1_ITEM;
23969}
23970extern "C" {
23971    #[link_name = "\u{1}aws_lc_fips_0_13_10_DIST_POINT_set_dpname"]
23972    pub fn DIST_POINT_set_dpname(
23973        dpn: *mut DIST_POINT_NAME,
23974        iname: *mut X509_NAME,
23975    ) -> ::std::os::raw::c_int;
23976}
23977extern "C" {
23978    #[link_name = "\u{1}aws_lc_fips_0_13_10_ACCESS_DESCRIPTION_new"]
23979    pub fn ACCESS_DESCRIPTION_new() -> *mut ACCESS_DESCRIPTION;
23980}
23981extern "C" {
23982    #[link_name = "\u{1}aws_lc_fips_0_13_10_ACCESS_DESCRIPTION_free"]
23983    pub fn ACCESS_DESCRIPTION_free(a: *mut ACCESS_DESCRIPTION);
23984}
23985extern "C" {
23986    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_ACCESS_DESCRIPTION"]
23987    pub fn d2i_ACCESS_DESCRIPTION(
23988        a: *mut *mut ACCESS_DESCRIPTION,
23989        in_: *mut *const ::std::os::raw::c_uchar,
23990        len: ::std::os::raw::c_long,
23991    ) -> *mut ACCESS_DESCRIPTION;
23992}
23993extern "C" {
23994    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_ACCESS_DESCRIPTION"]
23995    pub fn i2d_ACCESS_DESCRIPTION(
23996        a: *mut ACCESS_DESCRIPTION,
23997        out: *mut *mut ::std::os::raw::c_uchar,
23998    ) -> ::std::os::raw::c_int;
23999}
24000extern "C" {
24001    #[link_name = "\u{1}aws_lc_fips_0_13_10_ACCESS_DESCRIPTION_it"]
24002    pub static ACCESS_DESCRIPTION_it: ASN1_ITEM;
24003}
24004extern "C" {
24005    #[link_name = "\u{1}aws_lc_fips_0_13_10_AUTHORITY_INFO_ACCESS_new"]
24006    pub fn AUTHORITY_INFO_ACCESS_new() -> *mut AUTHORITY_INFO_ACCESS;
24007}
24008extern "C" {
24009    #[link_name = "\u{1}aws_lc_fips_0_13_10_AUTHORITY_INFO_ACCESS_free"]
24010    pub fn AUTHORITY_INFO_ACCESS_free(a: *mut AUTHORITY_INFO_ACCESS);
24011}
24012extern "C" {
24013    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_AUTHORITY_INFO_ACCESS"]
24014    pub fn d2i_AUTHORITY_INFO_ACCESS(
24015        a: *mut *mut AUTHORITY_INFO_ACCESS,
24016        in_: *mut *const ::std::os::raw::c_uchar,
24017        len: ::std::os::raw::c_long,
24018    ) -> *mut AUTHORITY_INFO_ACCESS;
24019}
24020extern "C" {
24021    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_AUTHORITY_INFO_ACCESS"]
24022    pub fn i2d_AUTHORITY_INFO_ACCESS(
24023        a: *mut AUTHORITY_INFO_ACCESS,
24024        out: *mut *mut ::std::os::raw::c_uchar,
24025    ) -> ::std::os::raw::c_int;
24026}
24027extern "C" {
24028    #[link_name = "\u{1}aws_lc_fips_0_13_10_AUTHORITY_INFO_ACCESS_it"]
24029    pub static AUTHORITY_INFO_ACCESS_it: ASN1_ITEM;
24030}
24031extern "C" {
24032    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICY_MAPPING_it"]
24033    pub static POLICY_MAPPING_it: ASN1_ITEM;
24034}
24035extern "C" {
24036    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICY_MAPPING_new"]
24037    pub fn POLICY_MAPPING_new() -> *mut POLICY_MAPPING;
24038}
24039extern "C" {
24040    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICY_MAPPING_free"]
24041    pub fn POLICY_MAPPING_free(a: *mut POLICY_MAPPING);
24042}
24043extern "C" {
24044    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICY_MAPPINGS_it"]
24045    pub static POLICY_MAPPINGS_it: ASN1_ITEM;
24046}
24047extern "C" {
24048    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_SUBTREE_it"]
24049    pub static GENERAL_SUBTREE_it: ASN1_ITEM;
24050}
24051extern "C" {
24052    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_SUBTREE_new"]
24053    pub fn GENERAL_SUBTREE_new() -> *mut GENERAL_SUBTREE;
24054}
24055extern "C" {
24056    #[link_name = "\u{1}aws_lc_fips_0_13_10_GENERAL_SUBTREE_free"]
24057    pub fn GENERAL_SUBTREE_free(a: *mut GENERAL_SUBTREE);
24058}
24059extern "C" {
24060    #[link_name = "\u{1}aws_lc_fips_0_13_10_NAME_CONSTRAINTS_it"]
24061    pub static NAME_CONSTRAINTS_it: ASN1_ITEM;
24062}
24063extern "C" {
24064    #[link_name = "\u{1}aws_lc_fips_0_13_10_NAME_CONSTRAINTS_new"]
24065    pub fn NAME_CONSTRAINTS_new() -> *mut NAME_CONSTRAINTS;
24066}
24067extern "C" {
24068    #[link_name = "\u{1}aws_lc_fips_0_13_10_NAME_CONSTRAINTS_free"]
24069    pub fn NAME_CONSTRAINTS_free(a: *mut NAME_CONSTRAINTS);
24070}
24071extern "C" {
24072    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICY_CONSTRAINTS_new"]
24073    pub fn POLICY_CONSTRAINTS_new() -> *mut POLICY_CONSTRAINTS;
24074}
24075extern "C" {
24076    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICY_CONSTRAINTS_free"]
24077    pub fn POLICY_CONSTRAINTS_free(a: *mut POLICY_CONSTRAINTS);
24078}
24079extern "C" {
24080    #[link_name = "\u{1}aws_lc_fips_0_13_10_POLICY_CONSTRAINTS_it"]
24081    pub static POLICY_CONSTRAINTS_it: ASN1_ITEM;
24082}
24083extern "C" {
24084    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_add"]
24085    pub fn X509V3_EXT_add(ext: *mut X509V3_EXT_METHOD) -> ::std::os::raw::c_int;
24086}
24087extern "C" {
24088    pub fn X509V3_EXT_add_list(extlist: *mut X509V3_EXT_METHOD) -> ::std::os::raw::c_int;
24089}
24090extern "C" {
24091    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_add_alias"]
24092    pub fn X509V3_EXT_add_alias(
24093        nid_to: ::std::os::raw::c_int,
24094        nid_from: ::std::os::raw::c_int,
24095    ) -> ::std::os::raw::c_int;
24096}
24097extern "C" {
24098    pub fn X509V3_EXT_cleanup();
24099}
24100extern "C" {
24101    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_get"]
24102    pub fn X509V3_EXT_get(ext: *const X509_EXTENSION) -> *const X509V3_EXT_METHOD;
24103}
24104extern "C" {
24105    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_get_nid"]
24106    pub fn X509V3_EXT_get_nid(nid: ::std::os::raw::c_int) -> *const X509V3_EXT_METHOD;
24107}
24108extern "C" {
24109    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_d2i"]
24110    pub fn X509V3_EXT_d2i(ext: *const X509_EXTENSION) -> *mut ::std::os::raw::c_void;
24111}
24112extern "C" {
24113    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_get_d2i"]
24114    pub fn X509V3_get_d2i(
24115        extensions: *const stack_st_X509_EXTENSION,
24116        nid: ::std::os::raw::c_int,
24117        out_critical: *mut ::std::os::raw::c_int,
24118        out_idx: *mut ::std::os::raw::c_int,
24119    ) -> *mut ::std::os::raw::c_void;
24120}
24121extern "C" {
24122    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_free"]
24123    pub fn X509V3_EXT_free(
24124        nid: ::std::os::raw::c_int,
24125        ext_data: *mut ::std::os::raw::c_void,
24126    ) -> ::std::os::raw::c_int;
24127}
24128extern "C" {
24129    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_EXT_i2d"]
24130    pub fn X509V3_EXT_i2d(
24131        ext_nid: ::std::os::raw::c_int,
24132        crit: ::std::os::raw::c_int,
24133        ext_struc: *mut ::std::os::raw::c_void,
24134    ) -> *mut X509_EXTENSION;
24135}
24136extern "C" {
24137    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509V3_add1_i2d"]
24138    pub fn X509V3_add1_i2d(
24139        x: *mut *mut stack_st_X509_EXTENSION,
24140        nid: ::std::os::raw::c_int,
24141        value: *mut ::std::os::raw::c_void,
24142        crit: ::std::os::raw::c_int,
24143        flags: ::std::os::raw::c_ulong,
24144    ) -> ::std::os::raw::c_int;
24145}
24146extern "C" {
24147    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_set"]
24148    pub fn X509_PURPOSE_set(
24149        p: *mut ::std::os::raw::c_int,
24150        purpose: ::std::os::raw::c_int,
24151    ) -> ::std::os::raw::c_int;
24152}
24153extern "C" {
24154    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_get_count"]
24155    pub fn X509_PURPOSE_get_count() -> ::std::os::raw::c_int;
24156}
24157extern "C" {
24158    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_get0"]
24159    pub fn X509_PURPOSE_get0(idx: ::std::os::raw::c_int) -> *const X509_PURPOSE;
24160}
24161extern "C" {
24162    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_get_by_sname"]
24163    pub fn X509_PURPOSE_get_by_sname(sname: *const ::std::os::raw::c_char)
24164        -> ::std::os::raw::c_int;
24165}
24166extern "C" {
24167    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_get_by_id"]
24168    pub fn X509_PURPOSE_get_by_id(id: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
24169}
24170extern "C" {
24171    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_get0_name"]
24172    pub fn X509_PURPOSE_get0_name(xp: *const X509_PURPOSE) -> *mut ::std::os::raw::c_char;
24173}
24174extern "C" {
24175    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_get0_sname"]
24176    pub fn X509_PURPOSE_get0_sname(xp: *const X509_PURPOSE) -> *mut ::std::os::raw::c_char;
24177}
24178extern "C" {
24179    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_get_trust"]
24180    pub fn X509_PURPOSE_get_trust(xp: *const X509_PURPOSE) -> ::std::os::raw::c_int;
24181}
24182extern "C" {
24183    #[link_name = "\u{1}aws_lc_fips_0_13_10_X509_PURPOSE_get_id"]
24184    pub fn X509_PURPOSE_get_id(arg1: *const X509_PURPOSE) -> ::std::os::raw::c_int;
24185}
24186#[repr(C)]
24187#[derive(Debug, Copy, Clone)]
24188pub struct ocsp_cert_id_st {
24189    _unused: [u8; 0],
24190}
24191pub type OCSP_CERTID = ocsp_cert_id_st;
24192#[repr(C)]
24193#[derive(Debug, Copy, Clone)]
24194pub struct ocsp_one_request_st {
24195    _unused: [u8; 0],
24196}
24197pub type OCSP_ONEREQ = ocsp_one_request_st;
24198#[repr(C)]
24199#[derive(Debug, Copy, Clone)]
24200pub struct ocsp_req_info_st {
24201    _unused: [u8; 0],
24202}
24203pub type OCSP_REQINFO = ocsp_req_info_st;
24204#[repr(C)]
24205#[derive(Debug, Copy, Clone)]
24206pub struct ocsp_signature_st {
24207    _unused: [u8; 0],
24208}
24209pub type OCSP_SIGNATURE = ocsp_signature_st;
24210#[repr(C)]
24211#[derive(Debug, Copy, Clone)]
24212pub struct ocsp_request_st {
24213    _unused: [u8; 0],
24214}
24215pub type OCSP_REQUEST = ocsp_request_st;
24216#[repr(C)]
24217#[derive(Debug, Copy, Clone)]
24218pub struct ocsp_resp_bytes_st {
24219    _unused: [u8; 0],
24220}
24221pub type OCSP_RESPBYTES = ocsp_resp_bytes_st;
24222#[repr(C)]
24223#[derive(Debug, Copy, Clone)]
24224pub struct ocsp_revoked_info_st {
24225    _unused: [u8; 0],
24226}
24227pub type OCSP_REVOKEDINFO = ocsp_revoked_info_st;
24228#[repr(C)]
24229#[derive(Debug, Copy, Clone)]
24230pub struct ocsp_cert_status_st {
24231    _unused: [u8; 0],
24232}
24233pub type OCSP_CERTSTATUS = ocsp_cert_status_st;
24234#[repr(C)]
24235#[derive(Debug, Copy, Clone)]
24236pub struct ocsp_single_response_st {
24237    _unused: [u8; 0],
24238}
24239pub type OCSP_SINGLERESP = ocsp_single_response_st;
24240#[repr(C)]
24241#[derive(Debug, Copy, Clone)]
24242pub struct ocsp_response_data_st {
24243    _unused: [u8; 0],
24244}
24245pub type OCSP_RESPDATA = ocsp_response_data_st;
24246#[repr(C)]
24247#[derive(Debug, Copy, Clone)]
24248pub struct ocsp_response_st {
24249    _unused: [u8; 0],
24250}
24251pub type OCSP_RESPONSE = ocsp_response_st;
24252#[repr(C)]
24253#[derive(Debug, Copy, Clone)]
24254pub struct ocsp_responder_id_st {
24255    _unused: [u8; 0],
24256}
24257pub type OCSP_RESPID = ocsp_responder_id_st;
24258#[repr(C)]
24259#[derive(Debug, Copy, Clone)]
24260pub struct ocsp_basic_response_st {
24261    _unused: [u8; 0],
24262}
24263pub type OCSP_BASICRESP = ocsp_basic_response_st;
24264#[repr(C)]
24265#[derive(Debug, Copy, Clone)]
24266pub struct stack_st_OCSP_CERTID {
24267    _unused: [u8; 0],
24268}
24269pub type sk_OCSP_CERTID_free_func =
24270    ::std::option::Option<unsafe extern "C" fn(arg1: *mut OCSP_CERTID)>;
24271pub type sk_OCSP_CERTID_copy_func =
24272    ::std::option::Option<unsafe extern "C" fn(arg1: *const OCSP_CERTID) -> *mut OCSP_CERTID>;
24273pub type sk_OCSP_CERTID_cmp_func = ::std::option::Option<
24274    unsafe extern "C" fn(
24275        arg1: *const *const OCSP_CERTID,
24276        arg2: *const *const OCSP_CERTID,
24277    ) -> ::std::os::raw::c_int,
24278>;
24279pub type sk_OCSP_CERTID_delete_if_func = ::std::option::Option<
24280    unsafe extern "C" fn(
24281        arg1: *mut OCSP_CERTID,
24282        arg2: *mut ::std::os::raw::c_void,
24283    ) -> ::std::os::raw::c_int,
24284>;
24285#[repr(C)]
24286#[derive(Debug, Copy, Clone)]
24287pub struct stack_st_OCSP_ONEREQ {
24288    _unused: [u8; 0],
24289}
24290pub type sk_OCSP_ONEREQ_free_func =
24291    ::std::option::Option<unsafe extern "C" fn(arg1: *mut OCSP_ONEREQ)>;
24292pub type sk_OCSP_ONEREQ_copy_func =
24293    ::std::option::Option<unsafe extern "C" fn(arg1: *const OCSP_ONEREQ) -> *mut OCSP_ONEREQ>;
24294pub type sk_OCSP_ONEREQ_cmp_func = ::std::option::Option<
24295    unsafe extern "C" fn(
24296        arg1: *const *const OCSP_ONEREQ,
24297        arg2: *const *const OCSP_ONEREQ,
24298    ) -> ::std::os::raw::c_int,
24299>;
24300pub type sk_OCSP_ONEREQ_delete_if_func = ::std::option::Option<
24301    unsafe extern "C" fn(
24302        arg1: *mut OCSP_ONEREQ,
24303        arg2: *mut ::std::os::raw::c_void,
24304    ) -> ::std::os::raw::c_int,
24305>;
24306#[repr(C)]
24307#[derive(Debug, Copy, Clone)]
24308pub struct stack_st_OCSP_RESPID {
24309    _unused: [u8; 0],
24310}
24311pub type sk_OCSP_RESPID_free_func =
24312    ::std::option::Option<unsafe extern "C" fn(arg1: *mut OCSP_RESPID)>;
24313pub type sk_OCSP_RESPID_copy_func =
24314    ::std::option::Option<unsafe extern "C" fn(arg1: *const OCSP_RESPID) -> *mut OCSP_RESPID>;
24315pub type sk_OCSP_RESPID_cmp_func = ::std::option::Option<
24316    unsafe extern "C" fn(
24317        arg1: *const *const OCSP_RESPID,
24318        arg2: *const *const OCSP_RESPID,
24319    ) -> ::std::os::raw::c_int,
24320>;
24321pub type sk_OCSP_RESPID_delete_if_func = ::std::option::Option<
24322    unsafe extern "C" fn(
24323        arg1: *mut OCSP_RESPID,
24324        arg2: *mut ::std::os::raw::c_void,
24325    ) -> ::std::os::raw::c_int,
24326>;
24327#[repr(C)]
24328#[derive(Debug, Copy, Clone)]
24329pub struct stack_st_OCSP_SINGLERESP {
24330    _unused: [u8; 0],
24331}
24332pub type sk_OCSP_SINGLERESP_free_func =
24333    ::std::option::Option<unsafe extern "C" fn(arg1: *mut OCSP_SINGLERESP)>;
24334pub type sk_OCSP_SINGLERESP_copy_func = ::std::option::Option<
24335    unsafe extern "C" fn(arg1: *const OCSP_SINGLERESP) -> *mut OCSP_SINGLERESP,
24336>;
24337pub type sk_OCSP_SINGLERESP_cmp_func = ::std::option::Option<
24338    unsafe extern "C" fn(
24339        arg1: *const *const OCSP_SINGLERESP,
24340        arg2: *const *const OCSP_SINGLERESP,
24341    ) -> ::std::os::raw::c_int,
24342>;
24343pub type sk_OCSP_SINGLERESP_delete_if_func = ::std::option::Option<
24344    unsafe extern "C" fn(
24345        arg1: *mut OCSP_SINGLERESP,
24346        arg2: *mut ::std::os::raw::c_void,
24347    ) -> ::std::os::raw::c_int,
24348>;
24349extern "C" {
24350    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_BASICRESP_new"]
24351    pub fn OCSP_BASICRESP_new() -> *mut OCSP_BASICRESP;
24352}
24353extern "C" {
24354    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_BASICRESP_free"]
24355    pub fn OCSP_BASICRESP_free(a: *mut OCSP_BASICRESP);
24356}
24357extern "C" {
24358    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_OCSP_BASICRESP"]
24359    pub fn d2i_OCSP_BASICRESP(
24360        a: *mut *mut OCSP_BASICRESP,
24361        in_: *mut *const ::std::os::raw::c_uchar,
24362        len: ::std::os::raw::c_long,
24363    ) -> *mut OCSP_BASICRESP;
24364}
24365extern "C" {
24366    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_OCSP_BASICRESP"]
24367    pub fn i2d_OCSP_BASICRESP(
24368        a: *mut OCSP_BASICRESP,
24369        out: *mut *mut ::std::os::raw::c_uchar,
24370    ) -> ::std::os::raw::c_int;
24371}
24372extern "C" {
24373    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_BASICRESP_it"]
24374    pub static OCSP_BASICRESP_it: ASN1_ITEM;
24375}
24376extern "C" {
24377    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_RESPONSE_new"]
24378    pub fn OCSP_RESPONSE_new() -> *mut OCSP_RESPONSE;
24379}
24380extern "C" {
24381    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_RESPONSE_free"]
24382    pub fn OCSP_RESPONSE_free(a: *mut OCSP_RESPONSE);
24383}
24384extern "C" {
24385    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_OCSP_RESPONSE"]
24386    pub fn d2i_OCSP_RESPONSE(
24387        a: *mut *mut OCSP_RESPONSE,
24388        in_: *mut *const ::std::os::raw::c_uchar,
24389        len: ::std::os::raw::c_long,
24390    ) -> *mut OCSP_RESPONSE;
24391}
24392extern "C" {
24393    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_OCSP_RESPONSE"]
24394    pub fn i2d_OCSP_RESPONSE(
24395        a: *mut OCSP_RESPONSE,
24396        out: *mut *mut ::std::os::raw::c_uchar,
24397    ) -> ::std::os::raw::c_int;
24398}
24399extern "C" {
24400    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_RESPONSE_it"]
24401    pub static OCSP_RESPONSE_it: ASN1_ITEM;
24402}
24403extern "C" {
24404    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_CERTID_new"]
24405    pub fn OCSP_CERTID_new() -> *mut OCSP_CERTID;
24406}
24407extern "C" {
24408    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_CERTID_free"]
24409    pub fn OCSP_CERTID_free(a: *mut OCSP_CERTID);
24410}
24411extern "C" {
24412    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_OCSP_CERTID"]
24413    pub fn d2i_OCSP_CERTID(
24414        a: *mut *mut OCSP_CERTID,
24415        in_: *mut *const ::std::os::raw::c_uchar,
24416        len: ::std::os::raw::c_long,
24417    ) -> *mut OCSP_CERTID;
24418}
24419extern "C" {
24420    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_OCSP_CERTID"]
24421    pub fn i2d_OCSP_CERTID(
24422        a: *mut OCSP_CERTID,
24423        out: *mut *mut ::std::os::raw::c_uchar,
24424    ) -> ::std::os::raw::c_int;
24425}
24426extern "C" {
24427    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_CERTID_it"]
24428    pub static OCSP_CERTID_it: ASN1_ITEM;
24429}
24430extern "C" {
24431    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQUEST_new"]
24432    pub fn OCSP_REQUEST_new() -> *mut OCSP_REQUEST;
24433}
24434extern "C" {
24435    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQUEST_free"]
24436    pub fn OCSP_REQUEST_free(a: *mut OCSP_REQUEST);
24437}
24438extern "C" {
24439    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_OCSP_REQUEST"]
24440    pub fn d2i_OCSP_REQUEST(
24441        a: *mut *mut OCSP_REQUEST,
24442        in_: *mut *const ::std::os::raw::c_uchar,
24443        len: ::std::os::raw::c_long,
24444    ) -> *mut OCSP_REQUEST;
24445}
24446extern "C" {
24447    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_OCSP_REQUEST"]
24448    pub fn i2d_OCSP_REQUEST(
24449        a: *mut OCSP_REQUEST,
24450        out: *mut *mut ::std::os::raw::c_uchar,
24451    ) -> ::std::os::raw::c_int;
24452}
24453extern "C" {
24454    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQUEST_it"]
24455    pub static OCSP_REQUEST_it: ASN1_ITEM;
24456}
24457extern "C" {
24458    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_SINGLERESP_new"]
24459    pub fn OCSP_SINGLERESP_new() -> *mut OCSP_SINGLERESP;
24460}
24461extern "C" {
24462    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_SINGLERESP_free"]
24463    pub fn OCSP_SINGLERESP_free(a: *mut OCSP_SINGLERESP);
24464}
24465extern "C" {
24466    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_OCSP_SINGLERESP"]
24467    pub fn d2i_OCSP_SINGLERESP(
24468        a: *mut *mut OCSP_SINGLERESP,
24469        in_: *mut *const ::std::os::raw::c_uchar,
24470        len: ::std::os::raw::c_long,
24471    ) -> *mut OCSP_SINGLERESP;
24472}
24473extern "C" {
24474    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_OCSP_SINGLERESP"]
24475    pub fn i2d_OCSP_SINGLERESP(
24476        a: *mut OCSP_SINGLERESP,
24477        out: *mut *mut ::std::os::raw::c_uchar,
24478    ) -> ::std::os::raw::c_int;
24479}
24480extern "C" {
24481    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_SINGLERESP_it"]
24482    pub static OCSP_SINGLERESP_it: ASN1_ITEM;
24483}
24484extern "C" {
24485    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_ONEREQ_new"]
24486    pub fn OCSP_ONEREQ_new() -> *mut OCSP_ONEREQ;
24487}
24488extern "C" {
24489    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_ONEREQ_free"]
24490    pub fn OCSP_ONEREQ_free(a: *mut OCSP_ONEREQ);
24491}
24492extern "C" {
24493    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_OCSP_ONEREQ"]
24494    pub fn d2i_OCSP_ONEREQ(
24495        a: *mut *mut OCSP_ONEREQ,
24496        in_: *mut *const ::std::os::raw::c_uchar,
24497        len: ::std::os::raw::c_long,
24498    ) -> *mut OCSP_ONEREQ;
24499}
24500extern "C" {
24501    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_OCSP_ONEREQ"]
24502    pub fn i2d_OCSP_ONEREQ(
24503        a: *mut OCSP_ONEREQ,
24504        out: *mut *mut ::std::os::raw::c_uchar,
24505    ) -> ::std::os::raw::c_int;
24506}
24507extern "C" {
24508    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_ONEREQ_it"]
24509    pub static OCSP_ONEREQ_it: ASN1_ITEM;
24510}
24511extern "C" {
24512    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_OCSP_REQUEST_bio"]
24513    pub fn d2i_OCSP_REQUEST_bio(bp: *mut BIO, preq: *mut *mut OCSP_REQUEST) -> *mut OCSP_REQUEST;
24514}
24515extern "C" {
24516    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_OCSP_RESPONSE_bio"]
24517    pub fn d2i_OCSP_RESPONSE_bio(
24518        bp: *mut BIO,
24519        presp: *mut *mut OCSP_RESPONSE,
24520    ) -> *mut OCSP_RESPONSE;
24521}
24522extern "C" {
24523    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_OCSP_RESPONSE_bio"]
24524    pub fn i2d_OCSP_RESPONSE_bio(bp: *mut BIO, presp: *mut OCSP_RESPONSE) -> ::std::os::raw::c_int;
24525}
24526extern "C" {
24527    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_OCSP_REQUEST_bio"]
24528    pub fn i2d_OCSP_REQUEST_bio(bp: *mut BIO, preq: *mut OCSP_REQUEST) -> ::std::os::raw::c_int;
24529}
24530extern "C" {
24531    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_CERTID_dup"]
24532    pub fn OCSP_CERTID_dup(id: *mut OCSP_CERTID) -> *mut OCSP_CERTID;
24533}
24534extern "C" {
24535    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_sendreq_bio"]
24536    pub fn OCSP_sendreq_bio(
24537        b: *mut BIO,
24538        path: *const ::std::os::raw::c_char,
24539        req: *mut OCSP_REQUEST,
24540    ) -> *mut OCSP_RESPONSE;
24541}
24542extern "C" {
24543    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_sendreq_new"]
24544    pub fn OCSP_sendreq_new(
24545        io: *mut BIO,
24546        path: *const ::std::os::raw::c_char,
24547        req: *mut OCSP_REQUEST,
24548        maxline: ::std::os::raw::c_int,
24549    ) -> *mut OCSP_REQ_CTX;
24550}
24551extern "C" {
24552    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_sendreq_nbio"]
24553    pub fn OCSP_sendreq_nbio(
24554        presp: *mut *mut OCSP_RESPONSE,
24555        rctx: *mut OCSP_REQ_CTX,
24556    ) -> ::std::os::raw::c_int;
24557}
24558extern "C" {
24559    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQ_CTX_new"]
24560    pub fn OCSP_REQ_CTX_new(io: *mut BIO, maxline: ::std::os::raw::c_int) -> *mut OCSP_REQ_CTX;
24561}
24562extern "C" {
24563    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQ_CTX_free"]
24564    pub fn OCSP_REQ_CTX_free(rctx: *mut OCSP_REQ_CTX);
24565}
24566extern "C" {
24567    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_set_max_response_length"]
24568    pub fn OCSP_set_max_response_length(rctx: *mut OCSP_REQ_CTX, len: ::std::os::raw::c_ulong);
24569}
24570extern "C" {
24571    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQ_CTX_http"]
24572    pub fn OCSP_REQ_CTX_http(
24573        rctx: *mut OCSP_REQ_CTX,
24574        op: *const ::std::os::raw::c_char,
24575        path: *const ::std::os::raw::c_char,
24576    ) -> ::std::os::raw::c_int;
24577}
24578extern "C" {
24579    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQ_CTX_set1_req"]
24580    pub fn OCSP_REQ_CTX_set1_req(
24581        rctx: *mut OCSP_REQ_CTX,
24582        req: *mut OCSP_REQUEST,
24583    ) -> ::std::os::raw::c_int;
24584}
24585extern "C" {
24586    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQ_CTX_add1_header"]
24587    pub fn OCSP_REQ_CTX_add1_header(
24588        rctx: *mut OCSP_REQ_CTX,
24589        name: *const ::std::os::raw::c_char,
24590        value: *const ::std::os::raw::c_char,
24591    ) -> ::std::os::raw::c_int;
24592}
24593extern "C" {
24594    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQ_CTX_i2d"]
24595    pub fn OCSP_REQ_CTX_i2d(
24596        rctx: *mut OCSP_REQ_CTX,
24597        it: *const ASN1_ITEM,
24598        val: *mut ASN1_VALUE,
24599    ) -> ::std::os::raw::c_int;
24600}
24601extern "C" {
24602    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_add0_id"]
24603    pub fn OCSP_request_add0_id(req: *mut OCSP_REQUEST, cid: *mut OCSP_CERTID) -> *mut OCSP_ONEREQ;
24604}
24605extern "C" {
24606    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_onereq_get0_id"]
24607    pub fn OCSP_onereq_get0_id(one: *mut OCSP_ONEREQ) -> *mut OCSP_CERTID;
24608}
24609extern "C" {
24610    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_add1_nonce"]
24611    pub fn OCSP_request_add1_nonce(
24612        req: *mut OCSP_REQUEST,
24613        val: *mut ::std::os::raw::c_uchar,
24614        len: ::std::os::raw::c_int,
24615    ) -> ::std::os::raw::c_int;
24616}
24617extern "C" {
24618    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_basic_add1_nonce"]
24619    pub fn OCSP_basic_add1_nonce(
24620        resp: *mut OCSP_BASICRESP,
24621        val: *mut ::std::os::raw::c_uchar,
24622        len: ::std::os::raw::c_int,
24623    ) -> ::std::os::raw::c_int;
24624}
24625extern "C" {
24626    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_check_nonce"]
24627    pub fn OCSP_check_nonce(
24628        req: *mut OCSP_REQUEST,
24629        bs: *mut OCSP_BASICRESP,
24630    ) -> ::std::os::raw::c_int;
24631}
24632extern "C" {
24633    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_copy_nonce"]
24634    pub fn OCSP_copy_nonce(
24635        resp: *mut OCSP_BASICRESP,
24636        req: *mut OCSP_REQUEST,
24637    ) -> ::std::os::raw::c_int;
24638}
24639extern "C" {
24640    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_set1_name"]
24641    pub fn OCSP_request_set1_name(
24642        req: *mut OCSP_REQUEST,
24643        nm: *mut X509_NAME,
24644    ) -> ::std::os::raw::c_int;
24645}
24646extern "C" {
24647    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_add1_cert"]
24648    pub fn OCSP_request_add1_cert(req: *mut OCSP_REQUEST, cert: *mut X509)
24649        -> ::std::os::raw::c_int;
24650}
24651extern "C" {
24652    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_is_signed"]
24653    pub fn OCSP_request_is_signed(req: *mut OCSP_REQUEST) -> ::std::os::raw::c_int;
24654}
24655extern "C" {
24656    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_onereq_count"]
24657    pub fn OCSP_request_onereq_count(req: *mut OCSP_REQUEST) -> ::std::os::raw::c_int;
24658}
24659extern "C" {
24660    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_onereq_get0"]
24661    pub fn OCSP_request_onereq_get0(
24662        req: *mut OCSP_REQUEST,
24663        i: ::std::os::raw::c_int,
24664    ) -> *mut OCSP_ONEREQ;
24665}
24666extern "C" {
24667    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_sign"]
24668    pub fn OCSP_request_sign(
24669        req: *mut OCSP_REQUEST,
24670        signer: *mut X509,
24671        key: *mut EVP_PKEY,
24672        dgst: *const EVP_MD,
24673        certs: *mut stack_st_X509,
24674        flags: ::std::os::raw::c_ulong,
24675    ) -> ::std::os::raw::c_int;
24676}
24677extern "C" {
24678    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_response_status"]
24679    pub fn OCSP_response_status(resp: *mut OCSP_RESPONSE) -> ::std::os::raw::c_int;
24680}
24681extern "C" {
24682    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_response_get1_basic"]
24683    pub fn OCSP_response_get1_basic(resp: *mut OCSP_RESPONSE) -> *mut OCSP_BASICRESP;
24684}
24685extern "C" {
24686    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_resp_count"]
24687    pub fn OCSP_resp_count(bs: *mut OCSP_BASICRESP) -> ::std::os::raw::c_int;
24688}
24689extern "C" {
24690    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_resp_get0"]
24691    pub fn OCSP_resp_get0(bs: *mut OCSP_BASICRESP, idx: usize) -> *mut OCSP_SINGLERESP;
24692}
24693extern "C" {
24694    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_single_get0_status"]
24695    pub fn OCSP_single_get0_status(
24696        single: *mut OCSP_SINGLERESP,
24697        reason: *mut ::std::os::raw::c_int,
24698        revtime: *mut *mut ASN1_GENERALIZEDTIME,
24699        thisupd: *mut *mut ASN1_GENERALIZEDTIME,
24700        nextupd: *mut *mut ASN1_GENERALIZEDTIME,
24701    ) -> ::std::os::raw::c_int;
24702}
24703extern "C" {
24704    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_resp_find"]
24705    pub fn OCSP_resp_find(
24706        bs: *mut OCSP_BASICRESP,
24707        id: *mut OCSP_CERTID,
24708        last: ::std::os::raw::c_int,
24709    ) -> ::std::os::raw::c_int;
24710}
24711extern "C" {
24712    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_resp_find_status"]
24713    pub fn OCSP_resp_find_status(
24714        bs: *mut OCSP_BASICRESP,
24715        id: *mut OCSP_CERTID,
24716        status: *mut ::std::os::raw::c_int,
24717        reason: *mut ::std::os::raw::c_int,
24718        revtime: *mut *mut ASN1_GENERALIZEDTIME,
24719        thisupd: *mut *mut ASN1_GENERALIZEDTIME,
24720        nextupd: *mut *mut ASN1_GENERALIZEDTIME,
24721    ) -> ::std::os::raw::c_int;
24722}
24723extern "C" {
24724    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_check_validity"]
24725    pub fn OCSP_check_validity(
24726        thisUpdate: *mut ASN1_GENERALIZEDTIME,
24727        nextUpdate: *mut ASN1_GENERALIZEDTIME,
24728        drift_num_seconds: ::std::os::raw::c_long,
24729        max_age_seconds: ::std::os::raw::c_long,
24730    ) -> ::std::os::raw::c_int;
24731}
24732extern "C" {
24733    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_basic_verify"]
24734    pub fn OCSP_basic_verify(
24735        bs: *mut OCSP_BASICRESP,
24736        certs: *mut stack_st_X509,
24737        st: *mut X509_STORE,
24738        flags: ::std::os::raw::c_ulong,
24739    ) -> ::std::os::raw::c_int;
24740}
24741extern "C" {
24742    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_request_verify"]
24743    pub fn OCSP_request_verify(
24744        req: *mut OCSP_REQUEST,
24745        certs: *mut stack_st_X509,
24746        st: *mut X509_STORE,
24747        flags: ::std::os::raw::c_ulong,
24748    ) -> ::std::os::raw::c_int;
24749}
24750extern "C" {
24751    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_cert_id_new"]
24752    pub fn OCSP_cert_id_new(
24753        dgst: *const EVP_MD,
24754        issuerName: *const X509_NAME,
24755        issuerKey: *const ASN1_BIT_STRING,
24756        serialNumber: *const ASN1_INTEGER,
24757    ) -> *mut OCSP_CERTID;
24758}
24759extern "C" {
24760    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_cert_to_id"]
24761    pub fn OCSP_cert_to_id(
24762        dgst: *const EVP_MD,
24763        subject: *const X509,
24764        issuer: *const X509,
24765    ) -> *mut OCSP_CERTID;
24766}
24767extern "C" {
24768    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_parse_url"]
24769    pub fn OCSP_parse_url(
24770        url: *const ::std::os::raw::c_char,
24771        phost: *mut *mut ::std::os::raw::c_char,
24772        pport: *mut *mut ::std::os::raw::c_char,
24773        ppath: *mut *mut ::std::os::raw::c_char,
24774        pssl: *mut ::std::os::raw::c_int,
24775    ) -> ::std::os::raw::c_int;
24776}
24777extern "C" {
24778    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_id_issuer_cmp"]
24779    pub fn OCSP_id_issuer_cmp(
24780        a: *const OCSP_CERTID,
24781        b: *const OCSP_CERTID,
24782    ) -> ::std::os::raw::c_int;
24783}
24784extern "C" {
24785    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_id_cmp"]
24786    pub fn OCSP_id_cmp(a: *const OCSP_CERTID, b: *const OCSP_CERTID) -> ::std::os::raw::c_int;
24787}
24788extern "C" {
24789    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_id_get0_info"]
24790    pub fn OCSP_id_get0_info(
24791        nameHash: *mut *mut ASN1_OCTET_STRING,
24792        algor: *mut *mut ASN1_OBJECT,
24793        keyHash: *mut *mut ASN1_OCTET_STRING,
24794        serial: *mut *mut ASN1_INTEGER,
24795        cid: *mut OCSP_CERTID,
24796    ) -> ::std::os::raw::c_int;
24797}
24798extern "C" {
24799    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_basic_add1_cert"]
24800    pub fn OCSP_basic_add1_cert(
24801        resp: *mut OCSP_BASICRESP,
24802        cert: *mut X509,
24803    ) -> ::std::os::raw::c_int;
24804}
24805extern "C" {
24806    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_basic_add1_status"]
24807    pub fn OCSP_basic_add1_status(
24808        resp: *mut OCSP_BASICRESP,
24809        cid: *mut OCSP_CERTID,
24810        status: ::std::os::raw::c_int,
24811        revoked_reason: ::std::os::raw::c_int,
24812        revoked_time: *mut ASN1_TIME,
24813        this_update: *mut ASN1_TIME,
24814        next_update: *mut ASN1_TIME,
24815    ) -> *mut OCSP_SINGLERESP;
24816}
24817extern "C" {
24818    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_basic_sign"]
24819    pub fn OCSP_basic_sign(
24820        resp: *mut OCSP_BASICRESP,
24821        signer: *mut X509,
24822        key: *mut EVP_PKEY,
24823        dgst: *const EVP_MD,
24824        certs: *mut stack_st_X509,
24825        flags: ::std::os::raw::c_ulong,
24826    ) -> ::std::os::raw::c_int;
24827}
24828extern "C" {
24829    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_response_create"]
24830    pub fn OCSP_response_create(
24831        status: ::std::os::raw::c_int,
24832        bs: *mut OCSP_BASICRESP,
24833    ) -> *mut OCSP_RESPONSE;
24834}
24835extern "C" {
24836    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_SINGLERESP_get0_id"]
24837    pub fn OCSP_SINGLERESP_get0_id(x: *const OCSP_SINGLERESP) -> *const OCSP_CERTID;
24838}
24839extern "C" {
24840    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_response_status_str"]
24841    pub fn OCSP_response_status_str(
24842        status_code: ::std::os::raw::c_long,
24843    ) -> *const ::std::os::raw::c_char;
24844}
24845extern "C" {
24846    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_cert_status_str"]
24847    pub fn OCSP_cert_status_str(
24848        status_code: ::std::os::raw::c_long,
24849    ) -> *const ::std::os::raw::c_char;
24850}
24851extern "C" {
24852    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_crl_reason_str"]
24853    pub fn OCSP_crl_reason_str(
24854        status_code: ::std::os::raw::c_long,
24855    ) -> *const ::std::os::raw::c_char;
24856}
24857extern "C" {
24858    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_REQUEST_print"]
24859    pub fn OCSP_REQUEST_print(
24860        bp: *mut BIO,
24861        req: *mut OCSP_REQUEST,
24862        flags: ::std::os::raw::c_ulong,
24863    ) -> ::std::os::raw::c_int;
24864}
24865extern "C" {
24866    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_RESPONSE_print"]
24867    pub fn OCSP_RESPONSE_print(
24868        bp: *mut BIO,
24869        resp: *mut OCSP_RESPONSE,
24870        flags: ::std::os::raw::c_ulong,
24871    ) -> ::std::os::raw::c_int;
24872}
24873extern "C" {
24874    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_BASICRESP_get_ext_by_NID"]
24875    pub fn OCSP_BASICRESP_get_ext_by_NID(
24876        bs: *mut OCSP_BASICRESP,
24877        nid: ::std::os::raw::c_int,
24878        lastpos: ::std::os::raw::c_int,
24879    ) -> ::std::os::raw::c_int;
24880}
24881extern "C" {
24882    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_BASICRESP_get_ext"]
24883    pub fn OCSP_BASICRESP_get_ext(
24884        bs: *mut OCSP_BASICRESP,
24885        loc: ::std::os::raw::c_int,
24886    ) -> *mut X509_EXTENSION;
24887}
24888extern "C" {
24889    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_BASICRESP_delete_ext"]
24890    pub fn OCSP_BASICRESP_delete_ext(
24891        x: *mut OCSP_BASICRESP,
24892        loc: ::std::os::raw::c_int,
24893    ) -> *mut X509_EXTENSION;
24894}
24895extern "C" {
24896    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_SINGLERESP_add_ext"]
24897    pub fn OCSP_SINGLERESP_add_ext(
24898        sresp: *mut OCSP_SINGLERESP,
24899        ex: *mut X509_EXTENSION,
24900        loc: ::std::os::raw::c_int,
24901    ) -> ::std::os::raw::c_int;
24902}
24903extern "C" {
24904    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_SINGLERESP_get_ext_count"]
24905    pub fn OCSP_SINGLERESP_get_ext_count(sresp: *mut OCSP_SINGLERESP) -> ::std::os::raw::c_int;
24906}
24907extern "C" {
24908    #[link_name = "\u{1}aws_lc_fips_0_13_10_OCSP_SINGLERESP_get_ext"]
24909    pub fn OCSP_SINGLERESP_get_ext(
24910        sresp: *mut OCSP_SINGLERESP,
24911        loc: ::std::os::raw::c_int,
24912    ) -> *mut X509_EXTENSION;
24913}
24914pub type pem_password_cb = ::std::option::Option<
24915    unsafe extern "C" fn(
24916        buf: *mut ::std::os::raw::c_char,
24917        size: ::std::os::raw::c_int,
24918        rwflag: ::std::os::raw::c_int,
24919        userdata: *mut ::std::os::raw::c_void,
24920    ) -> ::std::os::raw::c_int,
24921>;
24922extern "C" {
24923    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_get_EVP_CIPHER_INFO"]
24924    pub fn PEM_get_EVP_CIPHER_INFO(
24925        header: *mut ::std::os::raw::c_char,
24926        cipher: *mut EVP_CIPHER_INFO,
24927    ) -> ::std::os::raw::c_int;
24928}
24929extern "C" {
24930    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_do_header"]
24931    pub fn PEM_do_header(
24932        cipher: *mut EVP_CIPHER_INFO,
24933        data: *mut ::std::os::raw::c_uchar,
24934        len: *mut ::std::os::raw::c_long,
24935        callback: pem_password_cb,
24936        u: *mut ::std::os::raw::c_void,
24937    ) -> ::std::os::raw::c_int;
24938}
24939extern "C" {
24940    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio"]
24941    pub fn PEM_read_bio(
24942        bp: *mut BIO,
24943        name: *mut *mut ::std::os::raw::c_char,
24944        header: *mut *mut ::std::os::raw::c_char,
24945        data: *mut *mut ::std::os::raw::c_uchar,
24946        len: *mut ::std::os::raw::c_long,
24947    ) -> ::std::os::raw::c_int;
24948}
24949extern "C" {
24950    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio"]
24951    pub fn PEM_write_bio(
24952        bp: *mut BIO,
24953        name: *const ::std::os::raw::c_char,
24954        hdr: *const ::std::os::raw::c_char,
24955        data: *const ::std::os::raw::c_uchar,
24956        len: ::std::os::raw::c_long,
24957    ) -> ::std::os::raw::c_int;
24958}
24959extern "C" {
24960    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_bytes_read_bio"]
24961    pub fn PEM_bytes_read_bio(
24962        pdata: *mut *mut ::std::os::raw::c_uchar,
24963        plen: *mut ::std::os::raw::c_long,
24964        pnm: *mut *mut ::std::os::raw::c_char,
24965        name: *const ::std::os::raw::c_char,
24966        bp: *mut BIO,
24967        cb: pem_password_cb,
24968        u: *mut ::std::os::raw::c_void,
24969    ) -> ::std::os::raw::c_int;
24970}
24971extern "C" {
24972    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_ASN1_read_bio"]
24973    pub fn PEM_ASN1_read_bio(
24974        d2i: d2i_of_void,
24975        name: *const ::std::os::raw::c_char,
24976        bp: *mut BIO,
24977        x: *mut *mut ::std::os::raw::c_void,
24978        cb: pem_password_cb,
24979        u: *mut ::std::os::raw::c_void,
24980    ) -> *mut ::std::os::raw::c_void;
24981}
24982extern "C" {
24983    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_ASN1_write_bio"]
24984    pub fn PEM_ASN1_write_bio(
24985        i2d: i2d_of_void,
24986        name: *const ::std::os::raw::c_char,
24987        bp: *mut BIO,
24988        x: *mut ::std::os::raw::c_void,
24989        enc: *const EVP_CIPHER,
24990        kstr: *mut ::std::os::raw::c_uchar,
24991        klen: ::std::os::raw::c_int,
24992        cb: pem_password_cb,
24993        u: *mut ::std::os::raw::c_void,
24994    ) -> ::std::os::raw::c_int;
24995}
24996extern "C" {
24997    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_X509_INFO_read_bio"]
24998    pub fn PEM_X509_INFO_read_bio(
24999        bp: *mut BIO,
25000        sk: *mut stack_st_X509_INFO,
25001        cb: pem_password_cb,
25002        u: *mut ::std::os::raw::c_void,
25003    ) -> *mut stack_st_X509_INFO;
25004}
25005extern "C" {
25006    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_X509_INFO_read"]
25007    pub fn PEM_X509_INFO_read(
25008        fp: *mut FILE,
25009        sk: *mut stack_st_X509_INFO,
25010        cb: pem_password_cb,
25011        u: *mut ::std::os::raw::c_void,
25012    ) -> *mut stack_st_X509_INFO;
25013}
25014extern "C" {
25015    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read"]
25016    pub fn PEM_read(
25017        fp: *mut FILE,
25018        name: *mut *mut ::std::os::raw::c_char,
25019        header: *mut *mut ::std::os::raw::c_char,
25020        data: *mut *mut ::std::os::raw::c_uchar,
25021        len: *mut ::std::os::raw::c_long,
25022    ) -> ::std::os::raw::c_int;
25023}
25024extern "C" {
25025    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write"]
25026    pub fn PEM_write(
25027        fp: *mut FILE,
25028        name: *const ::std::os::raw::c_char,
25029        hdr: *const ::std::os::raw::c_char,
25030        data: *const ::std::os::raw::c_uchar,
25031        len: ::std::os::raw::c_long,
25032    ) -> ::std::os::raw::c_int;
25033}
25034extern "C" {
25035    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_ASN1_read"]
25036    pub fn PEM_ASN1_read(
25037        d2i: d2i_of_void,
25038        name: *const ::std::os::raw::c_char,
25039        fp: *mut FILE,
25040        x: *mut *mut ::std::os::raw::c_void,
25041        cb: pem_password_cb,
25042        u: *mut ::std::os::raw::c_void,
25043    ) -> *mut ::std::os::raw::c_void;
25044}
25045extern "C" {
25046    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_ASN1_write"]
25047    pub fn PEM_ASN1_write(
25048        i2d: i2d_of_void,
25049        name: *const ::std::os::raw::c_char,
25050        fp: *mut FILE,
25051        x: *mut ::std::os::raw::c_void,
25052        enc: *const EVP_CIPHER,
25053        kstr: *mut ::std::os::raw::c_uchar,
25054        klen: ::std::os::raw::c_int,
25055        callback: pem_password_cb,
25056        u: *mut ::std::os::raw::c_void,
25057    ) -> ::std::os::raw::c_int;
25058}
25059extern "C" {
25060    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_def_callback"]
25061    pub fn PEM_def_callback(
25062        buf: *mut ::std::os::raw::c_char,
25063        size: ::std::os::raw::c_int,
25064        rwflag: ::std::os::raw::c_int,
25065        userdata: *mut ::std::os::raw::c_void,
25066    ) -> ::std::os::raw::c_int;
25067}
25068extern "C" {
25069    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_X509"]
25070    pub fn PEM_read_bio_X509(
25071        bp: *mut BIO,
25072        x: *mut *mut X509,
25073        cb: pem_password_cb,
25074        u: *mut ::std::os::raw::c_void,
25075    ) -> *mut X509;
25076}
25077extern "C" {
25078    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_X509"]
25079    pub fn PEM_read_X509(
25080        fp: *mut FILE,
25081        x: *mut *mut X509,
25082        cb: pem_password_cb,
25083        u: *mut ::std::os::raw::c_void,
25084    ) -> *mut X509;
25085}
25086extern "C" {
25087    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_X509"]
25088    pub fn PEM_write_bio_X509(bp: *mut BIO, x: *mut X509) -> ::std::os::raw::c_int;
25089}
25090extern "C" {
25091    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_X509"]
25092    pub fn PEM_write_X509(fp: *mut FILE, x: *mut X509) -> ::std::os::raw::c_int;
25093}
25094extern "C" {
25095    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_X509_AUX"]
25096    pub fn PEM_read_bio_X509_AUX(
25097        bp: *mut BIO,
25098        x: *mut *mut X509,
25099        cb: pem_password_cb,
25100        u: *mut ::std::os::raw::c_void,
25101    ) -> *mut X509;
25102}
25103extern "C" {
25104    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_X509_AUX"]
25105    pub fn PEM_read_X509_AUX(
25106        fp: *mut FILE,
25107        x: *mut *mut X509,
25108        cb: pem_password_cb,
25109        u: *mut ::std::os::raw::c_void,
25110    ) -> *mut X509;
25111}
25112extern "C" {
25113    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_X509_AUX"]
25114    pub fn PEM_write_bio_X509_AUX(bp: *mut BIO, x: *mut X509) -> ::std::os::raw::c_int;
25115}
25116extern "C" {
25117    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_X509_AUX"]
25118    pub fn PEM_write_X509_AUX(fp: *mut FILE, x: *mut X509) -> ::std::os::raw::c_int;
25119}
25120extern "C" {
25121    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_X509_REQ"]
25122    pub fn PEM_read_bio_X509_REQ(
25123        bp: *mut BIO,
25124        x: *mut *mut X509_REQ,
25125        cb: pem_password_cb,
25126        u: *mut ::std::os::raw::c_void,
25127    ) -> *mut X509_REQ;
25128}
25129extern "C" {
25130    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_X509_REQ"]
25131    pub fn PEM_read_X509_REQ(
25132        fp: *mut FILE,
25133        x: *mut *mut X509_REQ,
25134        cb: pem_password_cb,
25135        u: *mut ::std::os::raw::c_void,
25136    ) -> *mut X509_REQ;
25137}
25138extern "C" {
25139    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_X509_REQ"]
25140    pub fn PEM_write_bio_X509_REQ(bp: *mut BIO, x: *mut X509_REQ) -> ::std::os::raw::c_int;
25141}
25142extern "C" {
25143    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_X509_REQ"]
25144    pub fn PEM_write_X509_REQ(fp: *mut FILE, x: *mut X509_REQ) -> ::std::os::raw::c_int;
25145}
25146extern "C" {
25147    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_X509_REQ_NEW"]
25148    pub fn PEM_write_bio_X509_REQ_NEW(bp: *mut BIO, x: *mut X509_REQ) -> ::std::os::raw::c_int;
25149}
25150extern "C" {
25151    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_X509_REQ_NEW"]
25152    pub fn PEM_write_X509_REQ_NEW(fp: *mut FILE, x: *mut X509_REQ) -> ::std::os::raw::c_int;
25153}
25154extern "C" {
25155    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_X509_CRL"]
25156    pub fn PEM_read_bio_X509_CRL(
25157        bp: *mut BIO,
25158        x: *mut *mut X509_CRL,
25159        cb: pem_password_cb,
25160        u: *mut ::std::os::raw::c_void,
25161    ) -> *mut X509_CRL;
25162}
25163extern "C" {
25164    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_X509_CRL"]
25165    pub fn PEM_read_X509_CRL(
25166        fp: *mut FILE,
25167        x: *mut *mut X509_CRL,
25168        cb: pem_password_cb,
25169        u: *mut ::std::os::raw::c_void,
25170    ) -> *mut X509_CRL;
25171}
25172extern "C" {
25173    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_X509_CRL"]
25174    pub fn PEM_write_bio_X509_CRL(bp: *mut BIO, x: *mut X509_CRL) -> ::std::os::raw::c_int;
25175}
25176extern "C" {
25177    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_X509_CRL"]
25178    pub fn PEM_write_X509_CRL(fp: *mut FILE, x: *mut X509_CRL) -> ::std::os::raw::c_int;
25179}
25180extern "C" {
25181    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_PKCS7"]
25182    pub fn PEM_read_bio_PKCS7(
25183        bp: *mut BIO,
25184        x: *mut *mut PKCS7,
25185        cb: pem_password_cb,
25186        u: *mut ::std::os::raw::c_void,
25187    ) -> *mut PKCS7;
25188}
25189extern "C" {
25190    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_PKCS7"]
25191    pub fn PEM_read_PKCS7(
25192        fp: *mut FILE,
25193        x: *mut *mut PKCS7,
25194        cb: pem_password_cb,
25195        u: *mut ::std::os::raw::c_void,
25196    ) -> *mut PKCS7;
25197}
25198extern "C" {
25199    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_PKCS7"]
25200    pub fn PEM_write_bio_PKCS7(bp: *mut BIO, x: *mut PKCS7) -> ::std::os::raw::c_int;
25201}
25202extern "C" {
25203    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_PKCS7"]
25204    pub fn PEM_write_PKCS7(fp: *mut FILE, x: *mut PKCS7) -> ::std::os::raw::c_int;
25205}
25206extern "C" {
25207    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_PKCS8"]
25208    pub fn PEM_read_bio_PKCS8(
25209        bp: *mut BIO,
25210        x: *mut *mut X509_SIG,
25211        cb: pem_password_cb,
25212        u: *mut ::std::os::raw::c_void,
25213    ) -> *mut X509_SIG;
25214}
25215extern "C" {
25216    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_PKCS8"]
25217    pub fn PEM_read_PKCS8(
25218        fp: *mut FILE,
25219        x: *mut *mut X509_SIG,
25220        cb: pem_password_cb,
25221        u: *mut ::std::os::raw::c_void,
25222    ) -> *mut X509_SIG;
25223}
25224extern "C" {
25225    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_PKCS8"]
25226    pub fn PEM_write_bio_PKCS8(bp: *mut BIO, x: *mut X509_SIG) -> ::std::os::raw::c_int;
25227}
25228extern "C" {
25229    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_PKCS8"]
25230    pub fn PEM_write_PKCS8(fp: *mut FILE, x: *mut X509_SIG) -> ::std::os::raw::c_int;
25231}
25232extern "C" {
25233    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_PKCS8_PRIV_KEY_INFO"]
25234    pub fn PEM_read_bio_PKCS8_PRIV_KEY_INFO(
25235        bp: *mut BIO,
25236        x: *mut *mut PKCS8_PRIV_KEY_INFO,
25237        cb: pem_password_cb,
25238        u: *mut ::std::os::raw::c_void,
25239    ) -> *mut PKCS8_PRIV_KEY_INFO;
25240}
25241extern "C" {
25242    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_PKCS8_PRIV_KEY_INFO"]
25243    pub fn PEM_read_PKCS8_PRIV_KEY_INFO(
25244        fp: *mut FILE,
25245        x: *mut *mut PKCS8_PRIV_KEY_INFO,
25246        cb: pem_password_cb,
25247        u: *mut ::std::os::raw::c_void,
25248    ) -> *mut PKCS8_PRIV_KEY_INFO;
25249}
25250extern "C" {
25251    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_PKCS8_PRIV_KEY_INFO"]
25252    pub fn PEM_write_bio_PKCS8_PRIV_KEY_INFO(
25253        bp: *mut BIO,
25254        x: *mut PKCS8_PRIV_KEY_INFO,
25255    ) -> ::std::os::raw::c_int;
25256}
25257extern "C" {
25258    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_PKCS8_PRIV_KEY_INFO"]
25259    pub fn PEM_write_PKCS8_PRIV_KEY_INFO(
25260        fp: *mut FILE,
25261        x: *mut PKCS8_PRIV_KEY_INFO,
25262    ) -> ::std::os::raw::c_int;
25263}
25264extern "C" {
25265    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_RSAPrivateKey"]
25266    pub fn PEM_read_bio_RSAPrivateKey(
25267        bp: *mut BIO,
25268        x: *mut *mut RSA,
25269        cb: pem_password_cb,
25270        u: *mut ::std::os::raw::c_void,
25271    ) -> *mut RSA;
25272}
25273extern "C" {
25274    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_RSAPrivateKey"]
25275    pub fn PEM_read_RSAPrivateKey(
25276        fp: *mut FILE,
25277        x: *mut *mut RSA,
25278        cb: pem_password_cb,
25279        u: *mut ::std::os::raw::c_void,
25280    ) -> *mut RSA;
25281}
25282extern "C" {
25283    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_RSAPrivateKey"]
25284    pub fn PEM_write_bio_RSAPrivateKey(
25285        bp: *mut BIO,
25286        x: *mut RSA,
25287        enc: *const EVP_CIPHER,
25288        kstr: *mut ::std::os::raw::c_uchar,
25289        klen: ::std::os::raw::c_int,
25290        cb: pem_password_cb,
25291        u: *mut ::std::os::raw::c_void,
25292    ) -> ::std::os::raw::c_int;
25293}
25294extern "C" {
25295    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_RSAPrivateKey"]
25296    pub fn PEM_write_RSAPrivateKey(
25297        fp: *mut FILE,
25298        x: *mut RSA,
25299        enc: *const EVP_CIPHER,
25300        kstr: *mut ::std::os::raw::c_uchar,
25301        klen: ::std::os::raw::c_int,
25302        cb: pem_password_cb,
25303        u: *mut ::std::os::raw::c_void,
25304    ) -> ::std::os::raw::c_int;
25305}
25306extern "C" {
25307    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_RSAPublicKey"]
25308    pub fn PEM_read_bio_RSAPublicKey(
25309        bp: *mut BIO,
25310        x: *mut *mut RSA,
25311        cb: pem_password_cb,
25312        u: *mut ::std::os::raw::c_void,
25313    ) -> *mut RSA;
25314}
25315extern "C" {
25316    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_RSAPublicKey"]
25317    pub fn PEM_read_RSAPublicKey(
25318        fp: *mut FILE,
25319        x: *mut *mut RSA,
25320        cb: pem_password_cb,
25321        u: *mut ::std::os::raw::c_void,
25322    ) -> *mut RSA;
25323}
25324extern "C" {
25325    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_RSAPublicKey"]
25326    pub fn PEM_write_bio_RSAPublicKey(bp: *mut BIO, x: *const RSA) -> ::std::os::raw::c_int;
25327}
25328extern "C" {
25329    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_RSAPublicKey"]
25330    pub fn PEM_write_RSAPublicKey(fp: *mut FILE, x: *const RSA) -> ::std::os::raw::c_int;
25331}
25332extern "C" {
25333    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_RSA_PUBKEY"]
25334    pub fn PEM_read_bio_RSA_PUBKEY(
25335        bp: *mut BIO,
25336        x: *mut *mut RSA,
25337        cb: pem_password_cb,
25338        u: *mut ::std::os::raw::c_void,
25339    ) -> *mut RSA;
25340}
25341extern "C" {
25342    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_RSA_PUBKEY"]
25343    pub fn PEM_read_RSA_PUBKEY(
25344        fp: *mut FILE,
25345        x: *mut *mut RSA,
25346        cb: pem_password_cb,
25347        u: *mut ::std::os::raw::c_void,
25348    ) -> *mut RSA;
25349}
25350extern "C" {
25351    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_RSA_PUBKEY"]
25352    pub fn PEM_write_bio_RSA_PUBKEY(bp: *mut BIO, x: *mut RSA) -> ::std::os::raw::c_int;
25353}
25354extern "C" {
25355    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_RSA_PUBKEY"]
25356    pub fn PEM_write_RSA_PUBKEY(fp: *mut FILE, x: *mut RSA) -> ::std::os::raw::c_int;
25357}
25358extern "C" {
25359    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_DSAPrivateKey"]
25360    pub fn PEM_read_bio_DSAPrivateKey(
25361        bp: *mut BIO,
25362        x: *mut *mut DSA,
25363        cb: pem_password_cb,
25364        u: *mut ::std::os::raw::c_void,
25365    ) -> *mut DSA;
25366}
25367extern "C" {
25368    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_DSAPrivateKey"]
25369    pub fn PEM_read_DSAPrivateKey(
25370        fp: *mut FILE,
25371        x: *mut *mut DSA,
25372        cb: pem_password_cb,
25373        u: *mut ::std::os::raw::c_void,
25374    ) -> *mut DSA;
25375}
25376extern "C" {
25377    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_DSAPrivateKey"]
25378    pub fn PEM_write_bio_DSAPrivateKey(
25379        bp: *mut BIO,
25380        x: *mut DSA,
25381        enc: *const EVP_CIPHER,
25382        kstr: *mut ::std::os::raw::c_uchar,
25383        klen: ::std::os::raw::c_int,
25384        cb: pem_password_cb,
25385        u: *mut ::std::os::raw::c_void,
25386    ) -> ::std::os::raw::c_int;
25387}
25388extern "C" {
25389    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_DSAPrivateKey"]
25390    pub fn PEM_write_DSAPrivateKey(
25391        fp: *mut FILE,
25392        x: *mut DSA,
25393        enc: *const EVP_CIPHER,
25394        kstr: *mut ::std::os::raw::c_uchar,
25395        klen: ::std::os::raw::c_int,
25396        cb: pem_password_cb,
25397        u: *mut ::std::os::raw::c_void,
25398    ) -> ::std::os::raw::c_int;
25399}
25400extern "C" {
25401    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_DSA_PUBKEY"]
25402    pub fn PEM_read_bio_DSA_PUBKEY(
25403        bp: *mut BIO,
25404        x: *mut *mut DSA,
25405        cb: pem_password_cb,
25406        u: *mut ::std::os::raw::c_void,
25407    ) -> *mut DSA;
25408}
25409extern "C" {
25410    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_DSA_PUBKEY"]
25411    pub fn PEM_read_DSA_PUBKEY(
25412        fp: *mut FILE,
25413        x: *mut *mut DSA,
25414        cb: pem_password_cb,
25415        u: *mut ::std::os::raw::c_void,
25416    ) -> *mut DSA;
25417}
25418extern "C" {
25419    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_DSA_PUBKEY"]
25420    pub fn PEM_write_bio_DSA_PUBKEY(bp: *mut BIO, x: *mut DSA) -> ::std::os::raw::c_int;
25421}
25422extern "C" {
25423    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_DSA_PUBKEY"]
25424    pub fn PEM_write_DSA_PUBKEY(fp: *mut FILE, x: *mut DSA) -> ::std::os::raw::c_int;
25425}
25426extern "C" {
25427    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_DSAparams"]
25428    pub fn PEM_read_bio_DSAparams(
25429        bp: *mut BIO,
25430        x: *mut *mut DSA,
25431        cb: pem_password_cb,
25432        u: *mut ::std::os::raw::c_void,
25433    ) -> *mut DSA;
25434}
25435extern "C" {
25436    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_DSAparams"]
25437    pub fn PEM_read_DSAparams(
25438        fp: *mut FILE,
25439        x: *mut *mut DSA,
25440        cb: pem_password_cb,
25441        u: *mut ::std::os::raw::c_void,
25442    ) -> *mut DSA;
25443}
25444extern "C" {
25445    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_DSAparams"]
25446    pub fn PEM_write_bio_DSAparams(bp: *mut BIO, x: *const DSA) -> ::std::os::raw::c_int;
25447}
25448extern "C" {
25449    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_DSAparams"]
25450    pub fn PEM_write_DSAparams(fp: *mut FILE, x: *const DSA) -> ::std::os::raw::c_int;
25451}
25452extern "C" {
25453    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_ECPrivateKey"]
25454    pub fn PEM_read_bio_ECPrivateKey(
25455        bp: *mut BIO,
25456        x: *mut *mut EC_KEY,
25457        cb: pem_password_cb,
25458        u: *mut ::std::os::raw::c_void,
25459    ) -> *mut EC_KEY;
25460}
25461extern "C" {
25462    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_ECPrivateKey"]
25463    pub fn PEM_read_ECPrivateKey(
25464        fp: *mut FILE,
25465        x: *mut *mut EC_KEY,
25466        cb: pem_password_cb,
25467        u: *mut ::std::os::raw::c_void,
25468    ) -> *mut EC_KEY;
25469}
25470extern "C" {
25471    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_ECPrivateKey"]
25472    pub fn PEM_write_bio_ECPrivateKey(
25473        bp: *mut BIO,
25474        x: *mut EC_KEY,
25475        enc: *const EVP_CIPHER,
25476        kstr: *mut ::std::os::raw::c_uchar,
25477        klen: ::std::os::raw::c_int,
25478        cb: pem_password_cb,
25479        u: *mut ::std::os::raw::c_void,
25480    ) -> ::std::os::raw::c_int;
25481}
25482extern "C" {
25483    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_ECPrivateKey"]
25484    pub fn PEM_write_ECPrivateKey(
25485        fp: *mut FILE,
25486        x: *mut EC_KEY,
25487        enc: *const EVP_CIPHER,
25488        kstr: *mut ::std::os::raw::c_uchar,
25489        klen: ::std::os::raw::c_int,
25490        cb: pem_password_cb,
25491        u: *mut ::std::os::raw::c_void,
25492    ) -> ::std::os::raw::c_int;
25493}
25494extern "C" {
25495    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_EC_PUBKEY"]
25496    pub fn PEM_read_bio_EC_PUBKEY(
25497        bp: *mut BIO,
25498        x: *mut *mut EC_KEY,
25499        cb: pem_password_cb,
25500        u: *mut ::std::os::raw::c_void,
25501    ) -> *mut EC_KEY;
25502}
25503extern "C" {
25504    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_EC_PUBKEY"]
25505    pub fn PEM_read_EC_PUBKEY(
25506        fp: *mut FILE,
25507        x: *mut *mut EC_KEY,
25508        cb: pem_password_cb,
25509        u: *mut ::std::os::raw::c_void,
25510    ) -> *mut EC_KEY;
25511}
25512extern "C" {
25513    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_EC_PUBKEY"]
25514    pub fn PEM_write_bio_EC_PUBKEY(bp: *mut BIO, x: *mut EC_KEY) -> ::std::os::raw::c_int;
25515}
25516extern "C" {
25517    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_EC_PUBKEY"]
25518    pub fn PEM_write_EC_PUBKEY(fp: *mut FILE, x: *mut EC_KEY) -> ::std::os::raw::c_int;
25519}
25520extern "C" {
25521    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_DHparams"]
25522    pub fn PEM_read_bio_DHparams(
25523        bp: *mut BIO,
25524        x: *mut *mut DH,
25525        cb: pem_password_cb,
25526        u: *mut ::std::os::raw::c_void,
25527    ) -> *mut DH;
25528}
25529extern "C" {
25530    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_DHparams"]
25531    pub fn PEM_read_DHparams(
25532        fp: *mut FILE,
25533        x: *mut *mut DH,
25534        cb: pem_password_cb,
25535        u: *mut ::std::os::raw::c_void,
25536    ) -> *mut DH;
25537}
25538extern "C" {
25539    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_DHparams"]
25540    pub fn PEM_write_bio_DHparams(bp: *mut BIO, x: *const DH) -> ::std::os::raw::c_int;
25541}
25542extern "C" {
25543    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_DHparams"]
25544    pub fn PEM_write_DHparams(fp: *mut FILE, x: *const DH) -> ::std::os::raw::c_int;
25545}
25546extern "C" {
25547    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_PrivateKey"]
25548    pub fn PEM_read_bio_PrivateKey(
25549        bp: *mut BIO,
25550        x: *mut *mut EVP_PKEY,
25551        cb: pem_password_cb,
25552        u: *mut ::std::os::raw::c_void,
25553    ) -> *mut EVP_PKEY;
25554}
25555extern "C" {
25556    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_PrivateKey"]
25557    pub fn PEM_read_PrivateKey(
25558        fp: *mut FILE,
25559        x: *mut *mut EVP_PKEY,
25560        cb: pem_password_cb,
25561        u: *mut ::std::os::raw::c_void,
25562    ) -> *mut EVP_PKEY;
25563}
25564extern "C" {
25565    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_PrivateKey"]
25566    pub fn PEM_write_bio_PrivateKey(
25567        bp: *mut BIO,
25568        x: *mut EVP_PKEY,
25569        enc: *const EVP_CIPHER,
25570        kstr: *mut ::std::os::raw::c_uchar,
25571        klen: ::std::os::raw::c_int,
25572        cb: pem_password_cb,
25573        u: *mut ::std::os::raw::c_void,
25574    ) -> ::std::os::raw::c_int;
25575}
25576extern "C" {
25577    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_PrivateKey"]
25578    pub fn PEM_write_PrivateKey(
25579        fp: *mut FILE,
25580        x: *mut EVP_PKEY,
25581        enc: *const EVP_CIPHER,
25582        kstr: *mut ::std::os::raw::c_uchar,
25583        klen: ::std::os::raw::c_int,
25584        cb: pem_password_cb,
25585        u: *mut ::std::os::raw::c_void,
25586    ) -> ::std::os::raw::c_int;
25587}
25588extern "C" {
25589    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_PUBKEY"]
25590    pub fn PEM_read_bio_PUBKEY(
25591        bp: *mut BIO,
25592        x: *mut *mut EVP_PKEY,
25593        cb: pem_password_cb,
25594        u: *mut ::std::os::raw::c_void,
25595    ) -> *mut EVP_PKEY;
25596}
25597extern "C" {
25598    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_PUBKEY"]
25599    pub fn PEM_read_PUBKEY(
25600        fp: *mut FILE,
25601        x: *mut *mut EVP_PKEY,
25602        cb: pem_password_cb,
25603        u: *mut ::std::os::raw::c_void,
25604    ) -> *mut EVP_PKEY;
25605}
25606extern "C" {
25607    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_PUBKEY"]
25608    pub fn PEM_write_bio_PUBKEY(bp: *mut BIO, x: *mut EVP_PKEY) -> ::std::os::raw::c_int;
25609}
25610extern "C" {
25611    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_PUBKEY"]
25612    pub fn PEM_write_PUBKEY(fp: *mut FILE, x: *mut EVP_PKEY) -> ::std::os::raw::c_int;
25613}
25614extern "C" {
25615    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_PKCS8PrivateKey_nid"]
25616    pub fn PEM_write_bio_PKCS8PrivateKey_nid(
25617        bp: *mut BIO,
25618        x: *const EVP_PKEY,
25619        nid: ::std::os::raw::c_int,
25620        kstr: *mut ::std::os::raw::c_char,
25621        klen: ::std::os::raw::c_int,
25622        cb: pem_password_cb,
25623        u: *mut ::std::os::raw::c_void,
25624    ) -> ::std::os::raw::c_int;
25625}
25626extern "C" {
25627    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_PKCS8PrivateKey"]
25628    pub fn PEM_write_bio_PKCS8PrivateKey(
25629        arg1: *mut BIO,
25630        arg2: *const EVP_PKEY,
25631        arg3: *const EVP_CIPHER,
25632        arg4: *mut ::std::os::raw::c_char,
25633        arg5: ::std::os::raw::c_int,
25634        arg6: pem_password_cb,
25635        arg7: *mut ::std::os::raw::c_void,
25636    ) -> ::std::os::raw::c_int;
25637}
25638extern "C" {
25639    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8PrivateKey_bio"]
25640    pub fn i2d_PKCS8PrivateKey_bio(
25641        bp: *mut BIO,
25642        x: *const EVP_PKEY,
25643        enc: *const EVP_CIPHER,
25644        kstr: *mut ::std::os::raw::c_char,
25645        klen: ::std::os::raw::c_int,
25646        cb: pem_password_cb,
25647        u: *mut ::std::os::raw::c_void,
25648    ) -> ::std::os::raw::c_int;
25649}
25650extern "C" {
25651    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8PrivateKey_nid_bio"]
25652    pub fn i2d_PKCS8PrivateKey_nid_bio(
25653        bp: *mut BIO,
25654        x: *const EVP_PKEY,
25655        nid: ::std::os::raw::c_int,
25656        kstr: *mut ::std::os::raw::c_char,
25657        klen: ::std::os::raw::c_int,
25658        cb: pem_password_cb,
25659        u: *mut ::std::os::raw::c_void,
25660    ) -> ::std::os::raw::c_int;
25661}
25662extern "C" {
25663    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS8PrivateKey_bio"]
25664    pub fn d2i_PKCS8PrivateKey_bio(
25665        bp: *mut BIO,
25666        x: *mut *mut EVP_PKEY,
25667        cb: pem_password_cb,
25668        u: *mut ::std::os::raw::c_void,
25669    ) -> *mut EVP_PKEY;
25670}
25671extern "C" {
25672    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8PrivateKey_fp"]
25673    pub fn i2d_PKCS8PrivateKey_fp(
25674        fp: *mut FILE,
25675        x: *const EVP_PKEY,
25676        enc: *const EVP_CIPHER,
25677        kstr: *mut ::std::os::raw::c_char,
25678        klen: ::std::os::raw::c_int,
25679        cb: pem_password_cb,
25680        u: *mut ::std::os::raw::c_void,
25681    ) -> ::std::os::raw::c_int;
25682}
25683extern "C" {
25684    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS8PrivateKey_nid_fp"]
25685    pub fn i2d_PKCS8PrivateKey_nid_fp(
25686        fp: *mut FILE,
25687        x: *const EVP_PKEY,
25688        nid: ::std::os::raw::c_int,
25689        kstr: *mut ::std::os::raw::c_char,
25690        klen: ::std::os::raw::c_int,
25691        cb: pem_password_cb,
25692        u: *mut ::std::os::raw::c_void,
25693    ) -> ::std::os::raw::c_int;
25694}
25695extern "C" {
25696    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_PKCS8PrivateKey_nid"]
25697    pub fn PEM_write_PKCS8PrivateKey_nid(
25698        fp: *mut FILE,
25699        x: *const EVP_PKEY,
25700        nid: ::std::os::raw::c_int,
25701        kstr: *mut ::std::os::raw::c_char,
25702        klen: ::std::os::raw::c_int,
25703        cb: pem_password_cb,
25704        u: *mut ::std::os::raw::c_void,
25705    ) -> ::std::os::raw::c_int;
25706}
25707extern "C" {
25708    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS8PrivateKey_fp"]
25709    pub fn d2i_PKCS8PrivateKey_fp(
25710        fp: *mut FILE,
25711        x: *mut *mut EVP_PKEY,
25712        cb: pem_password_cb,
25713        u: *mut ::std::os::raw::c_void,
25714    ) -> *mut EVP_PKEY;
25715}
25716extern "C" {
25717    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_PKCS8PrivateKey"]
25718    pub fn PEM_write_PKCS8PrivateKey(
25719        fp: *mut FILE,
25720        x: *const EVP_PKEY,
25721        enc: *const EVP_CIPHER,
25722        kstr: *mut ::std::os::raw::c_char,
25723        klen: ::std::os::raw::c_int,
25724        cd: pem_password_cb,
25725        u: *mut ::std::os::raw::c_void,
25726    ) -> ::std::os::raw::c_int;
25727}
25728extern "C" {
25729    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_Parameters"]
25730    pub fn PEM_read_bio_Parameters(bio: *mut BIO, pkey: *mut *mut EVP_PKEY) -> *mut EVP_PKEY;
25731}
25732extern "C" {
25733    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_Parameters"]
25734    pub fn PEM_write_bio_Parameters(bio: *mut BIO, pkey: *mut EVP_PKEY) -> ::std::os::raw::c_int;
25735}
25736extern "C" {
25737    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_read_bio_ECPKParameters"]
25738    pub fn PEM_read_bio_ECPKParameters(
25739        bio: *mut BIO,
25740        out_group: *mut *mut EC_GROUP,
25741        cb: pem_password_cb,
25742        u: *mut ::std::os::raw::c_void,
25743    ) -> *mut EC_GROUP;
25744}
25745extern "C" {
25746    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_ECPKParameters"]
25747    pub fn PEM_write_bio_ECPKParameters(
25748        out: *mut BIO,
25749        group: *const EC_GROUP,
25750    ) -> ::std::os::raw::c_int;
25751}
25752extern "C" {
25753    #[link_name = "\u{1}aws_lc_fips_0_13_10_PEM_write_bio_PrivateKey_traditional"]
25754    pub fn PEM_write_bio_PrivateKey_traditional(
25755        bp: *mut BIO,
25756        x: *mut EVP_PKEY,
25757        enc: *const EVP_CIPHER,
25758        kstr: *mut ::std::os::raw::c_uchar,
25759        klen: ::std::os::raw::c_int,
25760        cb: pem_password_cb,
25761        u: *mut ::std::os::raw::c_void,
25762    ) -> ::std::os::raw::c_int;
25763}
25764extern "C" {
25765    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS8_encrypt"]
25766    pub fn PKCS8_encrypt(
25767        pbe_nid: ::std::os::raw::c_int,
25768        cipher: *const EVP_CIPHER,
25769        pass: *const ::std::os::raw::c_char,
25770        pass_len: ::std::os::raw::c_int,
25771        salt: *const u8,
25772        salt_len: usize,
25773        iterations: ::std::os::raw::c_int,
25774        p8inf: *mut PKCS8_PRIV_KEY_INFO,
25775    ) -> *mut X509_SIG;
25776}
25777extern "C" {
25778    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS8_marshal_encrypted_private_key"]
25779    pub fn PKCS8_marshal_encrypted_private_key(
25780        out: *mut CBB,
25781        pbe_nid: ::std::os::raw::c_int,
25782        cipher: *const EVP_CIPHER,
25783        pass: *const ::std::os::raw::c_char,
25784        pass_len: usize,
25785        salt: *const u8,
25786        salt_len: usize,
25787        iterations: ::std::os::raw::c_int,
25788        pkey: *const EVP_PKEY,
25789    ) -> ::std::os::raw::c_int;
25790}
25791extern "C" {
25792    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS8_decrypt"]
25793    pub fn PKCS8_decrypt(
25794        pkcs8: *mut X509_SIG,
25795        pass: *const ::std::os::raw::c_char,
25796        pass_len: ::std::os::raw::c_int,
25797    ) -> *mut PKCS8_PRIV_KEY_INFO;
25798}
25799extern "C" {
25800    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS8_parse_encrypted_private_key"]
25801    pub fn PKCS8_parse_encrypted_private_key(
25802        cbs: *mut CBS,
25803        pass: *const ::std::os::raw::c_char,
25804        pass_len: usize,
25805    ) -> *mut EVP_PKEY;
25806}
25807extern "C" {
25808    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS12_get_key_and_certs"]
25809    pub fn PKCS12_get_key_and_certs(
25810        out_key: *mut *mut EVP_PKEY,
25811        out_certs: *mut stack_st_X509,
25812        in_: *mut CBS,
25813        password: *const ::std::os::raw::c_char,
25814    ) -> ::std::os::raw::c_int;
25815}
25816extern "C" {
25817    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS12_PBE_add"]
25818    pub fn PKCS12_PBE_add();
25819}
25820extern "C" {
25821    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS12"]
25822    pub fn d2i_PKCS12(
25823        out_p12: *mut *mut PKCS12,
25824        ber_bytes: *mut *const u8,
25825        ber_len: usize,
25826    ) -> *mut PKCS12;
25827}
25828extern "C" {
25829    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS12_bio"]
25830    pub fn d2i_PKCS12_bio(bio: *mut BIO, out_p12: *mut *mut PKCS12) -> *mut PKCS12;
25831}
25832extern "C" {
25833    #[link_name = "\u{1}aws_lc_fips_0_13_10_d2i_PKCS12_fp"]
25834    pub fn d2i_PKCS12_fp(fp: *mut FILE, out_p12: *mut *mut PKCS12) -> *mut PKCS12;
25835}
25836extern "C" {
25837    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS12"]
25838    pub fn i2d_PKCS12(p12: *const PKCS12, out: *mut *mut u8) -> ::std::os::raw::c_int;
25839}
25840extern "C" {
25841    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS12_bio"]
25842    pub fn i2d_PKCS12_bio(bio: *mut BIO, p12: *const PKCS12) -> ::std::os::raw::c_int;
25843}
25844extern "C" {
25845    #[link_name = "\u{1}aws_lc_fips_0_13_10_i2d_PKCS12_fp"]
25846    pub fn i2d_PKCS12_fp(fp: *mut FILE, p12: *const PKCS12) -> ::std::os::raw::c_int;
25847}
25848extern "C" {
25849    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS12_parse"]
25850    pub fn PKCS12_parse(
25851        p12: *const PKCS12,
25852        password: *const ::std::os::raw::c_char,
25853        out_pkey: *mut *mut EVP_PKEY,
25854        out_cert: *mut *mut X509,
25855        out_ca_certs: *mut *mut stack_st_X509,
25856    ) -> ::std::os::raw::c_int;
25857}
25858extern "C" {
25859    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS12_verify_mac"]
25860    pub fn PKCS12_verify_mac(
25861        p12: *const PKCS12,
25862        password: *const ::std::os::raw::c_char,
25863        password_len: ::std::os::raw::c_int,
25864    ) -> ::std::os::raw::c_int;
25865}
25866extern "C" {
25867    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS12_create"]
25868    pub fn PKCS12_create(
25869        password: *const ::std::os::raw::c_char,
25870        name: *const ::std::os::raw::c_char,
25871        pkey: *const EVP_PKEY,
25872        cert: *mut X509,
25873        chain: *const stack_st_X509,
25874        key_nid: ::std::os::raw::c_int,
25875        cert_nid: ::std::os::raw::c_int,
25876        iterations: ::std::os::raw::c_int,
25877        mac_iterations: ::std::os::raw::c_int,
25878        key_type: ::std::os::raw::c_int,
25879    ) -> *mut PKCS12;
25880}
25881extern "C" {
25882    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS12_new"]
25883    pub fn PKCS12_new() -> *mut PKCS12;
25884}
25885extern "C" {
25886    #[link_name = "\u{1}aws_lc_fips_0_13_10_PKCS12_free"]
25887    pub fn PKCS12_free(p12: *mut PKCS12);
25888}
25889pub type poly1305_state = [u8; 512usize];
25890extern "C" {
25891    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_poly1305_init"]
25892    pub fn CRYPTO_poly1305_init(state: *mut poly1305_state, key: *const u8);
25893}
25894extern "C" {
25895    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_poly1305_update"]
25896    pub fn CRYPTO_poly1305_update(state: *mut poly1305_state, in_: *const u8, in_len: usize);
25897}
25898extern "C" {
25899    #[link_name = "\u{1}aws_lc_fips_0_13_10_CRYPTO_poly1305_finish"]
25900    pub fn CRYPTO_poly1305_finish(state: *mut poly1305_state, mac: *mut u8);
25901}
25902extern "C" {
25903    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_bytes"]
25904    pub fn RAND_bytes(buf: *mut u8, len: usize) -> ::std::os::raw::c_int;
25905}
25906extern "C" {
25907    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_priv_bytes"]
25908    pub fn RAND_priv_bytes(buf: *mut u8, len: usize) -> ::std::os::raw::c_int;
25909}
25910extern "C" {
25911    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_enable_fork_unsafe_buffering"]
25912    pub fn RAND_enable_fork_unsafe_buffering(fd: ::std::os::raw::c_int);
25913}
25914extern "C" {
25915    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_get_system_entropy_for_custom_prng"]
25916    pub fn RAND_get_system_entropy_for_custom_prng(buf: *mut u8, len: usize);
25917}
25918extern "C" {
25919    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_pseudo_bytes"]
25920    pub fn RAND_pseudo_bytes(buf: *mut u8, len: usize) -> ::std::os::raw::c_int;
25921}
25922extern "C" {
25923    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_seed"]
25924    pub fn RAND_seed(buf: *const ::std::os::raw::c_void, num: ::std::os::raw::c_int);
25925}
25926extern "C" {
25927    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_load_file"]
25928    pub fn RAND_load_file(
25929        path: *const ::std::os::raw::c_char,
25930        num: ::std::os::raw::c_long,
25931    ) -> ::std::os::raw::c_int;
25932}
25933extern "C" {
25934    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_write_file"]
25935    pub fn RAND_write_file(file: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
25936}
25937extern "C" {
25938    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_file_name"]
25939    pub fn RAND_file_name(
25940        buf: *mut ::std::os::raw::c_char,
25941        num: usize,
25942    ) -> *const ::std::os::raw::c_char;
25943}
25944extern "C" {
25945    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_add"]
25946    pub fn RAND_add(buf: *const ::std::os::raw::c_void, num: ::std::os::raw::c_int, entropy: f64);
25947}
25948extern "C" {
25949    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_egd"]
25950    pub fn RAND_egd(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
25951}
25952extern "C" {
25953    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_egd_bytes"]
25954    pub fn RAND_egd_bytes(
25955        arg1: *const ::std::os::raw::c_char,
25956        bytes: ::std::os::raw::c_int,
25957    ) -> ::std::os::raw::c_int;
25958}
25959extern "C" {
25960    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_poll"]
25961    pub fn RAND_poll() -> ::std::os::raw::c_int;
25962}
25963extern "C" {
25964    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_status"]
25965    pub fn RAND_status() -> ::std::os::raw::c_int;
25966}
25967extern "C" {
25968    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_cleanup"]
25969    pub fn RAND_cleanup();
25970}
25971#[repr(C)]
25972#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
25973pub struct rand_meth_st {
25974    pub seed: ::std::option::Option<
25975        unsafe extern "C" fn(buf: *const ::std::os::raw::c_void, num: ::std::os::raw::c_int),
25976    >,
25977    pub bytes: ::std::option::Option<
25978        unsafe extern "C" fn(buf: *mut u8, num: usize) -> ::std::os::raw::c_int,
25979    >,
25980    pub cleanup: ::std::option::Option<unsafe extern "C" fn()>,
25981    pub add: ::std::option::Option<
25982        unsafe extern "C" fn(
25983            buf: *const ::std::os::raw::c_void,
25984            num: ::std::os::raw::c_int,
25985            entropy: f64,
25986        ),
25987    >,
25988    pub pseudorand: ::std::option::Option<
25989        unsafe extern "C" fn(buf: *mut u8, num: usize) -> ::std::os::raw::c_int,
25990    >,
25991    pub status: ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
25992}
25993#[test]
25994fn bindgen_test_layout_rand_meth_st() {
25995    const UNINIT: ::std::mem::MaybeUninit<rand_meth_st> = ::std::mem::MaybeUninit::uninit();
25996    let ptr = UNINIT.as_ptr();
25997    assert_eq!(
25998        ::std::mem::size_of::<rand_meth_st>(),
25999        48usize,
26000        "Size of rand_meth_st"
26001    );
26002    assert_eq!(
26003        ::std::mem::align_of::<rand_meth_st>(),
26004        8usize,
26005        "Alignment of rand_meth_st"
26006    );
26007    assert_eq!(
26008        unsafe { ::std::ptr::addr_of!((*ptr).seed) as usize - ptr as usize },
26009        0usize,
26010        "Offset of field: rand_meth_st::seed"
26011    );
26012    assert_eq!(
26013        unsafe { ::std::ptr::addr_of!((*ptr).bytes) as usize - ptr as usize },
26014        8usize,
26015        "Offset of field: rand_meth_st::bytes"
26016    );
26017    assert_eq!(
26018        unsafe { ::std::ptr::addr_of!((*ptr).cleanup) as usize - ptr as usize },
26019        16usize,
26020        "Offset of field: rand_meth_st::cleanup"
26021    );
26022    assert_eq!(
26023        unsafe { ::std::ptr::addr_of!((*ptr).add) as usize - ptr as usize },
26024        24usize,
26025        "Offset of field: rand_meth_st::add"
26026    );
26027    assert_eq!(
26028        unsafe { ::std::ptr::addr_of!((*ptr).pseudorand) as usize - ptr as usize },
26029        32usize,
26030        "Offset of field: rand_meth_st::pseudorand"
26031    );
26032    assert_eq!(
26033        unsafe { ::std::ptr::addr_of!((*ptr).status) as usize - ptr as usize },
26034        40usize,
26035        "Offset of field: rand_meth_st::status"
26036    );
26037}
26038extern "C" {
26039    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_SSLeay"]
26040    pub fn RAND_SSLeay() -> *mut RAND_METHOD;
26041}
26042extern "C" {
26043    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_OpenSSL"]
26044    pub fn RAND_OpenSSL() -> *mut RAND_METHOD;
26045}
26046extern "C" {
26047    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_get_rand_method"]
26048    pub fn RAND_get_rand_method() -> *const RAND_METHOD;
26049}
26050extern "C" {
26051    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_set_rand_method"]
26052    pub fn RAND_set_rand_method(arg1: *const RAND_METHOD) -> ::std::os::raw::c_int;
26053}
26054extern "C" {
26055    #[link_name = "\u{1}aws_lc_fips_0_13_10_RAND_keep_random_devices_open"]
26056    pub fn RAND_keep_random_devices_open(a: ::std::os::raw::c_int);
26057}
26058#[repr(C)]
26059#[derive(Debug, Copy, Clone, PartialEq, Eq)]
26060pub struct rc4_key_st {
26061    pub x: u32,
26062    pub y: u32,
26063    pub data: [u32; 256usize],
26064}
26065#[test]
26066fn bindgen_test_layout_rc4_key_st() {
26067    const UNINIT: ::std::mem::MaybeUninit<rc4_key_st> = ::std::mem::MaybeUninit::uninit();
26068    let ptr = UNINIT.as_ptr();
26069    assert_eq!(
26070        ::std::mem::size_of::<rc4_key_st>(),
26071        1032usize,
26072        "Size of rc4_key_st"
26073    );
26074    assert_eq!(
26075        ::std::mem::align_of::<rc4_key_st>(),
26076        4usize,
26077        "Alignment of rc4_key_st"
26078    );
26079    assert_eq!(
26080        unsafe { ::std::ptr::addr_of!((*ptr).x) as usize - ptr as usize },
26081        0usize,
26082        "Offset of field: rc4_key_st::x"
26083    );
26084    assert_eq!(
26085        unsafe { ::std::ptr::addr_of!((*ptr).y) as usize - ptr as usize },
26086        4usize,
26087        "Offset of field: rc4_key_st::y"
26088    );
26089    assert_eq!(
26090        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
26091        8usize,
26092        "Offset of field: rc4_key_st::data"
26093    );
26094}
26095impl Default for rc4_key_st {
26096    fn default() -> Self {
26097        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
26098        unsafe {
26099            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
26100            s.assume_init()
26101        }
26102    }
26103}
26104extern "C" {
26105    #[link_name = "\u{1}aws_lc_fips_0_13_10_RC4_set_key"]
26106    pub fn RC4_set_key(rc4key: *mut RC4_KEY, len: ::std::os::raw::c_uint, key: *const u8);
26107}
26108extern "C" {
26109    #[link_name = "\u{1}aws_lc_fips_0_13_10_RC4"]
26110    pub fn RC4(key: *mut RC4_KEY, len: usize, in_: *const u8, out: *mut u8);
26111}
26112#[repr(C)]
26113#[derive(Debug, Copy, Clone, PartialEq, Eq)]
26114pub struct RIPEMD160state_st {
26115    pub h: [u32; 5usize],
26116    pub Nl: u32,
26117    pub Nh: u32,
26118    pub data: [u8; 64usize],
26119    pub num: ::std::os::raw::c_uint,
26120}
26121#[test]
26122fn bindgen_test_layout_RIPEMD160state_st() {
26123    const UNINIT: ::std::mem::MaybeUninit<RIPEMD160state_st> = ::std::mem::MaybeUninit::uninit();
26124    let ptr = UNINIT.as_ptr();
26125    assert_eq!(
26126        ::std::mem::size_of::<RIPEMD160state_st>(),
26127        96usize,
26128        "Size of RIPEMD160state_st"
26129    );
26130    assert_eq!(
26131        ::std::mem::align_of::<RIPEMD160state_st>(),
26132        4usize,
26133        "Alignment of RIPEMD160state_st"
26134    );
26135    assert_eq!(
26136        unsafe { ::std::ptr::addr_of!((*ptr).h) as usize - ptr as usize },
26137        0usize,
26138        "Offset of field: RIPEMD160state_st::h"
26139    );
26140    assert_eq!(
26141        unsafe { ::std::ptr::addr_of!((*ptr).Nl) as usize - ptr as usize },
26142        20usize,
26143        "Offset of field: RIPEMD160state_st::Nl"
26144    );
26145    assert_eq!(
26146        unsafe { ::std::ptr::addr_of!((*ptr).Nh) as usize - ptr as usize },
26147        24usize,
26148        "Offset of field: RIPEMD160state_st::Nh"
26149    );
26150    assert_eq!(
26151        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
26152        28usize,
26153        "Offset of field: RIPEMD160state_st::data"
26154    );
26155    assert_eq!(
26156        unsafe { ::std::ptr::addr_of!((*ptr).num) as usize - ptr as usize },
26157        92usize,
26158        "Offset of field: RIPEMD160state_st::num"
26159    );
26160}
26161impl Default for RIPEMD160state_st {
26162    fn default() -> Self {
26163        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
26164        unsafe {
26165            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
26166            s.assume_init()
26167        }
26168    }
26169}
26170extern "C" {
26171    #[link_name = "\u{1}aws_lc_fips_0_13_10_RIPEMD160_Init"]
26172    pub fn RIPEMD160_Init(ctx: *mut RIPEMD160_CTX) -> ::std::os::raw::c_int;
26173}
26174extern "C" {
26175    #[link_name = "\u{1}aws_lc_fips_0_13_10_RIPEMD160_Update"]
26176    pub fn RIPEMD160_Update(
26177        ctx: *mut RIPEMD160_CTX,
26178        data: *const ::std::os::raw::c_void,
26179        len: usize,
26180    ) -> ::std::os::raw::c_int;
26181}
26182extern "C" {
26183    #[link_name = "\u{1}aws_lc_fips_0_13_10_RIPEMD160_Final"]
26184    pub fn RIPEMD160_Final(out: *mut u8, ctx: *mut RIPEMD160_CTX) -> ::std::os::raw::c_int;
26185}
26186extern "C" {
26187    #[link_name = "\u{1}aws_lc_fips_0_13_10_RIPEMD160"]
26188    pub fn RIPEMD160(data: *const u8, len: usize, out: *mut u8) -> *mut u8;
26189}
26190extern "C" {
26191    #[link_name = "\u{1}aws_lc_fips_0_13_10_FIPS_service_indicator_before_call"]
26192    pub fn FIPS_service_indicator_before_call() -> u64;
26193}
26194extern "C" {
26195    #[link_name = "\u{1}aws_lc_fips_0_13_10_FIPS_service_indicator_after_call"]
26196    pub fn FIPS_service_indicator_after_call() -> u64;
26197}
26198extern "C" {
26199    #[link_name = "\u{1}aws_lc_fips_0_13_10_awslc_version_string"]
26200    pub fn awslc_version_string() -> *const ::std::os::raw::c_char;
26201}
26202pub const FIPSStatus_AWSLC_NOT_APPROVED: FIPSStatus = 0;
26203pub const FIPSStatus_AWSLC_APPROVED: FIPSStatus = 1;
26204pub type FIPSStatus = ::std::os::raw::c_uint;
26205extern "C" {
26206    #[link_name = "\u{1}aws_lc_fips_0_13_10_SIPHASH_24"]
26207    pub fn SIPHASH_24(key: *const u64, input: *const u8, input_len: usize) -> u64;
26208}
26209extern "C" {
26210    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_experiment_v1"]
26211    pub fn TRUST_TOKEN_experiment_v1() -> *const TRUST_TOKEN_METHOD;
26212}
26213extern "C" {
26214    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_experiment_v2_voprf"]
26215    pub fn TRUST_TOKEN_experiment_v2_voprf() -> *const TRUST_TOKEN_METHOD;
26216}
26217extern "C" {
26218    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_experiment_v2_pmb"]
26219    pub fn TRUST_TOKEN_experiment_v2_pmb() -> *const TRUST_TOKEN_METHOD;
26220}
26221extern "C" {
26222    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_pst_v1_voprf"]
26223    pub fn TRUST_TOKEN_pst_v1_voprf() -> *const TRUST_TOKEN_METHOD;
26224}
26225extern "C" {
26226    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_pst_v1_pmb"]
26227    pub fn TRUST_TOKEN_pst_v1_pmb() -> *const TRUST_TOKEN_METHOD;
26228}
26229#[repr(C)]
26230#[derive(Debug, Copy, Clone, PartialEq, Eq)]
26231pub struct trust_token_st {
26232    pub data: *mut u8,
26233    pub len: usize,
26234}
26235#[test]
26236fn bindgen_test_layout_trust_token_st() {
26237    const UNINIT: ::std::mem::MaybeUninit<trust_token_st> = ::std::mem::MaybeUninit::uninit();
26238    let ptr = UNINIT.as_ptr();
26239    assert_eq!(
26240        ::std::mem::size_of::<trust_token_st>(),
26241        16usize,
26242        "Size of trust_token_st"
26243    );
26244    assert_eq!(
26245        ::std::mem::align_of::<trust_token_st>(),
26246        8usize,
26247        "Alignment of trust_token_st"
26248    );
26249    assert_eq!(
26250        unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize },
26251        0usize,
26252        "Offset of field: trust_token_st::data"
26253    );
26254    assert_eq!(
26255        unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize },
26256        8usize,
26257        "Offset of field: trust_token_st::len"
26258    );
26259}
26260impl Default for trust_token_st {
26261    fn default() -> Self {
26262        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
26263        unsafe {
26264            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
26265            s.assume_init()
26266        }
26267    }
26268}
26269#[repr(C)]
26270#[derive(Debug, Copy, Clone)]
26271pub struct stack_st_TRUST_TOKEN {
26272    _unused: [u8; 0],
26273}
26274pub type sk_TRUST_TOKEN_free_func =
26275    ::std::option::Option<unsafe extern "C" fn(arg1: *mut TRUST_TOKEN)>;
26276pub type sk_TRUST_TOKEN_copy_func =
26277    ::std::option::Option<unsafe extern "C" fn(arg1: *const TRUST_TOKEN) -> *mut TRUST_TOKEN>;
26278pub type sk_TRUST_TOKEN_cmp_func = ::std::option::Option<
26279    unsafe extern "C" fn(
26280        arg1: *const *const TRUST_TOKEN,
26281        arg2: *const *const TRUST_TOKEN,
26282    ) -> ::std::os::raw::c_int,
26283>;
26284pub type sk_TRUST_TOKEN_delete_if_func = ::std::option::Option<
26285    unsafe extern "C" fn(
26286        arg1: *mut TRUST_TOKEN,
26287        arg2: *mut ::std::os::raw::c_void,
26288    ) -> ::std::os::raw::c_int,
26289>;
26290extern "C" {
26291    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_new"]
26292    pub fn TRUST_TOKEN_new(data: *const u8, len: usize) -> *mut TRUST_TOKEN;
26293}
26294extern "C" {
26295    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_free"]
26296    pub fn TRUST_TOKEN_free(token: *mut TRUST_TOKEN);
26297}
26298extern "C" {
26299    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_generate_key"]
26300    pub fn TRUST_TOKEN_generate_key(
26301        method: *const TRUST_TOKEN_METHOD,
26302        out_priv_key: *mut u8,
26303        out_priv_key_len: *mut usize,
26304        max_priv_key_len: usize,
26305        out_pub_key: *mut u8,
26306        out_pub_key_len: *mut usize,
26307        max_pub_key_len: usize,
26308        id: u32,
26309    ) -> ::std::os::raw::c_int;
26310}
26311extern "C" {
26312    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_derive_key_from_secret"]
26313    pub fn TRUST_TOKEN_derive_key_from_secret(
26314        method: *const TRUST_TOKEN_METHOD,
26315        out_priv_key: *mut u8,
26316        out_priv_key_len: *mut usize,
26317        max_priv_key_len: usize,
26318        out_pub_key: *mut u8,
26319        out_pub_key_len: *mut usize,
26320        max_pub_key_len: usize,
26321        id: u32,
26322        secret: *const u8,
26323        secret_len: usize,
26324    ) -> ::std::os::raw::c_int;
26325}
26326extern "C" {
26327    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_new"]
26328    pub fn TRUST_TOKEN_CLIENT_new(
26329        method: *const TRUST_TOKEN_METHOD,
26330        max_batchsize: usize,
26331    ) -> *mut TRUST_TOKEN_CLIENT;
26332}
26333extern "C" {
26334    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_free"]
26335    pub fn TRUST_TOKEN_CLIENT_free(ctx: *mut TRUST_TOKEN_CLIENT);
26336}
26337extern "C" {
26338    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_add_key"]
26339    pub fn TRUST_TOKEN_CLIENT_add_key(
26340        ctx: *mut TRUST_TOKEN_CLIENT,
26341        out_key_index: *mut usize,
26342        key: *const u8,
26343        key_len: usize,
26344    ) -> ::std::os::raw::c_int;
26345}
26346extern "C" {
26347    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_set_srr_key"]
26348    pub fn TRUST_TOKEN_CLIENT_set_srr_key(
26349        ctx: *mut TRUST_TOKEN_CLIENT,
26350        key: *mut EVP_PKEY,
26351    ) -> ::std::os::raw::c_int;
26352}
26353extern "C" {
26354    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_begin_issuance"]
26355    pub fn TRUST_TOKEN_CLIENT_begin_issuance(
26356        ctx: *mut TRUST_TOKEN_CLIENT,
26357        out: *mut *mut u8,
26358        out_len: *mut usize,
26359        count: usize,
26360    ) -> ::std::os::raw::c_int;
26361}
26362extern "C" {
26363    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_begin_issuance_over_message"]
26364    pub fn TRUST_TOKEN_CLIENT_begin_issuance_over_message(
26365        ctx: *mut TRUST_TOKEN_CLIENT,
26366        out: *mut *mut u8,
26367        out_len: *mut usize,
26368        count: usize,
26369        msg: *const u8,
26370        msg_len: usize,
26371    ) -> ::std::os::raw::c_int;
26372}
26373extern "C" {
26374    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_finish_issuance"]
26375    pub fn TRUST_TOKEN_CLIENT_finish_issuance(
26376        ctx: *mut TRUST_TOKEN_CLIENT,
26377        out_key_index: *mut usize,
26378        response: *const u8,
26379        response_len: usize,
26380    ) -> *mut stack_st_TRUST_TOKEN;
26381}
26382extern "C" {
26383    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_begin_redemption"]
26384    pub fn TRUST_TOKEN_CLIENT_begin_redemption(
26385        ctx: *mut TRUST_TOKEN_CLIENT,
26386        out: *mut *mut u8,
26387        out_len: *mut usize,
26388        token: *const TRUST_TOKEN,
26389        data: *const u8,
26390        data_len: usize,
26391        time: u64,
26392    ) -> ::std::os::raw::c_int;
26393}
26394extern "C" {
26395    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_CLIENT_finish_redemption"]
26396    pub fn TRUST_TOKEN_CLIENT_finish_redemption(
26397        ctx: *mut TRUST_TOKEN_CLIENT,
26398        out_rr: *mut *mut u8,
26399        out_rr_len: *mut usize,
26400        out_sig: *mut *mut u8,
26401        out_sig_len: *mut usize,
26402        response: *const u8,
26403        response_len: usize,
26404    ) -> ::std::os::raw::c_int;
26405}
26406extern "C" {
26407    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_ISSUER_new"]
26408    pub fn TRUST_TOKEN_ISSUER_new(
26409        method: *const TRUST_TOKEN_METHOD,
26410        max_batchsize: usize,
26411    ) -> *mut TRUST_TOKEN_ISSUER;
26412}
26413extern "C" {
26414    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_ISSUER_free"]
26415    pub fn TRUST_TOKEN_ISSUER_free(ctx: *mut TRUST_TOKEN_ISSUER);
26416}
26417extern "C" {
26418    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_ISSUER_add_key"]
26419    pub fn TRUST_TOKEN_ISSUER_add_key(
26420        ctx: *mut TRUST_TOKEN_ISSUER,
26421        key: *const u8,
26422        key_len: usize,
26423    ) -> ::std::os::raw::c_int;
26424}
26425extern "C" {
26426    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_ISSUER_set_srr_key"]
26427    pub fn TRUST_TOKEN_ISSUER_set_srr_key(
26428        ctx: *mut TRUST_TOKEN_ISSUER,
26429        key: *mut EVP_PKEY,
26430    ) -> ::std::os::raw::c_int;
26431}
26432extern "C" {
26433    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_ISSUER_set_metadata_key"]
26434    pub fn TRUST_TOKEN_ISSUER_set_metadata_key(
26435        ctx: *mut TRUST_TOKEN_ISSUER,
26436        key: *const u8,
26437        len: usize,
26438    ) -> ::std::os::raw::c_int;
26439}
26440extern "C" {
26441    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_ISSUER_issue"]
26442    pub fn TRUST_TOKEN_ISSUER_issue(
26443        ctx: *const TRUST_TOKEN_ISSUER,
26444        out: *mut *mut u8,
26445        out_len: *mut usize,
26446        out_tokens_issued: *mut usize,
26447        request: *const u8,
26448        request_len: usize,
26449        public_metadata: u32,
26450        private_metadata: u8,
26451        max_issuance: usize,
26452    ) -> ::std::os::raw::c_int;
26453}
26454extern "C" {
26455    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_ISSUER_redeem"]
26456    pub fn TRUST_TOKEN_ISSUER_redeem(
26457        ctx: *const TRUST_TOKEN_ISSUER,
26458        out_public: *mut u32,
26459        out_private: *mut u8,
26460        out_token: *mut *mut TRUST_TOKEN,
26461        out_client_data: *mut *mut u8,
26462        out_client_data_len: *mut usize,
26463        request: *const u8,
26464        request_len: usize,
26465    ) -> ::std::os::raw::c_int;
26466}
26467extern "C" {
26468    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_ISSUER_redeem_over_message"]
26469    pub fn TRUST_TOKEN_ISSUER_redeem_over_message(
26470        ctx: *const TRUST_TOKEN_ISSUER,
26471        out_public: *mut u32,
26472        out_private: *mut u8,
26473        out_token: *mut *mut TRUST_TOKEN,
26474        out_client_data: *mut *mut u8,
26475        out_client_data_len: *mut usize,
26476        request: *const u8,
26477        request_len: usize,
26478        msg: *const u8,
26479        msg_len: usize,
26480    ) -> ::std::os::raw::c_int;
26481}
26482extern "C" {
26483    #[link_name = "\u{1}aws_lc_fips_0_13_10_TRUST_TOKEN_decode_private_metadata"]
26484    pub fn TRUST_TOKEN_decode_private_metadata(
26485        method: *const TRUST_TOKEN_METHOD,
26486        out_value: *mut u8,
26487        key: *const u8,
26488        key_len: usize,
26489        nonce: *const u8,
26490        nonce_len: usize,
26491        encrypted_bit: u8,
26492    ) -> ::std::os::raw::c_int;
26493}
26494extern "C" {
26495    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_keygen_deterministic"]
26496    pub fn EVP_PKEY_keygen_deterministic(
26497        ctx: *mut EVP_PKEY_CTX,
26498        out_pkey: *mut *mut EVP_PKEY,
26499        seed: *const u8,
26500        seed_len: *mut usize,
26501    ) -> ::std::os::raw::c_int;
26502}
26503extern "C" {
26504    #[link_name = "\u{1}aws_lc_fips_0_13_10_EVP_PKEY_encapsulate_deterministic"]
26505    pub fn EVP_PKEY_encapsulate_deterministic(
26506        ctx: *mut EVP_PKEY_CTX,
26507        ciphertext: *mut u8,
26508        ciphertext_len: *mut usize,
26509        shared_secret: *mut u8,
26510        shared_secret_len: *mut usize,
26511        seed: *const u8,
26512        seed_len: *mut usize,
26513    ) -> ::std::os::raw::c_int;
26514}
26515extern "C" {
26516    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_GET_LIB_RUST"]
26517    pub fn ERR_GET_LIB_RUST(packed_error: u32) -> ::std::os::raw::c_int;
26518}
26519extern "C" {
26520    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_GET_REASON_RUST"]
26521    pub fn ERR_GET_REASON_RUST(packed_error: u32) -> ::std::os::raw::c_int;
26522}
26523extern "C" {
26524    #[link_name = "\u{1}aws_lc_fips_0_13_10_ERR_GET_FUNC_RUST"]
26525    pub fn ERR_GET_FUNC_RUST(packed_error: u32) -> ::std::os::raw::c_int;
26526}
26527pub type __builtin_va_list = [__va_list_tag; 1usize];
26528#[repr(C)]
26529#[derive(Debug, Copy, Clone, PartialEq, Eq)]
26530pub struct __va_list_tag {
26531    pub gp_offset: ::std::os::raw::c_uint,
26532    pub fp_offset: ::std::os::raw::c_uint,
26533    pub overflow_arg_area: *mut ::std::os::raw::c_void,
26534    pub reg_save_area: *mut ::std::os::raw::c_void,
26535}
26536#[test]
26537fn bindgen_test_layout___va_list_tag() {
26538    const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit();
26539    let ptr = UNINIT.as_ptr();
26540    assert_eq!(
26541        ::std::mem::size_of::<__va_list_tag>(),
26542        24usize,
26543        "Size of __va_list_tag"
26544    );
26545    assert_eq!(
26546        ::std::mem::align_of::<__va_list_tag>(),
26547        8usize,
26548        "Alignment of __va_list_tag"
26549    );
26550    assert_eq!(
26551        unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize },
26552        0usize,
26553        "Offset of field: __va_list_tag::gp_offset"
26554    );
26555    assert_eq!(
26556        unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize },
26557        4usize,
26558        "Offset of field: __va_list_tag::fp_offset"
26559    );
26560    assert_eq!(
26561        unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize },
26562        8usize,
26563        "Offset of field: __va_list_tag::overflow_arg_area"
26564    );
26565    assert_eq!(
26566        unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize },
26567        16usize,
26568        "Offset of field: __va_list_tag::reg_save_area"
26569    );
26570}
26571impl Default for __va_list_tag {
26572    fn default() -> Self {
26573        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
26574        unsafe {
26575            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
26576            s.assume_init()
26577        }
26578    }
26579}
26580#[repr(C)]
26581#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
26582pub struct CRYPTO_dynlock_value {
26583    pub _address: u8,
26584}