Functions | |
UINT32 EFIAPI | Tcg2PhysicalPresenceLibReturnOperationResponseToOsFunction (OUT UINT32 *MostRecentRequest, OUT UINT32 *Response) |
UINT32 EFIAPI | Tcg2PhysicalPresenceLibSubmitRequestToPreOSFunction (IN UINT32 OperationRequest, IN UINT32 RequestParameter) |
UINT32 EFIAPI | Tcg2PhysicalPresenceLibGetUserConfirmationStatusFunction (IN UINT32 OperationRequest) |
EFI_STATUS EFIAPI | Tcg2PhysicalPresenceLibConstructor (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable) |
Variables | |
EFI_SMM_VARIABLE_PROTOCOL * | mTcg2PpSmmVariable |
This library will handle TPM 2.0 physical presence request from OS.
Caution: This module requires additional review when modified. This driver will have external input - variable. This external input must be validated carefully to avoid security issue.
Tcg2PhysicalPresenceLibSubmitRequestToPreOSFunction() and Tcg2PhysicalPresenceLibGetUserConfirmationStatusFunction() will receive untrusted input and do validation.
Copyright (c) 2015, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
EFI_STATUS EFIAPI Tcg2PhysicalPresenceLibConstructor | ( | IN EFI_HANDLE | ImageHandle, | |
IN EFI_SYSTEM_TABLE * | SystemTable | |||
) |
The constructor function register UNI strings into imageHandle.
It will ASSERT() if that operation fails and it will always return EFI_SUCCESS.
ImageHandle | The firmware allocated handle for the EFI image. | |
SystemTable | A pointer to the EFI System Table. |
EFI_SUCCESS | The constructor successfully added string package. | |
Other | value The constructor can't add string package. |
References EFI_STATUS(), and mTcg2PpSmmVariable.
UINT32 EFIAPI Tcg2PhysicalPresenceLibGetUserConfirmationStatusFunction | ( | IN UINT32 | OperationRequest | ) |
The handler for TPM physical presence function: Get User Confirmation Status for Operation.
This API should be invoked in OS runtime phase to interface with ACPI method.
Caution: This function may receive untrusted input.
[in] | OperationRequest | TPM physical presence operation request. |
References BOOLEAN(), EFI_STATUS(), gEfiTcg2PhysicalPresenceGuid, mTcg2PpSmmVariable, EFI_TCG2_PHYSICAL_PRESENCE_FLAGS::PPFlags, TCG2_BIOS_TPM_MANAGEMENT_FLAG_PP_REQUIRED_FOR_CHANGE_EPS, TCG2_BIOS_TPM_MANAGEMENT_FLAG_PP_REQUIRED_FOR_CHANGE_PCRS, TCG2_BIOS_TPM_MANAGEMENT_FLAG_PP_REQUIRED_FOR_CLEAR, TCG2_PHYSICAL_PRESENCE_FLAGS_VARIABLE, TCG2_PHYSICAL_PRESENCE_VARIABLE, Tcg2PpVendorLibGetUserConfirmationStatusFunction(), TCG_PP_GET_USER_CONFIRMATION_ALLOWED_AND_PPUSER_NOT_REQUIRED, TCG_PP_GET_USER_CONFIRMATION_ALLOWED_AND_PPUSER_REQUIRED, TCG_PP_GET_USER_CONFIRMATION_BLOCKED_BY_BIOS_CONFIGURATION, TCG_PP_GET_USER_CONFIRMATION_NOT_IMPLEMENTED, TRUE, and UINTN().
Referenced by PhysicalPresenceCallback().
UINT32 EFIAPI Tcg2PhysicalPresenceLibReturnOperationResponseToOsFunction | ( | OUT UINT32 * | MostRecentRequest, | |
OUT UINT32 * | Response | |||
) |
The handler for TPM physical presence function: Return TPM Operation Response to OS Environment.
This API should be invoked in OS runtime phase to interface with ACPI method.
[out] | MostRecentRequest | Most recent operation request. |
[out] | Response | Response to the most recent operation request. |
References EFI_STATUS(), gEfiTcg2PhysicalPresenceGuid, EFI_TCG2_PHYSICAL_PRESENCE::LastPPRequest, mTcg2PpSmmVariable, EFI_TCG2_PHYSICAL_PRESENCE::PPResponse, TCG2_PHYSICAL_PRESENCE_VARIABLE, and UINTN().
Referenced by PhysicalPresenceCallback(), and Tcg2GetResultOfSetActivePcrBanks().
UINT32 EFIAPI Tcg2PhysicalPresenceLibSubmitRequestToPreOSFunction | ( | IN UINT32 | OperationRequest, | |
IN UINT32 | RequestParameter | |||
) |
The handler for TPM physical presence function: Submit TPM Operation Request to Pre-OS Environment and Submit TPM Operation Request to Pre-OS Environment 2.
This API should be invoked in OS runtime phase to interface with ACPI method.
Caution: This function may receive untrusted input.
[in] | OperationRequest | TPM physical presence operation request. |
[in] | RequestParameter | TPM physical presence operation request parameter. |
References EFI_STATUS(), gEfiTcg2PhysicalPresenceGuid, mTcg2PpSmmVariable, EFI_TCG2_PHYSICAL_PRESENCE_FLAGS::PPFlags, EFI_TCG2_PHYSICAL_PRESENCE::PPRequest, EFI_TCG2_PHYSICAL_PRESENCE::PPRequestParameter, TCG2_BIOS_TPM_MANAGEMENT_FLAG_DEFAULT, TCG2_PHYSICAL_PRESENCE_FLAGS_VARIABLE, TCG2_PHYSICAL_PRESENCE_VARIABLE, Tcg2PpVendorLibSubmitRequestToPreOSFunction(), TCG_PP_SUBMIT_REQUEST_TO_PREOS_GENERAL_FAILURE, TCG_PP_SUBMIT_REQUEST_TO_PREOS_NOT_IMPLEMENTED, TCG_PP_SUBMIT_REQUEST_TO_PREOS_SUCCESS, and UINTN().
Referenced by PhysicalPresenceCallback(), SaveTcg2PCRBanksRequest(), SaveTcg2PpRequest(), SaveTcg2PpRequestParameter(), and Tcg2SetActivePCRBanks().
EFI_SMM_VARIABLE_PROTOCOL* mTcg2PpSmmVariable |