Skip to content

NetworkExtension watchOS xcode14.3 beta1

Alex Soto edited this page Mar 15, 2023 · 2 revisions

#NetworkExtension.framework https://github.com/xamarin/xamarin-macios/pull/17810

diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/NetworkExtension.framework/Headers/NEAppPushProvider.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/NetworkExtension.framework/Headers/NEAppPushProvider.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/NetworkExtension.framework/Headers/NEAppPushProvider.h	2022-10-06 13:22:27
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/NetworkExtension.framework/Headers/NEAppPushProvider.h	2023-02-12 14:10:39
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2020-2021 Apple Inc.
+ * Copyright (c) 2020-2022 Apple Inc.
  * All rights reserved.
  */
 
@@ -60,6 +60,13 @@
  * @param userInfo A dictionary of custom information associated with the incoming call. This dictionary is passed to containg app as-is.
 */
 - (void)reportIncomingCallWithUserInfo:(NSDictionary * _Nonnull)userInfo API_AVAILABLE(ios(14.0)) API_UNAVAILABLE(macos, tvos) __WATCHOS_PROHIBITED;
+
+/*!
+ * @method reportPushToTalkMessageWithUserInfo:userinfo:
+ * @discussion This function is called by the provider when it receives a Push to Talk message on the connection.
+ * @param userInfo A dictionary of custom information associated with the Push to Talk message, such as the active remote participant. This dictionary is passed to the PTChannelManagerDelegate of the containing app if the user is joined to a Push to Talk channel.
+*/
+- (void)reportPushToTalkMessageWithUserInfo:(NSDictionary * _Nonnull)userInfo API_AVAILABLE(ios(16.4)) API_UNAVAILABLE(macos, macCatalyst, tvos) __WATCHOS_PROHIBITED;
 
 /*!
  * @method handleTimerEvent
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/NetworkExtension.framework/Headers/NEVPNProtocol.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/NetworkExtension.framework/Headers/NEVPNProtocol.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/NetworkExtension.framework/Headers/NEVPNProtocol.h	2022-10-06 13:22:27
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/NetworkExtension.framework/Headers/NEVPNProtocol.h	2023-02-12 00:14:01
@@ -74,7 +74,15 @@
 
 /*!
  * @property includeAllNetworks
- * @discussion If YES, all traffic will be sent over the tunnel, and all traffic will be dropped if the tunnel is down. The default is NO.
+ * @discussion If this property is set to YES then all network traffic is routed through the tunnel, with some exclusions. Several of the exclusions
+ * can be controlled with the excludeLocalNetworks, excludeCellularServices, and excludeAPNs properties. See the documentation for those properties.
+ * The following traffic is always excluded from the tunnel:
+ * - Traffic necessary for connecting and maintaining the device's network connection, such as DHCP.
+ * - Traffic necessary for connecting to captive networks.
+ * - Certain cellular services traffic that is not routable over the internet and is instead directly routed to the cellular network. See the
+ *   excludeCellularServices property for more details.
+ * - Network communication with a companion device such as a watchOS device.
+ * The default value of this property is NO.
  */
 @property BOOL includeAllNetworks API_AVAILABLE(macos(10.15), ios(14.0)) API_UNAVAILABLE(tvos) __WATCHOS_PROHIBITED;
 
@@ -83,6 +91,22 @@
  * @discussion If YES, all traffic destined for local networks will be excluded from the tunnel. The default is NO on macOS and YES on iOS.
  */
 @property BOOL excludeLocalNetworks API_AVAILABLE(macos(10.15), ios(14.2)) API_UNAVAILABLE(tvos, watchos) __WATCHOS_PROHIBITED;
+
+/*!
+ * @property excludeCellularServices
+ * @discussion If includeAllNetworks is set to YES and this property is set to YES, then internet-routable network traffic for cellular services
+ * (VoLTE, Wi-Fi Calling, IMS, MMS, Visual Voicemail, etc.) is excluded from the tunnel. Note that some cellular carriers route cellular services traffic
+ * directly to the carrier network, bypassing the internet. Such cellular services traffic is always excluded from the tunnel. The default value of this
+ * property is YES.
+ */
+@property BOOL excludeCellularServices API_AVAILABLE(macos(13.3), ios(16.4)) API_UNAVAILABLE(tvos, watchos) __WATCHOS_PROHIBITED;
+
+/*!
+ * @property excludeAPNs
+ * @discussion If includeAllNetworks is set to YES and this property is set to YES, then network traffic for the Apple Push Notification service (APNs)
+ * is excluded from the tunnel. The default value of this property is YES.
+ */
+@property BOOL excludeAPNs API_AVAILABLE(macos(13.3), ios(16.4)) API_UNAVAILABLE(tvos, watchos) __WATCHOS_PROHIBITED;
 
 /*!
  * @property enforceRoutes
Clone this wiki locally