Skip to content

Security macOS xcode13.0 beta1

Manuel de la Pena edited this page Aug 5, 2021 · 3 revisions

#Security.framework https://github.com/xamarin/xamarin-macios/pull/12365

diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/AuthorizationTags.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/AuthorizationTags.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/AuthorizationTags.h	2021-03-16 04:44:19.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/AuthorizationTags.h	2021-06-01 20:47:24.000000000 -0400
@@ -82,6 +82,12 @@
  */
 #define kAuthorizationPamResult  "pam_result"
 
+/*!
+    @define kAuthorizationFlags
+    Flags passed to AuthorizationCopyRights
+ */
+#define kAuthorizationFlags  "flags"
+
 
 
 #endif /* !_SECURITY_AUTHORIZATIONTAGS_H_ */
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/CSCommon.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/CSCommon.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/CSCommon.h	2021-03-16 04:44:19.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/CSCommon.h	2021-06-02 11:07:22.000000000 -0400
@@ -36,6 +36,24 @@
 #include <stdint.h>
 #include <CoreFoundation/CoreFoundation.h>
 
+/*
+ * Some macOS API's use the old style defined name CSSM_DATA and CSSM_OID.
+ * These are just typedefs for SecAsn* which are available for iOS. We complete
+ * those here in case they're not available for compatibility.
+ */
+#include <TargetConditionals.h>
+#if TARGET_OS_IPHONE
+
+#ifndef CSSM_DATA
+#define CSSM_DATA SecAsn1Item
+#endif
+
+#ifndef CSSM_OID
+#define CSSM_OID SecAsn1Oid
+#endif
+
+#endif /* TARGET_OS_IPHONE */
+
 CF_ASSUME_NONNULL_BEGIN
 
 /*
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Coder.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Coder.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Coder.h	2021-03-16 04:44:19.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Coder.h	2021-06-02 11:07:23.000000000 -0400
@@ -43,19 +43,22 @@
 
 CF_ASSUME_NONNULL_BEGIN
 
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
+
 /*
  * Opaque reference to a SecAsn1Coder object.
  */
-typedef struct SecAsn1Coder *SecAsn1CoderRef;
+typedef struct SecAsn1Coder *SecAsn1CoderRef SEC_ASN1_API_DEPRECATED;
 
 /*
  * Create/destroy SecAsn1Coder object. 
  */
 OSStatus SecAsn1CoderCreate(
-	SecAsn1CoderRef  __nullable * __nonnull coder);
+	SecAsn1CoderRef  __nullable * __nonnull coder) SEC_ASN1_API_DEPRECATED;
 
 OSStatus SecAsn1CoderRelease(
-	SecAsn1CoderRef  coder);
+	SecAsn1CoderRef  coder) SEC_ASN1_API_DEPRECATED;
 
 /*
  * DER decode an untyped item per the specified template array. 
@@ -76,7 +79,7 @@
 	const void				*src,		// DER-encoded source
 	size_t					len,
 	const SecAsn1Template 	*templates,	
-	void					*dest);
+	void					*dest) SEC_ASN1_API_DEPRECATED;
 
 /* 
  * Convenience routine, decode from a SecAsn1Item.
@@ -85,7 +88,7 @@
 	SecAsn1CoderRef			coder,
 	const SecAsn1Item		*src,
 	const SecAsn1Template 	*templ,	
-	void					*dest);
+	void					*dest) SEC_ASN1_API_DEPRECATED;
 
 /*
  * DER encode. The encoded data (in dest.Data) is allocated in this 
@@ -101,7 +104,7 @@
 	SecAsn1CoderRef			coder,
 	const void				*src,
 	const SecAsn1Template 	*templates,	
-	SecAsn1Item				*dest);
+	SecAsn1Item				*dest) SEC_ASN1_API_DEPRECATED;
 
 /*
  * Some alloc-related methods which come in handy when using
@@ -118,31 +121,35 @@
  */
 void *SecAsn1Malloc(
 	SecAsn1CoderRef			coder,
-	size_t					len); 
+	size_t					len) SEC_ASN1_API_DEPRECATED;
 
 /* Allocate item.Data, set item.Length */
 OSStatus SecAsn1AllocItem(
 	SecAsn1CoderRef			coder,
 	SecAsn1Item				*item,
-	size_t					len);
+	size_t					len) SEC_ASN1_API_DEPRECATED;
 
 /* Allocate and copy, various forms */
 OSStatus SecAsn1AllocCopy(
 	SecAsn1CoderRef			coder,
 	const void				*src,		/* memory copied from here */
 	size_t					len,		/* length to allocate & copy */
-	SecAsn1Item				*dest);		/* dest->Data allocated and copied to;
+	SecAsn1Item				*dest)		/* dest->Data allocated and copied to;
 										 *   dest->Length := len */
+    SEC_ASN1_API_DEPRECATED;
 
 OSStatus SecAsn1AllocCopyItem(
 	SecAsn1CoderRef			coder,
 	const SecAsn1Item		*src,		/* src->Length bytes allocated and copied from
 										 *   src->Data */
-	SecAsn1Item				*dest);		/* dest->Data allocated and copied to;
+	SecAsn1Item				*dest)		/* dest->Data allocated and copied to;
 										 *   dest->Length := src->Length */
+    SEC_ASN1_API_DEPRECATED;
 
 /* Compare two decoded OIDs.  Returns true iff they are equivalent. */
-bool SecAsn1OidCompare(const SecAsn1Oid *oid1, const SecAsn1Oid *oid2);
+bool SecAsn1OidCompare(const SecAsn1Oid *oid1, const SecAsn1Oid *oid2) SEC_ASN1_API_DEPRECATED;
+
+#pragma clang diagnostic pop
 
 CF_ASSUME_NONNULL_END
 
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Templates.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Templates.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Templates.h	2021-03-16 04:44:19.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Templates.h	2021-06-02 11:07:24.000000000 -0400
@@ -43,88 +43,87 @@
  *	- a set of each one of those
  *	- a sequence of each one of those
  */
