Open GoogleCodeExporter opened 9 years ago
v002 forum topic
http://v002.info/forums/topic/syphon-server-osx-lion-sandboxed-environment/
Original comment by bangnoise@gmail.com
on 24 Apr 2012 at 5:46
There are two (at least) problems here
1. Server announce and discovery currently use NSDistributedNotificationCenter.
This is crippled inside the app sandbox (can carry no content) and ceases to be
useful. Consider it obsolete.
2. Mach lookup inside the app sandbox is restricted to a temporary entitlement
for a pre-determined name. We currently use runtime-generated UUIDs as names to
connect to remote CFMessagePorts to transmit details of our IOSurfaces
This could use some input from anyone who's worked with sandboxing (ie not me)
Potential solutions for 1. Server announce and discovery
- Bonjour (requires network in/out entitlements but otherwise works)
- Shared memory or somesuch using a file in a fixed position in the file
system. Is there a location multiple apps are permitted to use? Would it
require user consent once per app? Per launch?
- Others?
Potential solutions for 2. Messaging
- Uhhhhh... hopefully not pushing things through network sockets...
- A long list of pre-baked names we work through until we find a usable one?
Hopefully not... Hard to see the entitlement being granted anyway...
- Every app has one receiving CFMessagePort of its own naming which all
messaging is channelled through. Would require a small amount of setup by
developers
- Any others?
Sandbox IPC is geared towards app/helper communication and NOT communication
between true peers such as Syphon currently uses...
Original comment by bangnoise@gmail.com
on 15 Jun 2012 at 11:43
I haven't used sandboxing, but I'm interested in this as I've made a few max
syphon patches that I'd love to port over to the app store. My 2c (worth about
same):
Bonjour would work for me as long as there's not too many CPU interrupts for
network stuff (and if we can't use syphon across the network, why involve the
network stack unless we have to?)
I'd be find with pre-baked names as well, you could even have a simple standard
and protocol for naming conventions and for resolving any contention.
Original comment by michaelt...@gmail.com
on 5 Jul 2012 at 4:41
Original issue reported on code.google.com by
bangnoise@gmail.com
on 24 Apr 2012 at 5:41