* Installs FSINJECTION_PROTOCOL to na new handle/ */
| 1137 | * Installs FSINJECTION_PROTOCOL to na new handle/ |
| 1138 | */ |
| 1139 | EFI_STATUS |
| 1140 | EFIAPI |
| 1141 | InstallFSInjectionProtocol (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 |
no test coverage detected