objc2-security 0.3.2

Bindings to the Security framework
Documentation
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ffi::*;
#[cfg(feature = "objc2")]
use objc2::__framework_prelude::*;

use crate::*;

/// [Apple's documentation](https://developer.apple.com/documentation/security/cssm_spi_kr_funcs?language=objc)
#[cfg(all(
    feature = "SecAsn1Types",
    feature = "cssmconfig",
    feature = "cssmkrapi",
    feature = "cssmtype"
))]
#[deprecated]
#[repr(C)]
#[allow(unpredictable_function_pointer_comparisons)]
#[derive(Clone, Copy, Debug, PartialEq)]
pub struct cssm_spi_kr_funcs {
    pub RegistrationRequest: Option<
        unsafe extern "C-unwind" fn(
            CSSM_KRSP_HANDLE,
            CSSM_CC_HANDLE,
            *const CSSM_CONTEXT,
            *const SecAsn1Item,
            *const CSSM_ACCESS_CREDENTIALS,
            CSSM_KR_POLICY_FLAGS,
            *mut sint32,
            CSSM_HANDLE_PTR,
        ) -> CSSM_RETURN,
    >,
    pub RegistrationRetrieve: Option<
        unsafe extern "C-unwind" fn(
            CSSM_KRSP_HANDLE,
            CSSM_HANDLE,
            *mut sint32,
            CSSM_KR_PROFILE_PTR,
        ) -> CSSM_RETURN,
    >,
    pub GenerateRecoveryFields: Option<
        unsafe extern "C-unwind" fn(
            CSSM_KRSP_HANDLE,
            CSSM_CC_HANDLE,
            *const CSSM_CONTEXT,
            CSSM_CC_HANDLE,
            *const CSSM_CONTEXT,
            *const SecAsn1Item,
            CSSM_KR_POLICY_FLAGS,
            CSSM_DATA_PTR,
        ) -> CSSM_RETURN,
    >,
    pub ProcessRecoveryFields: Option<
        unsafe extern "C-unwind" fn(
            CSSM_KRSP_HANDLE,
            CSSM_CC_HANDLE,
            *const CSSM_CONTEXT,
            CSSM_CC_HANDLE,
            *const CSSM_CONTEXT,
            *const SecAsn1Item,
            CSSM_KR_POLICY_FLAGS,
            *const SecAsn1Item,
        ) -> CSSM_RETURN,
    >,
    pub RecoveryRequest: Option<
        unsafe extern "C-unwind" fn(
            CSSM_KRSP_HANDLE,
            CSSM_CC_HANDLE,
            *const CSSM_CONTEXT,
            *const SecAsn1Item,
            *const CSSM_ACCESS_CREDENTIALS,
            *mut sint32,
            CSSM_HANDLE_PTR,
        ) -> CSSM_RETURN,
    >,
    pub RecoveryRetrieve: Option<
        unsafe extern "C-unwind" fn(
            CSSM_KRSP_HANDLE,
            CSSM_HANDLE,
            *mut sint32,
            CSSM_HANDLE_PTR,
            *mut uint32,
        ) -> CSSM_RETURN,
    >,
    pub GetRecoveredObject: Option<
        unsafe extern "C-unwind" fn(
            CSSM_KRSP_HANDLE,
            CSSM_HANDLE,
            uint32,
            CSSM_CSP_HANDLE,
            *const CSSM_RESOURCE_CONTROL_CONTEXT,
            uint32,
            CSSM_KEY_PTR,
            CSSM_DATA_PTR,
        ) -> CSSM_RETURN,
    >,
    pub RecoveryRequestAbort:
        Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE, CSSM_HANDLE) -> CSSM_RETURN>,
    pub PassThrough: Option<
        unsafe extern "C-unwind" fn(
            CSSM_KRSP_HANDLE,
            CSSM_CC_HANDLE,
            *const CSSM_CONTEXT,
            CSSM_CC_HANDLE,
            *const CSSM_CONTEXT,
            uint32,
            *const c_void,
            *mut *mut c_void,
        ) -> CSSM_RETURN,
    >,
}

#[cfg(all(
    feature = "SecAsn1Types",
    feature = "cssmconfig",
    feature = "cssmkrapi",
    feature = "cssmtype",
    feature = "objc2"
))]
unsafe impl Encode for cssm_spi_kr_funcs {
    const ENCODING: Encoding = Encoding::Struct("cssm_spi_kr_funcs", &[
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,*const CSSM_ACCESS_CREDENTIALS,CSSM_KR_POLICY_FLAGS,*mut sint32,CSSM_HANDLE_PTR,) -> CSSM_RETURN>>::ENCODING,
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_HANDLE,*mut sint32,CSSM_KR_PROFILE_PTR,) -> CSSM_RETURN>>::ENCODING,
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,CSSM_KR_POLICY_FLAGS,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,CSSM_KR_POLICY_FLAGS,*const SecAsn1Item,) -> CSSM_RETURN>>::ENCODING,
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,*const SecAsn1Item,*const CSSM_ACCESS_CREDENTIALS,*mut sint32,CSSM_HANDLE_PTR,) -> CSSM_RETURN>>::ENCODING,
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_HANDLE,*mut sint32,CSSM_HANDLE_PTR,*mut uint32,) -> CSSM_RETURN>>::ENCODING,
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_HANDLE,uint32,CSSM_CSP_HANDLE,*const CSSM_RESOURCE_CONTROL_CONTEXT,uint32,CSSM_KEY_PTR,CSSM_DATA_PTR,) -> CSSM_RETURN>>::ENCODING,
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_HANDLE,) -> CSSM_RETURN>>::ENCODING,
        <Option<unsafe extern "C-unwind" fn(CSSM_KRSP_HANDLE,CSSM_CC_HANDLE,*const CSSM_CONTEXT,CSSM_CC_HANDLE,*const CSSM_CONTEXT,uint32,*const c_void,*mut *mut c_void,) -> CSSM_RETURN>>::ENCODING,
    ]);
}

#[cfg(all(
    feature = "SecAsn1Types",
    feature = "cssmconfig",
    feature = "cssmkrapi",
    feature = "cssmtype",
    feature = "objc2"
))]
unsafe impl RefEncode for cssm_spi_kr_funcs {
    const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}

/// [Apple's documentation](https://developer.apple.com/documentation/security/cssm_spi_kr_funcs?language=objc)
#[deprecated]
#[cfg(all(
    feature = "SecAsn1Types",
    feature = "cssmconfig",
    feature = "cssmkrapi",
    feature = "cssmtype"
))]
pub type CSSM_SPI_KR_FUNCS = cssm_spi_kr_funcs;

/// [Apple's documentation](https://developer.apple.com/documentation/security/cssm_spi_kr_funcs_ptr?language=objc)
#[deprecated]
#[cfg(all(
    feature = "SecAsn1Types",
    feature = "cssmconfig",
    feature = "cssmkrapi",
    feature = "cssmtype"
))]
pub type CSSM_SPI_KR_FUNCS_PTR = *mut cssm_spi_kr_funcs;