-
-extern const SecAsn1Template kSecAsn1AnyTemplate[];
-extern const SecAsn1Template kSecAsn1BitStringTemplate[];
-extern const SecAsn1Template kSecAsn1BMPStringTemplate[];
-extern const SecAsn1Template kSecAsn1BooleanTemplate[];
-extern const SecAsn1Template kSecAsn1EnumeratedTemplate[];
-extern const SecAsn1Template kSecAsn1GeneralizedTimeTemplate[];
-extern const SecAsn1Template kSecAsn1IA5StringTemplate[];
-extern const SecAsn1Template kSecAsn1IntegerTemplate[];
-extern const SecAsn1Template kSecAsn1UnsignedIntegerTemplate[];
-extern const SecAsn1Template kSecAsn1NullTemplate[];
-extern const SecAsn1Template kSecAsn1ObjectIDTemplate[];
-extern const SecAsn1Template kSecAsn1OctetStringTemplate[];
-extern const SecAsn1Template kSecAsn1PrintableStringTemplate[];
-extern const SecAsn1Template kSecAsn1T61StringTemplate[];
-extern const SecAsn1Template kSecAsn1UniversalStringTemplate[];
-extern const SecAsn1Template kSecAsn1UTCTimeTemplate[];
-extern const SecAsn1Template kSecAsn1UTF8StringTemplate[];
-extern const SecAsn1Template kSecAsn1VisibleStringTemplate[];
-extern const SecAsn1Template kSecAsn1TeletexStringTemplate[];
-
-extern const SecAsn1Template kSecAsn1PointerToAnyTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToBitStringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToBMPStringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToBooleanTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToEnumeratedTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToGeneralizedTimeTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToIA5StringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToIntegerTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToNullTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToObjectIDTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToOctetStringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToPrintableStringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToT61StringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToUniversalStringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToUTCTimeTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToUTF8StringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToVisibleStringTemplate[];
-extern const SecAsn1Template kSecAsn1PointerToTeletexStringTemplate[];
-
-extern const SecAsn1Template kSecAsn1SequenceOfAnyTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfBitStringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfBMPStringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfBooleanTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfEnumeratedTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfGeneralizedTimeTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfIA5StringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfIntegerTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfNullTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfObjectIDTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfOctetStringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfPrintableStringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfT61StringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfUniversalStringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfUTCTimeTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfUTF8StringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfVisibleStringTemplate[];
-extern const SecAsn1Template kSecAsn1SequenceOfTeletexStringTemplate[];
-
-extern const SecAsn1Template kSecAsn1SetOfAnyTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfBitStringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfBMPStringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfBooleanTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfEnumeratedTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfGeneralizedTimeTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfIA5StringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfIntegerTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfNullTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfObjectIDTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfOctetStringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfPrintableStringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfT61StringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfUniversalStringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfUTCTimeTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfUTF8StringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfVisibleStringTemplate[];
-extern const SecAsn1Template kSecAsn1SetOfTeletexStringTemplate[];
+extern const SecAsn1Template kSecAsn1AnyTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1BitStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1BMPStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1BooleanTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1EnumeratedTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1GeneralizedTimeTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1IA5StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1IntegerTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1UnsignedIntegerTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1NullTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1ObjectIDTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1OctetStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PrintableStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1T61StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1UniversalStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1UTCTimeTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1UTF8StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1VisibleStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1TeletexStringTemplate[] SEC_ASN1_API_DEPRECATED;
+
+extern const SecAsn1Template kSecAsn1PointerToAnyTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToBitStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToBMPStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToBooleanTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToEnumeratedTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToGeneralizedTimeTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToIA5StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToIntegerTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToNullTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToObjectIDTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToOctetStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToPrintableStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToT61StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToUniversalStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToUTCTimeTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToUTF8StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToVisibleStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1PointerToTeletexStringTemplate[] SEC_ASN1_API_DEPRECATED;
+
+extern const SecAsn1Template kSecAsn1SequenceOfAnyTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfBitStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfBMPStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfBooleanTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfEnumeratedTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfGeneralizedTimeTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfIA5StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfIntegerTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfNullTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfObjectIDTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfOctetStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfPrintableStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfT61StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfUniversalStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfUTCTimeTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfUTF8StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfVisibleStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SequenceOfTeletexStringTemplate[] SEC_ASN1_API_DEPRECATED;
+
+extern const SecAsn1Template kSecAsn1SetOfAnyTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfBitStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfBMPStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfBooleanTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfEnumeratedTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfGeneralizedTimeTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfIA5StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfIntegerTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfNullTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfObjectIDTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfOctetStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfPrintableStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfT61StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfUniversalStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfUTCTimeTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfUTF8StringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfVisibleStringTemplate[] SEC_ASN1_API_DEPRECATED;
+extern const SecAsn1Template kSecAsn1SetOfTeletexStringTemplate[] SEC_ASN1_API_DEPRECATED;
 
 /*
  * Template for skipping a subitem; only used when decoding.
  */
-extern const SecAsn1Template kSecAsn1SkipTemplate[];
+extern const SecAsn1Template kSecAsn1SkipTemplate[] SEC_ASN1_API_DEPRECATED;
 
 CF_ASSUME_NONNULL_END
 
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Types.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Types.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Types.h	2021-03-16 04:44:19.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecAsn1Types.h	2021-06-02 11:07:23.000000000 -0400
@@ -45,23 +45,27 @@
 
 #include <TargetConditionals.h>
 
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wdeprecated-declarations"
+#define SEC_ASN1_API_DEPRECATED API_DEPRECATED("SecAsn1 is not supported", macos(10.0, 12.0)) API_UNAVAILABLE(ios, watchos, tvos)
 
 typedef struct cssm_data {
     size_t Length;
     uint8_t * __nullable Data;
-} SecAsn1Item, SecAsn1Oid;
+} SecAsn1Item SEC_ASN1_API_DEPRECATED, SecAsn1Oid SEC_ASN1_API_DEPRECATED;
+
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
 
-typedef struct {
+typedef struct SEC_ASN1_API_DEPRECATED {
     SecAsn1Oid algorithm;
     SecAsn1Item parameters;
-} SecAsn1AlgId;
+} SecAsn1AlgId SEC_ASN1_API_DEPRECATED;
 
-typedef struct {
+typedef struct SEC_ASN1_API_DEPRECATED {
     SecAsn1AlgId algorithm;
     SecAsn1Item subjectPublicKey;
-} SecAsn1PubKeyInfo;
+} SecAsn1PubKeyInfo SEC_ASN1_API_DEPRECATED;
+
+#pragma clang diagnostic pop
 
 CF_ASSUME_NONNULL_BEGIN
 
@@ -108,7 +112,7 @@
      * In all other cases, the value is ignored.
      */
     uint32_t size;
-} SecAsn1Template;
+} SecAsn1Template SEC_ASN1_API_DEPRECATED;
 
 
 /*
@@ -227,12 +231,10 @@
 	Boolean enc,
 	const char *buf,
 	size_t len,
-	void *dest);
+	void *dest) SEC_ASN1_API_DEPRECATED;
 
-typedef SecAsn1TemplateChooser * SecAsn1TemplateChooserPtr;
+typedef SecAsn1TemplateChooser * SecAsn1TemplateChooserPtr SEC_ASN1_API_DEPRECATED;
 
 CF_ASSUME_NONNULL_END
 
-#pragma clang diagnostic pop
-
 #endif /* _SEC_ASN1_TYPES_H_ */
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecBase.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecBase.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecBase.h	2021-03-16 05:20:22.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecBase.h	2021-06-02 05:38:08.000000000 -0400
@@ -27,6 +27,7 @@
 #include <TargetConditionals.h>
 #include <CoreFoundation/CFBase.h>
 #include <Availability.h>
+#include <sys/cdefs.h>
 
 // Truth table for following declarations:
 //
@@ -61,10 +62,6 @@
     #define SEC_OS_OSX_INCLUDES TARGET_OS_OSX
 #endif
 
