// Copyright (c) 2017 Apple Inc. All Rights Reserved. // This is the list of Policies. To add a new policy put it in this file with the POLICYMACRO defined. // Arguments for the POLICYMACRO in arg order are: // POLICYMACRO(NAME, OID, ISPUBLIC, INTNAME, IN_NAME, IN_PROPERTIES, FUNCTION) // NAME: the constant name. Will be kSecPolicyApple##NAME for the exported OID and kSecPolicyName##NAME for the private name // OID: element of policy OID arc // ISPUBLIC: P indicates that the kSecPolicyNameApple##NAME is exported, // I indicates that the kSecPolicyName##NAME is exported // E indicates that the kSecPolicyApple##NAME is exported // INTNAME: The internal string value for kSecPolicyName##NAME // IN_NAME: N indicates that the corresponding function takes a name parameter // IN_PROPERTIES: Y indicates that the constant uses a macro for SecPolicyCreateWithProperties // FUNCTION: SecPolicyCreate##FUNCTION is the function call for this policy; used in exports and macro for SecPolicyCreateWithProperties POLICYMACRO(X509Basic, 2 , I, basicX509, , Y, BasicX509) POLICYMACRO(SSL, 3 , E, ssl, , , SSL) POLICYMACRO(SMIME, 8 , I, SMIME, , , SMIME) POLICYMACRO(EAP, 9 , E, eap, , , EAP) POLICYMACRO(SWUpdateSigning, 10, E, AppleSWUpdateSigning, , Y, AppleSWUpdateSigning) POLICYMACRO(IPsec, 11, E, ipsec, , , IPSec) #if TARGET_OS_OSX POLICYMACRO(PKINITClient, 14, E, pkinitClient, , , ) POLICYMACRO(PKINITServer, 15, E, pkinitServer, , , ) #endif POLICYMACRO(CodeSigning, 16, I, CodeSigning, , Y, CodeSigning) POLICYMACRO(PackageSigning, 17, E, PackageSigning, , Y, ApplePackageSigning) POLICYMACRO(IDValidation, 18, E, AppleIDAuthority, , Y, AppleIDAuthorityPolicy) POLICYMACRO(MacAppStoreReceipt, 19, , MacAppStoreReceipt, , , MacAppStoreReceipt) POLICYMACRO(TimeStamping, 20, I, AppleTimeStamping, , Y, AppleTimeStamping) POLICYMACRO(Revocation, 21, E, revocation, , , Revocation) POLICYMACRO(PassbookSigning, 22, E, ApplePassbook, , , PassbookCardSigner) POLICYMACRO(MobileStore, 23, E, AppleMobileStore, , Y, MobileStoreSigner) POLICYMACRO(EscrowService, 24, E, AppleEscrowService, , Y, EscrowServiceSigner) POLICYMACRO(ProfileSigner, 25, E, AppleProfileSigner, , Y, ConfigurationProfileSigner) POLICYMACRO(QAProfileSigner, 26, E, AppleQAProfileSigner, , Y, QAConfigurationProfileSigner) POLICYMACRO(TestMobileStore, 27, E, AppleTestMobileStore, , Y, TestMobileStoreSigner) POLICYMACRO(OTAPKISigner, 28, E, AppleOTAPKIAssetSigner, , Y, OTAPKISigner) POLICYMACRO(TestOTAPKISigner, 29, E, AppleTestOTAPKIAssetSigner, , Y, TestOTAPKISigner) POLICYMACRO(IDValidationRecordSigning, 30, E, AppleIDValidationRecordSigningPolicy, , Y, AppleIDValidationRecordSigningPolicy) POLICYMACRO(SMPEncryption, 31, E, AppleSMPEncryption, , Y, AppleSMPEncryption) POLICYMACRO(TestSMPEncryption, 32, E, AppleTestSMPEncryption, , Y, TestAppleSMPEncryption) POLICYMACRO(ServerAuthentication, 33, E, AppleSSLService, N, Y, AppleSSLService) POLICYMACRO(PCSEscrowService, 34, E, ApplePCSEscrowService, , Y, PCSEscrowServiceSigner) POLICYMACRO(PPQSigning, 35, E, ApplePPQSigning, , Y, ApplePPQSigning) POLICYMACRO(TestPPQSigning, 36, E, AppleTestPPQSigning, , Y, TestApplePPQSigning) POLICYMACRO(PayIssuerEncryption, 39, E, ApplePayIssuerEncryption, , Y, ApplePayIssuerEncryption) POLICYMACRO(OSXProvisioningProfileSigning, 40, E, AppleOSXProvisioningProfileSigning, , Y, OSXProvisioningProfileSigning) POLICYMACRO(ATVVPNProfileSigning, 41, E, AppleATVVPNProfileSigning, , Y, AppleATVVPNProfileSigning) POLICYMACRO(AST2DiagnosticsServerAuth, 42, E, AST2, , , AppleAST2Service) POLICYMACRO(EscrowProxyServerAuth, 43, E, Escrow, , , AppleEscrowProxyService) POLICYMACRO(FMiPServerAuth, 44, E, FMiP, , , AppleFMiPService) POLICYMACRO(MMCService, 45, E, MMCS, , , AppleMMCSService) POLICYMACRO(GSService, 46, P, GS, , , AppleGSService) POLICYMACRO(PPQService, 47, P, PPQ, , , ApplePPQService) POLICYMACRO(HomeKitServerAuth, 48, E, HomeKit, N, Y, AppleHomeKitServerAuth) POLICYMACRO(iPhoneActivation, 49, E, iPhoneActivation, , Y, iPhoneActivation) POLICYMACRO(iPhoneDeviceCertificate, 50, E, iPhoneDeviceCertificate, , Y, iPhoneDeviceCertificate) POLICYMACRO(FactoryDeviceCertificate, 51, E, FactoryDeviceCertificate, , Y, FactoryDeviceCertificate) POLICYMACRO(iAP, 52, E, iAP, , Y, iAP) POLICYMACRO(iTunesStoreURLBag, 53, E, iTunesStoreURLBag, , Y, iTunesStoreURLBag) POLICYMACRO(iPhoneApplicationSigning, 54, E, iPhoneApplicationSigning, , Y, iPhoneApplicationSigning) POLICYMACRO(iPhoneProfileApplicationSigning, 55, E, iPhoneProfileApplicationSigning, , Y, iPhoneProfileApplicationSigning) POLICYMACRO(iPhoneProvisioningProfileSigning, 56, E, iPhoneProvisioningProfileSigning, , Y, iPhoneProvisioningProfileSigning) POLICYMACRO(LockdownPairing, 57, E, LockdownPairing, , Y, LockdownPairing) POLICYMACRO(URLBag, 58, E, URLBag, , Y, URLBag) POLICYMACRO(OTATasking, 59, E, OTATasking, , Y, OTATasking) POLICYMACRO(MobileAsset, 60, E, MobileAsset, , Y, MobileAsset) POLICYMACRO(IDAuthority, 61, E, AppleIDAuthority, , Y, AppleIDAuthorityPolicy) POLICYMACRO(GenericApplePinned, 62, E, Generic, , , ApplePinned) POLICYMACRO(GenericAppleSSLPinned, 63, E, GenericSSL, , , AppleSSLPinned) POLICYMACRO(SoftwareSigning, 64, E, SoftwareSigning, , Y, AppleSoftwareSigning) POLICYMACRO(ExternalDeveloper, 65, E, Developer, , Y, AppleExternalDeveloper) POLICYMACRO(OCSPSigner, 66, I, OCSPSigner, , Y, OCSPSigner) POLICYMACRO(IDSService, 67, P, IDS, N, Y, AppleIDSService) POLICYMACRO(IDSServiceContext, 68, E, IDS, , , AppleIDSServiceContext) POLICYMACRO(PushService, 69, P, APN, , , ApplePushService) POLICYMACRO(LegacyPushService, 70, E, AppleLegacyPushService, N, Y, ApplePushServiceLegacy) POLICYMACRO(TVOSApplicationSigning, 71, E, AppleTVApplicationSigning, , Y, AppleTVOSApplicationSigning) POLICYMACRO(UniqueDeviceIdentifierCertificate, 72, E, UCRT, , , AppleUniqueDeviceCertificate) POLICYMACRO(EscrowProxyCompatibilityServerAuth, 73, E, Escrow, N, Y, AppleCompatibilityEscrowProxyService) POLICYMACRO(MMCSCompatibilityServerAuth, 74, E, MMCS, N, Y, AppleCompatibilityMMCSService) POLICYMACRO(SecureIOStaticAsset, 75, E, SecureIOStaticAsset, , Y, AppleSecureIOStaticAsset) POLICYMACRO(Warsaw, 76, E, Warsaw, , Y, AppleWarsaw) POLICYMACRO(iCloudSetupServerAuth, 77, E, iCloudSetup, , , AppleiCloudSetupService) POLICYMACRO(iCloudSetupCompatibilityServerAuth, 78, E, iCloudSetup, N, Y, AppleCompatibilityiCloudSetupService) POLICYMACRO(AppTransportSecurity, 80, E, ATS, , Y, AppleAppTransportSecurity) POLICYMACRO(MacOSProfileApplicationSigning, 81, E, macOSProfileApplicationSigning, , Y, MacOSProfileApplicationSigning) POLICYMACRO(MobileSoftwareUpdate, 82, E, MobileSoftwareUpdate, , Y, MobileSoftwareUpdate) POLICYMACRO(MobileAssetDevelopment, 83, E, MobileAsset, , Y, MobileAssetDevelopment) POLICYMACRO(BasicAttestationSystem, 84, E, BAA-SCRT, , , AppleBasicAttestationSystem) POLICYMACRO(BasicAttestationUser, 85, E, BAA-UCRT, , , AppleBasicAttestationUser) POLICYMACRO(iPhoneVPNApplicationSigning, 86, E, iPhoneVPNApplicationSigning, , Y, iPhoneVPNApplicationSigning) POLICYMACRO(iAPSWAuth, 87, E, iAPSWAuth, , Y, iAPSWAuth) POLICYMACRO(DemoDigitalCatalog, 88, E, DemoCatalog, , Y, DemoDigitalCatalogSigning) POLICYMACRO(AssetReceipt, 89, E, AssetReceipt, , Y, AppleAssetReceipt) POLICYMACRO(DeveloperIDPlusTicket, 90, E, DeveloperIDPlusTicket, , Y, AppleDeveloperIDPlusTicket) POLICYMACRO(FDRProvisioning, 91, , FDRProvisioning, , Y, AppleFDRProvisioning) POLICYMACRO(ComponentCertificate, 92, E, Component, , , AppleComponentCertificate) POLICYMACRO(KeyTransparency, 93, E, KT, N, Y, AppleKeyTransparency) POLICYMACRO(LegacySSL, 94, E, legacySSL, , , LegacySSL) POLICYMACRO(Alisha, 95, E, Alisha, , Y, Alisha) POLICYMACRO(MeasuredBootPolicySigning, 96, E, MeasuredBootPolicySigning, , Y, MeasuredBootPolicySigning)