/* Converts a MAC address device path structure to its string representative. */
VOID DevPathToTextMacAddr(IN OUT POOL_PRINT *Str, IN VOID *DevPath, IN BOOLEAN DisplayOnly, IN BOOLEAN AllowShortcuts)
/* Converts a MAC address device path structure to its string representative. */
VOID DevPathToTextMacAddr(IN OUT POOL_PRINT *Str, IN VOID *DevPath, IN BOOLEAN DisplayOnly, IN BOOLEAN AllowShortcuts)
{
  MAC_ADDR_DEVICE_PATH  *MacDevPath;
  UINTN                 HwAddressSize;
  UINTN                 Index;
  MacDevPath = DevPath;
  HwAddressSize = sizeof (EFI_MAC_ADDRESS);
  if ((MacDevPath->IfType == 0x01) || (MacDevPath->IfType == 0x00)) {
    HwAddressSize = 6;
  }
  UefiDevicePathLibCatPrint (Str, L"MAC(");
  for (Index = 0; Index < HwAddressSize; Index++) {
    UefiDevicePathLibCatPrint (Str, L"%02x", MacDevPath->MacAddress.Addr[Index]);
  }
  UefiDevicePathLibCatPrint (Str, L",0x%x)", MacDevPath->IfType);
}