Skip to main content

openssl_sys/handwritten/
types.rs

1use libc::*;
2
3#[allow(unused_imports)]
4use super::super::*;
5
6pub enum ASN1_OBJECT {}
7pub enum ASN1_VALUE {}
8
9pub type ASN1_BOOLEAN = c_int;
10pub enum ASN1_INTEGER {}
11pub enum ASN1_ENUMERATED {}
12pub enum ASN1_GENERALIZEDTIME {}
13pub enum ASN1_STRING {}
14pub enum ASN1_BIT_STRING {}
15pub enum ASN1_TIME {}
16pub enum ASN1_OCTET_STRING {}
17pub enum ASN1_NULL {}
18pub enum ASN1_PRINTABLESTRING {}
19pub enum ASN1_T61STRING {}
20pub enum ASN1_IA5STRING {}
21pub enum ASN1_GENERALSTRING {}
22pub enum ASN1_BMPSTRING {}
23pub enum ASN1_UNIVERSALSTRING {}
24pub enum ASN1_UTCTIME {}
25pub enum ASN1_VISIBLESTRING {}
26pub enum ASN1_UTF8STRING {}
27
28pub enum bio_st {} // FIXME remove
29pub enum BIO {}
30cfg_if! {
31    if #[cfg(ossl320)] {
32        pub enum BIO_ADDR {}
33        pub enum BIO_POLL_DESCRIPTOR {}
34        #[repr(C)]
35        pub struct BIO_MSG {
36            pub data: *mut c_void,
37            pub data_len: usize,
38            pub peer: *mut BIO_ADDR,
39            pub local: *mut BIO_ADDR,
40            pub flags: u64,
41        }
42    }
43}
44pub enum BIGNUM {}
45pub enum BN_BLINDING {}
46pub enum BN_MONT_CTX {}
47
48pub enum BN_CTX {}
49pub enum BN_GENCB {}
50
51pub enum EVP_CIPHER {}
52pub enum EVP_CIPHER_CTX {}
53pub enum EVP_MD {}
54pub enum EVP_MD_CTX {}
55
56pub enum PKCS8_PRIV_KEY_INFO {}
57
58pub enum EVP_PKEY_ASN1_METHOD {}
59
60pub enum EVP_PKEY_CTX {}
61
62pub enum CMAC_CTX {}
63
64pub enum HMAC_CTX {}
65
66pub enum DH {}
67pub enum DH_METHOD {}
68
69pub enum DSA {}
70pub enum DSA_METHOD {}
71
72pub enum RSA {}
73pub enum RSA_METHOD {}
74
75pub enum EC_KEY {}
76
77pub enum X509 {}
78cfg_if! {
79    if #[cfg(any(ossl110, libressl382))] {
80        pub enum X509_ALGOR {}
81    } else {
82        #[repr(C)]
83        pub struct X509_ALGOR {
84            pub algorithm: *mut ASN1_OBJECT,
85            parameter: *mut c_void,
86        }
87    }
88}
89
90stack!(stack_st_X509_ALGOR);
91
92pub enum X509_LOOKUP_METHOD {}
93
94pub enum X509_NAME {}
95
96pub enum X509_STORE {}
97
98pub enum X509_STORE_CTX {}
99pub enum X509_VERIFY_PARAM {}
100pub enum X509_OBJECT {}
101pub enum X509_LOOKUP {}
102
103#[repr(C)]
104pub struct X509V3_CTX {
105    flags: c_int,
106    issuer_cert: *mut c_void,
107    subject_cert: *mut c_void,
108    subject_req: *mut c_void,
109    crl: *mut c_void,
110    #[cfg(not(libressl400))]
111    db_meth: *mut c_void,
112    db: *mut c_void,
113    #[cfg(ossl300)]
114    issuer_pkey: *mut c_void,
115    // I like the last comment line, it is copied from OpenSSL sources:
116    // Maybe more here
117}
118pub enum CONF {}
119#[cfg(ossl110)]
120pub enum OPENSSL_INIT_SETTINGS {}
121
122pub enum ENGINE {}
123pub enum SSL {}
124pub enum SSL_CTX {}
125
126cfg_if! {
127    if #[cfg(ossl320)] {
128        #[repr(C)]
129        pub struct SSL_CONN_CLOSE_INFO {
130            pub error_code: u64,
131            pub frame_type: u64,
132            pub reason: *const ::libc::c_char,
133            pub reason_len: usize,
134            pub flags: u32,
135        }
136        #[repr(C)]
137        pub struct SSL_SHUTDOWN_EX_ARGS {
138            pub quic_error_code: u64,
139            pub quic_reason: *const c_char,
140        }
141        #[repr(C)]
142        pub struct SSL_STREAM_RESET_ARGS {
143            pub quic_error_code: u64,
144        }
145    }
146}
147
148pub enum COMP_CTX {}
149
150#[cfg(not(osslconf = "OPENSSL_NO_COMP"))]
151pub enum COMP_METHOD {}
152
153pub enum CRYPTO_EX_DATA {}
154
155pub enum OCSP_RESPONSE {}
156
157#[cfg(ossl300)]
158pub enum OSSL_PROVIDER {}
159
160#[cfg(ossl300)]
161pub enum OSSL_LIB_CTX {}
162
163#[cfg(ossl300)]
164#[repr(C)]
165pub struct OSSL_PARAM {
166    key: *const c_char,
167    data_type: c_uint,
168    data: *mut c_void,
169    data_size: size_t,
170    return_size: size_t,
171}
172
173#[cfg(ossl300)]
174pub enum OSSL_PARAM_BLD {}
175
176#[cfg(ossl300)]
177pub enum EVP_KDF {}
178#[cfg(ossl300)]
179pub enum EVP_KDF_CTX {}
180
181#[cfg(ossl300)]
182pub enum OSSL_ENCODER_CTX {}
183#[cfg(ossl300)]
184pub enum OSSL_DECODER_CTX {}
185
186#[cfg(ossl300)]
187pub type OSSL_PASSPHRASE_CALLBACK = Option<
188    unsafe extern "C" fn(
189        pass: *mut c_char,
190        pass_size: size_t,
191        pass_len: *mut size_t,
192        params: *const OSSL_PARAM,
193        arg: *mut c_void,
194    ) -> c_int,
195>;
196
197#[cfg(ossl300)]
198pub enum EVP_MAC {}
199#[cfg(ossl300)]
200pub enum EVP_MAC_CTX {}