SCPreferencesKeychainPrivate.h [plain text]
#ifndef _SCPREFERENCESKEYCHAINPRIVATE_H
#define _SCPREFERENCESKEYCHAINPRIVATE_H
#include <Availability.h>
#include <TargetConditionals.h>
#include <sys/cdefs.h>
#include <CoreFoundation/CoreFoundation.h>
#include <SystemConfiguration/SCPreferences.h>
#if !TARGET_OS_IPHONE
#include <Security/Security.h>
#else // !TARGET_OS_IPHONE
typedef struct OpaqueSecKeychainRef *SecKeychainRef;
#endif // !TARGET_OS_IPHONE
#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) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
CFDataRef
_SCSecKeychainPasswordItemCopy (SecKeychainRef keychain,
CFStringRef unique_id) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
Boolean
_SCSecKeychainPasswordItemExists (SecKeychainRef keychain,
CFStringRef unique_id) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
Boolean
_SCSecKeychainPasswordItemRemove (SecKeychainRef keychain,
CFStringRef unique_id) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
Boolean
_SCSecKeychainPasswordItemSet (SecKeychainRef keychain,
CFStringRef unique_id,
CFStringRef label,
CFStringRef description,
CFStringRef account,
CFDataRef password,
CFDictionaryRef options) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
#pragma mark -
#pragma mark "System" Keychain APIs (w/SCPreferences)
CFDataRef
_SCPreferencesSystemKeychainPasswordItemCopy (SCPreferencesRef prefs,
CFStringRef unique_id) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
Boolean
_SCPreferencesSystemKeychainPasswordItemExists (SCPreferencesRef prefs,
CFStringRef unique_id) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
Boolean
_SCPreferencesSystemKeychainPasswordItemRemove (SCPreferencesRef prefs,
CFStringRef unique_id) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
Boolean
_SCPreferencesSystemKeychainPasswordItemSet (SCPreferencesRef prefs,
CFStringRef unique_id,
CFStringRef label,
CFStringRef description,
CFStringRef account,
CFDataRef password,
CFDictionaryRef options) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
__END_DECLS
#endif // _SCPREFERENCESKEYCHAINPRIVATE_H