This is somewhat to my question at On reboot, two instances of faceless app - but slightly different focus.
This is my understanding of how the system works, and please correct me if I'm wrong:
- A network extension can only be loaded by an application
- That application must contain the extension (in
Contents/Library/SystemExtensions
) - Only the application instance that loads an extension can get VPN notifications (eg,
NEVPNStatusDidChangeNotification
) - There does not appear to be a way to get the version of installed network extensions programmatically?
- When a second user logs in, and runs the containing app, and requests loading the extension, it does the normal replacement request.
Given that... how is it supposed to handle multiple users (via Fast User Switching)?