summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjschuh@chromium.org <jschuh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-12 17:43:24 +0000
committerjschuh@chromium.org <jschuh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-12 17:43:24 +0000
commit6980af2e8a17cb6a5c3bf58d5c5d04fbaf5b40e1 (patch)
treeaaa02ebc0b983b2e8a8f8178b0ab0ee975de3a5e
parent16d2abe7e4acc6cd66cdf1c4cd83f8d1e9d58f29 (diff)
downloadchromium_src-6980af2e8a17cb6a5c3bf58d5c5d04fbaf5b40e1.zip
chromium_src-6980af2e8a17cb6a5c3bf58d5c5d04fbaf5b40e1.tar.gz
chromium_src-6980af2e8a17cb6a5c3bf58d5c5d04fbaf5b40e1.tar.bz2
Fix prefered base addresses on win64
We need a +4GB base so the loader will randomize above 4GB. BUG=361670 R=robertshield@chromium.org,jam@chromium.org NOTRY=TRUE Review URL: https://codereview.chromium.org/233413008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263540 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/chrome_dll.gypi3
-rw-r--r--chrome_elf/chrome_elf.gyp14
2 files changed, 14 insertions, 3 deletions
diff --git a/chrome/chrome_dll.gypi b/chrome/chrome_dll.gypi
index acad974..47e9304 100644
--- a/chrome/chrome_dll.gypi
+++ b/chrome/chrome_dll.gypi
@@ -144,7 +144,6 @@
},
'msvs_settings': {
'VCLinkerTool': {
- 'BaseAddress': '0x01c30000',
'ImportLibrary': '$(OutDir)\\lib\\chrome_dll.lib',
# Set /SUBSYSTEM:WINDOWS for chrome.dll (for consistency).
'SubSystem': '2',
@@ -154,6 +153,8 @@
'UseLibraryDependencyInputs': "true",
}],
['target_arch=="ia32"', {
+ # Don't set an x64 base address (to avoid breaking HE-ASLR).
+ 'BaseAddress': '0x01c30000',
# Link against the XP-constrained user32 import library
# instead of the platform-SDK provided one to avoid
# inadvertently taking dependencies on post-XP user32
diff --git a/chrome_elf/chrome_elf.gyp b/chrome_elf/chrome_elf.gyp
index 7eeae2b..0b612a8 100644
--- a/chrome_elf/chrome_elf.gyp
+++ b/chrome_elf/chrome_elf.gyp
@@ -57,7 +57,12 @@
],
'msvs_settings': {
'VCLinkerTool': {
- 'BaseAddress': '0x01c20000',
+ 'conditions': [
+ ['target_arch=="ia32"', {
+ # Don't set an x64 base address (to avoid breaking HE-ASLR).
+ 'BaseAddress': '0x01c20000',
+ }],
+ ],
# Set /SUBSYSTEM:WINDOWS.
'SubSystem': '2',
'AdditionalDependencies!': [
@@ -192,7 +197,12 @@
],
'msvs_settings': {
'VCLinkerTool': {
- 'BaseAddress': '0x01c10000',
+ 'conditions': [
+ ['target_arch=="ia32"', {
+ # Don't set an x64 base address (to avoid breaking HE-ASLR).
+ 'BaseAddress': '0x01c20000',
+ }],
+ ],
# Set /SUBSYSTEM:WINDOWS.
'SubSystem': '2',
},