Post

Replies

Boosts

Views

Activity

Reply to Network extension authorization dialog not appearing
The extension is a Transparent Proxy Provider, so that's the authorization that should come up. We've had this happen occasionally on our automated tests, which run in a VM with no other extensions installed, so I think I can rule that out. (The automated software expects the window to appear, so it can then "click" it; it doesn't, so the test fails. Intermittently.) I just filed FB17948001, with the sysdiagnose attached. I know it's WWDC so honestly I'm not expecting anyone to have a lot of spare cycles. 😄
Topic: App & System Services SubTopic: Core OS Tags:
Jun ’25
Reply to What *is* the 12 hour energy impact?
The extension gets calls for sleep and wake, and log them. Nothing else happens in the interim, other than (sometimes) some already-existing flows. The other daemons opt into IOKit's power notifications, and when sleep happens, they set it up so any timer-invoked actions just return immediately. The GUI app doesn't do anything special for sleep or wakeup, mainly because I wasn't sure what I should do. 😄
Topic: App & System Services SubTopic: Core OS Tags:
May ’25
Reply to Silly question: getting a user's email address(es)
Took a while, but this looks like it would do it: AltSecurityIdentities: X509:<T>CN=Apple Root CA,OU=Apple Certification Authority,O=Apple Inc.,C=US<S>CN=com.apple.idms.appleid.prd.001006-08-6e1a760f-f653-4f65-b28d-2d5dd5ff9582 PlatformSSO:foo@kithrup.com So that's the key AltSecurityIdentities, and it looks like that then has a dictionary or array? Now how would I get that programmatically...
Topic: App & System Services SubTopic: General Tags:
May ’25
Reply to XPC listener initialized in System Extesnion invalidates incoming connection under certain conditions
For us, it happens on both Apple Silicon and Intel, and only on upgrades. Once this happens, it can only be fixed by uninstalling the extension and re-installing it, which is super annoying because that means that (without MDM) it needs to be approved by the user twice. (Well, ok, a reboot also fixes it. But killing the extension and letting it restart doesn't fix it, is more my point.) Honestly this seems like a bug with launchd.
Apr ’25
Reply to Endpoint Security Framework and signals
AH HA! I have found two problems! I had it set to cache the results, which resulted in no more auth messages. I convert the messages to an ObjC class, and for the process initialization, I'd forgotten to initialize the pid property. This resulted in all processes having a pid of 0, which of course I skipped because that's the kernel! (I allow launchd, aka pid 1, to send signals. Things get bothersome otherwise.) PEBKAC FOR THE WIN! 😄 This took a long time to diagnose because it's a bad idea to use breakpoints on a process that is using ESF for authorizations.
Topic: App & System Services SubTopic: Core OS Tags:
Jan ’25