| Address | Name | Description |
|---|---|---|
| TlsAuthConfigExtractConfig | ||
| TlsAuthConfigRouteConfig | ||
| TlsAuthConfigCallback | ||
| TlsAuthConfigInstallHiiConfigAccess | ||
| TlsAuthConfigLibraryInit | ||
| TlsAuthConfigUnload | ||
| TlsAuthConfigDxeEntry | ||
| TlsAuthConfigDriverBindingSupported | ||
| TlsAuthConfigDriverBindingStart | ||
| TlsAuthConfigDriverBindingStop | ||
| TlsAuthConfigPrivateInit | ||
| TlsAuthConfigPrivateDestroy | ||
| IsCertificateEntryType | ||
| Global | UEFI System Table Pointers | |
| Populated | by TlsAuthConfigDriverBindingStart (sub_4CC) via | |
| UefiBootServicesTableLib | / UefiRuntimeServicesTableLib | |
| EFI_HANDLE | gImageHandle = NULL; / qword_CDD8 / | |
| HII | protocol interface pointers (populated during driver start) | |
| VOID | gHiiConfigRouting = NULL; / qword_CE00 */ | |
| GUID | Definitions (from .rdata section) | |
| EFI_GUID | gEfiDriverBindingProtocolGuid = { 0x5B1B31A1, 0x9562, 0x11D2, { 0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B } }; | |
| Forward | Declarations | |
| EFI_STATUS | EFIAPI | |
| Library | Helpers (BaseMemoryLib / BaseLib linked implementations) | |
| Driver | Binding Protocol Entry Point | |
| Initialise | the HII system table (locates HII config routing, etc.) | |
| InitializeHiiConfigAccess | (NULL); / sub_6504 placeholder / | |
| Locate | HII Config Access Protocol | |
| Status | = gBootServices->LocateProtocol ( | |
| Locate | HII Config Routing Protocol | |
| Locate | HII Database Protocol | |
| Locate | Platform Setup Transport and HII String | |
| Open | the private protocol to retrieve our context | |
| Status | = gBootServices->OpenProtocol ( | |
| Uninstall | the protocol and free the private data | |
| Step | 1: initialise UEFI library globals + HII protocols | |
| TlsAuthConfigLibraryInit | (ImageHandle, SystemTable); | |
| Step | 2: install the Driver Binding Protocol onto our image handle | |
| DriverBinding | = AllocateZeroPool (sizeof (EFI_DRIVER_BINDING_PROTOCOL)); | |
| Step | 3: store the Unload handler (at Private-> + 88 = +0x58) | |
| Step | 4: install HII Config Access protocol | |
| return | TlsAuthConfigInstallHiiConfigAccess (ImageHandle); | |
| Driver | Binding Protocol Implementation | |
| If | the TLS Auth Config Protocol is already installed, return | |
| Allocate | private context (144 bytes) | |
| Private | = AllocateZeroPool (144); | |
| Initialise | the private context | |
| Status | = TlsAuthConfigPrivateInit (Private); | |
| Install | the TLS Auth Config Protocol on the controller | |
| Status | = gBootServices->InstallMultipleProtocolInterfaces ( | |
| Private | Data Helpers | |
| Stores | child init function pointers, opens TLS config protocol | |
| initialises | HII handles, etc. | |
| return | EFI_SUCCESS; | |
| Close | any open protocols, free child data | |
| HII | Config Access Protocol (sub_758) | |
| Allocate | HII opcode handles | |
| FormOpCodeHandle | = HiiAllocateOpCodeHandle (); | |
| Read | the TlsCaCertificate variable for size | |
| VarSize | = 0; | |
| This | entry contains TLS certificates | |
| DescLen | = Entry->CertDescLen; / field at +20 / | |
| Render | certificate identifier as a HII text opcode | |
| UnicodeSPrint | ( | |
| Create | the opcode entry in template buffer | |
| ZeroMem | ((CHAR8 *)CertStr + 0x2, 0xE); | |
| Append | cert list handle to main form handle; clean up | |
| HiiAppendOpCodeList | (FormOpCodeHandle, CertListOpCodeHandle); | |
| Allocate | buffers | |
| CertVarData | = AllocateZeroPool (VarSize); | |
| Iterate | entries and copy to CertVarCopy, skipping the deleted cert | |
| RemainingSize | = (UINT32)VarSize; | |
| If | an entry was deleted, compact and write the variable back | |
| if | (EntryDeleted) { | |
| HII | Config Access Install (sub_450 continuation) | |
| Allocate | the HII Config Access protocol instance | |
| Private | = AllocateZeroPool (sizeof (TLS_AUTH_CONFIG_PRIVATE)); | |
| Build | the Config Access protocol interface on the private struct | |
| ConfigAccess | = &Private->ConfigAccess; | |
| Install | the protocol | |
| HandlePtr | = &Private->DriverImageHandle; | |
| Compare | the GUID at CertificationEntry + 8 with the expected GUID | |
| return | CompareGuid ( |
Generated by HR650X BIOS Decompilation Project