PR_PAC_RESET_KEYS(2const)

NUME
PR_PAC_RESET_KEYS - reinițializează cheile codului de autentificare a indicatorului firului apelant

BIBLIOTECA
Biblioteca C standard (libc, -lc)

SINOPSIS
#include <linux/prctl.h>  /* Definirea constantelor PR_* */
#include <sys/prctl.h>

int prctl(PR_PAC_RESET_KEYS, unsigned long keys, 0L, 0L, 0L);

DESCRIERE
Reinițializează în siguranță cheile de autentificare a indicatorului firului la noile valori aleatorii generate de nucleu.

Setul de chei care urmează să fie reinițializate este specificat de keys, care trebuie să fie un SAU logic de zero sau mai multe din următoarele:

PR_PAC_APIAKEY
    cheia A de autentificare a instrucțiunii

PR_PAC_APIBKEY
    cheia B de autentificare a instrucțiunii

PR_PAC_APDAKEY
    cheia A de autentificare a datelor

PR_PAC_APDBKEY
    cheia A de autentificare a datelor

PR_PAC_APGAKEY
    cheia „A” de autentificare generică

    (Da, prieteni, chiar nu există o cheie B generică.)

Ca un caz special, dacă keys este zero, atunci toate cheile sunt reinițializate. Deoarece în viitor ar putea fi adăugate noi chei, acesta este modul recomandat de a șterge complet cheile existente atunci când se stabilește un context de execuție curat.

Nu este necesar să se utilizeze PR_PAC_RESET_KEYS în pregătirea apelării execve(2), deoarece execve(2) reinițializează toate cheile de autentificare ale indicatorului.

VALOAREA RETURNATĂ
În caz de succes, se returnează 0. În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI-IEȘIRE

EINVAL
    keys conține biți definiți care nu sunt valabili sau acceptați pe această platformă.

STANDARDE
Linux. Doar arm64.

ISTORIC
Linux 5.0 (arm64).

AVERTISMENTE
Deoarece compilatorul sau mediul de execuție pot utiliza unele sau toate cheile, un PR_PAC_RESET_KEYS reușit poate bloca procesul de apelare. Condițiile de utilizare în siguranță sunt complexe și depind de sistem. Nu îl utilizați decât dacă știți ce faceți.

CONSULTAȚI ȘI
prctl(2)

Pentru mai multe informații, consultați fișierul sursă al nucleului Documentation/arm64/pointer-authentication.rst.

TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.