-#if SEC_OS_IPHONE
-#include <sys/cdefs.h>
-#endif
-
 #if defined(__clang__)
 #define SEC_DEPRECATED_ATTRIBUTE DEPRECATED_ATTRIBUTE
 #else
@@ -630,7 +627,8 @@
     errSecInvalidAuthority                   = -67824,    /* The authority was not valid. */
     errSecVerifyActionFailed                 = -67825,    /* A verify action has failed. */
     errSecInvalidCertAuthority               = -67826,    /* The certificate authority was not valid. */
-    errSecInvaldCRLAuthority                 = -67827,    /* The CRL authority was not valid. */
+    errSecInvalidCRLAuthority                = -67827,    /* The CRL authority was not valid. */
+    errSecInvaldCRLAuthority  API_DEPRECATED_WITH_REPLACEMENT("errSecInvalidCRLAuthority", macos(10.11, 12.0), ios(4, 15)) = errSecInvalidCRLAuthority,
     errSecInvalidCRLEncoding                 = -67828,    /* The CRL encoding was not valid. */
     errSecInvalidCRLType                     = -67829,    /* The CRL type was not valid. */
     errSecInvalidCRL                         = -67830,    /* The CRL was not valid. */
@@ -655,7 +653,8 @@
     errSecUnsupportedService                 = -67849,    /* The service is not supported. */
     errSecInvalidTupleGroup                  = -67850,    /* The tuple group was not valid. */
     errSecInvalidBaseACLs                    = -67851,    /* The base ACLs are not valid. */
-    errSecInvalidTupleCredendtials           = -67852,    /* The tuple credentials are not valid. */
+    errSecInvalidTupleCredentials            = -67852,    /* The tuple credentials are not valid. */
+    errSecInvalidTupleCredendtials API_DEPRECATED_WITH_REPLACEMENT("errSecInvalidTupleCredentials", macos(10.11, 12.0), ios(4, 15)) = errSecInvalidTupleCredentials,
     errSecInvalidEncoding                    = -67853,    /* The encoding was not valid. */
     errSecInvalidValidityPeriod              = -67854,    /* The validity period was not valid. */
     errSecInvalidRequestor                   = -67855,    /* The requestor was not valid. */
@@ -706,6 +705,7 @@
     errSecCertificateNameNotAllowed          = -67900,    /* The requested name is not allowed for this certificate. */
     errSecCertificateValidityPeriodTooLong   = -67901,    /* The validity period in the certificate exceeds the maximum allowed. */
     errSecCertificateIsCA                    = -67902,    /* The verified certificate is a CA rather than an end-entity */
+    errSecCertificateDuplicateExtension      = -67903,    /* The certificate contains multiple extensions with the same extension ID. */
 };
 
 
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecKey.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecKey.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecKey.h	2021-03-16 08:44:53.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecKey.h	2021-06-02 11:07:22.000000000 -0400
@@ -150,7 +150,7 @@
     kSecKeyVerifyRecover =    24,
     kSecKeyWrap =             25,
     kSecKeyUnwrap =           26
-};
+} API_DEPRECATED("No longer supported", macos(10.3, 12.0));
 
     /*!
     @enum SecCredentialType
@@ -164,7 +164,7 @@
 	kSecCredentialTypeDefault = 0,
 	kSecCredentialTypeWithUI,
 	kSecCredentialTypeNoUI
-};
+} API_DEPRECATED("No longer supported", macos(10.3, 12.0));
 #endif /* SEC_OS_OSX */
 
 /*!
@@ -216,7 +216,7 @@
      hash; standard ASN.1 padding will be done, as well as PKCS1 padding
      of the underlying RSA operation. */
     kSecPaddingPKCS1SHA512 = 0x8006, // __OSX_UNAVAILABLE __IOS_AVAILABLE(2.0),
-};
+} API_DEPRECATED("Replaced with SecKeyAlgorithm", macos(10.6, 12.0), ios(2.0, 15.0), tvos(4.0, 15.0), watchos(1.0, 8.0));
 
 #if SEC_OS_OSX
 /*!
@@ -244,7 +244,7 @@
     // RSA keysizes must be multiples of 8
     kSecRSAMin          = 1024,
     kSecRSAMax          = 4096
-};
+} API_DEPRECATED("No longer supported", macos(10.9, 12.0));
 #endif /* SEC_OS_OSX */
 
 /*!
@@ -259,9 +259,9 @@
 	 containing attributes specific for the public key to be generated.
 */
 extern const CFStringRef kSecPrivateKeyAttrs
-    __OSX_AVAILABLE_STARTING(__MAC_10_8, __IPHONE_2_0);
+API_AVAILABLE(macos(10.8), ios(2.0), tvos(4.0), watchos(1.0));
 extern const CFStringRef kSecPublicKeyAttrs
-    __OSX_AVAILABLE_STARTING(__MAC_10_8, __IPHONE_2_0);
+API_AVAILABLE(macos(10.8), ios(2.0), tvos(4.0), watchos(1.0));
 
 /*!
 	@function SecKeyGetTypeID
@@ -269,7 +269,7 @@
 	@result The CFTypeID of SecKey instances.
 */
 CFTypeID SecKeyGetTypeID(void)
-	__OSX_AVAILABLE_STARTING(__MAC_10_3, __IPHONE_2_0);
+API_AVAILABLE(macos(10.3), ios(2.0), tvos(4.0), watchos(1.0));
 
 
 #if SEC_OS_OSX
@@ -338,7 +338,7 @@
     @discussion  The CSSM_KEY is valid until the key item reference is released. This API is deprecated in 10.7. Its use should no longer be needed.
 */
 OSStatus SecKeyGetCSSMKey(SecKeyRef key, const CSSM_KEY * _Nullable * __nonnull cssmKey)
-	DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;;
+	DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;
 
 /*!
     @function SecKeyGetCSPHandle
@@ -411,7 +411,7 @@
 */
 _Nullable CF_RETURNS_RETAINED
 SecKeyRef SecKeyGenerateSymmetric(CFDictionaryRef parameters, CFErrorRef *error)
-	__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
+API_DEPRECATED("No longer supported", macos(10.7, 12.0));
 
 /*!
  @function SecKeyCreateFromData
@@ -440,7 +440,7 @@
 _Nullable
 SecKeyRef SecKeyCreateFromData(CFDictionaryRef parameters,
 	CFDataRef keyData, CFErrorRef *error)
-	__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
+API_DEPRECATED("No longer supported", macos(10.7, 12.0));
 
 
 #ifdef __BLOCKS__
@@ -491,7 +491,7 @@
 */
 void SecKeyGeneratePairAsync(CFDictionaryRef parameters,
     dispatch_queue_t deliveryQueue, SecKeyGeneratePairBlock result)
-    __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
+API_DEPRECATED("No longer supported", macos(10.7, 12.0));
 
 #endif /* __BLOCKS__ */
 
@@ -529,7 +529,7 @@
 _Nullable CF_RETURNS_RETAINED
 SecKeyRef SecKeyDeriveFromPassword(CFStringRef password,
     CFDictionaryRef parameters, CFErrorRef *error)
