apple_security_framework_sys/
trust_settings.rs1use core_foundation_sys::array::CFArrayRef;
2use core_foundation_sys::base::CFTypeRef;
3use core_foundation_sys::base::OSStatus;
4
5use crate::base::SecCertificateRef;
6
7pub type SecTrustSettingsDomain = u32;
8
9pub const kSecTrustSettingsDomainUser: SecTrustSettingsDomain = 0;
10pub const kSecTrustSettingsDomainAdmin: SecTrustSettingsDomain = 1;
11pub const kSecTrustSettingsDomainSystem: SecTrustSettingsDomain = 2;
12
13pub type SecTrustSettingsResult = u32;
14
15pub const kSecTrustSettingsResultInvalid: SecTrustSettingsResult = 0;
16pub const kSecTrustSettingsResultTrustRoot: SecTrustSettingsResult = 1;
17pub const kSecTrustSettingsResultTrustAsRoot: SecTrustSettingsResult = 2;
18pub const kSecTrustSettingsResultDeny: SecTrustSettingsResult = 3;
19pub const kSecTrustSettingsResultUnspecified: SecTrustSettingsResult = 4;
20
21extern "C" {
22 pub fn SecTrustSettingsCopyCertificates(
23 domain: SecTrustSettingsDomain,
24 certsOut: *mut CFArrayRef,
25 ) -> OSStatus;
26 pub fn SecTrustSettingsCopyTrustSettings(
27 certificateRef: SecCertificateRef,
28 domain: SecTrustSettingsDomain,
29 trustSettings: *mut CFArrayRef,
30 ) -> OSStatus;
31 pub fn SecTrustSettingsSetTrustSettings(
32 certificateRef: SecCertificateRef,
33 domain: SecTrustSettingsDomain,
34 trustSettingsDictOrArray: CFTypeRef,
35 ) -> OSStatus;
36}