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