Skip to content

Network tvOS xcode14.0 beta1

Manuel de la Pena edited this page Sep 1, 2022 · 3 revisions

#Network.framework https://github.com/xamarin/xamarin-macios/pull/15841

diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/Network.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/Network.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/Network.h	2022-02-12 06:47:12.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/Network.h	2022-05-21 04:39:04.000000000 -0400
@@ -2,7 +2,7 @@
 //  Network.h
 //  Network
 //
-//  Copyright (c) 2014-2020 Apple Inc. All rights reserved.
+//  Copyright (c) 2014-2021 Apple Inc. All rights reserved.
 //
 
 #ifndef __NW_H__
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/advertise_descriptor.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/advertise_descriptor.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/advertise_descriptor.h	2022-02-23 10:56:26.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/advertise_descriptor.h	2022-05-31 14:51:55.000000000 -0400
@@ -155,6 +155,38 @@
 NW_RETURNS_RETAINED _Nullable nw_txt_record_t
 nw_advertise_descriptor_copy_txt_record_object(nw_advertise_descriptor_t advertise_descriptor);
 
+/*!
+ * @function nw_advertise_descriptor_create_application_service
+ *
+ * @abstract
+ *		Creates an advertise descriptor for application service discovery.
+ *
+ * @param application_service_name
+ *		The service name to advertise.
+ *
+ * @result
+ *		An instantiated advertise descriptor object.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+NW_RETURNS_RETAINED nw_advertise_descriptor_t
+nw_advertise_descriptor_create_application_service(const char *application_service_name);
+
+/*!
+ * @function nw_advertise_descriptor_get_application_service_name
+ *
+ * @abstract
+ *		Returns the service name of an application service advertise descriptor.
+ *
+ * @param advertise_descriptor
+ *		An advertise descriptor object.
+ *
+ * @result
+ *		The service name or NULL if the advertise descriptor is not of the correct type.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+const char * _Nullable
+nw_advertise_descriptor_get_application_service_name(nw_advertise_descriptor_t advertise_descriptor);
+
 __END_DECLS
 NW_ASSUME_NONNULL_END
 
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/browse_descriptor.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/browse_descriptor.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/browse_descriptor.h	2022-02-23 07:09:40.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/browse_descriptor.h	2022-05-31 15:02:44.000000000 -0400
@@ -2,7 +2,7 @@
 //  browse_descriptor.h
 //  Network
 //
-//  Copyright (c) 2016-2019 Apple Inc. All rights reserved.
+//  Copyright (c) 2016-2019,2022 Apple Inc. All rights reserved.
 //
 
 #ifndef __NW_BROWSE_DESCRIPTOR_H__
@@ -124,6 +124,38 @@
 bool
 nw_browse_descriptor_get_include_txt_record(nw_browse_descriptor_t descriptor);
 
+/*!
+ * @function nw_browse_descriptor_create_application_service
+ *
+ * @abstract
+ *		Creates a browse descriptor for application service discovery.
+ *
+ * @param application_service_name
+ *		The service name to browse for.
+ *
+ * @result
+ *		An instantiated browse descriptor object.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+NW_RETURNS_RETAINED nw_browse_descriptor_t
+nw_browse_descriptor_create_application_service(const char *application_service_name);
+
+/*!
+ * @function nw_browse_descriptor_get_application_service_name
+ *
+ * @abstract
+ *		Returns the service name of an application service browse descriptor.
+ *
+ * @param descriptor
+ *		A browse descriptor object.
+ *
+ * @result
+ *		The service name.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+const char * _Nullable
+nw_browse_descriptor_get_application_service_name(nw_browse_descriptor_t descriptor);
+
 __END_DECLS
 
 NW_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/endpoint.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/endpoint.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/endpoint.h	2022-02-23 07:15:56.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/endpoint.h	2022-05-31 15:04:06.000000000 -0400
@@ -2,7 +2,7 @@
 //  endpoint.h
 //  Network
 //
-//  Copyright (c) 2014-2019 Apple Inc. All rights reserved.
+//  Copyright (c) 2014-2022 Apple Inc. All rights reserved.
 //
 
 #ifndef __NW_ENDPOINT_H__
@@ -341,6 +341,46 @@
 const char *
 nw_endpoint_get_url(nw_endpoint_t endpoint);
 
+/*!
+ * @function nw_endpoint_copy_txt_record
+ *
+ * @abstract
+ *		Retrieves the TXT record associated with the endpoint, if present.
+ *		TXT records can be populated during browsing and connection
+ *		establishment.
+ *
+ * @param endpoint
+ *		The endpoint object.
+ *
+ * @result
+ *		Returns a retained nw_txt_record_t object if a TXT record
+ *		is associated with this endpoint, or NULL otherwise.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+NW_RETURNS_RETAINED _Nullable nw_txt_record_t
+nw_endpoint_copy_txt_record(nw_endpoint_t endpoint);
+
+/*!
+ * @function nw_endpoint_get_signature
+ *
+ * @abstract
+ *		Retrieves a signed data blob associated with an endpoint.
+ *
+ * @param endpoint
+ *		The endpoint to modify.
+ *
+ * @param out_signature_length
+ *		A pointer to a size_t that will take the length of the signature.
+ *
+ * @result
+ *		Returns a pointer to a buffer of bytes containing a signature,
+ *		or NULL if the endpoint is not signed.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+const uint8_t * _Nullable
+nw_endpoint_get_signature(nw_endpoint_t endpoint,
+						  size_t *out_signature_length);
+
 __END_DECLS
 
 NW_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/ethernet_channel.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/ethernet_channel.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/ethernet_channel.h	2022-02-23 07:55:59.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/ethernet_channel.h	2022-05-31 15:02:20.000000000 -0400
@@ -90,6 +90,38 @@
 NW_RETURNS_RETAINED nw_ethernet_channel_t
 nw_ethernet_channel_create(uint16_t ether_type, nw_interface_t interface);
 
+/*!
+ * @function nw_ethernet_channel_create_with_parameters
+ *
+ * @abstract
+ *		Creates an Ethernet channel with a custom EtherType and networking parameters
+ *
+ * @param ether_type
+ *		The custom EtherType to be used for all Ethernet frames in this channel. The
+ *		EtherType is the two-octet field in an Ethernet frame, indicating the protocol
+ *		encapsulated in the payload of the frame.  This parameter is in little-endian
+ *		byte order.  Only custom EtherType values are supported. This parameter cannot
+ *		be an EtherType already handled by the system, such as IPv4, IPv6, ARP, VLAN Tag,
+ *		or 802.1x.
+ *
+ *		Calling processes must hold the "com.apple.developer.networking.custom-protocol"
+ *		entitlement.
+ *
+ * @param interface
+ *		The interface on which this custom Ethernet channel will be allowed.
+ *
+ * @param parameters
+ *		nw_parameters_t that allows caller to specify networking parameters such as custom context and queue.
+ *
+ * @result
+ *		Returns an allocated nw_ethernet_channel_t object on success.
+ *		Callers are responsible for deallocating using nw_release(obj) or [obj release].
+ *		These objects support ARC.
+ *		Returns NULL on failure. Fails due to invalid parameters.
+ */
+API_AVAILABLE(macos(13.0)) API_UNAVAILABLE(ios, watchos, tvos)
+NW_RETURNS_RETAINED nw_ethernet_channel_t
+nw_ethernet_channel_create_with_parameters(uint16_t ether_type, nw_interface_t interface, nw_parameters_t parameters);
 #ifdef __BLOCKS__
 
 /*!
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h	2022-02-23 10:56:27.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h	2022-05-31 15:04:07.000000000 -0400
@@ -164,17 +164,25 @@
 #ifndef NW_ENUM
 #if __has_attribute(enum_extensibility)
 #define __NW_ENUM_ATTRIBUTES __attribute__((enum_extensibility(open)))
+#define __NW_OPTIONS_ATTRIBUTES __attribute__((flag_enum,enum_extensibility(open)))
 #else // __has_attribute(enum_extensibility)
 #define __NW_ENUM_ATTRIBUTES
+#define __NW_OPTIONS_ATTRIBUTES
 #endif // __has_attribute(enum_extensibility)
 
 #define __NW_ENUM_GET_MACRO(_1, _2, NAME, ...) NAME
 #if (defined(__cplusplus) && __cplusplus >= 201103L && (__has_extension(cxx_strong_enums) || __has_feature(objc_fixed_enum))) || (!defined(__cplusplus) && __has_feature(objc_fixed_enum))
 #define __NW_NAMED_ENUM(_type, _name)     enum __NW_ENUM_ATTRIBUTES _name : _type _name; enum _name : _type
 #define __NW_ANON_ENUM(_type)             enum __NW_ENUM_ATTRIBUTES : _type
+#if defined(__cplusplus)
+#define NW_OPTIONS(_type, _name) _type _name; enum __NW_OPTIONS_ATTRIBUTES : _type
+#else // defined(__cplusplus)
+#define NW_OPTIONS(_type, _name) enum __NW_OPTIONS_ATTRIBUTES _name : _type _name; enum _name : _type
+#endif // defined(__cplusplus)
 #else // (defined(__cplusplus) && __cplusplus >= 201103L && (__has_extension(cxx_strong_enums) || __has_feature(objc_fixed_enum))) || (!defined(__cplusplus) && __has_feature(objc_fixed_enum))
 #define __NW_NAMED_ENUM(_type, _name) _type _name; enum
 #define __NW_ANON_ENUM(_type) enum
+#define NW_OPTIONS(_type, _name) _type _name; enum
 #endif // (defined(__cplusplus) && __cplusplus >= 201103L && (__has_extension(cxx_strong_enums) || __has_feature(objc_fixed_enum))) || (!defined(__cplusplus) && __has_feature(objc_fixed_enum))
 #define NW_ENUM(...) __NW_ENUM_GET_MACRO(__VA_ARGS__, __NW_NAMED_ENUM, __NW_ANON_ENUM, )(__VA_ARGS__)
 #endif // NW_ENUM
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/parameters.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/parameters.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/parameters.h	2022-02-23 10:56:27.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/parameters.h	2022-06-03 18:09:12.000000000 -0400
@@ -199,6 +199,21 @@
 #endif // __BLOCKS__
 
 /*!
+ * @function nw_parameters_create_application_service
+ *
+ * @abstract
+ *		Creates default parameters for use with application services.
+ *
+ * @result
+ *		Returns an allocated nw_parameters_t object on success.
+ *		Callers are responsible for deallocating using nw_release(obj) or [obj release].
+ *		These objects support ARC.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+NW_RETURNS_RETAINED nw_parameters_t
+nw_parameters_create_application_service(void);
+
+/*!
  * @function nw_parameters_create
  *
  * @abstract
@@ -1094,6 +1109,58 @@
 nw_parameters_expired_dns_behavior_t
 nw_parameters_get_expired_dns_behavior(nw_parameters_t parameters);
 
+/*!
+ * @function nw_parameters_set_requires_dnssec_validation
+ *
+ * @abstract
+ *		Require to do or not to do DNSSEC validation when resolving the endpoint, before
+ *		making a connection.
+ *
+ * @param parameters
+ *		The parameters object to configure.
+ *
+ * @param requires_dnssec_validation
+ *		A boolean value that indicates if DNSSEC validation should be required
+ *		when doing DNS resolution for the endpoint.
+ *
+ * @discussion
+ *		DNSSEC validation only takes effect if making a connection to an
+ *		endpoint that requires domain name resolution, such as:
+ *		<code>nw_endpoint_type_host</code>
+ *		<code>nw_endpoint_type_url</code>
+ *
+ *		1. If this property is not set or is set to false on the parameters, DNSSEC
+ *		validation will not be required.
+ *
+ *		2. If this property is set to true and no additional DNSSEC
+ *		configuration is set on the parameters, the default behavior will be
+ *		followed: Only DNSSEC secure and DNSSEC insecure resolved result will be
+ *		used to establish a connection.
+ *
+ *		3. If this property is set to true and additional DNSSEC configuration
+ *		is set on the parameters, the behavior specified by that configuration
+ *		will be followed.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+void
+nw_parameters_set_requires_dnssec_validation(nw_parameters_t parameters, bool requires_dnssec_validation);
+
+/*!
+ * @function nw_parameters_requires_dnssec_validation
+ *
+ * @abstract
+ *		Check if DNSSEC validation is required.
+ *
+ * @param parameters
+ *		The parameters object to check.
+ *
+ * @result
+ *		Returns true if DNSSEC validation is required, false otherwise.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+bool
+nw_parameters_requires_dnssec_validation(nw_parameters_t parameters);
+
 NW_ASSUME_NONNULL_END
 
 __END_DECLS
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/quic_options.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/quic_options.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/quic_options.h	2022-02-23 07:59:10.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/quic_options.h	2022-05-31 15:02:44.000000000 -0400
@@ -133,6 +133,40 @@
 									 bool is_unidirectional);
 
 /*!
+ * @function nw_quic_get_stream_is_datagram
+ *
+ * @abstract
+ *		Get whether or not the QUIC stream is a QUIC datagram flow.
+ *
+ * @param options
+ *		An nw_protocol_options_t for QUIC.
+ *
+ * @result is_datagram
+ *		True if the QUIC stream is a QUIC datagram flow.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+bool
+nw_quic_get_stream_is_datagram(nw_protocol_options_t options);
+
+/*!
+ * @function nw_quic_set_stream_is_datagram
+ *
+ * @abstract
+ *		Set whether or not the QUIC stream should be a QUIC datagram flow.
+ *		Only one QUIC datagram flow can be created per connection.
+ *
+ * @param options
+ *		An nw_protocol_options_t for QUIC.
+ *
+ * @param is_datagram
+ *		A boolean to indicate whether or not the QUIC stream should be a QUIC datagram flow.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+void
+nw_quic_set_stream_is_datagram(nw_protocol_options_t options,
+							   bool is_datagram);
+
+/*!
  * @function nw_quic_get_initial_max_data
  *
  * @abstract
@@ -420,6 +454,45 @@
 nw_quic_set_initial_max_stream_data_unidirectional(nw_protocol_options_t options,
 												   uint64_t initial_max_stream_data_unidirectional);
 
+/*!
+ * @function nw_quic_get_max_datagram_frame_size
+ *
+ * @abstract
+ *		Get the max_datagram_frame_size transport parameter
+ *		on a QUIC connection.
+ *
+ * @param options
+ *		An nw_protocol_options_t for QUIC.
+ *
+ * @result
+ * 		If greater than zero, the max_datagram_frame_size value indicates that
+ * 		DATAGRAM frames are supported, and describes the maximum number
+ * 		of bytes that a single DATAGRAM frame can contain.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+uint16_t
+nw_quic_get_max_datagram_frame_size(nw_protocol_options_t options);
+
+/*!
+ * @function nw_quic_set_max_datagram_frame_size
+ *
+ * @abstract
+ *		Set the max_datagram_frame_size transport parameter
+ *		on a QUIC connection.
+ *
+ * @param options
+ *		An nw_protocol_options_t for QUIC.
+ *
+ * @param max_datagram_frame_size
+ * 		If greater than zero, the max_datagram_frame_size value indicates that
+ * 		DATAGRAM frames are supported, and describes the maximum number
+ * 		of bytes that a single DATAGRAM frame can contain.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+void
+nw_quic_set_max_datagram_frame_size(nw_protocol_options_t options,
+									uint16_t max_datagram_frame_size);
+
 #pragma mark - QUIC Metadata
 
 /**
@@ -502,7 +575,7 @@
  *        Returns the type of the QUIC stream, stored in nw_quic_stream_type_t.
  *        If the type can not be determined, returns nw_quic_stream_type_unknown.
  */
