Skip to content

[AArch64] Add initial support for PAC relocs #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 15 commits into
base: master
Choose a base branch
from

Conversation

kovdan01
Copy link

@kovdan01 kovdan01 commented Aug 23, 2024

This replaces #1 with some enhancements:

  • support for signed GOT and PLT GOT;
  • support for addr discr of init/fini pointers;
  • support for R_AARCH64_AUTH_TLSDESC reloc.

eleviant and others added 10 commits September 5, 2023 13:29
TODO: do we need this to be done for vDSO as well?
- Do not check pointer signature before we are relocated
  as this might be a pointer to global.
- Sign function pointers returned from __vdsosym.
- Do not apply PAC relocs in __dls2, because we may need
  to do this second time in __dls3. We can't do this as
  we overwrite authentication scheme when applying relocs.
@kovdan01 kovdan01 force-pushed the dkovalev/pauth-release-19.x branch from 1268c66 to 9525be8 Compare September 12, 2024 16:29
…resent

Previously, it was signed unconditionally w/o taking the dynamic tag into
account (only `__has_feature(ptrauth_calls)` was checked by preprocessor).

See also specification:
https://github.com/ARM-software/abi-aa/blob/main/pauthabielf64/pauthabielf64.rst#recording-a-signed-plt-got-in-the-elf-file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants