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