This structure must be a multiple of 8 bytes in length.\r
*/\r
struct __filedes {\r
+ off_t f_offset; /* current position in file */\r
const struct fileops *f_ops;\r
void *devdata; /* Device-specific data */\r
- off_t f_offset; /* current position in file */\r
- UINT32 f_flag; /* see fcntl.h */\r
- UINT32 f_iflags; // In use if non-zero\r
int Oflags; // From the open call\r
int Omode; // From the open call\r
int RefCount; // Reference count of opens\r
+ UINT32 f_flag; /* see fcntl.h */\r
+ UINT32 f_iflags; // In use if non-zero\r
UINT16 MyFD; // Which FD this is.\r
UINT16 Reserved_1; // Force this structure to be a multiple of 8-bytes in length\r
};\r
\r
/* Type of all Device-specific handler's open routines. */\r
typedef\r
- int (EFIAPI *FO_OPEN) (struct __filedes *FD, void *IP, wchar_t *Path, wchar_t *Flags);\r
+ int (EFIAPI *FO_OPEN) (struct _Device_Node *This, struct __filedes *FD,\r
+ int Instance, wchar_t *Path, wchar_t *MPath);\r
\r
#define FILE_IS_USABLE(fp) (((fp)->f_iflags & \\r
(FIF_WANTCLOSE|FIF_LARVAL)) == 0)\r
fnullop_* Does nothing and returns success.\r
fbadop_* Does nothing and returns EPERM\r
*/\r
-int fnullop_fcntl (struct __filedes *filp, UINT32 Cmd, void *p3, void *p4);\r
-short fnullop_poll (struct __filedes *filp, short Events);\r
-int fnullop_flush (struct __filedes *filp);\r
-\r
-int fbadop_stat (struct __filedes *filp, struct stat *StatBuf, void *Buf);\r
-int fbadop_ioctl (struct __filedes *filp, ULONGN Cmd, void *argp);\r
-int fbadop_delete (struct __filedes *filp);\r
-int fbadop_rmdir (struct __filedes *filp);\r
-int fbadop_mkdir (const char *path, __mode_t perms);\r
-int fbadop_rename (const char *from, const char *to);\r
+int EFIAPI fnullop_fcntl (struct __filedes *filp, UINT32 Cmd, void *p3, void *p4);\r
+short EFIAPI fnullop_poll (struct __filedes *filp, short Events);\r
+int EFIAPI fnullop_flush (struct __filedes *filp);\r
+\r
+int EFIAPI fbadop_stat (struct __filedes *filp, struct stat *StatBuf, void *Buf);\r
+int EFIAPI fbadop_ioctl (struct __filedes *filp, ULONGN Cmd, void *argp);\r
+int EFIAPI fbadop_delete (struct __filedes *filp);\r
+int EFIAPI fbadop_rmdir (struct __filedes *filp);\r
+int EFIAPI fbadop_mkdir (const char *path, __mode_t perms);\r
+int EFIAPI fbadop_rename (const char *from, const char *to);\r
\r
__END_DECLS\r
\r