-API_UNAVAILABLE(macos, ios, watchos, tvos)
+API_AVAILABLE(macos(12.0), ios(15.0), watchos(8.0), tvos(15.0))
 uint8_t
 nw_quic_get_stream_type(nw_protocol_metadata_t stream_metadata);
 
@@ -657,6 +730,22 @@
 nw_quic_get_remote_max_streams_unidirectional(nw_protocol_metadata_t metadata);
 
 /*!
+ * @function nw_quic_get_stream_usable_datagram_frame_size
+ *
+ * @abstract
+ *		Get the usable size of a datagram frame from a QUIC datagram flow.
+ *
+ * @param metadata
+ *		A nw_protocol_metadata_t for QUIC.
+ *
+ * @result
+ *		Returns the usable datagram frame size.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), watchos(9.0), tvos(16.0))
+uint16_t
+nw_quic_get_stream_usable_datagram_frame_size(nw_protocol_metadata_t metadata);
+
+/*!
  * @function nw_quic_get_application_error
  *
  * @abstract
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/resolver_config.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/resolver_config.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/resolver_config.h	2022-02-23 07:09:41.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/resolver_config.h	2022-06-03 18:06:50.000000000 -0400
@@ -1,6 +1,6 @@
 //
 //  resolver_config.h
-//  Network
+//  libnetwork
 //
 //  Copyright (c) 2020 Apple Inc. All rights reserved.
 //
@@ -9,7 +9,7 @@
 #define __NW_RESOLVER_CONFIG_H__
 
 #ifndef __NW_INDIRECT__
-#warning "Please include <Network/Network.h> instead of this file directly."
+#warning "Please include <Network/Network_Private.h> instead of this file directly."
 #endif // __NW_INDIRECT__
 
 #include <Network/nw_object.h>
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/txt_record.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/txt_record.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/txt_record.h	2022-02-23 07:12:48.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/txt_record.h	2022-05-31 15:02:20.000000000 -0400
@@ -15,6 +15,7 @@
 #include <Network/nw_object.h>
 #include <stdlib.h>
 #include <stdbool.h>
+#include <stdint.h>
 
 NW_ASSUME_NONNULL_BEGIN
 
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/ws_options.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/ws_options.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/ws_options.h	2022-02-23 07:12:48.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/Network.framework/Headers/ws_options.h	2022-05-31 15:04:06.000000000 -0400
@@ -1,8 +1,8 @@
 //
 //  ws_options.h
-//  libnetcore
+//  Network
 //
-//  Copyright (c) 2018-2019 Apple Inc. All rights reserved.
+//  Copyright (c) 2018-2019, 2022 Apple Inc. All rights reserved.
 //
 
 #ifndef __NW_WS_OPTIONS_H__
@@ -37,6 +37,9 @@
 
 	/*!
 	 *	@const nw_ws_opcode_cont Denotes a continuation frame.
+	 *
+	 *	Protocol WebSocket handles continuation frames internally,
+	 *	so clients will not see or use continuation frames.
 	 */
 	nw_ws_opcode_cont = 0x0,
 
Clone this wiki locally