#ifndef _SECURITY_SECTRUSTSTORE_H_
#define _SECURITY_SECTRUSTSTORE_H_
#include <Security/SecCertificate.h>
#include <CoreFoundation/CoreFoundation.h>
__BEGIN_DECLS
typedef struct __SecTrustStore *SecTrustStoreRef;
enum {
kSecTrustStoreDomainSystem = 1,
kSecTrustStoreDomainUser = 2,
};
typedef uint32_t SecTrustStoreDomain;
typedef int32_t SecTrustSettingsVersionNumber;
typedef int32_t SecTrustSettingsAssetVersionNumber;
SecTrustStoreRef SecTrustStoreForDomain(SecTrustStoreDomain domain);
Boolean SecTrustStoreContains(SecTrustStoreRef source,
SecCertificateRef certificate);
OSStatus SecTrustStoreSetTrustSettings(SecTrustStoreRef ts,
SecCertificateRef certificate,
CFTypeRef trustSettingsDictOrArray);
OSStatus SecTrustStoreRemoveCertificate(SecTrustStoreRef ts,
SecCertificateRef certificate);
OSStatus SecTrustStoreGetSettingsVersionNumber(SecTrustSettingsVersionNumber* p_settings_version_number);
OSStatus SecTrustStoreGetSettingsAssetVersionNumber(SecTrustSettingsAssetVersionNumber* p_settings_asset_version_number);
OSStatus SecTrustStoreCopyAll(SecTrustStoreRef ts, CFArrayRef *CF_RETURNS_RETAINED trustStoreContents);
OSStatus SecTrustStoreCopyUsageConstraints(SecTrustStoreRef ts,
SecCertificateRef certificate,
CFArrayRef *CF_RETURNS_RETAINED usageConstraints);
__END_DECLS
#endif