1 use libc::*;
2 
3 use *;
4 
5 pub enum PKCS12 {}
6 
7 extern "C" {
PKCS12_free(p12: *mut PKCS12)8     pub fn PKCS12_free(p12: *mut PKCS12);
9 }
10 const_ptr_api! {
11     extern "C" {
12         pub fn i2d_PKCS12(a: #[const_ptr_if(ossl300)] PKCS12, buf: *mut *mut u8) -> c_int;
13     }
14 }
15 extern "C" {
d2i_PKCS12(a: *mut *mut PKCS12, pp: *mut *const u8, length: c_long) -> *mut PKCS1216     pub fn d2i_PKCS12(a: *mut *mut PKCS12, pp: *mut *const u8, length: c_long) -> *mut PKCS12;
17 
PKCS12_parse( p12: *mut PKCS12, pass: *const c_char, pkey: *mut *mut EVP_PKEY, cert: *mut *mut X509, ca: *mut *mut stack_st_X509, ) -> c_int18     pub fn PKCS12_parse(
19         p12: *mut PKCS12,
20         pass: *const c_char,
21         pkey: *mut *mut EVP_PKEY,
22         cert: *mut *mut X509,
23         ca: *mut *mut stack_st_X509,
24     ) -> c_int;
25 }
26 const_ptr_api! {
27     extern "C" {
28         pub fn PKCS12_create(
29             pass: #[const_ptr_if(any(ossl110, libressl280))] c_char,
30             friendly_name: #[const_ptr_if(any(ossl110, libressl280))] c_char,
31             pkey: *mut EVP_PKEY,
32             cert: *mut X509,
33             ca: *mut stack_st_X509,
34             nid_key: c_int,
35             nid_cert: c_int,
36             iter: c_int,
37             mac_iter: c_int,
38             keytype: c_int,
39         ) -> *mut PKCS12;
40 
41         pub fn i2d_PKCS12_bio(b: *mut BIO, a: #[const_ptr_if(ossl300)] PKCS12) -> c_int;
42     }
43 }
44