OpenCore
1.0.4
OpenCore Bootloader
|
#include <Library/DebugLib.h>
#include <Library/OcAppleKernelLib.h>
#include <Library/OcBootManagementLib.h>
#include <Library/OcDevicePathLib.h>
#include <Library/OcFileLib.h>
#include <Protocol/LoadedImage.h>
Go to the source code of this file.
Functions | |
EFI_DEVICE_PATH_PROTOCOL * | OcGetNextLoadOptionDevicePath (IN EFI_DEVICE_PATH_PROTOCOL *FilePath, IN EFI_DEVICE_PATH_PROTOCOL *FullPath) |
EFI_STATUS | CachelessContextAddKext (IN OUT CACHELESS_CONTEXT *Context, IN CONST CHAR8 *InfoPlist, IN UINT32 InfoPlistSize, IN UINT8 *Executable OPTIONAL, IN UINT32 ExecutableSize OPTIONAL, OUT CHAR8 BundleVersion[MAX_INFO_BUNDLE_VERSION_KEY_SIZE] OPTIONAL) |
EFI_STATUS | CachelessContextAddPatch (IN OUT CACHELESS_CONTEXT *Context, IN CONST CHAR8 *Identifier, IN PATCHER_GENERIC_PATCH *Patch) |
EFI_STATUS | CachelessContextAddQuirk (IN OUT CACHELESS_CONTEXT *Context, IN KERNEL_QUIRK_NAME Quirk) |
EFI_STATUS | CachelessContextBlock (IN OUT CACHELESS_CONTEXT *Context, IN CONST CHAR8 *Identifier, IN BOOLEAN Exclude) |
EFI_STATUS | CachelessContextForceKext (IN OUT CACHELESS_CONTEXT *Context, IN CONST CHAR8 *Identifier) |
VOID | CachelessContextFree (IN OUT CACHELESS_CONTEXT *Context) |
EFI_STATUS | CachelessContextHookBuiltin (IN OUT CACHELESS_CONTEXT *Context, IN CONST CHAR16 *FileName, IN EFI_FILE_PROTOCOL *File, OUT EFI_FILE_PROTOCOL **VirtualFile) |
EFI_STATUS | CachelessContextInit (IN OUT CACHELESS_CONTEXT *Context, IN CONST CHAR16 *FileName, IN EFI_FILE_PROTOCOL *ExtensionsDir, IN UINT32 KernelVersion, IN BOOLEAN Is32Bit) |
EFI_STATUS | CachelessContextOverlayExtensionsDir (IN OUT CACHELESS_CONTEXT *Context, OUT EFI_FILE_PROTOCOL **File) |
EFI_STATUS | CachelessContextPerformInject (IN OUT CACHELESS_CONTEXT *Context, IN CONST CHAR16 *FileName, OUT EFI_FILE_PROTOCOL **File) |
EFI_STATUS | CreateRealFile (IN EFI_FILE_PROTOCOL *OriginalFile OPTIONAL, IN EFI_FILE_OPEN OpenCallback OPTIONAL, IN BOOLEAN CloseOnFailure, OUT EFI_FILE_PROTOCOL **File) |
EFI_STATUS | CreateVirtualFileFileNameCopy (IN CONST CHAR16 *FileName, IN VOID *FileBuffer, IN UINT64 FileSize, IN CONST EFI_TIME *ModificationTime OPTIONAL, OUT EFI_FILE_PROTOCOL **File) |
EFI_STATUS | DisableVirtualFs (IN OUT EFI_BOOT_SERVICES *BootServices) |
EFI_STATUS | EnableVirtualFs (IN OUT EFI_BOOT_SERVICES *BootServices, IN EFI_FILE_OPEN OpenCallback) |
BOOLEAN | OcAppendArgumentsToLoadedImage (IN OUT EFI_LOADED_IMAGE_PROTOCOL *LoadedImage, IN CONST CHAR8 **Arguments, IN UINT32 ArgumentCount, IN BOOLEAN Replace) |
BOOLEAN | OcCheckArgumentFromEnv (IN EFI_LOADED_IMAGE *LoadedImage OPTIONAL, IN EFI_GET_VARIABLE GetVariable OPTIONAL, IN CONST CHAR8 *Argument, IN CONST UINTN ArgumentLength, IN OUT CHAR8 **Value OPTIONAL) |
VOID | OcDirectorySeachContextInit (IN OUT DIRECTORY_SEARCH_CONTEXT *Context) |
EFI_STATUS | OcFindWritableOcFileSystem (OUT EFI_FILE_PROTOCOL **FileSystem) |
OC_BOOT_ENTRY_TYPE | OcGetBootDevicePathType (IN EFI_DEVICE_PATH_PROTOCOL *DevicePath, OUT BOOLEAN *IsFolder OPTIONAL, OUT BOOLEAN *IsGeneric OPTIONAL) |
EFI_STATUS | OcGetFileModificationTime (IN EFI_FILE_PROTOCOL *File, OUT EFI_TIME *Time) |
EFI_STATUS | OcGetNewestFileFromDirectory (IN OUT DIRECTORY_SEARCH_CONTEXT *Context, IN EFI_FILE_PROTOCOL *Directory, IN CHAR16 *FileNameStartsWith OPTIONAL, OUT EFI_FILE_INFO **FileInfo) |
VOID | OcImageLoaderRegisterConfigure (IN OC_IMAGE_LOADER_CONFIGURE Configure OPTIONAL) |
BOOLEAN | OcPlatformIs64BitSupported (IN UINT32 KernelVersion) |
EFI_STATUS | OcSafeFileOpen (IN CONST EFI_FILE_PROTOCOL *Protocol, OUT EFI_FILE_PROTOCOL **NewHandle, IN CONST CHAR16 *FileName, IN CONST UINT64 OpenMode, IN CONST UINT64 Attributes) |
VOID * | OcStorageReadFileUnicode (IN OC_STORAGE_CONTEXT *Context, IN CONST CHAR16 *FilePath, OUT UINT32 *FileSize OPTIONAL) |
VOID * | OcReadFileFromDirectory (IN CONST EFI_FILE_PROTOCOL *RootDirectory, IN CONST CHAR16 *FilePath, OUT UINT32 *FileSize OPTIONAL, IN UINT32 MaxFileSize OPTIONAL) |
EFI_MEMORY_DESCRIPTOR * | OcGetCurrentMemoryMap (OUT UINTN *MemoryMapSize, OUT UINTN *DescriptorSize, OUT UINTN *MapKey OPTIONAL, OUT UINT32 *DescriptorVersion OPTIONAL, OUT UINTN *OriginalMemoryMapSize OPTIONAL, IN BOOLEAN IncludeSplitSpace) |
VOID * | OcGetFileInfo (IN EFI_FILE_PROTOCOL *File, IN EFI_GUID *InformationType, IN UINTN MinFileInfoSize, OUT UINTN *RealFileInfoSize OPTIONAL) |
CHAR16 * | OcGetVolumeLabel (IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *FileSystem) |
VOID * | OcReadFile (IN CONST EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *FileSystem, IN CONST CHAR16 *FilePath, OUT UINT32 *FileSize OPTIONAL, IN CONST UINT32 MaxFileSize OPTIONAL) |
Copyright (c) 2020, PMheart. All rights reserved. SPDX-License-Identifier: BSD-3-Clause
Definition in file UserOcDummy.c.
EFI_STATUS CachelessContextAddKext | ( | IN OUT CACHELESS_CONTEXT * | Context, |
IN CONST CHAR8 * | InfoPlist, | ||
IN UINT32 | InfoPlistSize, | ||
IN UINT8 *Executable | OPTIONAL, | ||
IN UINT32 ExecutableSize | OPTIONAL, | ||
OUT CHAR8 BundleVersion | OPTIONAL[MAX_INFO_BUNDLE_VERSION_KEY_SIZE] ) |
Add kext to cacheless context to be injected later on.
[in,out] | Context | Cacheless context. |
[in] | InfoPlist | Kext Info.plist. |
[in] | InfoPlistSize | Kext Info.plist size. |
[in] | Executable | Kext executable, optional. |
[in] | ExecutableSize | Kext executable size, optional. |
[out] | BundleVersion | Kext bundle version, optionally set on request. |
Definition at line 26 of file UserOcDummy.c.
EFI_STATUS CachelessContextAddPatch | ( | IN OUT CACHELESS_CONTEXT * | Context, |
IN CONST CHAR8 * | Identifier, | ||
IN PATCHER_GENERIC_PATCH * | Patch ) |
Add patch to cacheless context to be applied later on.
[in,out] | Context | Cacheless context. |
[in] | Identifier | Kext bundle identifier. |
[in] | Patch | Patch to apply. |
Definition at line 41 of file UserOcDummy.c.
EFI_STATUS CachelessContextAddQuirk | ( | IN OUT CACHELESS_CONTEXT * | Context, |
IN KERNEL_QUIRK_NAME | Quirk ) |
Add kernel quirk to cacheless context to be applied later on.
[in,out] | Context | Cacheless context. |
[in] | Quirk | Quirk to apply. |
Definition at line 53 of file UserOcDummy.c.
EFI_STATUS CachelessContextBlock | ( | IN OUT CACHELESS_CONTEXT * | Context, |
IN CONST CHAR8 * | Identifier, | ||
IN BOOLEAN | Exclude ) |
Add block request to cacheless context to be applied later on.
[in,out] | Context | Cacheless context. |
[in] | Identifier | Kext bundle identifier. |
[in] | Exclude | TRUE to exclude kext from cacheless context. |
Definition at line 64 of file UserOcDummy.c.
EFI_STATUS CachelessContextForceKext | ( | IN OUT CACHELESS_CONTEXT * | Context, |
IN CONST CHAR8 * | Identifier ) |
Force built-in kext to load.
[in,out] | Context | Cacheless context. |
[in] | Identifier | Kext bundle identifier. |
Definition at line 76 of file UserOcDummy.c.
VOID CachelessContextFree | ( | IN OUT CACHELESS_CONTEXT * | Context | ) |
Frees cacheless context.
[in,out] | Context | Cacheless context. |
Definition at line 87 of file UserOcDummy.c.
EFI_STATUS CachelessContextHookBuiltin | ( | IN OUT CACHELESS_CONTEXT * | Context, |
IN CONST CHAR16 * | FileName, | ||
IN EFI_FILE_PROTOCOL * | File, | ||
OUT EFI_FILE_PROTOCOL ** | VirtualFile ) |
Apply patches to built-in kexts.
[in,out] | Context | Prelinked context. |
[in] | FileName | Filename of kext file to be injected. |
[in] | File | EFI_FILE_PROTOCOL instance of kext file. |
[out] | VirtualFile | Newly created virtualised EFI_FILE_PROTOCOL instance. |
Definition at line 95 of file UserOcDummy.c.
EFI_STATUS CachelessContextInit | ( | IN OUT CACHELESS_CONTEXT * | Context, |
IN CONST CHAR16 * | FileName, | ||
IN EFI_FILE_PROTOCOL * | ExtensionsDir, | ||
IN UINT32 | KernelVersion, | ||
IN BOOLEAN | Is32Bit ) |
Initializes cacheless context for later modification. Must be freed with CachelessContextFree on success.
[in,out] | Context | Cacheless context. |
[in] | FileName | Extensions directory filename. |
[in] | ExtensionsDir | Extensions directory EFI_FILE_PROTOCOL. |
[in] | KernelVersion | Current kernel version. |
[in] | Is32Bit | TRUE if booting in 32-bit kernel mode. |
Definition at line 108 of file UserOcDummy.c.
EFI_STATUS CachelessContextOverlayExtensionsDir | ( | IN OUT CACHELESS_CONTEXT * | Context, |
OUT EFI_FILE_PROTOCOL ** | File ) |
Creates virtual directory overlay EFI_FILE_PROTOCOL from cacheless context.
[in,out] | Context | Cacheless context. |
[out] | File | The virtual directory instance. |
Definition at line 122 of file UserOcDummy.c.
EFI_STATUS CachelessContextPerformInject | ( | IN OUT CACHELESS_CONTEXT * | Context, |
IN CONST CHAR16 * | FileName, | ||
OUT EFI_FILE_PROTOCOL ** | VirtualFile ) |
Perform kext injection.
[in,out] | Context | Prelinked context. |
[in] | FileName | Filename of kext file to be injected. |
[out] | VirtualFile | Newly created virtualised EFI_FILE_PROTOCOL instance. |
Definition at line 133 of file UserOcDummy.c.
EFI_STATUS CreateRealFile | ( | IN EFI_FILE_PROTOCOL *OriginalFile | OPTIONAL, |
IN EFI_FILE_OPEN OpenCallback | OPTIONAL, | ||
IN BOOLEAN | CloseOnFailure, | ||
OUT EFI_FILE_PROTOCOL ** | File ) |
Creates virtual file system instance around any file. CreateRealFile or CreateVirtualFile must be called from any registered OpenCallback.
[in] | OriginalFile | Pointer to the original file. |
[in] | OpenCallback | File open callback. |
[in] | CloseOnFailure | Close the original file on failure. |
[out] | File | Resulting file protocol. |
Definition at line 145 of file UserOcDummy.c.
EFI_STATUS CreateVirtualFileFileNameCopy | ( | IN CONST CHAR16 * | FileName, |
IN VOID * | FileBuffer, | ||
IN UINT64 | FileSize, | ||
IN CONST EFI_TIME *ModificationTime | OPTIONAL, | ||
OUT EFI_FILE_PROTOCOL ** | File ) |
Creates read-only EFI_FILE_PROTOCOL instance over a buffer allocated from pool. On success FileData ownership is transferred to the resulting EFI_FILE_PROTOCOL, which frees them with FreePool upon closing EFI_FILE_PROTOCOL. All other fields are copied.
Resulting EFI_FILE_PROTOCOL has 2nd revision, but may be downgraded to 1st by updating the corresponding field.
[in] | FileName | Pointer to the file's name. |
[in] | FileBuffer | Pointer to the file's data. |
[in] | FileSize | File size of FileData. |
[in] | ModificationTime | File modification date, optional. |
[out] | File | Resulting file protocol. |
Definition at line 158 of file UserOcDummy.c.
EFI_STATUS DisableVirtualFs | ( | IN OUT EFI_BOOT_SERVICES * | BootServices | ) |
Enables virtual file system access for given BootServices.
[in,out] | BootServices | Hooked EFI_BOOT_SERVICES. |
Definition at line 172 of file UserOcDummy.c.
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.
[in,out] | BootServices | Hooked EFI_BOOT_SERVICES. |
[in] | OpenCallback | File open callback. |
Definition at line 182 of file UserOcDummy.c.
BOOLEAN OcAppendArgumentsToLoadedImage | ( | IN OUT EFI_LOADED_IMAGE_PROTOCOL * | LoadedImage, |
IN CONST CHAR8 ** | Arguments, | ||
IN UINT32 | ArgumentCount, | ||
IN BOOLEAN | Replace ) |
Append 1 or more arguments to Loaded Image protocol.
[in,out] | LoadedImage | Loaded Image protocol instance. |
[in] | Arguments | Argument array. |
[in] | ArgumentCount | Number of arguments in the array. |
[in] | Replace | Whether to append to existing arguments or replace. |
TRUE | on success. |
Definition at line 193 of file UserOcDummy.c.
BOOLEAN OcCheckArgumentFromEnv | ( | IN EFI_LOADED_IMAGE *LoadedImage | OPTIONAL, |
IN EFI_GET_VARIABLE GetVariable | OPTIONAL, | ||
IN CONST CHAR8 * | Argument, | ||
IN CONST UINTN | ArgumentLength, | ||
IN OUT CHAR8 **Value | OPTIONAL ) |
Check if boot argument is currently passed (via image options or NVRAM).
[in] | LoadedImage | UEFI loaded image protocol instance, optional. |
[in] | GetVariable | Preferred UEFI NVRAM reader, optional. |
[in] | Argument | Argument, e.g. -v, slide=, debug=, etc. |
[in] | ArgumentLength | Argument length, e.g. L_STR_LEN ("-v"). |
[in,out] | Value | Argument value allocated from pool. |
TRUE | if argument is present. |
Definition at line 206 of file UserOcDummy.c.
VOID OcDirectorySeachContextInit | ( | IN OUT DIRECTORY_SEARCH_CONTEXT * | Context | ) |
Initialize DIRECTORY_SEARCH_CONTEXT.
[in,out] | Context | A pointer to the DIRECTORY_SEARCH_CONTEXT. |
Definition at line 220 of file UserOcDummy.c.
EFI_STATUS OcFindWritableOcFileSystem | ( | OUT EFI_FILE_PROTOCOL ** | FileSystem | ) |
Find writable filesystem from Bootstrap.
[out] | FileSystem | Pointer to first found writeable file system. |
EFI_SUCCESS | on success. |
Definition at line 228 of file UserOcDummy.c.
OC_BOOT_ENTRY_TYPE OcGetBootDevicePathType | ( | IN EFI_DEVICE_PATH_PROTOCOL * | DevicePath, |
OUT BOOLEAN *IsFolder | OPTIONAL, | ||
OUT BOOLEAN *IsGeneric | OPTIONAL ) |
Check if supplied device path contains known names (e.g. Apple bootloader).
[in] | DevicePath | Device path. |
[out] | IsFolder | Device path represents directory, optional. |
[out] | IsGeneric | Device path represents generic booter, optional. |
entry | type for potentially known bootloaders. |
OC_BOOT_UNKNOWN | for unknown bootloaders. |
Definition at line 238 of file UserOcDummy.c.
EFI_MEMORY_DESCRIPTOR * OcGetCurrentMemoryMap | ( | OUT UINTN * | MemoryMapSize, |
OUT UINTN * | DescriptorSize, | ||
OUT UINTN *MapKey | OPTIONAL, | ||
OUT UINT32 *DescriptorVersion | OPTIONAL, | ||
OUT UINTN *OriginalMemoryMapSize | OPTIONAL, | ||
IN BOOLEAN | IncludeSplitSpace ) |
Get current memory map allocated on pool with reserved entries.
[out] | MemoryMapSize | Resulting memory map size in bytes. |
[out] | DescriptorSize | Resulting memory map descriptor size in bytes. |
[out] | MapKey | Memory map key, optional. |
[out] | DescriptorVersion | Memory map descriptor version, optional. |
[out] | OriginalMemoryMapSize | Actual pool allocation memory, optional. |
[out] | IncludeSplitSpace | Allocate memory to permit splitting memory map. |
current | memory map or NULL. |
Definition at line 331 of file UserOcDummy.c.
VOID * OcGetFileInfo | ( | IN EFI_FILE_PROTOCOL * | File, |
IN EFI_GUID * | InformationType, | ||
IN UINTN | MinFileInfoSize, | ||
OUT UINTN *RealFileInfoSize | OPTIONAL ) |
Get file information of specified type.
[in] | File | A pointer to file handle. |
[in] | InformationType | A pointer to file info GUID. |
[in] | MinFileInfoSize | Minimal size of the info provided. |
[out] | RealFileInfoSize | Actual info size read (optional). |
read | file info or NULL. |
Definition at line 346 of file UserOcDummy.c.
EFI_STATUS OcGetFileModificationTime | ( | IN EFI_FILE_PROTOCOL * | File, |
OUT EFI_TIME * | Time ) |
Determine file modification time.
[in] | File | A pointer to the file protocol. |
[out] | Time | Modification time. |
EFI_SUCCESS | on success. |
Definition at line 250 of file UserOcDummy.c.
EFI_STATUS OcGetNewestFileFromDirectory | ( | IN OUT DIRECTORY_SEARCH_CONTEXT * | Context, |
IN EFI_FILE_PROTOCOL * | Directory, | ||
IN CHAR16 *FileNameStartsWith | OPTIONAL, | ||
OUT EFI_FILE_INFO ** | FileInfo ) |
Gets the next newest file from the specified directory.
[in,out] | Context | Context. |
[in] | Directory | The directory EFI_FILE_PROTOCOL instance. |
[in] | FileNameStartsWith | Skip files starting with this value. |
[out] | FileInfo | EFI_FILE_INFO allocated from pool memory. |
EFI_SUCCESS | on success. |
Definition at line 261 of file UserOcDummy.c.
EFI_DEVICE_PATH_PROTOCOL * OcGetNextLoadOptionDevicePath | ( | IN EFI_DEVICE_PATH_PROTOCOL * | FilePath, |
IN EFI_DEVICE_PATH_PROTOCOL * | FullPath ) |
Get the next possible full path pointing to the load option. The routine doesn't guarantee the returned full path points to an existing file, and it also doesn't guarantee the existing file is a valid load option.
FilePath | The device path pointing to a load option. It could be a short-form device path. |
FullPath | The full path returned by the routine in last call. Set to NULL in first call. |
Definition at line 15 of file UserOcDummy.c.
CHAR16 * OcGetVolumeLabel | ( | IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL * | FileSystem | ) |
Retrieves volume label.
[in] | FileSystem | A pointer to the file system protocol of the volume. |
A | pointer to the NULL terminated unicode volume label. |
Definition at line 359 of file UserOcDummy.c.
VOID OcImageLoaderRegisterConfigure | ( | IN OC_IMAGE_LOADER_CONFIGURE Configure | OPTIONAL | ) |
Register image start callback.
[in] | Configure | Callback function to call on image start. |
Definition at line 274 of file UserOcDummy.c.
BOOLEAN OcPlatformIs64BitSupported | ( | IN UINT32 | KernelVersion | ) |
Determine platform support for 64-bit kernel mode based on kernel version.
[in] | KernelVersion | Kernel version. |
Definition at line 282 of file UserOcDummy.c.
VOID * OcReadFile | ( | IN CONST EFI_SIMPLE_FILE_SYSTEM_PROTOCOL * | FileSystem, |
IN CONST CHAR16 * | FilePath, | ||
OUT UINT32 *FileSize | OPTIONAL, | ||
IN CONST UINT32 MaxFileSize | OPTIONAL ) |
Read file from file system with implicit double (2 byte) null termination. Null termination does not affect the returned file size. Depending on the implementation 0 byte files may return null.
[in] | FileSystem | A pointer to the file system protocol of the volume. |
[in] | FilePath | The full path to the file on the device. |
[out] | FileSize | The size of the file read (optional). |
[in] | MaxFileSize | Upper file size bound (optional). |
A | pointer to a buffer containing file read or NULL. |
Definition at line 369 of file UserOcDummy.c.
VOID * OcReadFileFromDirectory | ( | IN CONST EFI_FILE_PROTOCOL * | RootDirectory, |
IN CONST CHAR16 * | FilePath, | ||
OUT UINT32 *FileSize | OPTIONAL, | ||
IN UINT32 MaxFileSize | OPTIONAL ) |
Read file from file protocol with implicit double (2 byte) null termination. Null termination does not affect the returned file size. Depending on the implementation 0 byte files may return null.
[in] | RootDirectory | A pointer to the file protocol of the directory. |
[in] | FilePath | The full path to the file on the device. |
[out] | FileSize | The size of the file read (optional). |
[in] | MaxFileSize | Upper file size bound (optional). |
A | pointer to a buffer containing file read or NULL. |
Definition at line 318 of file UserOcDummy.c.
EFI_STATUS OcSafeFileOpen | ( | IN CONST EFI_FILE_PROTOCOL * | Directory, |
OUT EFI_FILE_PROTOCOL ** | NewHandle, | ||
IN CONST CHAR16 * | FileName, | ||
IN CONST UINT64 | OpenMode, | ||
IN CONST UINT64 | Attributes ) |
Opens a new file relative to the source file's location. This function is equivalent to EFI_FILE_OPEN but has additional restrictions to provide board compatibility. Currently the only restriction is no trailing slash in the filename due to issues in FAT drivers.
Directory | File protocol instance of parent directory. |
NewHandle | Pointer for returned handle. |
FileName | Null-terminated file name or relative path. |
OpenMode | File open mode. |
Attributes | Attributes for the newly created file. |
EFI_SUCCESS | for successfully opened file. |
Definition at line 292 of file UserOcDummy.c.
VOID * OcStorageReadFileUnicode | ( | IN OC_STORAGE_CONTEXT * | Context, |
IN CONST CHAR16 * | FilePath, | ||
OUT UINT32 *FileSize | OPTIONAL ) |
Read file from storage with implicit double (2 byte) null termination. Null termination does not affect the returned file size. Depending on the implementation 0 byte files may return null. If storage context was created with valid storage key, then signature checking will be performed
[in] | Context | Storage context. |
[in] | FilePath | The full path to the file on the device. |
[out] | FileSize | The size of the file read (optional). |
A | pointer to a buffer containing file read or NULL. |
Definition at line 306 of file UserOcDummy.c.