|
OpenCore
1.0.5
OpenCore Bootloader
|
#include "NetworkBootInternal.h"Go to the source code of this file.
Data Structures | |
| struct | CERT_IS_PRESENT_CONTEXT |
Macros | |
| #define | TLS_AUTH_CONFIG_VAR_BASE_ATTR (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS) |
Typedefs | |
| typedef EFI_STATUS(* | PROCESS_CERT) (IN VOID *Context, IN UINTN CertIndex, IN UINTN CertSize, IN EFI_SIGNATURE_DATA *Cert) |
Functions | |
| STATIC EFI_STATUS | ProcessAllCerts (IN CHAR16 *VariableName, IN EFI_GUID *VendorGuid, IN PROCESS_CERT ProcessCert, IN VOID *Context OPTIONAL) |
| STATIC EFI_STATUS | LogCert (IN VOID *Context, IN UINTN CertIndex, IN UINTN CertSize, IN EFI_SIGNATURE_DATA *Cert) |
| EFI_STATUS | LogInstalledCerts (IN CHAR16 *VariableName, IN EFI_GUID *VendorGuid) |
| STATIC EFI_STATUS | CheckCertPresent (IN VOID *VoidContext, IN UINTN CertIndex, IN UINTN CertSize, IN EFI_SIGNATURE_DATA *Cert) |
| EFI_STATUS | CertIsPresent (IN CHAR16 *VariableName, IN EFI_GUID *VendorGuid, IN EFI_GUID *OwnerGuid, IN UINTN X509DataSize, IN VOID *X509Data) |
| EFI_STATUS | DeleteCertsForOwner (IN CHAR16 *VariableName, IN EFI_GUID *VendorGuid, IN EFI_GUID *OwnerGuid, IN UINTN X509DataSize, IN VOID *X509Data, OUT UINTN *DeletedCount) |
| EFI_STATUS | EnrollX509toVariable (IN CHAR16 *VariableName, IN EFI_GUID *VendorGuid, IN EFI_GUID *OwnerGuid, IN UINTN X509DataSize, IN VOID *X509Data) |
Miscellaneous routines for TLS auth config.
Copyright (c) 2016 - 2018, Intel Corporation. All rights reserved.
Copyright (c) 2024, Mike Beaton. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file TlsAuthConfigImpl.c.
| #define TLS_AUTH_CONFIG_VAR_BASE_ATTR (EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS) |
Definition at line 11 of file TlsAuthConfigImpl.c.
| typedef EFI_STATUS(* PROCESS_CERT) (IN VOID *Context, IN UINTN CertIndex, IN UINTN CertSize, IN EFI_SIGNATURE_DATA *Cert) |
Definition at line 14 of file TlsAuthConfigImpl.c.
| EFI_STATUS CertIsPresent | ( | IN CHAR16 * | VariableName, |
| IN EFI_GUID * | VendorGuid, | ||
| IN EFI_GUID * | OwnerGuid, | ||
| IN UINTN | X509DataSize, | ||
| IN VOID * | X509Data ) |
Report whether specified signature is already enrolled for given owner.
| [in] | VariableName | Variable name of CA database. |
| [in] | VendorGuid | Unique identifier for the CA database vendor. |
| [in] | OwnerGuid | Unique identifier for owner of the certificate to be searched for. |
| [in] | X509DataSize | Certificate data size. |
| [in] | X509Data | Certificate data. |
| EFI_SUCCESS | Certificate is already enrolled. |
| EFI_OUT_OF_RESOURCES | Could not allocate needed resources. |
Definition at line 219 of file TlsAuthConfigImpl.c.
| STATIC EFI_STATUS CheckCertPresent | ( | IN VOID * | VoidContext, |
| IN UINTN | CertIndex, | ||
| IN UINTN | CertSize, | ||
| IN EFI_SIGNATURE_DATA * | Cert ) |
| EFI_SUCCESS | Certificate not found; continue processing. |
| EFI_ALREADY_STARTED | Certificate found; stop processing. |
Definition at line 181 of file TlsAuthConfigImpl.c.
| EFI_STATUS DeleteCertsForOwner | ( | IN CHAR16 * | VariableName, |
| IN EFI_GUID * | VendorGuid, | ||
| IN EFI_GUID * | OwnerGuid, | ||
| IN UINTN | X509DataSize, | ||
| IN VOID * | X509Data, | ||
| OUT UINTN * | DeletedCount ) |
Delete specific entry or all entries with owner guid from signature database. (Based on original EDK 2 DeleteCert which removes one cert, identified by index.)
| [in] | VariableName | The variable name of the signature database. |
| [in] | VendorGuid | A unique identifier for the signature database vendor. |
| [in] | OwnerGuid | A unique identifier for owner of the certificate(s) to be deleted. |
| [in] | X509DataSize | Optional certificate data size. |
| [in] | X509Data | Optional certificate data. If non-NULL, delete only specific certificate for owner, if present. If NULL, delete all certificates for owner. |
| [in] | DeletedCount | Optional return count of deleted certificates. |
| EFI_SUCCESS | Delete signature successfully. |
| EFI_OUT_OF_RESOURCES | Could not allocate needed resources. |
Definition at line 259 of file TlsAuthConfigImpl.c.
| EFI_STATUS EnrollX509toVariable | ( | IN CHAR16 * | VariableName, |
| IN EFI_GUID * | VendorGuid, | ||
| IN EFI_GUID * | OwnerGuid, | ||
| IN UINTN | X509DataSize, | ||
| IN VOID * | X509Data ) |
Enroll a new X509 certificate into Variable.
| [in] | VariableName | Variable name of CA database. |
| [in] | VendorGuid | Unique identifier for the CA database vendor. |
| [in] | OwnerGuid | Unique identifier for owner of the certificate to be installed. |
| [in] | X509DataSize | Certificate data size. |
| [in] | X509Data | Certificate data. |
| EFI_SUCCESS | New X509 is enrolled successfully. |
| EFI_OUT_OF_RESOURCES | Could not allocate needed resources. |
Definition at line 433 of file TlsAuthConfigImpl.c.
| STATIC EFI_STATUS LogCert | ( | IN VOID * | Context, |
| IN UINTN | CertIndex, | ||
| IN UINTN | CertSize, | ||
| IN EFI_SIGNATURE_DATA * | Cert ) |
| EFI_SUCCESS | Continue processing. |
Definition at line 141 of file TlsAuthConfigImpl.c.
| EFI_STATUS LogInstalledCerts | ( | IN CHAR16 * | VariableName, |
| IN EFI_GUID * | VendorGuid ) |
Log owner GUID of each installed certificate in signature database.
| [in] | VariableName | The variable name of the signature database. |
| [in] | VendorGuid | A unique identifier for the signature database vendor. |
| EFI_SUCCESS | Success. |
Definition at line 161 of file TlsAuthConfigImpl.c.
| STATIC EFI_STATUS ProcessAllCerts | ( | IN CHAR16 * | VariableName, |
| IN EFI_GUID * | VendorGuid, | ||
| IN PROCESS_CERT | ProcessCert, | ||
| IN VOID *Context | OPTIONAL ) |
Perform action for all signatures in specified database, with possibility of aborting early.
| [in] | VariableName | The variable name of the vendor's signature database. |
| [in] | VendorGuid | A unique identifier for the signature database vendor. |
| [in] | ProcessCert | The method to call for each certificate. |
| [in] | Context | Context for ProcessCert, if required. |
| EFI_SUCCESS | Looped over all signatures. |
| EFI_OUT_OF_RESOURCES | Could not allocate needed resources. |
| Other | Other error or return code from from ProcessCert. |
Definition at line 43 of file TlsAuthConfigImpl.c.