#ifndef _EAP8021X_EAPKEYCHAINUTIL_H
#define _EAP8021X_EAPKEYCHAINUTIL_H
#include <CoreFoundation/CFData.h>
#include <Security/SecBase.h>
#include <CoreServices/../Frameworks/CarbonCore.framework/Headers/MacErrors.h>
#include <TargetConditionals.h>
#if TARGET_OS_EMBEDDED
typedef struct OpaqueSecKeychainRef *SecKeychainRef;
typedef struct OpaqueSecKeychainItemRef *SecKeychainItemRef;
typedef struct OpaqueSecAccessRef *SecAccessRef;
#include <Security/SecItem.h>
#else
#include <Security/SecKeychain.h>
#include <Security/SecAccess.h>
#endif
OSStatus
EAPSecKeychainPasswordItemCreateWithAccess(SecKeychainRef keychain,
SecAccessRef access,
CFStringRef unique_id_str,
CFDataRef label,
CFDataRef description,
CFDataRef user,
CFDataRef password);
OSStatus
EAPSecKeychainPasswordItemCreateUniqueWithAccess(SecKeychainRef keychain,
SecAccessRef access,
CFDataRef label,
CFDataRef description,
CFDataRef user,
CFDataRef password,
CFStringRef * unique_id_str);
OSStatus
EAPSecKeychainPasswordItemSet(SecKeychainRef keychain,
CFStringRef unique_id_str,
CFDataRef password);
OSStatus
EAPSecKeychainPasswordItemCopy(SecKeychainRef keychain,
CFStringRef unique_id_str,
CFDataRef * ret_password);
OSStatus
EAPSecKeychainPasswordItemRemove(SecKeychainRef keychain,
CFStringRef unique_id_str);
#endif _EAP8021X_EAPKEYCHAINUTIL_H