-
Notifications
You must be signed in to change notification settings - Fork 572
Network iOS xcode27.0 b3
Alex Soto edited this page Jul 7, 2026
·
1 revision
#Network.framework
diff -ruN /Applications/Xcode_27.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h
--- /Applications/Xcode_27.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h 2026-06-16 03:22:32
+++ /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/nw_object.h 2026-06-27 03:19:58
@@ -138,6 +138,10 @@
#endif // __OBJC__ && objc_arc && objc_externally_retained
#endif // !NW_EXTERNALLY_RETAINED
+#ifndef NW_EXPORT
+# define NW_EXPORT __attribute__((visibility("default")))
+#endif // !NW_EXPORT
+
#ifndef NW_EXPORT_PROJECT
# define NW_EXPORT_PROJECT __attribute__((visibility("default")))
#endif // !NW_EXPORT_PROJECT
diff -ruN /Applications/Xcode_27.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/tcp_options.h /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/tcp_options.h
--- /Applications/Xcode_27.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/tcp_options.h 2026-06-18 00:07:37
+++ /Applications/Xcode_27.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Network.framework/Headers/tcp_options.h 2026-06-27 03:07:50
@@ -414,23 +414,40 @@
* @function nw_tcp_set_max_pacing_rate
*
* @abstract
- * Set the maximum pacing rate for TCP transmission in bytes per second.
- * TCP pacing spreads out packet transmission to avoid bursts and reduce
- * network congestion. The actual pacing rate used will be the minimum
- * of this value and the rate computed from cwnd/RTT.
+ * Set a maximum pacing rate for a TCP connection, in bytes per second.
*
- * A value of 0 or UINT64_MAX means unlimited (disables pacing).
+ * @discussion
+ * TCP pacing spreads outgoing packet transmission across time to avoid
+ * bursts and reduce queueing in the network. With a cap in place, the
+ * on-wire rate is the minimum of (a) this cap, and (b) the rate computed
+ * from the congestion window divided by smoothed RTT. The cap therefore
+ * never raises throughput above what congestion control would otherwise
+ * allow.
*
+ * A value of 0 or UINT64_MAX disables pacing on this connection — the
+ * connection sends without pacing (subject only to congestion control).
+ *
+ * Rates in the open interval (0, 12500) are silently clamped up to
+ * 12500 bytes/second (100 Kbps). Callers needing genuinely sub-100-Kbps
+ * pacing must shape at the application layer.
+ *
+ * The cap may be updated at any time during the lifetime of an
+ * established connection. Each call replaces the prior value.
+ *
* @param metadata
- * A TCP protocol metadata object from an established connection.
+ * A TCP protocol metadata object from an established connection
+ * (e.g. obtained via nw_connection_access_established_protocol_metadata).
*
* @param max_pacing_rate
- * Maximum pacing rate in bytes per second.
+ * Maximum pacing rate in bytes per second. 0 or UINT64_MAX disables
+ * pacing on this connection.
*
* @result
- * Returns 0 on success, or an error code on failure.
+ * Returns 0 on success, or a POSIX errno value on failure (e.g. EINVAL
+ * if metadata is not a TCP metadata object, or the underlying socket
+ * error).
*/
-API_AVAILABLE(macos(27.0), ios(27.0), watchos(27.0), tvos(27.0), visionos(27.0))
+NW_EXPORT API_AVAILABLE(anyappleos(27.0))
int
nw_tcp_set_max_pacing_rate(nw_protocol_metadata_t metadata,
uint64_t max_pacing_rate);