On 2/29/24 23:17, grischka wrote:
On 29.02.2024 07:26, Herman ten Brugge via Tinycc-devel wrote:
Setting CONFIG_RUNMEM_RO=0 looks incorrect to me because it sets write in executables. Apple has implemented W^X (Writes can not occur in executables) for security reasons.
This may also be implemented in in future linux/bsd releases.

Using CONFIG_RUNMEM_RO=1 may be the right thing to do in
future, however there was a severe off-bounds problem with
the un-mprotect call which I just fixed.  Maybe that was
the reason?

This did not work. We still use 'PROT_READ | PROT_WRITE | PROT_EXEC'.
Apple does not support that for security reasons.

Why do you want CONFIG_RUNMEM_RO=0? It was allways set to 1 before
and that worked fine on all targets I can test (about 20).
You changed it in "tccrun: resign from "advanced" system calls (memaligh/gettid)" on feb 25.
Why?

    Herman

_______________________________________________
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to