[PATCH 2/2] aarch64: Support PLT with PAC

Szabolcs Nagy Szabolcs.Nagy@arm.com
Thu Jun 20 17:08:00 GMT 2019


Add pointer authentication code to the function pointers in PLTGOT if
DT_AARCH64_PAC_PLT is set on an elf binary. In such binaries the PLT
authenticates the pointer loaded from the GOT entry. This is only valid
in LP64 binaries and only useful when the PLTGOT is writable at runtime,
i.e. with lazy binding.

Note: TLS descriptors are not protected, the static linker should ensure
that GOT entries with TLSDESC relocations are read-only, i.e. they are
not lazy resolved.

2019-06-20  Szabolcs Nagy  <szabolcs.nagy@arm.com>

	* sysdeps/aarch64/dl-machine.h (set_jump_slot): Define.
	(elf_machine_fixup_plt): Use set_jump_slot.
	(elf_machine_rela): Likewise.
	(elf_machine_lazy_rel): Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-aarch64-Support-PLT-with-PAC.diff
Type: text/x-patch
Size: 3604 bytes
Desc: 0002-aarch64-Support-PLT-with-PAC.diff
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20190620/449deb3d/attachment.bin>


More information about the Libc-alpha mailing list