MCPcopy Create free account
hub / github.com/CloverHackyColor/CloverBootloader / InstallFSInjectionProtocol

Function InstallFSInjectionProtocol

FSInject/FSInject.c:1139–1163  ·  view source on GitHub ↗

* Installs FSINJECTION_PROTOCOL to na new handle/ */

Source from the content-addressed store, hash-verified

1137 * Installs FSINJECTION_PROTOCOL to na new handle/
1138 */
1139EFI_STATUS
1140EFIAPI
1141InstallFSInjectionProtocol (VOID)
1142{
1143 EFI_STATUS Status;
1144 FSINJECTION_PROTOCOL *FSInjection;
1145 EFI_HANDLE FSIHandle;
1146
1147 // install FSINJECTION_PROTOCOL to new handle
1148 FSInjection = AllocateZeroPool(sizeof(FSINJECTION_PROTOCOL));
1149 if (FSInjection == NULL) {
1150 DBG("Can not allocate memory for FSINJECTION_PROTOCOL\n");
1151 return EFI_OUT_OF_RESOURCES;
1152 }
1153
1154 FSInjection->Install = FSInjectionInstall;
1155 FSInjection->CreateStringList = FSInjectionCreateStringList;
1156 FSInjection->AddStringToList = FSInjectionAddStringToList;
1157 FSIHandle = NULL; // install to new handle
1158 Status = gBS->InstallMultipleProtocolInterfaces(&FSIHandle, &gFSInjectProtocolGuid, FSInjection, NULL);
1159 if (EFI_ERROR(Status)) {
1160 DBG("InstallFSInjectionProtocol: error installing FSINJECTION_PROTOCOL, Status = %r\n", Status);
1161 }
1162 return Status;
1163}
1164
1165
1166

Callers 1

FSInjectEntrypointFunction · 0.85

Calls 1

AllocateZeroPoolFunction · 0.50

Tested by

no test coverage detected