ArgumentCodersCF.h [plain text]
#ifndef ArgumentCodersCF_h
#define ArgumentCodersCF_h
#include <Security/SecCertificate.h>
#include <wtf/RetainPtr.h>
#if HAVE(SEC_KEYCHAIN)
#include <Security/SecKeychainItem.h>
#endif
namespace IPC {
class ArgumentEncoder;
class ArgumentDecoder;
void encode(ArgumentEncoder&, CFArrayRef);
bool decode(ArgumentDecoder&, RetainPtr<CFArrayRef>& result);
void encode(ArgumentEncoder&, CFBooleanRef);
bool decode(ArgumentDecoder&, RetainPtr<CFBooleanRef>& result);
void encode(ArgumentEncoder&, CFDataRef);
bool decode(ArgumentDecoder&, RetainPtr<CFDataRef>& result);
void encode(ArgumentEncoder&, CFDateRef);
bool decode(ArgumentDecoder&, RetainPtr<CFDateRef>& result);
void encode(ArgumentEncoder&, CFDictionaryRef);
bool decode(ArgumentDecoder&, RetainPtr<CFDictionaryRef>& result);
void encode(ArgumentEncoder&, CFNumberRef);
bool decode(ArgumentDecoder&, RetainPtr<CFNumberRef>& result);
void encode(ArgumentEncoder&, CFStringRef);
bool decode(ArgumentDecoder&, RetainPtr<CFStringRef>& result);
void encode(ArgumentEncoder&, CFTypeRef);
bool decode(ArgumentDecoder&, RetainPtr<CFTypeRef>& result);
void encode(ArgumentEncoder&, CFURLRef);
bool decode(ArgumentDecoder&, RetainPtr<CFURLRef>& result);
void encode(ArgumentEncoder&, SecCertificateRef);
bool decode(ArgumentDecoder&, RetainPtr<SecCertificateRef>& result);
void encode(ArgumentEncoder&, SecIdentityRef);
bool decode(ArgumentDecoder&, RetainPtr<SecIdentityRef>& result);
#if HAVE(SEC_KEYCHAIN)
void encode(ArgumentEncoder&, SecKeychainItemRef);
bool decode(ArgumentDecoder&, RetainPtr<SecKeychainItemRef>& result);
#endif
#if HAVE(SEC_ACCESS_CONTROL)
void encode(ArgumentEncoder&, SecAccessControlRef);
bool decode(ArgumentDecoder&, RetainPtr<SecAccessControlRef>& result);
#endif
#if PLATFORM(IOS)
void setAllowsDecodingSecKeyRef(bool);
#endif
CFTypeRef tokenNullTypeRef();
}
#endif // ArgumentCodersCF_h