SCPreferencesKeychainPrivate.h [plain text]
#ifndef _SCPREFERENCESKEYCHAINPRIVATE_H
#define _SCPREFERENCESKEYCHAINPRIVATE_H
#include <os/availability.h>
#include <TargetConditionals.h>
#include <sys/cdefs.h>
#include <CoreFoundation/CoreFoundation.h>
#include <SystemConfiguration/SCPreferences.h>
#include <Security/Security.h>
#pragma mark -
#pragma mark Keychain helper APIs
#define kSCKeychainOptionsAllowRoot CFSTR("AllowRoot") // CFBoolean, allow uid==0 applications
#define kSCKeychainOptionsAllowedExecutables CFSTR("AllowedExecutables") // CFArray[CFURL]
__BEGIN_DECLS
SecKeychainRef
_SCSecKeychainCopySystemKeychain (void) API_AVAILABLE(macos(10.5), ios(2.0));
CFDataRef
_SCSecKeychainPasswordItemCopy (SecKeychainRef keychain,
CFStringRef unique_id) API_AVAILABLE(macos(10.5), ios(2.0));
Boolean
_SCSecKeychainPasswordItemExists (SecKeychainRef keychain,
CFStringRef unique_id) API_AVAILABLE(macos(10.5), ios(2.0));
Boolean
_SCSecKeychainPasswordItemRemove (SecKeychainRef keychain,
CFStringRef unique_id) API_AVAILABLE(macos(10.5), ios(2.0));
Boolean
_SCSecKeychainPasswordItemSet (SecKeychainRef keychain,
CFStringRef unique_id,
CFStringRef label,
CFStringRef description,
CFStringRef account,
CFDataRef password,
CFDictionaryRef options) API_AVAILABLE(macos(10.5), ios(2.0));
#pragma mark -
#pragma mark "System" Keychain APIs (w/SCPreferences)
CFDataRef
_SCPreferencesSystemKeychainPasswordItemCopy (SCPreferencesRef prefs,
CFStringRef unique_id) API_AVAILABLE(macos(10.5), ios(2.0));
Boolean
_SCPreferencesSystemKeychainPasswordItemExists (SCPreferencesRef prefs,
CFStringRef unique_id) API_AVAILABLE(macos(10.5), ios(2.0));
Boolean
_SCPreferencesSystemKeychainPasswordItemRemove (SCPreferencesRef prefs,
CFStringRef unique_id) API_AVAILABLE(macos(10.5), ios(2.0));
Boolean
_SCPreferencesSystemKeychainPasswordItemSet (SCPreferencesRef prefs,
CFStringRef unique_id,
CFStringRef label,
CFStringRef description,
CFStringRef account,
CFDataRef password,
CFDictionaryRef options) API_AVAILABLE(macos(10.5), ios(2.0));
__END_DECLS
#endif // _SCPREFERENCESKEYCHAINPRIVATE_H