apple_security_framework_sys/
identity.rs

1use core_foundation_sys::base::CFTypeID;
2#[cfg(target_os = "macos")]
3use core_foundation_sys::base::CFTypeRef;
4use core_foundation_sys::base::OSStatus;
5
6use crate::base::SecCertificateRef;
7use crate::base::SecIdentityRef;
8use crate::base::SecKeyRef;
9
10extern "C" {
11    pub fn SecIdentityGetTypeID() -> CFTypeID;
12    pub fn SecIdentityCopyCertificate(
13        identity: SecIdentityRef,
14        certificate_ref: *mut SecCertificateRef,
15    ) -> OSStatus;
16    pub fn SecIdentityCopyPrivateKey(identity: SecIdentityRef, key_ref: *mut SecKeyRef)
17        -> OSStatus;
18    #[cfg(target_os = "macos")]
19    pub fn SecIdentityCreateWithCertificate(
20        keychain_or_Array: CFTypeRef,
21        certificate_ref: SecCertificateRef,
22        identity_ref: *mut SecIdentityRef,
23    ) -> OSStatus;
24}