27#ifndef __XF_VFS_TYPES_H__ 
   28#define __XF_VFS_TYPES_H__ 
   43#if XF_VFS_SUPPORT_SELECT_IS_ENABLE 
   61#define XF_VFS_PATH_PREFIX_LEN_IGNORED  (~(size_t)0) 
   66#define XF_VFS_FLAG_DEFAULT             (1 << 0) 
   71#define XF_VFS_FLAG_CONTEXT_PTR         (1 << 1) 
   76#define XF_VFS_FLAG_READONLY_FS         (1 << 2) 
   82#define XF_VFS_FLAG_STATIC              (1 << 3) 
   86#if XF_VFS_SUPPORT_SELECT_IS_ENABLE 
  148        int (*open_p)(
void* 
ctx, 
const char * path, 
int flags, 
int mode);                           
 
  149        int (*
open)(
const char * path, 
int flags, 
int mode);                                        
 
  152        int (*close_p)(
void* 
ctx, 
int fd);                                                          
 
  159#if XF_VFS_SUPPORT_DIR_IS_ENABLE 
  165        int (*link_p)(
void* 
ctx, 
const char* n1, 
const char* n2);                                   
 
  166        int (*link)(
const char* n1, 
const char* n2);                                                
 
  169        int (*unlink_p)(
void* 
ctx, 
const char *path);                                               
 
  170        int (*unlink)(
const char *path);                                                            
 
  173        int (*rename_p)(
void* 
ctx, 
const char *src, 
const char *dst);                               
 
  174        int (*rename)(
const char *src, 
const char *dst);                                            
 
  205        int (*rmdir_p)(
void* 
ctx, 
const char* name);                                                
 
  206        int (*rmdir)(
const char* name);                                                             
 
  210        int (*fcntl_p)(
void* 
ctx, 
int fd, 
int cmd, 
int arg);                                        
 
  211        int (*fcntl)(
int fd, 
int cmd, 
int arg);                                                     
 
  214        int (*ioctl_p)(
void* 
ctx, 
int fd, 
int cmd, va_list args);                                   
 
  215        int (*
ioctl)(
int fd, 
int cmd, va_list args);                                                
 
  218        int (*fsync_p)(
void* 
ctx, 
int fd);                                                          
 
  219        int (*fsync)(
int fd);                                                                       
 
  221#if XF_VFS_SUPPORT_DIR_IS_ENABLE 
  223        int (*access_p)(
void* 
ctx, 
const char *path, 
int amode);                                    
 
  224        int (*access)(
const char *path, 
int amode);                                                 
 
  239#if XF_VFS_SUPPORT_SELECT_IS_ENABLE || defined __DOXYGEN__ 
  245    void (*stop_socket_select)(
void *
sem);
 
  247    void (*stop_socket_select_isr)(
void *
sem, 
int *woken);
 
  249    void* (*get_socket_select_semaphore)(void);
 
 
  257#if XF_VFS_SUPPORT_SELECT_IS_ENABLE 
  264typedef      void* (*xf_vfs_get_socket_select_semaphore_op_t) (void);
 
int32_t xf_err_t
整形错误类型。 错误码具体值见 xf_err_code_t.
 
xf_err_t(* xf_vfs_start_select_op_t)(int nfds, xf_fd_set *readfds, xf_fd_set *writefds, xf_fd_set *exceptfds, xf_vfs_select_sem_t sem, void **end_select_args)
 
void *(* xf_vfs_get_socket_select_semaphore_op_t)(void)
 
int(* xf_vfs_socket_select_op_t)(int nfds, xf_fd_set *readfds, xf_fd_set *writefds, xf_fd_set *errorfds, xf_vfs_timeval_t *timeout)
 
xf_err_t(* xf_vfs_end_select_op_t)(void *end_select_args)
 
void(* xf_vfs_stop_socket_select_isr_op_t)(void *sem, int *woken)
 
void(* xf_vfs_stop_socket_select_op_t)(void *sem)
 
static xf_osal_semaphore_t sem
 
Opaque directory structure
 
Directory entry structure
 
Struct containing function pointers to select related functionality.
 
const xf_vfs_get_socket_select_semaphore_op_t get_socket_select_semaphore
 
const xf_vfs_end_select_op_t end_select
 
const xf_vfs_stop_socket_select_op_t stop_socket_select
 
const xf_vfs_stop_socket_select_isr_op_t stop_socket_select_isr
 
const xf_vfs_socket_select_op_t socket_select
 
const xf_vfs_start_select_op_t start_select
 
VFS semaphore type for select()
 
aos_utimbuf 结构描述了文件系统 inode 的 最后访问时间和最后修改时间。
 
int ioctl(int fd, unsigned long request,...)
 
size_t read(int fd, void *buf, size_t count)
 
size_t write(int fd, const void *buf, size_t count)
 
int open(const char *pathname, int flags)
 
xf_vfs 模块内部配置总头文件。 确保 xf_vfs_config.h 的所有定义都有默认值。
 
unsigned long xf_vfs_mode_t
 
signed int xf_vfs_ssize_t