[Mono-osx] Disabling the mach header no heap execution flag on unix executable in app bundle?

aggieNick02 nick.neumann at ni.com
Mon Oct 22 20:43:29 UTC 2012


MonoDevelop 3.0.4.7 sets this flag on the unix executable in the app bundle.
You can see this by navigating within your package.app/Contents/MacOS
directory in terminal and doing otool -h <executableName> on the one file in
this directory. You will see that in the flags field to the right, the no
heap execute bit is set:

MH_NO_HEAP_EXECUTION 0x1000000

This is good from a security standpoint. Unfortunately, Silverlight has
issues with this, so this keeps me from using a webView to write a browser
wrapper that navigates to silverlight content. (Silverlight's issue with no
heap execute has been encountered by others - firefox solved it by forcing
silverlight to run out-of-process even in 32 bit firefox - see
https://bugzilla.mozilla.org/show_bug.cgi?id=759364.)

The best I can come up with in MonoDevelop is to try to turn the no heap
execute flag off manually using a hex editor. Is there any other way? Could
we consider adding it as an option to pass down somewhere in the MonoDevelop
compile process?



--
View this message in context: http://mono.1490590.n4.nabble.com/Disabling-the-mach-header-no-heap-execution-flag-on-unix-executable-in-app-bundle-tp4657060.html
Sent from the Mono - OSX mailing list archive at Nabble.com.


More information about the Mono-osx mailing list