summaryrefslogtreecommitdiff
path: root/UnixPkg/Include/Protocol/UnixThunk.h
diff options
context:
space:
mode:
Diffstat (limited to 'UnixPkg/Include/Protocol/UnixThunk.h')
-rw-r--r--UnixPkg/Include/Protocol/UnixThunk.h346
1 files changed, 0 insertions, 346 deletions
diff --git a/UnixPkg/Include/Protocol/UnixThunk.h b/UnixPkg/Include/Protocol/UnixThunk.h
deleted file mode 100644
index 476dcc659f..0000000000
--- a/UnixPkg/Include/Protocol/UnixThunk.h
+++ /dev/null
@@ -1,346 +0,0 @@
-/*++
-
-Copyright (c) 2004 - 2009, Intel Corporation. All rights reserved.<BR>
-Portions copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>
-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.
-
-Module Name:
-
- UnixThunk.h
-
-Abstract:
-
- This protocol allows an EFI driver in the Unix emulation environment
- to make Posix calls.
-
- NEVER make an Unix call directly, always make the call via this protocol.
-
- There are no This pointers on the protocol member functions as they map
- exactly into Unix system calls.
-
---*/
-
-#ifndef _UNIX_THUNK_H_
-#define _UNIX_THUNK_H_
-
-#include <Common/UnixInclude.h>
-
-#include <Base.h>
-#include <Library/PeCoffLib.h>
-
-
-
-#define EFI_UNIX_THUNK_PROTOCOL_GUID \
- { \
- 0xf2e98868, 0x8985, 0x11db, {0x9a, 0x59, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
- }
-
-typedef
-VOID
-(EFIAPI *UnixSleep) (
- unsigned long Milliseconds
- );
-
-typedef
-VOID
-(EFIAPI *UnixExit) (
- int status // exit code for all threads
- );
-
-typedef
-VOID
-(EFIAPI *UnixSetTimer) (
- UINT64 PeriodMs,
- VOID (EFIAPI *CallBack)(UINT64 DeltaMs)
- );
-
-typedef
-VOID
-(EFIAPI *UnixGetLocalTime) (
- EFI_TIME *Time
- );
-
-typedef
-struct tm *
-(EFIAPI *UnixGmTime)(
- const time_t *timep
- );
-
-typedef
-long
-(EFIAPI *UnixGetTimeZone)(
- void
- );
-
-typedef
-int
-(EFIAPI *UnixGetDayLight)(
- void
- );
-
-typedef
-int
-(EFIAPI *UnixPoll)(
- struct pollfd *pfd,
- unsigned int nfds,
- int timeout
- );
-
-typedef
-long
-(EFIAPI *UnixRead) (
- int fd,
- void *buf,
- int count
- );
-
-typedef
-long
-(EFIAPI *UnixWrite) (
- int fd,
- const void *buf,
- int count
- );
-
-typedef
-char *
-(EFIAPI *UnixGetenv) (const char *var);
-
-typedef
-int
-(EFIAPI *UnixOpen) (const char *name, int flags, int mode);
-
-typedef
-off_t
-(EFIAPI *UnixSeek) (int fd, off_t off, int whence);
-
-typedef
-int
-(EFIAPI *UnixFtruncate) (int fd, long int len);
-
-typedef
-int
-(EFIAPI *UnixClose) (int fd);
-
-typedef
-int
-(EFIAPI *UnixMkdir)(const char *pathname, mode_t mode);
-
-typedef
-int
-(EFIAPI *UnixRmDir)(const char *pathname);
-
-typedef
-int
-(EFIAPI *UnixUnLink)(const char *pathname);
-
-typedef
-int
-(EFIAPI *UnixGetErrno)(VOID);
-
-typedef
-DIR *
-(EFIAPI *UnixOpenDir)(const char *pathname);
-
-typedef
-void
-(EFIAPI *UnixRewindDir)(DIR *dir);
-
-typedef
-struct dirent *
-(EFIAPI *UnixReadDir)(DIR *dir);
-
-typedef
-int
-(EFIAPI *UnixCloseDir)(DIR *dir);
-
-typedef
-int
-(EFIAPI *UnixStat)(const char *path, STAT_FIX *buf);
-
-typedef
-int
-(EFIAPI *UnixStatFs)(const char *path, struct statfs *buf);
-
-typedef
-int
-(EFIAPI *UnixRename)(const char *oldpath, const char *newpath);
-
-typedef
-time_t
-(EFIAPI *UnixMkTime)(struct tm *tm);
-
-typedef
-int
-(EFIAPI *UnixFSync)(int fd);
-
-typedef
-int
-(EFIAPI *UnixChmod)(const char *path, mode_t mode);
-
-typedef
-int
-(EFIAPI *UnixUTime)(const char *filename, const struct utimbuf *buf);
-
-struct _EFI_UNIX_UGA_IO_PROTOCOL;
-typedef
-EFI_STATUS
-(EFIAPI *UnixUgaCreate)(struct _EFI_UNIX_UGA_IO_PROTOCOL **UgaIo,
- CONST CHAR16 *Title);
-
-typedef
-int
-(EFIAPI *UnixTcflush) (int fildes, int queue_selector);
-
-typedef
-void
-(EFIAPI *UnixPerror) (__const char *__s);
-
-typedef
-int
-#if __CYGWIN__
-(EFIAPI *UnixIoCtl) (int fd, int __request, UINTN Arg);
-#else
-(EFIAPI *UnixIoCtl) (int fd, unsigned long int __request, void *Arg);
-#endif
-
-typedef
-int
-(EFIAPI *UnixFcntl) (int __fd, int __cmd, void *Arg);
-
-typedef
-int
-(EFIAPI *UnixCfsetispeed) (struct termios *__termios_p, speed_t __speed);
-
-typedef
-int
-(EFIAPI *UnixCfsetospeed) (struct termios *__termios_p, speed_t __speed);
-
-typedef
-int
-(EFIAPI *UnixTcgetattr) (int __fd, struct termios *__termios_p);
-
-typedef
-int
-(EFIAPI *UnixTcsetattr) (int __fd, int __optional_actions,
- __const struct termios *__termios_p);
-
-
-//
-// Worker functions to enable source level debug in the emulator
-//
-
-typedef
-RETURN_STATUS
-(EFIAPI *UnixPeCoffGetEntryPoint) (
- IN VOID *Pe32Data,
- IN OUT VOID **EntryPoint
- );
-
-typedef
-VOID
-(EFIAPI *UnixPeCoffRelocateImageExtraAction) (
- IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
- );
-
-typedef
-VOID
-(EFIAPI *UnixPeCoffLoaderUnloadImageExtraAction) (
- IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
- );
-
-typedef
-int
-(EFIAPI *UnixGetIfAddrs) (
- struct ifaddrs **ifap
- );
-
-typedef
-void
-(EFIAPI *UnixFreeIfAddrs) (
- struct ifaddrs *ifap
- );
-
-typedef
-int
-(EFIAPI *UnixSocket) (
- int domain,
- int type,
- int protocol
- );
-
-typedef
-void
-(EFIAPI *UnixDisableInterruptEmulation) (void);
-
-typedef
-void
-(EFIAPI *UnixEnableInterruptEmulation) (void);
-
-
-
-
-#define EFI_UNIX_THUNK_PROTOCOL_SIGNATURE SIGNATURE_32 ('L', 'N', 'X', 'T')
-
-typedef struct _EFI_UNIX_THUNK_PROTOCOL {
- UINT64 Signature;
-
- UnixSleep Sleep;
- UnixExit Exit;
- UnixSetTimer SetTimer;
- UnixGetLocalTime GetLocalTime;
- UnixGmTime GmTime;
- UnixGetTimeZone GetTimeZone;
- UnixGetDayLight GetDayLight;
- UnixPoll Poll;
- UnixRead Read;
- UnixWrite Write;
- UnixGetenv Getenv;
- UnixOpen Open;
- UnixSeek Lseek;
- UnixFtruncate FTruncate;
- UnixClose Close;
- UnixMkdir MkDir;
- UnixRmDir RmDir;
- UnixUnLink UnLink;
- UnixGetErrno GetErrno;
- UnixOpenDir OpenDir;
- UnixRewindDir RewindDir;
- UnixReadDir ReadDir;
- UnixCloseDir CloseDir;
- UnixStat Stat;
- UnixStatFs StatFs;
- UnixRename Rename;
- UnixMkTime MkTime;
- UnixFSync FSync;
- UnixChmod Chmod;
- UnixUTime UTime;
- UnixTcflush Tcflush;
- UnixUgaCreate UgaCreate;
- UnixPerror Perror;
- UnixIoCtl IoCtl;
- UnixFcntl Fcntl;
- UnixCfsetispeed Cfsetispeed;
- UnixCfsetospeed Cfsetospeed;
- UnixTcgetattr Tcgetattr;
- UnixTcsetattr Tcsetattr;
- UnixPeCoffGetEntryPoint PeCoffGetEntryPoint;
- UnixPeCoffRelocateImageExtraAction PeCoffRelocateImageExtraAction;
- UnixPeCoffLoaderUnloadImageExtraAction PeCoffUnloadImageExtraAction;
- UnixEnableInterruptEmulation EnableInterrupt;
- UnixDisableInterruptEmulation DisableInterrupt;
-
- UnixGetIfAddrs GetIfAddrs;
- UnixFreeIfAddrs FreeIfAddrs;
- UnixSocket Socket;
-} EFI_UNIX_THUNK_PROTOCOL;
-
-extern EFI_GUID gEfiUnixThunkProtocolGuid;
-
-#endif