806a15b254
Kernel documentation states that it will change PAuth keys on exec() calls. Verify that all keys are correctly switched to new ones. Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com> Reviewed-by: Vincenzo Frascino <Vincenzo.Frascino@arm.com> Reviewed-by: Amit Daniel Kachhap <amit.kachhap@arm.com> Acked-by: Shuah Khan <skhan@linuxfoundation.org> Cc: Shuah Khan <shuah@kernel.org> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Link: https://lore.kernel.org/r/20200918104715.182310-4-boian4o1@gmail.com Signed-off-by: Will Deacon <will@kernel.org>
29 lines
499 B
C
29 lines
499 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/* Copyright (C) 2020 ARM Limited */
|
|
|
|
#ifndef _HELPER_H_
|
|
#define _HELPER_H_
|
|
|
|
#include <stdlib.h>
|
|
|
|
#define NKEYS 5
|
|
|
|
struct signatures {
|
|
size_t keyia;
|
|
size_t keyib;
|
|
size_t keyda;
|
|
size_t keydb;
|
|
size_t keyg;
|
|
};
|
|
|
|
void pac_corruptor(void);
|
|
|
|
/* PAuth sign a value with key ia and modifier value 0 */
|
|
size_t keyia_sign(size_t val);
|
|
size_t keyib_sign(size_t val);
|
|
size_t keyda_sign(size_t val);
|
|
size_t keydb_sign(size_t val);
|
|
size_t keyg_sign(size_t val);
|
|
|
|
#endif
|