summaryrefslogtreecommitdiff
path: root/StdLib/Include/sys/EfiSysCall.h
diff options
context:
space:
mode:
Diffstat (limited to 'StdLib/Include/sys/EfiSysCall.h')
-rw-r--r--StdLib/Include/sys/EfiSysCall.h350
1 files changed, 0 insertions, 350 deletions
diff --git a/StdLib/Include/sys/EfiSysCall.h b/StdLib/Include/sys/EfiSysCall.h
deleted file mode 100644
index 6f4742875e..0000000000
--- a/StdLib/Include/sys/EfiSysCall.h
+++ /dev/null
@@ -1,350 +0,0 @@
-/** @file
- Function declarations for UEFI "system calls".
-
- The following macros are defined in this file:<BR>
-@verbatim
- STDIN_FILENO 0 standard input file descriptor
- STDOUT_FILENO 1 standard output file descriptor
- STDERR_FILENO 2 standard error file descriptor
- SEEK_SET 0 set file offset to offset
- SEEK_CUR 1 set file offset to current plus offset
- SEEK_END 2 set file offset to EOF plus offset
- VALID_OPEN 1
- VALID_CLOSED 0
- VALID_DONT_CARE -1
-@endverbatim
-
- The following types are defined in this file:<BR>
-@verbatim
- struct stat; Structure declared in <sys/stat.h>
-@endverbatim
-
- The following functions are declared in this file:<BR>
-@verbatim
- ############### System Calls used in stdio.
- int close (int fd);
- ssize_t read (int fd, void *buf, size_t n);
- ssize_t write (int fd, const void *buf, size_t n);
- int unlink (const char *name);
- int dup2 (int, int);
- int rmdir (const char *);
- int isatty (int);
-
- ############### System Calls which are also declared in sys/fcntl.h.
- int open (const char *name, int oflags, int mode);
- int creat (const char *, mode_t);
- int fcntl (int, int, ...);
-
- ############### System Calls which are also declared in stat.h.
- int mkdir (const char *, mode_t);
- int fstat (int, struct stat *);
- int lstat (const char *, struct stat *);
- int stat (const char *, void *);
- int chmod (const char *, mode_t);
-
- ############### System Calls which are also declared in sys/types.h.
- off_t lseek (int, off_t, int);
- int truncate (const char *, off_t);
- int ftruncate (int, off_t); // IEEE Std 1003.1b-93
-
- ############### EFI-specific Functions.
- int DeleteOnClose (int fd); Mark an open file to be deleted when closed.
- int FindFreeFD (int MinFd);
- BOOLEAN ValidateFD (int fd, int IsOpen);
-@endverbatim
-
- Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
- This program and the accompanying materials are licensed and made available under
- the terms and conditions of the BSD License that accompanies this distribution.
- The full text of the license may be found at
- http://opensource.org/licenses/bsd-license.
-
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-**/
-#ifndef _EFI_SYS_CALL_H
-#define _EFI_SYS_CALL_H
-
-#include <sys/EfiCdefs.h>
-#include <sys/types.h>
-
-struct stat; /* Structure declared in <sys/stat.h> */
-
-#define STDIN_FILENO 0 /**< standard input file descriptor */
-#define STDOUT_FILENO 1 /**< standard output file descriptor */
-#define STDERR_FILENO 2 /**< standard error file descriptor */
-
-/* whence values for lseek(2)
- Always ensure that these are consistent with <stdio.h> and <unistd.h>!
-*/
-#ifndef SEEK_SET
- #define SEEK_SET 0 /**< set file offset to offset */
-#endif
-#ifndef SEEK_CUR
- #define SEEK_CUR 1 /**< set file offset to current plus offset */
-#endif
-#ifndef SEEK_END
- #define SEEK_END 2 /**< set file offset to EOF plus offset */
-#endif
-
-// Parameters for the ValidateFD function.
-#define VALID_OPEN 1
-#define VALID_CLOSED 0
-#define VALID_DONT_CARE -1
-
-__BEGIN_DECLS
-/* EFI versions of BSD system calls used in stdio */
-
- /** Close a file or device.
-
- @param[in] fd File Descriptor for the file or device to close.
-
- @retval 0 Successful completion.
- @retval -1 An error occurred, identified by errno.
- - EBADF fd is not a valid File Descriptor.
- - EINTR The function was interrupted by a signal.
- - EIO An I/O error occurred.
- **/
- int close (int fd);
-
- /** Read from a file or device.
-
- @param[in] fd File Descriptor for the file or device to read.
- @param[in] buf Buffer to read data into.
- @param[in] N Maximum number of bytes to read.
-
- @return On successful completion, read returns a non-negative integer
- indicating the number of bytes actually read. Otherwise, it
- returns -1 and sets errno as follows:
- - EAGAIN
- - EWOULDBLOCK
- - EBADF
- - EBADMSG
- - EINTR
- - EINVAL
- - EIO
- - EISDIR
- - EOVERFLOW
- - ECONNRESET
- - ENOTCONN
- - ETIMEDOUT
- - ENOBUFS
- - ENOMEM
- - ENXIO
- **/
- ssize_t read (int fd, void *buf, size_t n);
-
- /** Write to a file or device.
-
- @param[in] fd File Descriptor for the file or device to write.
- @param[in] buf Buffer to write data from.
- @param[in] N Maximum number of bytes to write.
-
- @return On successful completion, write returns a non-negative integer
- indicating the number of bytes actually written. Otherwise, it
- returns -1 and sets errno as follows:
- - EAGAIN
- - EWOULDBLOCK
- - EBADF
- - EFBIG
- - EINTR
- - EINVAL
- - EIO
- - ENOSPC
- - EPIPE
- - ERANGE
- - ECONNRESET
- - ENOBUFS
- - ENXIO
- - ENETDOWN
- - ENETUNREACH
- **/
- ssize_t write (int fd, const void *buf, size_t n);
-
- /** Unlink (delete) a file.
-
- @param[in] name The name of the file to be deleted.
-
- @retval 0 Successful completion.
- @retval -1 Unable to perform operation, errno contains further
- information. The file name is unchanged.
- **/
- int unlink (const char *name);
-
- /** Make file descriptor Fd2 a duplicate of file descriptor Fd1.
-
- @param[in] Fd1 File descriptor to be duplicated
- @param[in] Fd2 File descriptor to become a duplicate of Fd1.
-
- @retval 0 Successful completion.
- @retval -1 Unable to perform operation, errno contains further
- information.
- **/
- int dup2 (int Fd1, int Fd2);
-
- /** Remove a directory.
-
- @param[in] Path Path to the directory to be deleted.
-
- @retval 0 Successful completion.
- @retval -1 Unable to perform operation, errno contains further
- information. The named directory remains unchanged.
- **/
- int rmdir (const char *Path);
-
- /** Determine if fd refers to an interactive terminal device.
-
- @param[in] fd The file descriptor to be tested.
-
- @retval 0 The file descriptor, fd, is not for a terminal. errno is set
- indicating the cause for failure.
- - EBADF fd is not a valid open file descriptor.
- - ENOTTY fd does not refer to a terminal.
- @retval 1 The file descriptor, fd, is for a terminal.
- **/
- int isatty (int fd);
-
-/* These system calls are also declared in sys/fcntl.h */
-#ifndef __FCNTL_SYSCALLS_DECLARED
- #define __FCNTL_SYSCALLS_DECLARED
-
- /** Open or create a file named by name.
-
- The file name may be one of:
- - An absolute path beginning with '/'.
- - A relative path beginning with "." or ".." or a directory name
- - A file name
- - A mapped path which begins with a name followed by a colon, ':'.
-
- Mapped paths are use to refer to specific mass storage volumes or devices.
- In a Shell-hosted environment, the map command will list valid map names
- for both file system and block devices. Mapped paths can also refer to
- devices such as the UEFI console. Supported UEFI console mapped paths are:
- - stdin: Standard Input (from the System Table)
- - stdout: Standard Output (from the System Table)
- - stderr: Standard Error Output (from the System Table)
-
- @param[in] name Name of file to open.
- @param[in] oflags Flags as defined in fcntl.h.
- @param[in] mode Access mode to use if creating the file.
-
- @return Returns -1 on failure, otherwise the file descriptor for the open file.
- **/
- int open (const char *name, int oflags, int mode);
-
- /** Create a new file or rewrite an existing one.
-
- The creat() function behaves as if it is implemented as follows:
-
- int creat(const char *path, mode_t mode)
- {
- return open(path, O_WRONLY|O_CREAT|O_TRUNC, mode);
- }
-
- @param[in] Path The name of the file to create.
- @param[in] Mode Access mode (permissions) for the new file.
-
- @return Returns -1 on failure, otherwise the file descriptor for the open file.
- **/
- int creat (const char *Path, mode_t Mode);
-
- /** File control
-
- This function performs the operations described below and defined in <fcntl.h>.
-
- - F_DUPFD: Return the lowest numbered file descriptor available that is >= the third argument.
- The new file descriptor refers to the same open file as Fd.
-
- - F_SETFD: Set the file descriptor flags to the value specified by the third argument.
- - F_GETFD: Get the file descriptor flags associated with Fd.
- - F_SETFL: Set the file status flags based upon the value of the third argument.
- - F_GETFL: Get the file status flags and access modes for file Fd.
-
- @param[in] Fd File descriptor associated with the file to be controlled.
- @param[in] Cmd Command to execute.
- @param[in] ... Additional arguments, as needed by Cmd.
-
- @return A -1 is returned to indicate failure, otherwise the value
- returned is positive and depends upon Cmd as follows:
- - F_DUPFD: A new file descriptor.
- - F_SETFD: files previous file descriptor flags.
- - F_GETFD: The files file descriptor flags.
- - F_SETFL: The old status flags and access mode of the file.
- - F_GETFL: The status flags and access mode of the file.
- **/
- int fcntl (int Fd, int Cmd, ...);
-#endif // __FCNTL_SYSCALLS_DECLARED
-
-/* These system calls are also declared in stat.h */
-#ifndef __STAT_SYSCALLS_DECLARED
- #define __STAT_SYSCALLS_DECLARED
-
- int mkdir (const char *, mode_t);
- int fstat (int, struct stat *);
- int lstat (const char *, struct stat *);
- int stat (const char *, struct stat *);
- int chmod (const char *, mode_t);
- mode_t umask (mode_t cmask);
-
-#endif // __STAT_SYSCALLS_DECLARED
-
-// These are also declared in sys/types.h
-#ifndef __OFF_T_SYSCALLS_DECLARED
- #define __OFF_T_SYSCALLS_DECLARED
- off_t lseek (int, off_t, int);
- int truncate (const char *, off_t);
- int ftruncate (int, off_t); // IEEE Std 1003.1b-93
-#endif /* __OFF_T_SYSCALLS_DECLARED */
-
-/* EFI-specific Functions. */
-
- /** Mark an open file to be deleted when it is closed.
-
- @param[in] fd File descriptor for the open file.
-
- @retval 0 The flag was set successfully.
- @retval -1 An invalid fd was specified.
- **/
- int DeleteOnClose(int fd);
-
- /** Find and reserve a free File Descriptor.
-
- Returns the first free File Descriptor greater than or equal to the,
- already validated, fd specified by Minfd.
-
- @return Returns -1 if there are no free FDs. Otherwise returns the
- found fd.
- */
- int FindFreeFD (int MinFd);
-
- /** Validate that fd refers to a valid file descriptor.
- IsOpen is interpreted as follows:
- - Positive fd must be OPEN
- - Zero fd must be CLOSED
- - Negative fd may be OPEN or CLOSED
-
- @retval TRUE fd is VALID
- @retval FALSE fd is INVALID
- */
- BOOLEAN ValidateFD (int fd, int IsOpen);
-
-
-/* These system calls don't YET have EFI implementations. */
- int reboot (int, char *);
-__END_DECLS
-
-/* The console output stream, stdout, supports cursor positioning via the
- lseek() function call. The following entities facilitate packing the
- X and Y coordinates into the offset parameter of the lseek call.
-*/
-typedef struct {
- UINT32 Column;
- UINT32 Row;
-} CURSOR_XY;
-
-typedef union {
- UINT64 Offset;
- CURSOR_XY XYpos;
-} XY_OFFSET;
-
-#endif /* _EFI_SYS_CALL_H */