aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/dcrt0.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2022-10-26 21:16:35 +0200
committerCorinna Vinschen <corinna@vinschen.de>2022-10-28 16:26:53 +0200
commit2f9b8ff00cce0d0ceeb1091b6b9aecae914ddb89 (patch)
tree2adcede5e71e73240c69cd1be7cd96c4280459fc /winsup/cygwin/dcrt0.cc
parentc0776fa7bade123d5b33e44a9282f12dc3d2e10e (diff)
downloadnewlib-2f9b8ff00cce0d0ceeb1091b6b9aecae914ddb89.zip
newlib-2f9b8ff00cce0d0ceeb1091b6b9aecae914ddb89.tar.gz
newlib-2f9b8ff00cce0d0ceeb1091b6b9aecae914ddb89.tar.bz2
Cygwin: decouple cygheap from Cygwin DLL
One reason that ASLR is tricky is the fact that the cygheap is placed at the end of the DLL and especially that it's expected to be growable. To support ASLR, this construct must go. Define dedicated cygheap memory region and reserve entire region. Commit 3 Megs, as was the default size of the cygheap before. Fix linker script accordingly, drop a now useless version check in get_cygwin_startup_info().
Diffstat (limited to 'winsup/cygwin/dcrt0.cc')
-rw-r--r--winsup/cygwin/dcrt0.cc3
1 files changed, 0 insertions, 3 deletions
diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc
index e119709..84db38c 100644
--- a/winsup/cygwin/dcrt0.cc
+++ b/winsup/cygwin/dcrt0.cc
@@ -527,9 +527,6 @@ get_cygwin_startup_info ()
{
if ((res->intro & OPROC_MAGIC_MASK) == OPROC_MAGIC_GENERIC)
multiple_cygwin_problem ("proc intro", res->intro, 0);
- else if (res->cygheap != (void *) &_cygheap_start)
- multiple_cygwin_problem ("cygheap base", (uintptr_t) res->cygheap,
- (uintptr_t) &_cygheap_start);
unsigned should_be_cb = 0;
switch (res->type)