-    __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
+API_DEPRECATED("No longer supported", macos(10.7, 12.0));
 
 /*!
  @function SecKeyWrapSymmetric
@@ -550,7 +550,7 @@
 _Nullable
 CFDataRef SecKeyWrapSymmetric(SecKeyRef keyToWrap,
     SecKeyRef wrappingKey, CFDictionaryRef parameters, CFErrorRef *error)
-    __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
+API_DEPRECATED("No longer supported", macos(10.7, 12.0));
 
 /*!
  @function SecKeyUnwrapSymmetric
@@ -571,7 +571,7 @@
 _Nullable
 SecKeyRef SecKeyUnwrapSymmetric(CFDataRef _Nullable * __nonnull keyToUnwrap,
     SecKeyRef unwrappingKey, CFDictionaryRef parameters, CFErrorRef *error)
-    __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
+API_DEPRECATED("No longer supported", macos(10.7, 12.0));
 
 #endif /* SEC_OS_OSX */
 
@@ -627,7 +627,7 @@
 */
 OSStatus SecKeyGeneratePair(CFDictionaryRef parameters,
     SecKeyRef * _Nullable CF_RETURNS_RETAINED publicKey, SecKeyRef * _Nullable CF_RETURNS_RETAINED privateKey)
-    __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_2_0);
+API_DEPRECATED("Use SecKeyCreateRandomKey", macos(10.7, 12.0), ios(2.0, 15.0), tvos(4.0, 15.0), watchos(1.0, 8.0));
 
 
 #if SEC_OS_IPHONE
@@ -666,7 +666,7 @@
                        size_t              dataToSignLen,
                        uint8_t             *sig,
                        size_t              *sigLen)
-__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_2_0);
+API_DEPRECATED("Use SecKeyCreateSignature", ios(2.0, 15.0), tvos(4.0, 15.0), watchos(1.0, 8.0));
 
 
 /*!
@@ -696,7 +696,7 @@
                          size_t              signedDataLen,
                          const uint8_t       *sig,
                          size_t              sigLen)
-__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_2_0);
+API_DEPRECATED("Use SecKeyVerifySignature", ios(2.0, 15.0), tvos(4.0, 15.0), watchos(1.0, 8.0));
 
 
 /*!
@@ -730,7 +730,7 @@
                        size_t              plainTextLen,
                        uint8_t             *cipherText,
                        size_t              *cipherTextLen)
-__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_2_0);
+API_DEPRECATED("Use SecKeyCreateEncryptedData", ios(2.0, 15.0), tvos(4.0, 15.0), watchos(1.0, 8.0));
 
 
 /*!
@@ -761,7 +761,7 @@
                        size_t              cipherTextLen,		/* length of cipherText */
                        uint8_t             *plainText,	
                        size_t              *plainTextLen)		/* IN/OUT */
-__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_2_0);
+API_DEPRECATED("Use SecKeyCreateDecryptedData", ios(2.0, 15.0), tvos(4.0, 15.0), watchos(1.0, 8.0));
 
 #endif // SEC_OS_IPHONE
 
@@ -806,7 +806,7 @@
  * kSecAttrCanUnwrap default true for private keys, false for public keys
  */
 SecKeyRef _Nullable SecKeyCreateRandomKey(CFDictionaryRef parameters, CFErrorRef *error)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyCreateWithData
@@ -826,7 +826,7 @@
      * kSecAttrKeyTypeECSECPrimeRandom  ANSI X9.63 format (04 || X || Y [ || K])
  */
 SecKeyRef _Nullable SecKeyCreateWithData(CFDataRef keyData, CFDictionaryRef attributes, CFErrorRef *error)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyGetBlockSize
@@ -837,7 +837,7 @@
     this function is the size of the modulus.
  */
 size_t SecKeyGetBlockSize(SecKeyRef key)
-    __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_2_0);
+API_AVAILABLE(macos(10.6), ios(2.0), tvos(4.0), watchos(1.0));
 
 /*!
     @function SecKeyCopyExternalRepresentation
@@ -852,7 +852,7 @@
      * kSecAttrKeyTypeECSECPrimeRandom  ANSI X9.63 format (04 || X || Y [ || K])
  */
 CFDataRef _Nullable SecKeyCopyExternalRepresentation(SecKeyRef key, CFErrorRef *error)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyCopyAttributes
@@ -874,7 +874,7 @@
     The set of values is not fixed. Future versions may return more values in this dictionary.
  */
 CFDictionaryRef _Nullable SecKeyCopyAttributes(SecKeyRef key)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyCopyPublicKey
@@ -884,7 +884,7 @@
     @discussion Fails if key does not contain a public key or no public key can be computed from it.
  */
 SecKeyRef _Nullable SecKeyCopyPublicKey(SecKeyRef key)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @enum SecKeyAlgorithm
@@ -1249,176 +1249,176 @@
   */
 
 typedef CFStringRef SecKeyAlgorithm CF_STRING_ENUM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureRaw
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15Raw
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA1
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA224
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA256
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA384
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPKCS1v15SHA512
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA1
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA224
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA256
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA384
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePKCS1v15SHA512
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA1
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA224
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA256
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA384
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureDigestPSSSHA512
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA1
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA224
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA256
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA384
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSASignatureMessagePSSSHA512
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureRFC4754
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA1
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA224
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA256
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA384
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureDigestX962SHA512
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA1
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA224
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA256
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA384
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDSASignatureMessageX962SHA512
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionRaw
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionPKCS1
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA1
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA224
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA256
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA384
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA512
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA1AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA224AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA256AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA384AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmRSAEncryptionOAEPSHA512AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA1AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA224AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA256AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA384AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardX963SHA512AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA1AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA224AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA256AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA384AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorX963SHA512AESGCM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardVariableIVX963SHA224AESGCM
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardVariableIVX963SHA256AESGCM
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardVariableIVX963SHA384AESGCM
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionStandardVariableIVX963SHA512AESGCM
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorVariableIVX963SHA224AESGCM
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorVariableIVX963SHA256AESGCM
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorVariableIVX963SHA384AESGCM
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECIESEncryptionCofactorVariableIVX963SHA512AESGCM
-__OSX_AVAILABLE(10.13) __IOS_AVAILABLE(11.0) __TVOS_AVAILABLE(11.0) __WATCHOS_AVAILABLE(4.0);
+API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0), watchos(4.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandard
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA1
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA224
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA256
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA384
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeStandardX963SHA512
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactor
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA1
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA224
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA256
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA384
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyAlgorithm kSecKeyAlgorithmECDHKeyExchangeCofactorX963SHA512
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyCreateSignature
@@ -1433,7 +1433,7 @@
     further defines the exact format of input data, operation to be performed and output signature.
  */
 CFDataRef _Nullable SecKeyCreateSignature(SecKeyRef key, SecKeyAlgorithm algorithm, CFDataRef dataToSign, CFErrorRef *error)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyVerifySignature
@@ -1449,7 +1449,7 @@
     further defines the exact format of input data, signature and operation to be performed.
  */
 Boolean SecKeyVerifySignature(SecKeyRef key, SecKeyAlgorithm algorithm, CFDataRef signedData, CFDataRef signature, CFErrorRef *error)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyCreateEncryptedData
@@ -1466,7 +1466,7 @@
  */
 CFDataRef _Nullable SecKeyCreateEncryptedData(SecKeyRef key, SecKeyAlgorithm algorithm, CFDataRef plaintext,
                                                CFErrorRef *error)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyCreateDecryptedData
@@ -1483,7 +1483,7 @@
  */
 CFDataRef _Nullable SecKeyCreateDecryptedData(SecKeyRef key, SecKeyAlgorithm algorithm, CFDataRef ciphertext,
                                                CFErrorRef *error)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @enum SecKeyKeyExchangeParameter SecKey Key Exchange parameters
@@ -1492,11 +1492,11 @@
     for KDF (key derivation function).
  */
 typedef CFStringRef SecKeyKeyExchangeParameter CF_STRING_ENUM
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyKeyExchangeParameter kSecKeyKeyExchangeParameterRequestedSize
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 extern const SecKeyKeyExchangeParameter kSecKeyKeyExchangeParameterSharedInfo
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyCopyKeyExchangeResult
@@ -1510,7 +1510,7 @@
     @result Result of key exchange operation as a CFDataRef, or NULL on failure.
  */
 CFDataRef _Nullable SecKeyCopyKeyExchangeResult(SecKeyRef privateKey, SecKeyAlgorithm algorithm, SecKeyRef publicKey, CFDictionaryRef parameters, CFErrorRef *error)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @enum SecKeyOperationType
@@ -1537,7 +1537,7 @@
     kSecKeyOperationTypeEncrypt     = 2,
     kSecKeyOperationTypeDecrypt     = 3,
     kSecKeyOperationTypeKeyExchange = 4,
-} __OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+} API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 /*!
     @function SecKeyIsAlgorithmSupported
@@ -1548,7 +1548,7 @@
     @return True if key supports specified algorithm for specified operation, False otherwise.
  */
 Boolean SecKeyIsAlgorithmSupported(SecKeyRef key, SecKeyOperationType operation, SecKeyAlgorithm algorithm)
