|
iPXE
|
EFI signature lists. More...
#include <stdlib.h>#include <string.h>#include <errno.h>#include <ipxe/asn1.h>#include <ipxe/der.h>#include <ipxe/pem.h>#include <ipxe/image.h>#include <ipxe/efi/efi.h>#include <ipxe/efi/Guid/ImageAuthentication.h>#include <ipxe/efi/efi_siglist.h>Go to the source code of this file.
Functions | |
| FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
| static int | efisig_find (const void *data, size_t len, size_t *start, const EFI_SIGNATURE_LIST **lhdr, const EFI_SIGNATURE_DATA **dhdr) |
| Find EFI signature list entry. More... | |
| int | efisig_asn1 (const void *data, size_t len, size_t offset, struct asn1_cursor **cursor) |
| Extract ASN.1 object from EFI signature list. More... | |
| static int | efisig_image_probe (struct image *image) |
| Probe EFI signature list image. More... | |
| static int | efisig_image_asn1 (struct image *image, size_t offset, struct asn1_cursor **cursor) |
| Extract ASN.1 object from EFI signature list image. More... | |
| struct image_type efisig_image_type | __image_type (PROBE_NORMAL) |
| EFI signature list image type. More... | |
EFI signature lists.
Definition in file efi_siglist.c.
| FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
|
static |
Find EFI signature list entry.
| data | EFI signature list |
| len | Length of EFI signature list |
| start | Starting offset to update |
| lhdr | Signature list header to fill in |
| dhdr | Signature data header to fill in |
| rc | Return status code |
Definition at line 53 of file efi_siglist.c.
References assert(), data, DBGC, DBGC2, efi_guid_ntoa(), EINVAL, len, offset, and start.
Referenced by efisig_asn1(), and efisig_image_probe().
| int efisig_asn1 | ( | const void * | data, |
| size_t | len, | ||
| size_t | offset, | ||
| struct asn1_cursor ** | cursor | ||
| ) |
Extract ASN.1 object from EFI signature list.
| data | EFI signature list |
| len | Length of EFI signature list |
| offset | Offset within image |
| cursor | ASN.1 cursor to fill in |
| next | Offset to next image, or negative error |
The caller is responsible for eventually calling free() on the allocated ASN.1 cursor.
Definition at line 142 of file efi_siglist.c.
References image_type::asn1, ASN1_SEQUENCE, data, DBGC, DBGC2, der_asn1(), efisig_find(), EINVAL, free, len, next, offset, offsetof, pem_asn1(), rc, EFI_SIGNATURE_DATA::SignatureData, EFI_SIGNATURE_LIST::SignatureSize, strerror(), and typeof().
Referenced by efi_cacert(), and efisig_image_asn1().
|
static |
Probe EFI signature list image.
| image | EFI signature list |
| rc | Return status code |
Definition at line 193 of file efi_siglist.c.
References count, image::data, DBGC, efisig_find(), image::len, image::name, offset, rc, and EFI_SIGNATURE_LIST::SignatureSize.
|
static |
Extract ASN.1 object from EFI signature list image.
| image | EFI signature list |
| offset | Offset within image |
| cursor | ASN.1 cursor to fill in |
| next | Offset to next image, or negative error |
The caller is responsible for eventually calling free() on the allocated ASN.1 cursor.
Definition at line 233 of file efi_siglist.c.
References image::data, DBGC, efisig_asn1(), image::len, image::name, next, offset, rc, and strerror().
| struct image_type efisig_image_type __image_type | ( | PROBE_NORMAL | ) |
EFI signature list image type.
1.8.15