OLD | NEW |
1 Name: mach_override | 1 Name: mach_override |
2 Short Name: Part of the mach_star project | 2 Short Name: Part of the mach_star project |
3 Version: Unknown | 3 Version: Unknown |
4 URL: https://github.com/rentzsch/mach_star | 4 URL: https://github.com/rentzsch/mach_star |
5 Date: 04/18/2011 | 5 Date: 04/18/2011 |
6 Revision: 32c4560eb09848073f69 | 6 Revision: 32c4560eb09848073f69 |
7 License: MIT | 7 License: MIT |
8 Security Critical: Yes. | 8 Security Critical: Yes |
9 | 9 |
10 | 10 |
11 Description: | 11 Description: |
12 This is the mach_override part of the lastest (as of 04/11/2011) revision of | 12 This is the mach_override part of mach_star, namely: |
13 mach_star, namely: | |
14 | 13 |
15 https://github.com/rentzsch/mach_star/tree/aeb1720815c7255070da0f548267ccfdf7b
d50b7 | 14 https://github.com/rentzsch/mach_star/tree/aeb1720815c7255070da0f548267ccfdf7b
d50b7 |
16 | 15 |
17 This package is used to replace framework functions with different | 16 This package is used to replace framework functions with different |
18 implementations at run time. | 17 implementations at run time. |
19 | 18 |
20 | 19 |
21 Local Modifications: | 20 Local Modifications: |
22 | 21 |
23 None; all local changes have been upstreamed. | 22 Enabled makeIslandExecutable for 32-bit i386. Main executables linked and run |
| 23 on Mac OS X 10.7 ("Lion") have non-executable heap pages by default. See |
| 24 http://crbug.com/79642. |
| 25 |
| 26 Changed the logic surrounding calls to makeIslandExecutable so that |
| 27 mach_override_ptr can return successfully when originalFunctionReentryIsland, |
| 28 an optional argument, is NULL. Failure in makeIslandExecutable will now |
| 29 trigger cleanup of allocated memory. |
| 30 |
| 31 Changed allocateBranchIsland to use a more appropriate address range per |
| 32 http://developer.apple.com/library/mac/#documentation/Performance/Conceptual/Lau
nchTime/Articles/Prebinding.html. |
| 33 The range for x86 (32-bit) with kAllocateHigh set is now [0xffc00000, |
| 34 0xffe00000). In this configuration, the loop is now guaranteed to terminate |
| 35 instead of exceeding its permitted range. Previously, this function would |
| 36 begin looking for a page at 0xfefff000 and would not stop, even after wrapping |
| 37 around to low memory. The URL above states 0xfefff000 is within a range marked |
| 38 "Reserved for use by the pasteboard and other system services. Do not use this |
| 39 address range." |
OLD | NEW |