boostorg / boostorg/context

GCS (Guarded Control Stack) support is missing

Open
#332 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Assembly
Stars
370
Forks
186
Avg merge
24d 6h
Merged PRs (30d)
1

Description

When building with GCC15+, binutils 2.44+, glibc 2.41+ and `-mbranch-protection=standard` on (openSUSE Tumbleweed) aarch64, this enables PAC, BTI and GCS (Guarded Control Stack).
PAC and BTI are already supported with https://github.com/boostorg/context/pull/312
A patch similar to https://github.com/smuellerDD/leancrypto/commit/fe9751f2b13581e938f25b82f3e725372223af81 for `src/asm/*_arm64_aapcs_elf_gas.S` should be enough if assembler code does nothing around control flow (things like loaders, exception unwinders, etc)

More details on GCS:
* https://community.arm.com/arm-community-blogs/b/tools-software-ides-blog/posts/gcc-15-continuously-improving#guarded
* https://docs.kernel.org/next/arch/arm64/gcs.html

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.