apple_security_framework_sys/
keychain_item.rs1use std::os::raw::c_void;
2
3use core_foundation_sys::base::CFTypeID;
4use core_foundation_sys::base::CFTypeRef;
5use core_foundation_sys::base::OSStatus;
6use core_foundation_sys::dictionary::CFDictionaryRef;
7
8use crate::base::SecKeychainAttributeList;
9use crate::base::SecKeychainItemRef;
10
11extern "C" {
12
13 pub fn SecKeychainItemGetTypeID() -> CFTypeID;
15
16 pub fn SecItemAdd(attributes: CFDictionaryRef, result: *mut CFTypeRef) -> OSStatus;
18
19 pub fn SecItemCopyMatching(query: CFDictionaryRef, result: *mut CFTypeRef) -> OSStatus;
21
22 pub fn SecItemUpdate(query: CFDictionaryRef, attributesToUpdate: CFDictionaryRef) -> OSStatus;
24
25 pub fn SecItemDelete(query: CFDictionaryRef) -> OSStatus;
27
28 pub fn SecKeychainItemModifyAttributesAndData(
30 itemRef: SecKeychainItemRef,
31 attrList: *const SecKeychainAttributeList,
32 length: u32,
33 data: *const c_void,
34 ) -> OSStatus;
35
36 pub fn SecKeychainItemFreeContent(
37 attrList: *mut SecKeychainAttributeList,
38 data: *mut c_void,
39 ) -> OSStatus;
40
41 pub fn SecKeychainItemDelete(itemRef: SecKeychainItemRef) -> OSStatus;
42}