2011-05-11 20:31:20 +02:00
|
|
|
/** @file
|
|
|
|
|
|
|
|
Copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>
|
2019-08-02 02:55:26 +02:00
|
|
|
Copyright (c) 2011 - 2019, Intel Corporation. All rights reserved.<BR>
|
2011-05-11 20:31:20 +02:00
|
|
|
|
2019-04-04 01:03:44 +02:00
|
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
**/
|
|
|
|
|
|
|
|
#ifndef _GASKET_H_
|
|
|
|
#define _GASKET_H_
|
|
|
|
|
|
|
|
//
|
|
|
|
// EMU_THUNK_PROTOCOL gaskets (EFIAPI to UNIX ABI)
|
|
|
|
//
|
|
|
|
|
|
|
|
UINTN
|
2011-06-08 04:34:12 +02:00
|
|
|
EFIAPI
|
2011-05-11 20:31:20 +02:00
|
|
|
GasketSecWriteStdErr (
|
|
|
|
IN UINT8 *Buffer,
|
|
|
|
IN UINTN NumberOfBytes
|
|
|
|
);
|
|
|
|
|
2011-06-08 04:34:12 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSecConfigStdIn (
|
|
|
|
VOID
|
|
|
|
);
|
|
|
|
|
|
|
|
UINTN
|
|
|
|
EFIAPI
|
|
|
|
GasketSecWriteStdOut (
|
|
|
|
IN UINT8 *Buffer,
|
|
|
|
IN UINTN NumberOfBytes
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-06-08 04:34:12 +02:00
|
|
|
UINTN
|
|
|
|
EFIAPI
|
|
|
|
GasketSecReadStdIn (
|
|
|
|
IN UINT8 *Buffer,
|
|
|
|
IN UINTN NumberOfBytes
|
|
|
|
);
|
|
|
|
|
|
|
|
BOOLEAN
|
|
|
|
EFIAPI
|
|
|
|
GasketSecPollStdIn (
|
|
|
|
VOID
|
|
|
|
);
|
|
|
|
|
2011-06-24 16:48:38 +02:00
|
|
|
VOID *
|
|
|
|
EFIAPI
|
|
|
|
GasketSecMalloc (
|
|
|
|
IN UINTN Size
|
|
|
|
);
|
2011-06-25 01:59:51 +02:00
|
|
|
|
|
|
|
VOID *
|
|
|
|
EFIAPI
|
|
|
|
GasketSecValloc (
|
|
|
|
IN UINTN Size
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-06-25 01:59:51 +02:00
|
|
|
BOOLEAN
|
|
|
|
EFIAPI
|
2011-06-24 16:48:38 +02:00
|
|
|
GasketSecFree (
|
|
|
|
IN VOID *Ptr
|
|
|
|
);
|
2011-06-08 04:34:12 +02:00
|
|
|
|
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
RETURN_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSecPeCoffGetEntryPoint (
|
|
|
|
IN VOID *Pe32Data,
|
|
|
|
IN OUT VOID **EntryPoint
|
|
|
|
);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecPeCoffRelocateImageExtraAction (
|
|
|
|
IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
|
|
|
|
);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecPeCoffUnloadImageExtraAction (
|
|
|
|
IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
|
|
|
|
);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecSetTimer (
|
|
|
|
IN UINT64 PeriodMs,
|
|
|
|
IN EMU_SET_TIMER_CALLBACK CallBack
|
|
|
|
);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecEnableInterrupt (
|
|
|
|
VOID
|
|
|
|
);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecDisableInterrupt (
|
|
|
|
VOID
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
|
|
|
UINT64
|
2011-06-19 20:56:13 +02:00
|
|
|
EFIAPI
|
2011-05-11 20:31:20 +02:00
|
|
|
GasketQueryPerformanceFrequency (
|
|
|
|
VOID
|
|
|
|
);
|
|
|
|
|
|
|
|
UINT64
|
2011-06-19 20:56:13 +02:00
|
|
|
EFIAPI
|
2011-05-11 20:31:20 +02:00
|
|
|
GasketQueryPerformanceCounter (
|
|
|
|
VOID
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecSleep (
|
2011-06-22 01:41:31 +02:00
|
|
|
IN UINT64 Nanoseconds
|
2011-06-17 20:21:16 +02:00
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-06-17 20:21:16 +02:00
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecCpuSleep (
|
|
|
|
VOID
|
2011-05-11 20:31:20 +02:00
|
|
|
);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecExit (
|
|
|
|
UINTN Status
|
|
|
|
);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecGetTime (
|
|
|
|
OUT EFI_TIME *Time,
|
|
|
|
OUT EFI_TIME_CAPABILITIES *Capabilities OPTIONAL
|
|
|
|
);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketSecSetTime (
|
|
|
|
IN EFI_TIME *Time
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSecGetNextProtocol (
|
|
|
|
IN BOOLEAN EmuBusDriver,
|
|
|
|
OUT EMU_IO_THUNK_PROTOCOL **Instance OPTIONAL
|
|
|
|
);
|
|
|
|
|
|
|
|
|
2011-06-28 18:50:26 +02:00
|
|
|
// PPIs produced by SEC
|
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSecUnixPeiAutoScan (
|
|
|
|
IN UINTN Index,
|
|
|
|
OUT EFI_PHYSICAL_ADDRESS *MemoryBase,
|
|
|
|
OUT UINT64 *MemorySize
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
VOID *
|
|
|
|
EFIAPI
|
|
|
|
GasketSecEmuThunkAddress (
|
|
|
|
VOID
|
|
|
|
);
|
|
|
|
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSecUnixUnixFwhAddress (
|
|
|
|
IN OUT UINT64 *FwhSize,
|
|
|
|
IN OUT EFI_PHYSICAL_ADDRESS *FwhBase
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
// Reverse (UNIX to EFIAPI) gaskets
|
|
|
|
//
|
|
|
|
|
|
|
|
typedef
|
|
|
|
void
|
2011-06-19 20:56:13 +02:00
|
|
|
(EFIAPI *CALL_BACK) (
|
2011-05-11 20:31:20 +02:00
|
|
|
UINT64 Delta
|
|
|
|
);
|
|
|
|
|
|
|
|
UINTN
|
|
|
|
ReverseGasketUint64 (
|
2019-08-02 02:55:26 +02:00
|
|
|
UINTN CallBack,
|
2011-05-11 20:31:20 +02:00
|
|
|
UINT64 a
|
|
|
|
);
|
|
|
|
|
|
|
|
UINTN
|
|
|
|
ReverseGasketUint64Uint64 (
|
|
|
|
VOID *CallBack,
|
|
|
|
VOID *Context,
|
|
|
|
VOID *Key
|
|
|
|
);
|
|
|
|
|
|
|
|
//
|
|
|
|
// Gasket functions for EFI_EMU_UGA_IO_PROTOCOL
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketX11Size (
|
|
|
|
EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindowsIo,
|
|
|
|
UINT32 Width,
|
|
|
|
UINT32 Height
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketX11CheckKey (
|
|
|
|
EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindowsIo
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketX11GetKey (
|
|
|
|
EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindowsIo,
|
|
|
|
EFI_KEY_DATA *key
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketX11KeySetState (
|
|
|
|
EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindowsIo,
|
|
|
|
EFI_KEY_TOGGLE_STATE *KeyToggleState
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
EFI_STATUS
|
2011-06-28 18:50:26 +02:00
|
|
|
EFIAPI
|
|
|
|
GasketX11RegisterKeyNotify (
|
|
|
|
IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindowsIo,
|
2011-05-11 20:31:20 +02:00
|
|
|
IN EMU_GRAPHICS_WINDOW_REGISTER_KEY_NOTIFY_CALLBACK MakeCallBack,
|
|
|
|
IN EMU_GRAPHICS_WINDOW_REGISTER_KEY_NOTIFY_CALLBACK BreakCallBack,
|
|
|
|
IN VOID *Context
|
|
|
|
);
|
|
|
|
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketX11Blt (
|
|
|
|
IN EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows,
|
|
|
|
IN EFI_UGA_PIXEL *BltBuffer OPTIONAL,
|
|
|
|
IN EFI_UGA_BLT_OPERATION BltOperation,
|
|
|
|
IN EMU_GRAPHICS_WINDOWS__BLT_ARGS *Args
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketX11CheckPointer (
|
|
|
|
EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindowsIo
|
|
|
|
);
|
|
|
|
|
2011-06-28 18:50:26 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
2011-05-11 20:31:20 +02:00
|
|
|
GasketX11GetPointerState (
|
2011-06-28 18:50:26 +02:00
|
|
|
EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindowsIo,
|
2011-05-11 20:31:20 +02:00
|
|
|
EFI_SIMPLE_POINTER_STATE *state
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketX11GraphicsWindowOpen (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketX11GraphicsWindowClose (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
// Pthreads
|
|
|
|
|
|
|
|
UINTN
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadMutexLock (
|
|
|
|
IN VOID *Mutex
|
2011-06-28 18:50:26 +02:00
|
|
|
);
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UINTN
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadMutexUnLock (
|
|
|
|
IN VOID *Mutex
|
2011-06-28 18:50:26 +02:00
|
|
|
);
|
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
UINTN
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadMutexTryLock (
|
|
|
|
IN VOID *Mutex
|
2011-06-28 18:50:26 +02:00
|
|
|
);
|
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
VOID *
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadMutexInit (
|
|
|
|
IN VOID
|
2011-06-28 18:50:26 +02:00
|
|
|
);
|
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
UINTN
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadMutexDestroy (
|
|
|
|
IN VOID *Mutex
|
2011-06-28 18:50:26 +02:00
|
|
|
);
|
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
UINTN
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadCreate (
|
|
|
|
IN VOID *Thread,
|
|
|
|
IN VOID *Attribute,
|
2011-05-16 06:47:40 +02:00
|
|
|
IN THREAD_THUNK_THREAD_ENTRY Start,
|
2011-05-11 20:31:20 +02:00
|
|
|
IN VOID *Context
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
VOID
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadExit (
|
|
|
|
IN VOID *ValuePtr
|
2011-06-28 18:50:26 +02:00
|
|
|
);
|
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
UINTN
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadSelf (
|
|
|
|
VOID
|
2011-06-28 18:50:26 +02:00
|
|
|
);
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadOpen (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPthreadClose (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
// PosixFileSystem
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixOpenVolume (
|
|
|
|
IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *This,
|
|
|
|
OUT EFI_FILE_PROTOCOL **Root
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileOpen (
|
|
|
|
IN EFI_FILE_PROTOCOL *This,
|
|
|
|
OUT EFI_FILE_PROTOCOL **NewHandle,
|
|
|
|
IN CHAR16 *FileName,
|
|
|
|
IN UINT64 OpenMode,
|
|
|
|
IN UINT64 Attributes
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileCLose (
|
|
|
|
IN EFI_FILE_PROTOCOL *This
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileDelete (
|
|
|
|
IN EFI_FILE_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileRead (
|
|
|
|
IN EFI_FILE_PROTOCOL *This,
|
|
|
|
IN OUT UINTN *BufferSize,
|
|
|
|
OUT VOID *Buffer
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileWrite (
|
|
|
|
IN EFI_FILE_PROTOCOL *This,
|
|
|
|
IN OUT UINTN *BufferSize,
|
|
|
|
IN VOID *Buffer
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileSetPossition (
|
|
|
|
IN EFI_FILE_PROTOCOL *This,
|
|
|
|
IN UINT64 Position
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileGetPossition (
|
|
|
|
IN EFI_FILE_PROTOCOL *This,
|
|
|
|
OUT UINT64 *Position
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileGetInfo (
|
|
|
|
IN EFI_FILE_PROTOCOL *This,
|
|
|
|
IN EFI_GUID *InformationType,
|
|
|
|
IN OUT UINTN *BufferSize,
|
|
|
|
OUT VOID *Buffer
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileSetInfo (
|
|
|
|
IN EFI_FILE_PROTOCOL *This,
|
|
|
|
IN EFI_GUID *InformationType,
|
|
|
|
IN UINTN BufferSize,
|
|
|
|
IN VOID *Buffer
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileFlush (
|
|
|
|
IN EFI_FILE_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileSystmeThunkOpen (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketPosixFileSystmeThunkClose (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
2011-06-03 05:31:32 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketEmuBlockIoReset (
|
|
|
|
IN EMU_BLOCK_IO_PROTOCOL *This,
|
|
|
|
IN BOOLEAN ExtendedVerification
|
|
|
|
);
|
2011-05-11 20:31:20 +02:00
|
|
|
|
2011-06-03 05:31:32 +02:00
|
|
|
EFI_STATUS
|
2011-06-19 20:56:13 +02:00
|
|
|
EFIAPI
|
2011-06-03 05:31:32 +02:00
|
|
|
GasketEmuBlockIoReadBlocks (
|
|
|
|
IN EMU_BLOCK_IO_PROTOCOL *This,
|
|
|
|
IN UINT32 MediaId,
|
|
|
|
IN EFI_LBA LBA,
|
|
|
|
IN OUT EFI_BLOCK_IO2_TOKEN *Token,
|
|
|
|
IN UINTN BufferSize,
|
|
|
|
OUT VOID *Buffer
|
|
|
|
);
|
2011-05-11 20:31:20 +02:00
|
|
|
|
2011-06-03 05:31:32 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketEmuBlockIoWriteBlocks (
|
|
|
|
IN EMU_BLOCK_IO_PROTOCOL *This,
|
|
|
|
IN UINT32 MediaId,
|
|
|
|
IN EFI_LBA LBA,
|
|
|
|
IN OUT EFI_BLOCK_IO2_TOKEN *Token,
|
|
|
|
IN UINTN BufferSize,
|
|
|
|
IN VOID *Buffer
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-06-03 05:31:32 +02:00
|
|
|
EFI_STATUS
|
2011-06-19 20:56:13 +02:00
|
|
|
EFIAPI
|
2011-06-03 05:31:32 +02:00
|
|
|
GasketEmuBlockIoFlushBlocks (
|
|
|
|
IN EMU_BLOCK_IO_PROTOCOL *This,
|
|
|
|
IN OUT EFI_BLOCK_IO2_TOKEN *Token
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-06-03 05:31:32 +02:00
|
|
|
EFI_STATUS
|
2011-06-19 20:56:13 +02:00
|
|
|
EFIAPI
|
2011-06-03 05:31:32 +02:00
|
|
|
GasketEmuBlockIoCreateMapping (
|
|
|
|
IN EMU_BLOCK_IO_PROTOCOL *This,
|
|
|
|
IN EFI_BLOCK_IO_MEDIA *Media
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketBlockIoThunkOpen (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketBlockIoThunkClose (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
2011-06-15 20:51:30 +02:00
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpThunkOpen (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpThunkClose (
|
|
|
|
IN EMU_IO_THUNK_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpCreateMapping (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN EFI_SIMPLE_NETWORK_MODE *Media
|
|
|
|
);
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-06-15 20:51:30 +02:00
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpStart (
|
|
|
|
IN EMU_SNP_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpStop (
|
|
|
|
IN EMU_SNP_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpInitialize (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN UINTN ExtraRxBufferSize OPTIONAL,
|
|
|
|
IN UINTN ExtraTxBufferSize OPTIONAL
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpReset (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN BOOLEAN ExtendedVerification
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpShutdown (
|
|
|
|
IN EMU_SNP_PROTOCOL *This
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpReceiveFilters (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN UINT32 Enable,
|
|
|
|
IN UINT32 Disable,
|
|
|
|
IN BOOLEAN ResetMCastFilter,
|
|
|
|
IN UINTN MCastFilterCnt OPTIONAL,
|
|
|
|
IN EFI_MAC_ADDRESS *MCastFilter OPTIONAL
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpStationAddress (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN BOOLEAN Reset,
|
|
|
|
IN EFI_MAC_ADDRESS *New OPTIONAL
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpStatistics (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN BOOLEAN Reset,
|
|
|
|
IN OUT UINTN *StatisticsSize OPTIONAL,
|
|
|
|
OUT EFI_NETWORK_STATISTICS *StatisticsTable OPTIONAL
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpMCastIpToMac (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN BOOLEAN IPv6,
|
|
|
|
IN EFI_IP_ADDRESS *IP,
|
|
|
|
OUT EFI_MAC_ADDRESS *MAC
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpNvData (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN BOOLEAN ReadWrite,
|
|
|
|
IN UINTN Offset,
|
|
|
|
IN UINTN BufferSize,
|
|
|
|
IN OUT VOID *Buffer
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpGetStatus (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
OUT UINT32 *InterruptStatus OPTIONAL,
|
|
|
|
OUT VOID **TxBuf OPTIONAL
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpTransmit (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
IN UINTN HeaderSize,
|
|
|
|
IN UINTN BufferSize,
|
|
|
|
IN VOID *Buffer,
|
|
|
|
IN EFI_MAC_ADDRESS *SrcAddr OPTIONAL,
|
|
|
|
IN EFI_MAC_ADDRESS *DestAddr OPTIONAL,
|
|
|
|
IN UINT16 *Protocol OPTIONAL
|
|
|
|
);
|
|
|
|
|
|
|
|
EFI_STATUS
|
|
|
|
EFIAPI
|
|
|
|
GasketSnpReceive (
|
|
|
|
IN EMU_SNP_PROTOCOL *This,
|
|
|
|
OUT UINTN *HeaderSize OPTIONAL,
|
|
|
|
IN OUT UINTN *BufferSize,
|
|
|
|
OUT VOID *Buffer,
|
|
|
|
OUT EFI_MAC_ADDRESS *SrcAddr OPTIONAL,
|
|
|
|
OUT EFI_MAC_ADDRESS *DestAddr OPTIONAL,
|
|
|
|
OUT UINT16 *Protocol OPTIONAL
|
|
|
|
);
|
|
|
|
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
|