Get rid of BlEfiDirectorySeparator() routine and allow GetVolumeDevicePath() to store ARC name

This commit is contained in:
2022-10-30 12:21:09 +01:00
parent c09b121178
commit b29162841c
3 changed files with 10 additions and 36 deletions

View File

@@ -295,6 +295,7 @@ BlFindVolumeDevicePath(IN PEFI_DEVICE_PATH_PROTOCOL FsHandle,
EFI_STATUS
BlGetVolumeDevicePath(IN PUCHAR SystemPath,
OUT PEFI_DEVICE_PATH_PROTOCOL *DevicePath,
OUT PUCHAR *ArcName,
OUT PUCHAR *Path)
{
PEFI_BLOCK_DEVICE Device;
@@ -349,7 +350,7 @@ BlGetVolumeDevicePath(IN PUCHAR SystemPath,
else
{
/* Defaults to ARC path, dissect it */
Status = BlpDissectVolumeArcPath(SystemPath, Path, &DriveType, &DriveNumber, &PartNumber);
Status = BlpDissectVolumeArcPath(SystemPath, ArcName, Path, &DriveType, &DriveNumber, &PartNumber);
}
/* Check if volume path parsed successfully */
@@ -582,6 +583,7 @@ BlpDiscoverEfiBlockDevices(OUT PLIST_ENTRY BlockDevices)
*/
EFI_STATUS
BlpDissectVolumeArcPath(IN PUCHAR SystemPath,
OUT PUCHAR *ArcName,
OUT PUCHAR *Path,
OUT PUSHORT DriveType,
OUT PULONG DriveNumber,
@@ -711,6 +713,11 @@ BlpDissectVolumeArcPath(IN PUCHAR SystemPath,
*Path = SystemPath + ArcLength;
}
if(ArcName)
{
/* TODO: Store ARC path in ArcName */
}
/* Return success */
return STATUS_EFI_SUCCESS;
}