-__OSX_AVAILABLE(10.12) __IOS_AVAILABLE(10.0) __TVOS_AVAILABLE(10.0) __WATCHOS_AVAILABLE(3.0);
+API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0), watchos(3.0));
 
 CF_IMPLICIT_BRIDGING_DISABLED
 CF_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h	2021-03-16 09:54:52.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecKeychain.h	2021-06-02 11:07:24.000000000 -0400
@@ -284,7 +284,8 @@
     @param keychain On return, a pointer to the keychain reference. The memory that keychain occupies must be released by calling CFRelease when finished with it.
 	@result A result code.  See "Security Error Codes" (SecBase.h). In addition, errSecParam (-50) may be returned if the keychain parameter is invalid (NULL).
 */
-OSStatus SecKeychainOpen(const char *pathName, SecKeychainRef * __nonnull CF_RETURNS_RETAINED keychain);
+OSStatus SecKeychainOpen(const char *pathName, SecKeychainRef * __nonnull CF_RETURNS_RETAINED keychain)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0));
 
 /*!
 	@function SecKeychainCreate
@@ -297,7 +298,9 @@
     @param keychain On return, a pointer to a keychain reference. The memory that keychain occupies must be released by calling CFRelease when finished with it.
 	@result A result code.  See "Security Error Codes" (SecBase.h). In addition, errSecParam (-50) may be returned if the keychain parameter is invalid (NULL).
 */
-OSStatus SecKeychainCreate(const char *pathName, UInt32 passwordLength, const void * __nullable password, Boolean promptUser, SecAccessRef __nullable initialAccess, SecKeychainRef * __nonnull CF_RETURNS_RETAINED keychain) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainCreate(const char *pathName, UInt32 passwordLength, const void * __nullable password, Boolean promptUser, SecAccessRef __nullable initialAccess, SecKeychainRef * __nonnull CF_RETURNS_RETAINED keychain)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainDelete
@@ -305,7 +308,9 @@
     @param keychainOrArray A single keychain reference or a reference to an array of keychains to delete. IMPORTANT: SecKeychainDelete does not dispose the memory occupied by keychain references; use the CFRelease function when you are completely finished with a keychain.
 	@result A result code.  See "Security Error Codes" (SecBase.h). In addition, errSecInvalidKeychain (-25295) may be returned if the keychain parameter is invalid (NULL).
 */
-OSStatus SecKeychainDelete(SecKeychainRef __nullable keychainOrArray) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainDelete(SecKeychainRef __nullable keychainOrArray)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainSetSettings
@@ -314,7 +319,9 @@
  	@param newSettings A pointer to the new keychain settings.
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
-OSStatus SecKeychainSetSettings(SecKeychainRef __nullable keychain, const SecKeychainSettings *newSettings) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainSetSettings(SecKeychainRef __nullable keychain, const SecKeychainSettings *newSettings)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainCopySettings
@@ -323,7 +330,9 @@
     @param outSettings  A pointer to a keychain settings structure. Since this structure is versioned, you must preallocate it and fill in the version of the structure.
  @result A result code.  See "Security Error Codes" (SecBase.h).
 */
-OSStatus SecKeychainCopySettings(SecKeychainRef __nullable keychain, SecKeychainSettings *outSettings) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainCopySettings(SecKeychainRef __nullable keychain, SecKeychainSettings *outSettings)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainUnlock
@@ -335,7 +344,9 @@
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 	@discussion In most cases, your application does not need to call the SecKeychainUnlock function directly, since most Keychain Manager functions that require an unlocked keychain call SecKeychainUnlock automatically. If your application needs to verify that a keychain is unlocked, call the function SecKeychainGetStatus.
 */
-OSStatus SecKeychainUnlock(SecKeychainRef __nullable keychain, UInt32 passwordLength, const void * __nullable password, Boolean usePassword) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainUnlock(SecKeychainRef __nullable keychain, UInt32 passwordLength, const void * __nullable password, Boolean usePassword)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainLock
@@ -343,14 +354,18 @@
     @param keychain A reference to the keychain to lock.
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
-OSStatus SecKeychainLock(SecKeychainRef	__nullable keychain) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainLock(SecKeychainRef	__nullable keychain)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainLockAll
 	@abstract Locks all keychains belonging to the current user.
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
-OSStatus SecKeychainLockAll(void) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainLockAll(void)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainCopyDefault
@@ -366,7 +381,9 @@
 	@param keychain A reference to the keychain to set as default.
 	@result A result code.  See "Security Error Codes" (SecBase.h). In addition, errSecParam (-50) may be returned if the keychain parameter is invalid (NULL).
 */
-OSStatus SecKeychainSetDefault(SecKeychainRef __nullable keychain) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainSetDefault(SecKeychainRef __nullable keychain)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainCopySearchList
@@ -382,7 +399,9 @@
 	@param searchList The list of keychains to use in a search list when the SecKeychainCopySearchList function is called. An empty array clears the search list.
 	@result A result code.  See "Security Error Codes" (SecBase.h). In addition, errSecParam (-50) may be returned if the keychain list is not specified (NULL).
 */
