Using the functions introduced previously, we can now implement VirtioFsSimpleFileGetPosition() and VirtioFsSimpleFileSetPosition(). Cc: Ard Biesheuvel <ard.biesheuvel@arm.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Philippe Mathieu-Daudé <philmd@redhat.com> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3097 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Message-Id: <20201216211125.19496-32-lersek@redhat.com> Acked-by: Ard Biesheuvel <ard.biesheuvel@arm.com>
28 lines
589 B
C
28 lines
589 B
C
/** @file
|
|
EFI_FILE_PROTOCOL.GetPosition() member function for the Virtio Filesystem
|
|
driver.
|
|
|
|
Copyright (C) 2020, Red Hat, Inc.
|
|
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
**/
|
|
|
|
#include "VirtioFsDxe.h"
|
|
|
|
EFI_STATUS
|
|
EFIAPI
|
|
VirtioFsSimpleFileGetPosition (
|
|
IN EFI_FILE_PROTOCOL *This,
|
|
OUT UINT64 *Position
|
|
)
|
|
{
|
|
VIRTIO_FS_FILE *VirtioFsFile;
|
|
|
|
VirtioFsFile = VIRTIO_FS_FILE_FROM_SIMPLE_FILE (This);
|
|
if (VirtioFsFile->IsDirectory) {
|
|
return EFI_UNSUPPORTED;
|
|
}
|
|
*Position = VirtioFsFile->FilePosition;
|
|
return EFI_SUCCESS;
|
|
}
|