File: fio.h

package info (click to toggle)
syslinux 3%3A6.03%2Bdfsg-5%2Bdeb8u2
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 41,276 kB
  • sloc: ansic: 358,748; asm: 9,608; pascal: 4,809; perl: 3,894; makefile: 2,488; sh: 324; python: 266; xml: 39
file content (43 lines) | stat: -rw-r--r-- 1,386 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#ifndef _H_EFI_FIO_
#define _H_EFI_FIO_

/*
 * Friendly interfaces for EFI file I/O and various EFI support functions
 */

/* MAX_EFI_ARGS - command line args for EFI executable
 * WS(c16) 	- check for CHAR16 white space
 */
#define MAX_EFI_ARGS		64
#define WS(c16)         (c16 == L' ' || c16 == CHAR_TAB)

/* VPrint is not in export declarations in gnu-efi lib yet
 * although it is a global function; declare it here
 */
extern UINTN
VPrint (
    IN CHAR16   *fmt,
    va_list     args
    );

extern EFI_STATUS efi_errno;

void efi_memcpy(unsigned char *dst, unsigned char *src, size_t len);
void efi_memmove(unsigned char *dst, unsigned char *src, size_t len);
void efi_memset(unsigned char *dst, unsigned char val, size_t len);
void *efi_alloc(int size);
void efi_free(void *ptr);
void efi_perror(CHAR16 *str);
void efi_printerr(IN CHAR16 *fmt, ...);
void efi_printout(IN CHAR16 *fmt, ...);
EFI_STATUS efi_set_volroot(EFI_HANDLE device_handle);
EFI_FILE_HANDLE efi_open(CHAR16 *file, UINT64 mode);
void efi_close(EFI_FILE_HANDLE fd);
void efi_sync(EFI_FILE_HANDLE fd);
size_t efi_xpread(EFI_FILE_HANDLE fd, void *buf, size_t count, off_t offset);
size_t efi_xpwrite(EFI_FILE_HANDLE fd, void *buf, size_t count, off_t offset);
int efi_fstat(EFI_FILE_HANDLE fd, EFI_FILE_INFO *st);
void efi_set_attributes(EFI_FILE_HANDLE fd);
void efi_clear_attributes(EFI_FILE_HANDLE fd);

#endif