I'm trying to create a network extension packaged as a system extension on macOS,
let request = OSSystemExtensionRequest.activationRequest(forExtensionWithIdentifier: "com.example.Desktop.PacketTunnelDesktop",
queue: DispatchQueue.main)
request.delegate = delegate
// Submit the request to the system.
let extensionManager = OSSystemExtensionManager.shared
extensionManager.submitRequest(request)
The application is installed in /Applications, I have also turned off SIP and systemextensionsctl developer on
I'm not getting any breakpoint hits on my request delegate, but I am getting some logs in the console app:
making activation decision for extension with teamID teamID("XXXXXX"), identifier com.example.Desktop.PacketTunnelDesktop
no related kext found for sysex `com.example.Desktop.PacketTunnelDesktop`
extension XXXXXXX com.example.Desktop.PacketTunnelDesktop (1.0/1) advancing state from validating to validating_by_category
validate: category: com.apple.system_extension.network_extension, extension: com.example.Desktop.PacketTunnelDesktop
waiting for external validation of extension with identifier com.example.Desktop.PacketTunnelDesktop
It seems to stop here, and running systemsextensionsctl list shows:
[validating by category] as the status.
I'm trying to find some barebones example code for a network extension packaged as system extension but couldn't find any. Any ideas where to go from here?