-OSStatus SecKeychainSetSearchList(CFArrayRef searchList) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainSetSearchList(CFArrayRef searchList)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 
 /*
@@ -421,7 +440,9 @@
 	@param pathName On return, the POSIX path to the keychain.
     @result A result code.  See "Security Error Codes" (SecBase.h).
 */
-OSStatus SecKeychainGetPath(SecKeychainRef __nullable keychain, UInt32 *ioPathLength, char *pathName) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainGetPath(SecKeychainRef __nullable keychain, UInt32 *ioPathLength, char *pathName)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 #pragma mark ---- Keychain Item Attribute Information ----
 /*!
@@ -566,7 +587,9 @@
 	@param state A boolean representing the state of user interaction.  You should pass TRUE to allow user interaction, and FALSE to disallow user interaction
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
-OSStatus SecKeychainSetUserInteractionAllowed(Boolean state) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
+OSStatus SecKeychainSetUserInteractionAllowed(Boolean state)
+    API_DEPRECATED("Custom keychain management is no longer supported", macos(10.2, 12.0))
+    API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /*!
 	@function SecKeychainGetUserInteractionAllowed
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecProtocolOptions.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecProtocolOptions.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecProtocolOptions.h	2021-03-16 13:56:41.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecProtocolOptions.h	2021-06-02 12:44:23.000000000 -0400
@@ -292,6 +292,19 @@
 sec_protocol_options_get_enable_encrypted_client_hello(sec_protocol_options_t options);
 
 /*!
+ * @function sec_protocol_options_get_quic_use_legacy_codepoint
+ *
+ * @abstract
+ *      Check whether the QUIC legacy codepoint has been enabled.
+ *
+ * @return A boolean that indicates whether or not the QUIC legacy codepoint has been
+ *         enabled.
+ */
+API_UNAVAILABLE(macos, ios, watchos, tvos)
+bool
+sec_protocol_options_get_quic_use_legacy_codepoint(sec_protocol_options_t options);
+
+/*!
  * @function sec_protocol_options_add_tls_application_protocol
  *
  * @abstract
@@ -586,8 +599,7 @@
  *
  * @abstract
  *      For experimental use only. When this is enabled, the Encrypted Client Hello extension will be sent on the Client
- *      Hello if TLS 1.3 is among the supported TLS versions. Default false for clients; always false for servers (servers
- *      ignore this option).
+ *      Hello if TLS 1.3 is among the supported TLS versions. Default false.
  *
  * @param options
  *      A `sec_protocol_options_t` instance.
@@ -599,6 +611,22 @@
 void
 sec_protocol_options_set_enable_encrypted_client_hello(sec_protocol_options_t options, bool enable_encrypted_client_hello);
 
+/*!
+ * @function sec_protocol_options_set_quic_use_legacy_codepoint
+ *
+ * @abstract
+ *      Set QUIC to use the legacy codepoint. Defaults to true.
+ *
+ * @param options
+ *      A `sec_protocol_options_t` instance.
+ *
+ * @param quic_use_legacy_codepoint
+ *      A boolean to enable/disable the legacy codepoint.
+ */
+API_UNAVAILABLE(macos, ios, watchos, tvos)
+void
+sec_protocol_options_set_quic_use_legacy_codepoint(sec_protocol_options_t options, bool quic_use_legacy_codepoint);
+
 #ifdef __BLOCKS__
 
 /*!
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecStaticCode.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecStaticCode.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecStaticCode.h	2021-03-16 09:54:52.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecStaticCode.h	2021-06-02 11:07:24.000000000 -0400
@@ -189,6 +189,7 @@
 	kSecCSSingleThreaded = 1 << 12,
 	// NOTE: These values have gaps for internal usage.
 	kSecCSAllowNetworkAccess CF_ENUM_AVAILABLE(11_3, 14_5) = 1 << 16,
+	kSecCSFastExecutableValidation CF_ENUM_AVAILABLE(11_3, 14_5) = 1 << 17,
 };
 
 OSStatus SecStaticCodeCheckValidity(SecStaticCodeRef staticCode, SecCSFlags flags,
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecTransform.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecTransform.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecTransform.h	2021-03-16 09:54:52.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecTransform.h	2021-06-02 11:07:23.000000000 -0400
@@ -210,7 +210,8 @@
 	@result The CFTypeID
 */
 
-CF_EXPORT CFTypeID SecTransformGetTypeID(void);
+CF_EXPORT CFTypeID SecTransformGetTypeID(void)
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@function SecGroupTransformGetTypeID
@@ -219,7 +220,8 @@
 */
 
 
-CF_EXPORT CFTypeID SecGroupTransformGetTypeID(void);
+CF_EXPORT CFTypeID SecGroupTransformGetTypeID(void)
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 
 /****************	Transform Attribute Names  ****************/
@@ -227,13 +229,15 @@
 	@constant kSecTransformInputAttributeName
 		The name of the input attribute.
  */
-CF_EXPORT const CFStringRef kSecTransformInputAttributeName __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
+CF_EXPORT const CFStringRef kSecTransformInputAttributeName
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@constant kSecTransformOutputAttributeName
 		The name of the output attribute.
  */
-CF_EXPORT const CFStringRef kSecTransformOutputAttributeName __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
+CF_EXPORT const CFStringRef kSecTransformOutputAttributeName
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@constant kSecTransformDebugAttributeName
@@ -244,19 +248,22 @@
 		the debugging data will be written out to
 		stderr.
  */
-CF_EXPORT const CFStringRef kSecTransformDebugAttributeName __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
+CF_EXPORT const CFStringRef kSecTransformDebugAttributeName
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@constant kSecTransformTransformName
 		The name of the transform.
 */
-CF_EXPORT const CFStringRef kSecTransformTransformName __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
+CF_EXPORT const CFStringRef kSecTransformTransformName
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@constant kSecTransformAbortAttributeName
 		The name of the abort attribute.
  */
-CF_EXPORT const CFStringRef kSecTransformAbortAttributeName __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
+CF_EXPORT const CFStringRef kSecTransformAbortAttributeName
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@function			SecTransformCreateFromExternalRepresentation
@@ -281,7 +288,7 @@
 SecTransformRef SecTransformCreateFromExternalRepresentation(
 								CFDictionaryRef dictionary,
 								CFErrorRef *error) 
-								__OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@function 			SecTransformCopyExternalRepresentation
@@ -305,7 +312,7 @@
 CF_EXPORT 
 CFDictionaryRef SecTransformCopyExternalRepresentation(
 							   SecTransformRef transformRef) 
-							__OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@function			SecTransformCreateGroupTransform
@@ -329,7 +336,8 @@
 						SecTransformGetAttribute is undefined.
 */
 CF_EXPORT 
-SecGroupTransformRef SecTransformCreateGroupTransform(void);
+SecGroupTransformRef SecTransformCreateGroupTransform(void)
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@function			SecTransformConnectTransforms
@@ -434,8 +442,8 @@
 				 		   CFStringRef destinationAttributeName,
 						   SecGroupTransformRef group,
 						   CFErrorRef *error)
