summaryrefslogtreecommitdiff
path: root/vendor/security-framework-sys/src/trust_settings.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/security-framework-sys/src/trust_settings.rs')
-rw-r--r--vendor/security-framework-sys/src/trust_settings.rs35
1 files changed, 35 insertions, 0 deletions
diff --git a/vendor/security-framework-sys/src/trust_settings.rs b/vendor/security-framework-sys/src/trust_settings.rs
new file mode 100644
index 00000000..fad20a18
--- /dev/null
+++ b/vendor/security-framework-sys/src/trust_settings.rs
@@ -0,0 +1,35 @@
+use crate::base::SecCertificateRef;
+use core_foundation_sys::array::CFArrayRef;
+use core_foundation_sys::base::CFTypeRef;
+use core_foundation_sys::base::OSStatus;
+
+pub type SecTrustSettingsDomain = u32;
+
+pub const kSecTrustSettingsDomainUser: SecTrustSettingsDomain = 0;
+pub const kSecTrustSettingsDomainAdmin: SecTrustSettingsDomain = 1;
+pub const kSecTrustSettingsDomainSystem: SecTrustSettingsDomain = 2;
+
+pub type SecTrustSettingsResult = u32;
+
+pub const kSecTrustSettingsResultInvalid: SecTrustSettingsResult = 0;
+pub const kSecTrustSettingsResultTrustRoot: SecTrustSettingsResult = 1;
+pub const kSecTrustSettingsResultTrustAsRoot: SecTrustSettingsResult = 2;
+pub const kSecTrustSettingsResultDeny: SecTrustSettingsResult = 3;
+pub const kSecTrustSettingsResultUnspecified: SecTrustSettingsResult = 4;
+
+extern "C" {
+ pub fn SecTrustSettingsCopyCertificates(
+ domain: SecTrustSettingsDomain,
+ certsOut: *mut CFArrayRef,
+ ) -> OSStatus;
+ pub fn SecTrustSettingsCopyTrustSettings(
+ certificateRef: SecCertificateRef,
+ domain: SecTrustSettingsDomain,
+ trustSettings: *mut CFArrayRef,
+ ) -> OSStatus;
+ pub fn SecTrustSettingsSetTrustSettings(
+ certificateRef: SecCertificateRef,
+ domain: SecTrustSettingsDomain,
+ trustSettingsDictOrArray: CFTypeRef,
+ ) -> OSStatus;
+}