diff options
Diffstat (limited to 'vendor/security-framework-sys/src/base.rs')
| -rw-r--r-- | vendor/security-framework-sys/src/base.rs | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/vendor/security-framework-sys/src/base.rs b/vendor/security-framework-sys/src/base.rs new file mode 100644 index 00000000..fafc57cc --- /dev/null +++ b/vendor/security-framework-sys/src/base.rs @@ -0,0 +1,68 @@ +use core_foundation_sys::base::OSStatus; +use core_foundation_sys::string::CFStringRef; +use std::os::raw::c_void; + +pub enum OpaqueSecKeychainRef {} +pub type SecKeychainRef = *mut OpaqueSecKeychainRef; + +pub enum OpaqueSecKeychainItemRef {} +pub type SecKeychainItemRef = *mut OpaqueSecKeychainItemRef; + +// OSType from MacTypes.h +pub type SecKeychainAttrType = u32; + +#[repr(C)] +#[derive(Copy, Clone)] +pub struct SecKeychainAttribute { + pub tag: SecKeychainAttrType, + pub length: u32, + pub data: *mut c_void, +} + +#[repr(C)] +#[derive(Copy, Clone)] +pub struct SecKeychainAttributeList { + pub count: u32, + pub attr: *mut SecKeychainAttribute, +} + +pub enum OpaqueSecCertificateRef {} +pub type SecCertificateRef = *mut OpaqueSecCertificateRef; + +pub enum OpaqueSecAccessRef {} +pub type SecAccessRef = *mut OpaqueSecAccessRef; + +pub enum OpaqueSecAccessControlRef {} +pub type SecAccessControlRef = *mut OpaqueSecAccessControlRef; + +pub enum OpaqueSecKeyRef {} +pub type SecKeyRef = *mut OpaqueSecKeyRef; + +pub enum OpaqueSecIdentityRef {} +pub type SecIdentityRef = *mut OpaqueSecIdentityRef; + +pub enum OpaqueSecPolicyRef {} +pub type SecPolicyRef = *mut OpaqueSecPolicyRef; + +pub const errSecSuccess: OSStatus = 0; +pub const errSecUnimplemented: OSStatus = -4; +pub const errSecIO: OSStatus = -36; +pub const errSecParam: OSStatus = -50; +pub const errSecBadReq: OSStatus = -909; +pub const errSecNoTrustSettings: OSStatus = -25263; +pub const errSecAuthFailed: OSStatus = -25293; +pub const errSecDuplicateItem: OSStatus = -25299; +pub const errSecItemNotFound: OSStatus = -25300; +pub const errSecCreateChainFailed: OSStatus = -25318; +pub const errSecConversionError: OSStatus = -67594; +pub const errSecHostNameMismatch: OSStatus = -67602; +pub const errSecInvalidExtendedKeyUsage: OSStatus = -67609; +pub const errSecTrustSettingDeny: OSStatus = -67654; +pub const errSecCertificateRevoked: OSStatus = -67820; +pub const errSecNotTrusted: OSStatus = -67843; +pub const errSecInternalComponent: OSStatus = -2070; + +extern "C" { + // this is available on iOS 11.3+, MacOS 10.3+ + pub fn SecCopyErrorMessageString(status: OSStatus, reserved: *mut c_void) -> CFStringRef; +} |