-						__OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
-										
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
+
 /*!
 	@function			SecTransformSetAttribute
 	
@@ -470,8 +478,8 @@
 								CFStringRef key,
 								CFTypeRef value,
 								CFErrorRef *error)
-								__OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
-								
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
+
 /*!
 	@function			SecTransformGetAttribute
 	
@@ -493,7 +501,7 @@
 CF_EXPORT __nullable
 CFTypeRef SecTransformGetAttribute(SecTransformRef transformRef,
 								   CFStringRef key) 
-								__OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);								   
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@function			SecTransformFindByName
@@ -518,7 +526,7 @@
 CF_EXPORT __nullable
 SecTransformRef SecTransformFindByName(SecGroupTransformRef transform, 
 								CFStringRef name)
-								__OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);								   
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@function			SecTransformExecute
@@ -558,7 +566,7 @@
 
 CF_EXPORT CF_RETURNS_RETAINED
 CFTypeRef SecTransformExecute(SecTransformRef transformRef, CFErrorRef* errorRef) 
-						   __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA) CF_RETURNS_RETAINED;
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 /*!
 	@typedef			SecMessageBlock
@@ -611,7 +619,7 @@
 void SecTransformExecuteAsync(SecTransformRef transformRef,
 							dispatch_queue_t deliveryQueue,
 							SecMessageBlock deliveryBlock) 
-						   __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_NA);
+API_DEPRECATED("SecTransform is no longer supported", macos(10.7, 12.0), ios(NA, NA), tvos(NA, NA), watchos(NA, NA), macCatalyst(NA, NA));
 
 CF_IMPLICIT_BRIDGING_DISABLED
 CF_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecTrust.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecTrust.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecTrust.h	2021-03-16 13:56:41.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecTrust.h	2021-06-02 05:38:08.000000000 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002-2016 Apple Inc. All Rights Reserved.
+ * Copyright (c) 2002-2021 Apple Inc. All Rights Reserved.
  *
  * @APPLE_LICENSE_HEADER_START@
  *
@@ -152,7 +152,13 @@
         if this chain is CT qualified.
     @constant kSecTrustCertificateTransparencyWhiteList
         This key will be present and have a value of kCFBooleanTrue
-        if this chain is EV, not CT qualified, but included of the CT WhiteList.
+        if this chain is EV, but not CT qualified, and is permitted
+        as an exception to CT policy requirements.
+        Note: in macOS 10.12 and iOS 10, previously-issued EV certificates
+        were considered exempt from the CT requirement. As those certificates
+        expired, exempting them was no longer needed. This key is deprecated
+        in macOS 10.13 and iOS 11, and is no longer returned in the trust
+        results dictionary as of those releases.
  */
 extern const CFStringRef kSecTrustEvaluationDate
     __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0);
@@ -503,10 +509,14 @@
     The leaf cert (index 0) is always present regardless of whether the trust
     reference has been evaluated or not.
     @result A SecCertificateRef for the requested certificate.
+    @discussion This API is fundamentally not thread-safe -- other threads using the same
+    trust object may trigger trust evaluations that release the returned certificate or change the
+    certificate chain as a thread is iterating through the certificate chain. The replacement function
+    SecTrustCopyCertificateChain provides thread-safe results.
  */
 __nullable
 SecCertificateRef SecTrustGetCertificateAtIndex(SecTrustRef trust, CFIndex ix)
-    __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_2_0);
+    API_DEPRECATED_WITH_REPLACEMENT("SecTrustCopyCertificateChain", macos(10.7, 12.0), ios(2.0, 15.0), watchos(1.0, 8.0), tvos(9.0, 15.0));
 
 /*!
     @function SecTrustCopyExceptions
@@ -561,14 +571,17 @@
     evaluated, the returned property array will be empty.
     @result A property array. It is the caller's responsibility to CFRelease
     the returned array when it is no longer needed.
-    @discussion This function returns an ordered array of CFDictionaryRef
+    @discussion On macOS, this function returns an ordered array of CFDictionaryRef
     instances for each certificate in the chain. Indices run from 0 (leaf) to
-    the anchor (or last certificate found if no anchor was found.) See the
-    "Trust Property Constants" section for a list of currently defined keys.
+    the anchor (or last certificate found if no anchor was found.)
+    On other platforms, this function returns an unordered array of CFDictionary instances.
+    See the "Trust Property Constants" section for a list of currently defined keys.
+    The error information conveyed via this interface is also conveyed via the
+    returned error of SecTrustEvaluateWithError.
  */
 __nullable
 CFArrayRef SecTrustCopyProperties(SecTrustRef trust)
-    __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_2_0);
+    API_DEPRECATED_WITH_REPLACEMENT("SecTrustEvaluateWithError", macos(10.7, 12.0), ios(2.0, 15.0), watchos(1.0, 8.0), tvos(9.0, 15.0)) API_UNAVAILABLE(macCatalyst);
 
 /*!
     @function SecTrustCopyResult
@@ -614,6 +627,16 @@
 OSStatus SecTrustSetSignedCertificateTimestamps(SecTrustRef trust, CFArrayRef __nullable sctArray)
     API_AVAILABLE(macos(10.14.2), ios(12.1.1), tvos(12.1.1), watchos(5.1.1));
 
+/*!
+    @function SecTrustCopyCertificateChain
+    @abstract Returns the certificate trust chain
+    @param trust Reference to a trust object.
+    @result A CFArray of the SecCertificateRefs for the resulting certificate chain
+ */
+_Nullable CF_RETURNS_RETAINED
+CFArrayRef SecTrustCopyCertificateChain(SecTrustRef trust)
+    API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0), watchos(8.0));
+
 CF_IMPLICIT_BRIDGING_DISABLED
 CF_ASSUME_NONNULL_END
 
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureDownload.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureDownload.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureDownload.h	2021-03-16 04:44:19.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureDownload.h	2021-06-02 11:07:24.000000000 -0400
@@ -6,7 +6,7 @@
 #endif
 
 /*
- * Copyright (c) 2006,2011,2013-2014 Apple Inc. All Rights Reserved.
+ * Copyright (c) 2006-2021 Apple Inc. All Rights Reserved.
  * 
  * @APPLE_LICENSE_HEADER_START@
  * 
@@ -57,6 +57,7 @@
 #include <Security/SecBase.h>
 #include <Security/SecTrust.h> /* SecTrustRef */
 
+#define SECUREDOWNLOAD_API_DEPRECATED API_DEPRECATED("SecureDownload is not supported", macos(10.5, 12.0))  API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 
 typedef struct OpaqueSecureDownload *SecureDownloadRef;
 
@@ -74,12 +75,12 @@
 	@constant kSecureDownloadFailEvaluation Indicates that evaluation should fail immediately.
 */
 
