aboutsummaryrefslogtreecommitdiff
path: root/gcc/po
diff options
context:
space:
mode:
authorMarek Polacek <polacek@redhat.com>2023-06-22 11:30:01 -0400
committerMarek Polacek <polacek@redhat.com>2023-06-22 13:43:32 -0400
commit33ebb0dff9bb022f1e0709e0e73faabfc3df7931 (patch)
tree857cc8336fcbe426044fe759571d437032fb6b2a /gcc/po
parent4ced8363622b31910cda61796a28fe2cbf70faa7 (diff)
downloadgcc-33ebb0dff9bb022f1e0709e0e73faabfc3df7931.zip
gcc-33ebb0dff9bb022f1e0709e0e73faabfc3df7931.tar.gz
gcc-33ebb0dff9bb022f1e0709e0e73faabfc3df7931.tar.bz2
configure: Implement --enable-host-bind-now
As promised in the --enable-host-pie patch, this patch adds another configure option, --enable-host-bind-now, which adds -z now when linking the compiler executables in order to extend hardening. BIND_NOW with RELRO allows the GOT to be marked RO; this prevents GOT modification attacks. This option does not affect linking of target libraries; you can use LDFLAGS_FOR_TARGET=-Wl,-z,relro,-z,now to enable RELRO/BIND_NOW. With this patch: $ readelf -Wd cc1{,plus,obj,gm2} f951 lto1 cpp rust1 gnat1 | grep FLAGS 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE 0x000000000000001e (FLAGS) BIND_NOW 0x000000006ffffffb (FLAGS_1) Flags: NOW PIE c++tools/ChangeLog: * configure.ac (--enable-host-bind-now): New check. * configure: Regenerate. gcc/ChangeLog: * configure.ac (--enable-host-bind-now): New check. Add -Wl,-z,now to LD_PICFLAG if --enable-host-bind-now. * configure: Regenerate. * doc/install.texi: Document --enable-host-bind-now. lto-plugin/ChangeLog: * configure.ac (--enable-host-bind-now): New check. Link with -z,now. * configure: Regenerate.
Diffstat (limited to 'gcc/po')
0 files changed, 0 insertions, 0 deletions