objc2_security/generated/
SecTrustSettings.rs1use core::ptr::NonNull;
4#[cfg(feature = "objc2")]
5use objc2::__framework_prelude::*;
6use objc2_core_foundation::*;
7
8use crate::*;
9
10#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct SecTrustSettingsKeyUsage(pub u32);
15bitflags::bitflags! {
16 impl SecTrustSettingsKeyUsage: u32 {
17 #[doc(alias = "kSecTrustSettingsKeyUseSignature")]
18 const UseSignature = 0x00000001;
19 #[doc(alias = "kSecTrustSettingsKeyUseEnDecryptData")]
20 const UseEnDecryptData = 0x00000002;
21 #[doc(alias = "kSecTrustSettingsKeyUseEnDecryptKey")]
22 const UseEnDecryptKey = 0x00000004;
23 #[doc(alias = "kSecTrustSettingsKeyUseSignCert")]
24 const UseSignCert = 0x00000008;
25 #[doc(alias = "kSecTrustSettingsKeyUseSignRevocation")]
26 const UseSignRevocation = 0x00000010;
27 #[doc(alias = "kSecTrustSettingsKeyUseKeyExchange")]
28 const UseKeyExchange = 0x00000020;
29 #[doc(alias = "kSecTrustSettingsKeyUseAny")]
30 const UseAny = 0xffffffff;
31 }
32}
33
34#[cfg(feature = "objc2")]
35unsafe impl Encode for SecTrustSettingsKeyUsage {
36 const ENCODING: Encoding = u32::ENCODING;
37}
38
39#[cfg(feature = "objc2")]
40unsafe impl RefEncode for SecTrustSettingsKeyUsage {
41 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
42}
43
44#[repr(transparent)]
49#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
50pub struct SecTrustSettingsResult(pub u32);
51impl SecTrustSettingsResult {
52 #[doc(alias = "kSecTrustSettingsResultInvalid")]
53 pub const Invalid: Self = Self(0);
54 #[doc(alias = "kSecTrustSettingsResultTrustRoot")]
55 pub const TrustRoot: Self = Self(1);
56 #[doc(alias = "kSecTrustSettingsResultTrustAsRoot")]
57 pub const TrustAsRoot: Self = Self(2);
58 #[doc(alias = "kSecTrustSettingsResultDeny")]
59 pub const Deny: Self = Self(3);
60 #[doc(alias = "kSecTrustSettingsResultUnspecified")]
61 pub const Unspecified: Self = Self(4);
62}
63
64#[cfg(feature = "objc2")]
65unsafe impl Encode for SecTrustSettingsResult {
66 const ENCODING: Encoding = u32::ENCODING;
67}
68
69#[cfg(feature = "objc2")]
70unsafe impl RefEncode for SecTrustSettingsResult {
71 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
72}
73
74#[repr(transparent)]
77#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
78pub struct SecTrustSettingsDomain(pub u32);
79impl SecTrustSettingsDomain {
80 #[doc(alias = "kSecTrustSettingsDomainUser")]
81 pub const User: Self = Self(0);
82 #[doc(alias = "kSecTrustSettingsDomainAdmin")]
83 pub const Admin: Self = Self(1);
84 #[doc(alias = "kSecTrustSettingsDomainSystem")]
85 pub const System: Self = Self(2);
86}
87
88#[cfg(feature = "objc2")]
89unsafe impl Encode for SecTrustSettingsDomain {
90 const ENCODING: Encoding = u32::ENCODING;
91}
92
93#[cfg(feature = "objc2")]
94unsafe impl RefEncode for SecTrustSettingsDomain {
95 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
96}
97
98extern "C-unwind" {
99 #[cfg(feature = "SecBase")]
100 pub fn SecTrustSettingsCopyTrustSettings(
101 cert_ref: &SecCertificate,
102 domain: SecTrustSettingsDomain,
103 trust_settings: NonNull<*const CFArray>,
104 ) -> OSStatus;
105}
106
107extern "C-unwind" {
108 #[cfg(feature = "SecBase")]
109 pub fn SecTrustSettingsSetTrustSettings(
110 cert_ref: &SecCertificate,
111 domain: SecTrustSettingsDomain,
112 trust_settings_dict_or_array: Option<&CFType>,
113 ) -> OSStatus;
114}
115
116extern "C-unwind" {
117 #[cfg(feature = "SecBase")]
118 pub fn SecTrustSettingsRemoveTrustSettings(
119 cert_ref: &SecCertificate,
120 domain: SecTrustSettingsDomain,
121 ) -> OSStatus;
122}
123
124extern "C-unwind" {
125 pub fn SecTrustSettingsCopyCertificates(
126 domain: SecTrustSettingsDomain,
127 cert_array: *mut *const CFArray,
128 ) -> OSStatus;
129}
130
131extern "C-unwind" {
132 #[cfg(feature = "SecBase")]
133 pub fn SecTrustSettingsCopyModificationDate(
134 cert_ref: &SecCertificate,
135 domain: SecTrustSettingsDomain,
136 modification_date: NonNull<*const CFDate>,
137 ) -> OSStatus;
138}
139
140extern "C-unwind" {
141 pub fn SecTrustSettingsCreateExternalRepresentation(
142 domain: SecTrustSettingsDomain,
143 trust_settings: NonNull<*const CFData>,
144 ) -> OSStatus;
145}
146
147extern "C-unwind" {
148 pub fn SecTrustSettingsImportExternalRepresentation(
149 domain: SecTrustSettingsDomain,
150 trust_settings: &CFData,
151 ) -> OSStatus;
152}