Subject: bug#50666: 28.0.50; Fix native compilation on Cygwin

From: Achim Gratz <[email-masked]>
Date: Thu, 23 Sep 2021 20:25:02 +0200

Eli Zaretskii writes:
> You mean, ASLR doesn't work with Cygwin because it must use the same
> address in the forked process?  But then why did Ken say that ASLR and
> High Entropy could solve the problem with the *.eln files -- isn't
> that the same problem?

It is, but on 64bit with the massive address space and high entropy
using most of it, it will often "just work" for quite some time.

> Sorry, I don't understand.  My suggestion was, if you need to make the
> *.eln files be marked as ASLR with High Entropy, to use a variable we
> have for this purpose, it will force the linker to produce *.eln files
> with these bits set in the PE+ header.  What other control do you need
> for your purposes, or what am I missing?

The control that Cygwin would need is an indication to whatever
generates the image base shifts for ASLR that it should not re-map an
image that is already in use elsewhere (maybe just in the same process
group).  ASLR already re-uses the address for the same image most of the
time (the exact behaviour is different across Windows versions), but
depending on circumstances outside your control it can suddenly decide
to use a different address.

Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Factory and User Sound Singles for Waldorf rackAttack:
http://Synth.Stromeko.net/Downloads.html#WaldorfSounds