I have a network extension (AppProxyProvider) hosted inside a Mac OS app. Both are signed with the same Developer ID. I am able to programatically install and start the extension from the hosting app:
session.startTunnel()
The proxy provider is successfully started and works as expected.
Unfortunately I am not able to communicate with the extension from the app:
session.sendProviderMessage(data)
Doesn't return any error but the handleAppMessage
method is never called. Also I see the following error in the system log:
nesessionmanager: [com.apple.networkextension:] NESMTransparentProxySession[Primary Tunnel:My Transparent Proxy:60F50D75-194D-4FB6-A9D9-7639A561DF5E:(null)]: process 43158 is not entitled to establish IPC with plugins of type xxxxx
where xxxxx
is the bundle id of my hosting app.
Is there some entitlement that I am missing? Could this somehow be related with the com.apple.security.application-groups
entitlement and the TeamID prefix that gets prepended?
I am testing this on Mac OS Ventura 13.2.1