OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
VirtualFs.c File Reference
#include <Uefi.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/BaseOverflowLib.h>
#include <Library/DebugLib.h>
#include <Library/MemoryAllocationLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/OcVirtualFsLib.h>
#include <Guid/FileInfo.h>
#include "VirtualFsInternal.h"

Go to the source code of this file.

Functions

STATIC VOID VirtualFsWrapProtocol (IN EFI_GUID *Protocol, OUT VOID **Interface)
 
STATIC EFI_STATUS EFIAPI VirtualFsHandleProtocol (IN EFI_HANDLE Handle, IN EFI_GUID *Protocol, OUT VOID **Interface)
 
STATIC EFI_STATUS EFIAPI VirtualFsLocateProtocol (IN EFI_GUID *Protocol, IN VOID *Registration OPTIONAL, OUT VOID **Interface)
 
EFI_STATUS EnableVirtualFs (IN OUT EFI_BOOT_SERVICES *BootServices, IN EFI_FILE_OPEN OpenCallback)
 
EFI_STATUS DisableVirtualFs (IN OUT EFI_BOOT_SERVICES *BootServices)
 

Variables

STATIC EFI_HANDLE_PROTOCOL mOriginalHandleProtocol
 
STATIC EFI_LOCATE_PROTOCOL mOriginalLocateProtocol
 
STATIC EFI_FILE_OPEN mOpenCallback
 
STATIC UINT32 mEntranceCount
 

Detailed Description

Copyright (C) 2019, vit9696. All rights reserved.

All rights reserved.

This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

Definition in file VirtualFs.c.

Function Documentation

◆ DisableVirtualFs()

EFI_STATUS DisableVirtualFs ( IN OUT EFI_BOOT_SERVICES * BootServices)

Enables virtual file system access for given BootServices.

Parameters
[in,out]BootServicesHooked EFI_BOOT_SERVICES.
Returns
EFI_SUCCESS on successful unhooking.

Definition at line 125 of file VirtualFs.c.

◆ EnableVirtualFs()

EFI_STATUS EnableVirtualFs ( IN OUT EFI_BOOT_SERVICES * BootServices,
IN EFI_FILE_OPEN OpenCallback )

Enables virtual file system access for given BootServices with callback on file open.

Parameters
[in,out]BootServicesHooked EFI_BOOT_SERVICES.
[in]OpenCallbackFile open callback.
Returns
EFI_SUCCESS on successful hooking.

Definition at line 99 of file VirtualFs.c.

◆ VirtualFsHandleProtocol()

STATIC EFI_STATUS EFIAPI VirtualFsHandleProtocol ( IN EFI_HANDLE Handle,
IN EFI_GUID * Protocol,
OUT VOID ** Interface )

Definition at line 57 of file VirtualFs.c.

◆ VirtualFsLocateProtocol()

STATIC EFI_STATUS EFIAPI VirtualFsLocateProtocol ( IN EFI_GUID * Protocol,
IN VOID *Registration OPTIONAL,
OUT VOID ** Interface )

Definition at line 79 of file VirtualFs.c.

◆ VirtualFsWrapProtocol()

STATIC VOID VirtualFsWrapProtocol ( IN EFI_GUID * Protocol,
OUT VOID ** Interface )

Definition at line 36 of file VirtualFs.c.

Variable Documentation

◆ mEntranceCount

STATIC UINT32 mEntranceCount

Definition at line 32 of file VirtualFs.c.

◆ mOpenCallback

STATIC EFI_FILE_OPEN mOpenCallback

Definition at line 31 of file VirtualFs.c.

◆ mOriginalHandleProtocol

STATIC EFI_HANDLE_PROTOCOL mOriginalHandleProtocol

Definition at line 29 of file VirtualFs.c.

◆ mOriginalLocateProtocol

STATIC EFI_LOCATE_PROTOCOL mOriginalLocateProtocol

Definition at line 30 of file VirtualFs.c.