Path: blob/master/security/integrity/platform_certs/load_ipl_s390.c
26424 views
// SPDX-License-Identifier: GPL-2.012#include <linux/kernel.h>3#include <linux/sched.h>4#include <linux/cred.h>5#include <linux/err.h>6#include <linux/efi.h>7#include <linux/slab.h>8#include <keys/asymmetric-type.h>9#include <keys/system_keyring.h>10#include <asm/boot_data.h>11#include "../integrity.h"1213/*14* Load the certs contained in the IPL report created by the machine loader15* into the platform trusted keyring.16*/17static int __init load_ipl_certs(void)18{19void *ptr, *end;20unsigned int len;2122if (!ipl_cert_list_addr)23return 0;24/* Copy the certificates to the platform keyring */25ptr = __va(ipl_cert_list_addr);26end = ptr + ipl_cert_list_size;27while ((void *) ptr < end) {28len = *(unsigned int *) ptr;29ptr += sizeof(unsigned int);30add_to_platform_keyring("IPL:db", ptr, len);31ptr += len;32}33return 0;34}35late_initcall(load_ipl_certs);363738