-typedef enum _SecureDownloadTrustCallbackResult 
+typedef enum _SecureDownloadTrustCallbackResult
 {
 	kSecureDownloadDoNotEvaluateSigner = 0,
 	kSecureDownloadEvaluateSigner = 1,
 	kSecureDownloadFailEvaluation = 2
-} SecureDownloadTrustCallbackResult;
+} SecureDownloadTrustCallbackResult SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@typedef SecureDownloadTrustSetupCallback
@@ -91,7 +92,8 @@
 */
 
 typedef SecureDownloadTrustCallbackResult(*SecureDownloadTrustSetupCallback)
-			(SecTrustRef trustRef, void* setupContext);
+			(SecTrustRef trustRef, void* setupContext)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@typedef SecureDownloadTrustEvaluateCallback
@@ -105,7 +107,8 @@
 
 typedef SecTrustResultType(*SecureDownloadTrustEvaluateCallback)
 			(SecTrustRef trustRef, SecTrustResultType result,
-			 void *evaluateContext);
+			 void *evaluateContext)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadCreateWithTicket
@@ -131,7 +134,8 @@
 										 void* setupContext,
 										 SecureDownloadTrustEvaluateCallback evaluate,
 										 void* evaluateContext,
-										 SecureDownloadRef* downloadRef);
+										 SecureDownloadRef* downloadRef)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadCopyURLs
@@ -144,7 +148,8 @@
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
 
-OSStatus SecureDownloadCopyURLs (SecureDownloadRef downloadRef, CFArrayRef* urls);
+OSStatus SecureDownloadCopyURLs (SecureDownloadRef downloadRef, CFArrayRef* urls)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadCopyName
@@ -154,7 +159,8 @@
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
 
-OSStatus SecureDownloadCopyName (SecureDownloadRef downloadRef, CFStringRef* name);
+OSStatus SecureDownloadCopyName (SecureDownloadRef downloadRef, CFStringRef* name)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadCopyCreationDate
@@ -163,7 +169,8 @@
 	@result A result code.
 */
 
-OSStatus SecureDownloadCopyCreationDate (SecureDownloadRef downloadRef, CFDateRef* date);
+OSStatus SecureDownloadCopyCreationDate (SecureDownloadRef downloadRef, CFDateRef* date)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadGetDownloadSize
@@ -173,7 +180,8 @@
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
 
-OSStatus SecureDownloadGetDownloadSize (SecureDownloadRef downloadRef, SInt64 *downloadSize);
+OSStatus SecureDownloadGetDownloadSize (SecureDownloadRef downloadRef, SInt64 *downloadSize)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadUpdateWithData
@@ -185,7 +193,8 @@
 			see "Security Error Codes" (SecBase.h).
 */
 
-OSStatus SecureDownloadUpdateWithData (SecureDownloadRef downloadRef, CFDataRef data);
+OSStatus SecureDownloadUpdateWithData (SecureDownloadRef downloadRef, CFDataRef data)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadFinished
@@ -195,7 +204,8 @@
 			see "Security Error Codes" (SecBase.h).
 */
 
-OSStatus SecureDownloadFinished (SecureDownloadRef downloadRef);
+OSStatus SecureDownloadFinished (SecureDownloadRef downloadRef)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadRelease
@@ -204,7 +214,8 @@
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
 
-OSStatus SecureDownloadRelease (SecureDownloadRef downloadRef);
+OSStatus SecureDownloadRelease (SecureDownloadRef downloadRef)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 /*!
 	@function SecureDownloadCopyTicketLocation
@@ -214,7 +225,8 @@
 	@result A result code.  See "Security Error Codes" (SecBase.h).
 */
 
-OSStatus SecureDownloadCopyTicketLocation (CFURLRef url, CFURLRef *ticketLocation);
+OSStatus SecureDownloadCopyTicketLocation (CFURLRef url, CFURLRef *ticketLocation)
+SECUREDOWNLOAD_API_DEPRECATED;
 
 #if defined(__cplusplus)
 };
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h	2021-03-16 13:56:41.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h	2021-06-02 11:07:24.000000000 -0400
@@ -1223,8 +1223,8 @@
  * @note This function is not available on iOS, and should be considered
  *    deprecated on Mac OS X. To get peer certificates, call SSLCopyPeerTrust
  *    to obtain the SecTrustRef for the peer certificate chain, then use the
- *    SecTrustGetCertificateCount and SecTrustGetCertificateAtIndex functions
- *    to retrieve individual certificates in the chain (see SecTrust.h).
+ *    SecTrustCopyCertificateChain to retrieve individual certificates in
+ *    the chain (see SecTrust.h).
  * @param context A valid SSLContextRef.
  * @param certs Pointer to CFArrayRef that will store a reference to the peer's certificates.
  * @result errSecSuccess on success, alternative error on failure.
diff -ruN /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/cssmtype.h /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/cssmtype.h
--- /Applications/Xcode_12.5.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/cssmtype.h	2021-03-16 09:54:52.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/cssmtype.h	2021-06-02 11:07:23.000000000 -0400
@@ -28,6 +28,7 @@
 
 #include <Security/cssmconfig.h>
 #include <Security/SecAsn1Types.h>
+#include <Availability.h>
 
 /* ==========================================================================
 	W A R N I N G : CDSA has been deprecated starting with 10.7.  While the
@@ -883,8 +884,10 @@
 	CSSM_ALGID_ConcatDataAndBase =		CSSM_ALGID_NONE + 59,
 	CSSM_ALGID_XORBaseAndData =			CSSM_ALGID_NONE + 60,
 	CSSM_ALGID_ExtractFromKey =			CSSM_ALGID_NONE + 61,
-	CSSM_ALGID_SSL3PreMasterGen =		CSSM_ALGID_NONE + 62,
-	CSSM_ALGID_SSL3MasterDerive =		CSSM_ALGID_NONE + 63,
+    CSSM_ALGID_SSL3PrePrimaryGen =      CSSM_ALGID_NONE + 62,
+    CSSM_ALGID_SSL3PreMasterGen API_DEPRECATED_WITH_REPLACEMENT("CSSM_ALGID_SSL3PrePrimaryGen",macos(10.0, 12.0)) = CSSM_ALGID_SSL3PrePrimaryGen,
+    CSSM_ALGID_SSL3PrimaryDerive =      CSSM_ALGID_NONE + 63,
+    CSSM_ALGID_SSL3MasterDerive API_DEPRECATED_WITH_REPLACEMENT("CSSM_ALGID_SSL3PrimaryDerive",macos(10.0, 12.0))  = CSSM_ALGID_SSL3PrimaryDerive,
 	CSSM_ALGID_SSL3KeyAndMacDerive =	CSSM_ALGID_NONE + 64,
 	CSSM_ALGID_SSL3MD5_MAC =			CSSM_ALGID_NONE + 65,
 	CSSM_ALGID_SSL3SHA1_MAC =			CSSM_ALGID_NONE + 66,
@@ -931,7 +934,7 @@
    part of the CSSM specification should be defined relative
    to CSSM_ALGID_VENDOR_DEFINED. */
 	CSSM_ALGID_VENDOR_DEFINED =			CSSM_ALGID_NONE + 0x80000000
-};
+} API_AVAILABLE(macos(10.0));
 
 typedef uint32 CSSM_ENCRYPT_MODE;
 enum {
Clone this wiki locally