1/* 2 * Copyright (c) 2003-2013 Apple Inc. All Rights Reserved. 3 * 4 * @APPLE_LICENSE_HEADER_START@ 5 * 6 * This file contains Original Code and/or Modifications of Original Code 7 * as defined in and that are subject to the Apple Public Source License 8 * Version 2.0 (the 'License'). You may not use this file except in 9 * compliance with the License. Please obtain a copy of the License at 10 * http://www.opensource.apple.com/apsl/ and read it before using this 11 * file. 12 * 13 * The Original Code and all software distributed under the License are 14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 18 * Please see the License for the specific language governing rights and 19 * limitations under the License. 20 * 21 * @APPLE_LICENSE_HEADER_END@ 22 */ 23 24/*! 25 @header SecPolicyPriv 26 Private part of SecPolicy.h 27*/ 28 29#ifndef _SECURITY_SECPOLICYPRIV_H_ 30#define _SECURITY_SECPOLICYPRIV_H_ 31 32#include <Security/SecPolicy.h> 33#include <CoreFoundation/CFArray.h> 34 35 36#if defined(__cplusplus) 37extern "C" { 38#endif 39 40/*! 41 @enum Policy Constants (Private) 42 @discussion Predefined constants used to specify a policy. 43 @constant kSecPolicyAppleMobileStore 44 @constant kSecPolicyAppleEscrowService 45 @constant kSecPolicyAppleProfileSigner 46 @constant kSecPolicyAppleQAProfileSigner 47 @constant kSecPolicyAppleTestMobileStore 48 49*/ 50extern CFTypeRef kSecPolicyAppleMobileStore 51 __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0); 52extern CFTypeRef kSecPolicyAppleEscrowService 53 __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0); 54extern CFTypeRef kSecPolicyAppleProfileSigner 55 __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0); 56extern CFTypeRef kSecPolicyAppleQAProfileSigner 57 __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0); 58extern CFTypeRef kSecPolicyAppleTestMobileStore 59 __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0); 60 61/*! 62 @function SecPolicyCopy 63 @abstract Returns a copy of a policy reference based on certificate type and OID. 64 @param certificateType A certificate type. 65 @param policyOID The OID of the policy you want to find. This is a required parameter. See oidsalg.h to see a list of policy OIDs. 66 @param policy The returned policy reference. This is a required parameter. 67 @result A result code. See "Security Error Codes" (SecBase.h). 68 @discussion This function is deprecated in Mac OS X 10.7 and later; 69 to obtain a policy reference, use one of the SecPolicyCreate* functions in SecPolicy.h. 70*/ 71OSStatus SecPolicyCopy(CSSM_CERT_TYPE certificateType, const CSSM_OID *policyOID, SecPolicyRef* policy) 72 __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_3, __MAC_10_7, __IPHONE_NA, __IPHONE_NA); 73 74/*! 75 @function SecPolicyCopyAll 76 @abstract Returns an array of all known policies based on certificate type. 77 @param certificateType A certificate type. This is a optional parameter. Pass CSSM_CERT_UNKNOWN if the certificate type is unknown. 78 @param policies The returned array of policies. This is a required parameter. 79 @result A result code. See "Security Error Codes" (SecBase.h). 80 @discussion This function is deprecated in Mac OS X 10.7 and later; 81 to obtain a policy reference, use one of the SecPolicyCreate* functions in SecPolicy.h. (Note: there is normally 82 no reason to iterate over multiple disjointed policies, except to provide a way to edit trust settings for each 83 policy, as is done in certain certificate UI views. In that specific case, your code should call SecPolicyCreateWithOID 84 for each desired policy from the list of supported OID constants in SecPolicy.h.) 85*/ 86OSStatus SecPolicyCopyAll(CSSM_CERT_TYPE certificateType, CFArrayRef* policies) 87 __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_3, __MAC_10_7, __IPHONE_NA, __IPHONE_NA); 88 89 90#if defined(__cplusplus) 91} 92#endif 93 94#endif /* !_SECURITY_SECPOLICYPRIV_H_ */ 95