Skip to content

Commit

Permalink
[PAuthABI] Clarify overriding default ELF marking scheme.
Browse files Browse the repository at this point in the history
The default PAuth vendor and version for ELF files with no ELF
marking is (0,0) which is incompatible with everything. This is
the safest default as there is no information about what, if any,
signing schema is used by that ELF file.

Implementations can change this default in the presence of
supplemental information, such as a linker command line option.
For example there could be the equivalent of the -z force-bti
which declares that all ELF objects without the BTI property are
considered to be compatible.
  • Loading branch information
smithp35 committed Mar 11, 2024
1 parent 27409ba commit 281c9db
Showing 1 changed file with 7 additions and 3 deletions.
10 changes: 7 additions & 3 deletions pauthabielf64/pauthabielf64.rst
Original file line number Diff line number Diff line change
Expand Up @@ -933,8 +933,12 @@ compatibility.

* The absence of any ELF marking means no information on how pointers
are signed is available for this ELF file. When used in combination
with ELF files that contain ELF marking, then the file is assigned
the (``platform identifer``, ``version number``) of (0,0).
with ELF files that contain ELF marking, then by default the file is
assigned the (``platform identifer``, ``version number``) of (0,0).
Implementations may use additional information supplementary to the
ELF file, such as linker command-line options, to provide an
implementation defined `Core Information`_ for ELF files with no ELF
marking.

* The presence of ELF marking means that, if the file contains
pointers, they were signed in a compatible way with the schema
Expand Down Expand Up @@ -966,7 +970,7 @@ compatibility.
Information`_ is not recognized by the loader.

* If the platform identifier from the `Core Information`_ is the
reservd Invalid value 0.
reserved Invalid value 0.

Platforms may replace the base compatibility model with a
platform-specific model.
Expand Down

0 comments on commit 281c9db

Please sign in to comment.