/* The GetModeData()function reads the current operational settings of this EFI MTFTPv4 Protocol driver instance. */
EFI_STATUS EFIAPI EfiMtftp4GetModeData(IN EFI_MTFTP4_PROTOCOL *This, OUT EFI_MTFTP4_MODE_DATA *ModeData)
/* The GetModeData()function reads the current operational settings of this EFI MTFTPv4 Protocol driver instance. */
EFI_STATUS EFIAPI EfiMtftp4GetModeData(IN EFI_MTFTP4_PROTOCOL *This, OUT EFI_MTFTP4_MODE_DATA *ModeData)
{
  MTFTP4_PROTOCOL  *Instance;
  EFI_TPL          OldTpl;
  if ((This == NULL) || (ModeData == NULL)) {
    return EFI_INVALID_PARAMETER;
  }
  OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
  Instance = MTFTP4_PROTOCOL_FROM_THIS (This);
  CopyMem (&ModeData->ConfigData, &Instance->Config, sizeof (Instance->Config));
  ModeData->SupportedOptionCount   = MTFTP4_SUPPORTED_OPTIONS;
  ModeData->SupportedOptoins       = (UINT8 **)mMtftp4SupportedOptions;
  ModeData->UnsupportedOptionCount = 0;
  ModeData->UnsupportedOptoins     = NULL;
  gBS->RestoreTPL (OldTpl);
  return EFI_SUCCESS;
}