security_framework_sys/
identity.rs

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