parse_efi_signature_list(9)
parse_efi_signature_list(9) π
okay bestie, so you're in the Kernel API Manual and you've stumbled onto parse_efi_signature_list β honestly? iconic. it parses an EFI signature list for certificates, and we're gonna get you through it together, no cap π
β¨ SYNOPSIS β¨
int parse_efi_signature_list (const char *source , const void *data ,
size_t size , efi_element_handler_t (*get_handler_for_guid)(const
efi_guid_t *) );
like, look at that signature. it's giving function-pointer realness and we're obsessed π¦
πΈ ARGUMENTS πΈ
sourceβ the source of the key π like, where's it from, bestie?dataβ the data blob to parse. this is the main character of the whole operation, fr fr π«Άsizeβ the size of the data blob. yes, we need to know how much blob there is πget_handler_for_guidβ get the handler func for the sig type (orNULL). lowkey the most interesting one of the bunch π
π DESCRIPTION π
so we're parsing an EFI signature list, looking for elements of interest. a list is made up of a series of sublists, right? and the way that works is: every element in a sublist is of the same type, but the sublists themselves can be of different types. slay, versatile, we love a flexible structure β¨
for each sublist encountered, the get_handler_for_guid function gets called with the type specifier GUID, and it returns either a pointer to a function that handles elements of that type β or NULL if the type is not of interest. so if the vibe check says "we don't care about this type," you get NULL, bye π
if the sublist is of interest, then each element gets passed to the handler function in turn. one by one. living its best life π
β οΈ okay important: errorEBADMSGis returned if the list doesn't parse correctly, and0is returned if the list was parsed correctly. and ngl? no error can be returned from theget_handler_for_guidfunction or the element handler function it returns. so don't go looking for error handling there, bestie, it's simply not the moment π
π₯ SEE ALSO π₯
- Kernel file
./security/integrity/platform_certs/efi_parser.cβ go read the source, it's literally right there iykyk π§
and that's the whole thing, bestie! if you ever forget, just remember: this gem lives in ./security/integrity/platform_certs/efi_parser.c and the page is dated October 2026 π catch you in the next manpage, mwah πβ¨ periodt
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms