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