draft proposal for ref counting in D
Michel Fortin
michel.fortin at michelf.ca
Mon Oct 14 20:11:30 PDT 2013
On 2013-10-15 02:20:49 +0000, "deadalnix" <deadalnix at gmail.com> said:
>> Also, what are the calls required to implement page protection and COW
>> on posix? I'd like to check whether those are allowed within the OS X
>> and iOS sandbox. For instance fork() isn't allowed for sandboxed apps.
>
> You need mmap, mprotect and all the signal handling machinery.
mprotect is the one I'm worried about, as it lets you set the
executable bit (among other things) which could be exploited to run
arbitrary code. So I tested it and it seems to work fine on OS X inside
the sandbox (including for setting the executable bit). I guess an
executable with a reference to mprotect would probably also pass
Apple's Mac App Store validation, but I haven't tested.
mprotect isn't available at all with the iOS SDK. So making this
collector work on iOS (and the iOS Simulator) would require a different
codegen.
--
Michel Fortin
michel.fortin at michelf.ca
http://michelf.ca
More information about the Digitalmars-d
mailing list