Skip to content

Commit cd71428

Browse files
committed
Update rst refs following doc page split.
1 parent 3b3ae37 commit cd71428

File tree

1 file changed

+6
-10
lines changed

1 file changed

+6
-10
lines changed

clang/docs/PointerAuthentication.rst

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ independently for I and D keys.)
118118
interfaces or as primitives in a compiler IR because they expose raw
119119
pointers. Raw pointers require special attention in the language
120120
implementation to avoid the accidental creation of exploitable code
121-
sequences; see the section on `Attackable code sequences`_.
121+
sequences.
122122

123123
The following details are all implementation-defined:
124124

@@ -172,9 +172,7 @@ Discriminators
172172
A discriminator is arbitrary extra data which alters the signature calculated
173173
for a pointer. When two pointers are signed differently --- either with
174174
different keys or with different discriminators --- an attacker cannot simply
175-
replace one pointer with the other. For more information on why discriminators
176-
are important and how to use them effectively, see the section on `Substitution
177-
attacks`_.
175+
replace one pointer with the other.
178176

179177
To use standard cryptographic terminology, a discriminator acts as a salt in
180178
the signing of a pointer, and the key data acts as a pepper. That is, both the
@@ -244,8 +242,7 @@ signing schema breaks down even more simply:
244242
It is important that the signing schema be independently derived at all signing
245243
and authentication sites. Preferably, the schema should be hard-coded
246244
everywhere it is needed, but at the very least, it must not be derived by
247-
inspecting information stored along with the pointer. See the section on
248-
`Attacks on pointer authentication`_ for more information.
245+
inspecting information stored along with the pointer.
249246

250247
Language Features
251248
-----------------
@@ -340,7 +337,7 @@ Produce a signed pointer for the given raw pointer without applying any
340337
authentication or extra treatment. This operation is not required to have the
341338
same behavior on a null pointer that the language implementation would.
342339

343-
This is a treacherous operation that can easily result in `signing oracles`_.
340+
This is a treacherous operation that can easily result in signing oracles.
344341
Programs should use it seldom and carefully.
345342

346343
``ptrauth_auth_and_resign``
@@ -361,8 +358,7 @@ a null pointer that the language implementation would.
361358
The code sequence produced for this operation must not be directly attackable.
362359
However, if the discriminator values are not constant integers, their
363360
computations may still be attackable. In the future, Clang should be enhanced
364-
to guaranteed non-attackability if these expressions are
365-
:ref:`safely-derived<Safe derivation>`.
361+
to guaranteed non-attackability if these expressions are safely-derived.
366362

367363
``ptrauth_auth_data``
368364
^^^^^^^^^^^^^^^^^^^^^
@@ -378,7 +374,7 @@ remove the signature.
378374
as ``pointer``. This operation is not required to have the same behavior on
379375
a null pointer that the language implementation would.
380376

381-
In the future when Clang makes `safe derivation`_ guarantees, the result of
377+
In the future when Clang makes safe derivation guarantees, the result of
382378
this operation should be considered safely-derived.
383379

384380
``ptrauth_sign_generic_data``

0 commit comments

Comments
 (0)