]> git.proxmox.com Git - mirror_edk2.git/blame_incremental - IntelFrameworkPkg/Include/Ppi/Security.h
Renaming files/directories
[mirror_edk2.git] / IntelFrameworkPkg / Include / Ppi / Security.h
... / ...
CommitLineData
1/** @file\r
2 This file declares Security Architectural PPI.\r
3\r
4 Copyright (c) 2006, Intel Corporation\r
5 All rights reserved. This program and the accompanying materials\r
6 are licensed and made available under the terms and conditions of the BSD License\r
7 which accompanies this distribution. The full text of the license may be found at\r
8 http://opensource.org/licenses/bsd-license.php\r
9\r
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13 Module Name: Security.h\r
14\r
15 @par Revision Reference:\r
16 This PPI is defined in PEI CIS.\r
17 Version 0.91.\r
18\r
19**/\r
20\r
21#ifndef __SECURITY_PPI_H__\r
22#define __SECURITY_PPI_H__\r
23\r
24#include <PiPei.h>\r
25\r
26#define EFI_PEI_SECURITY_PPI_GUID \\r
27 { \\r
28 0x1388066e, 0x3a57, 0x4efa, {0x98, 0xf3, 0xc1, 0x2f, 0x3a, 0x95, 0x8a, 0x29 } \\r
29 }\r
30\r
31typedef struct _EFI_PEI_SECURITY_PPI EFI_PEI_SECURITY_PPI;\r
32\r
33/**\r
34 Allows the platform builder to implement a security policy in response\r
35 to varying file authentication states.\r
36\r
37 @param PeiServices Pointer to the PEI Services Table.\r
38 @param This Interface pointer that implements the particular EFI_PEI_SECURITY_PPI instance.\r
39 @param AuthenticationStatus\r
40 Status returned by the verification service as part of section extraction.\r
41 @param FfsFileHeader Pointer to the file under review.\r
42 @param DeferExecution Pointer to a variable that alerts the PEI Foundation to defer execution of a PEIM.\r
43\r
44 @retval EFI_SUCCESS The service performed its action successfully.\r
45 @retval EFI_SECURITY_VIOLATION The object cannot be trusted\r
46\r
47**/\r
48typedef\r
49EFI_STATUS\r
50(EFIAPI *EFI_PEI_SECURITY_AUTHENTICATION_STATE) (\r
51 IN EFI_PEI_SERVICES **PeiServices,\r
52 IN EFI_PEI_SECURITY_PPI *This,\r
53 IN UINT32 AuthenticationStatus,\r
54 IN EFI_FFS_FILE_HEADER *FfsFileHeader,\r
55 IN OUT BOOLEAN *StartCrisisRecovery\r
56 );\r
57\r
58/**\r
59 @par Ppi Description:\r
60 This PPI is installed by some platform PEIM that abstracts the security\r
61 policy to the PEI Foundation, namely the case of a PEIM's authentication\r
62 state being returned during the PEI section extraction process.\r
63\r
64 @param AuthenticationState\r
65 Allows the platform builder to implement a security policy in response\r
66 to varying file authentication states.\r
67\r
68**/\r
69struct _EFI_PEI_SECURITY_PPI {\r
70 EFI_PEI_SECURITY_AUTHENTICATION_STATE AuthenticationState;\r
71};\r
72\r
73extern EFI_GUID gEfiPeiSecurityPpiGuid;\r
74\r
75#endif\r