Skip to content

Network iOS xcode16.0 b1

Rolf Bjarne Kvinge edited this page Aug 20, 2024 · 3 revisions

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

diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/listener.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/listener.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/listener.h	2024-04-13 15:18:28
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/listener.h	2024-05-30 02:48:23
@@ -88,6 +88,29 @@
 nw_listener_create_with_port(const char *port, nw_parameters_t parameters);
 
 /*!
+ * @function nw_listener_create_with_launchd_key
+ *
+ * @abstract
+ *		Creates a network listener from a launchd key.
+ *
+ * @param parameters
+ *		The parameters to use for the listener. These include the protocols to be
+ *		used for the listener. Since launchd creates the listening sockets, these
+ *		parameters may not be applied in all cases.
+ *
+ * @param launchd_key
+ *		The name of the socket entry as specified in the launchd.plist.
+ *
+ * @result
+ *		Returns an allocated nw_listener_t object.
+ *		Callers are responsible for deallocating using nw_release(obj) or [obj release].
+ *		These objects support ARC.
+ */
+API_AVAILABLE(macos(10.14)) API_UNAVAILABLE(ios, watchos, tvos)
+NW_RETURNS_RETAINED nw_listener_t
+nw_listener_create_with_launchd_key(nw_parameters_t parameters, const char *launchd_key);
+
+/*!
  * @function nw_listener_create
  *
  * @abstract
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h	2024-04-13 13:49:21
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h	2024-05-30 02:48:23
@@ -142,14 +142,6 @@
 #  define NW_EXPORT_PROJECT __attribute__((visibility("default")))
 #endif // !NW_EXPORT_PROJECT
 
-#ifndef NW_NOT_i386_MAC
-#  if !TARGET_OS_OSX || !defined(__i386__)
-#    define NW_NOT_i386_MAC 1
-#  else // !TARGET_OS_OSX || !__i386__
-#    define NW_NOT_i386_MAC 0
-#  endif // !TARGET_OS_OSX || !__i386__
-#endif // NW_NOT_i386_MAC
-
 
 #if !OS_OBJECT_USE_OBJC_RETAIN_RELEASE
 
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/parameters.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/parameters.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/parameters.h	2024-03-22 20:08:57
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/parameters.h	2024-05-30 05:17:31
@@ -2,7 +2,7 @@
 //  parameters.h
 //  Network
 //
-//  Copyright (c) 2014-2021 Apple Inc. All rights reserved.
+//  Copyright (c) 2014-2021, 2024 Apple Inc. All rights reserved.
 //
 
 #ifndef __NW_PARAMETERS_H__
@@ -1064,6 +1064,11 @@
 	nw_parameters_expired_dns_behavior_allow = 1,
 	/*! @const nw_parameters_expired_dns_behavior_allow Explicitly prohibit the use of expired DNS answers */
 	nw_parameters_expired_dns_behavior_prohibit = 2,
+	/*! @const nw_parameters_expired_dns_behavior_persistent Allow the use of expired DNS answers, and store answers in a persistent per-process cache.
+				This should only be set for hostnames whose resolutions are not expected to change across networks. */
+	nw_parameters_expired_dns_behavior_persistent
+	   API_AVAILABLE(macos(15.0), ios(18.0), watchos(11.0), tvos(18.0), visionos(2.0))
+	   = 3,
 } nw_parameters_expired_dns_behavior_t;
 
 /*!
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/quic_options.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/quic_options.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/quic_options.h	2024-03-22 19:59:22
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/quic_options.h	2024-05-30 05:04:15
@@ -823,6 +823,14 @@
 nw_quic_get_keepalive_interval(nw_protocol_metadata_t metadata);
 
 /*!
+ * @define NW_QUIC_CONNECTION_DEFAULT_KEEPALIVE
+ * @discussion A sentinel value passed to `nw_quic_set_keepalive_interval` to configure
+ * 		the default keepalive value. The current default behavior is to send a keepalive
+ * 		every 20 seconds, although this is subject to change.
+ */
+#define NW_QUIC_CONNECTION_DEFAULT_KEEPALIVE	UINT16_MAX
+
+/*!
  * @function nw_quic_set_keepalive_interval
  *
  * @abstract
Clone this wiki locally