1 use core_foundation_sys::base::{CFTypeRef, OSStatus};
2 use core_foundation_sys::dictionary::CFDictionaryRef;
3 use core_foundation_sys::string::CFStringRef;
4 
5 extern "C" {
6     pub static kSecClass: CFStringRef;
7     pub static kSecClassInternetPassword: CFStringRef;
8     pub static kSecClassGenericPassword: CFStringRef;
9     pub static kSecClassCertificate: CFStringRef;
10     pub static kSecClassKey: CFStringRef;
11     pub static kSecClassIdentity: CFStringRef;
12 
13     pub static kSecMatchLimit: CFStringRef;
14 
15     pub static kSecReturnData: CFStringRef;
16     pub static kSecReturnAttributes: CFStringRef;
17     pub static kSecReturnRef: CFStringRef;
18     pub static kSecReturnPersistentRef: CFStringRef;
19 
20     pub static kSecMatchSearchList: CFStringRef;
21 
22     pub static kSecAttrKeyType: CFStringRef;
23     pub static kSecAttrLabel: CFStringRef;
24 
25     pub static kSecAttrKeySizeInBits: CFStringRef;
26 
27     pub static kSecAttrKeyTypeECSECPrimeRandom: CFStringRef;
28     pub static kSecAttrKeyTypeRSA: CFStringRef;
29     #[cfg(target_os = "macos")]
30     pub static kSecAttrKeyTypeDSA: CFStringRef;
31     #[cfg(target_os = "macos")]
32     pub static kSecAttrKeyTypeAES: CFStringRef;
33     #[cfg(target_os = "macos")]
34     pub static kSecAttrKeyTypeDES: CFStringRef;
35     #[cfg(target_os = "macos")]
36     pub static kSecAttrKeyType3DES: CFStringRef;
37     #[cfg(target_os = "macos")]
38     pub static kSecAttrKeyTypeRC4: CFStringRef;
39     #[cfg(target_os = "macos")]
40     pub static kSecAttrKeyTypeRC2: CFStringRef;
41     #[cfg(target_os = "macos")]
42     pub static kSecAttrKeyTypeCAST: CFStringRef;
43     #[cfg(feature = "OSX_10_9")]
44     pub static kSecAttrKeyTypeEC: CFStringRef;
45 
SecItemCopyMatching(query: CFDictionaryRef, result: *mut CFTypeRef) -> OSStatus46     pub fn SecItemCopyMatching(query: CFDictionaryRef, result: *mut CFTypeRef) -> OSStatus;
47 }
48