Open vade opened 10 years ago
The problem isn't limited to NSDistributedNotifications for service discovery - also CFMessage is disallowed and currently used for client setup and per-frame messaging.
We would welcome any work on this. Any pull request would ideally be accompanied with comparison of throughput and delay for any chosen alternatives.
Started a codebounty. https://www.bountysource.com/issues/24028084-sandbox-support
FYI we investigated using temporary exceptions to enable Syphon in our sandboxed app and found the following:
I finally got Syphon working in my music visualization app, but it looks like I won't be able to publish to the App Store because of Sandboxing.... a real shame.
Any chance there might be a fix to make Syphon compatible with macOS sandboxing in the near future?
Not in the near future, no, unless a third party contributes it. A rough outline of upcoming Syphon work is listed here.
Noting that #47 is related to the inevitable IPC changes when this is done.
Seems like an interesting solution - specifically the XPC anonymous connection vending?
Yes I've used this technique elsewhere but haven't tried it (or passing IOSurfaces) within the Sandbox - thanks for the note here. It would require applications add an entitlement to lookup our named service doing the brokering, which should be fine.
Currently, our reliance on NSDistributedNotifications for Server Announce, Server Retirement, SurfaceID exposure, etc, limits Mac App Store capability due to the fact that NSUserInfo dictionaries cannot be populated to Applications running in a sandboxed environment.
This limits Syphon Framework to only be included in non Mac App Store binaries. That is sad.