As documented in this thread, there is a hard memory limit for iOS Network Extensions.
Is there a memory limit for macOS System Network Extensions?
I don’t think so. In fact, AFAICT macOS doesn’t limit NE appexes either.
So, here’s where I give away some of my secrets (-: These limits are actually encoded in a file on the system, /System/Library/LaunchDaemons/com.apple.jetsamproperties.Mac.plist
. Here’s a relevant snippet:
<key>com.apple.networkextension.app-proxy</key>
<dict>
<key>ActiveHardMemoryLimit</key>
<integer>-1</integer>
<key>InactiveHardMemoryLimit</key>
<integer>-1</integer>
<key>JetsamPriority</key>
<integer>14</integer>
</dict>
<key>com.apple.networkextension.packet-tunnel</key>
<dict>
<key>ActiveHardMemoryLimit</key>
<integer>-1</integer>
<key>InactiveHardMemoryLimit</key>
<integer>-1</integer>
<key>JetsamPriority</key>
<integer>14</integer>
</dict>
IMPORTANT The location and format of this file is not considered API. It’s fine to poke around in the file to get a better understanding of how the system works, but you must not ship code that relies on its details.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"