36 #define vfs_load_plugin(x)
39 #define bcopy(src, dest, len) memmove(dest, src, len)
42 #if !(defined(__time_t_defined) || defined(_TIME_H_) || defined(__MSP432P401R__) || defined(PART_TM4C123GH6PM))
91 uint8_t handle __attribute__ ((aligned (4)));
112 const uint8_t data[];
115 typedef vfs_file_t *(*vfs_open_ptr)(
const char *filename,
const char *mode);
116 typedef char *(*vfs_getcwd_ptr)(
char *buf,
size_t size);
129 typedef vfs_dir_t *(*vfs_opendir_ptr)(
const char *path);
210 uint8_t
handle __attribute__ ((aligned (4)));
228 int vfs_rename (
const char *from,
const char *to);
239 int vfs_utime (
const char *filename,
struct tm *modified);
uint32_t size
Definition: nvs_buffer.c:46
vfs_st_mode_t st_mode
Definition: vfs.h:111
size_t size
Definition: vfs.h:110
const char * name
Definition: vfs.h:109
short time
Definition: vfs.h:45
short date
Definition: vfs.h:44
int tm_mday
Definition: vfs.h:51
int tm_sec
Definition: vfs.h:54
int tm_hour
Definition: vfs.h:52
int tm_min
Definition: vfs.h:53
int tm_year
Definition: vfs.h:49
int tm_mon
Definition: vfs.h:50
uint8_t handle
Definition: vfs.h:210
const void * fs
Definition: vfs.h:208
vfs_mount_ll_entry_t * mounts
Definition: vfs.h:209
vfs_st_mode_t st_mode
Definition: vfs.h:100
size_t size
Definition: vfs.h:99
bool removable
Definition: vfs.h:202
const void * fs
Definition: vfs.h:204
const char * path
Definition: vfs.h:201
const char * name
Definition: vfs.h:200
vfs_st_mode_t mode
Definition: vfs.h:203
vfs_mount_t * mount
Definition: vfs.h:196
on_vfs_unmount_ptr on_unmount
Called when a file system is unmounted.
Definition: vfs.h:172
on_vfs_changed_ptr on_fs_changed
Called when file system content is changed.
Definition: vfs.h:173
on_vfs_mount_ptr on_mount
Called when a file system is mounted.
Definition: vfs.h:171
uint8_t is_temporary
Definition: vfs.h:83
uint8_t update
Definition: vfs.h:82
uint8_t unused
Definition: vfs.h:84
const void * fs
Definition: vfs.h:88
size_t size
Definition: vfs.h:89
vfs_file_status_t status
Definition: vfs.h:90
uint64_t used
Definition: vfs.h:105
uint64_t size
Definition: vfs.h:104
struct vfs_mount_ll_entry * next
Definition: vfs.h:192
vfs_mount_t * mount
Definition: vfs.h:191
struct vfs_mount * next
Definition: vfs.h:186
const vfs_t * vfs
Definition: vfs.h:179
vfs_st_mode_t mode
Definition: vfs.h:180
time_t st_mtime
Definition: vfs.h:184
char path[64]
Definition: vfs.h:178
vfs_st_mode_t st_mode
Definition: vfs.h:73
size_t st_size
Definition: vfs.h:72
time_t st_mtime
Definition: vfs.h:77
vfs_open_ptr fopen
Definition: vfs.h:143
vfs_getfree_ptr fgetfree
Definition: vfs.h:162
bool removable
Definition: vfs.h:142
vfs_chmod_ptr fchmod
Definition: vfs.h:158
vfs_format_ptr format
Definition: vfs.h:163
vfs_chdir_ptr fchdir
Definition: vfs.h:153
vfs_write_ptr fwrite
Definition: vfs.h:146
vfs_stat_ptr fstat
Definition: vfs.h:159
vfs_eof_ptr feof
Definition: vfs.h:149
vfs_mkdir_ptr fmkdir
Definition: vfs.h:152
const char * fs_name
Definition: vfs.h:141
vfs_close_ptr fclose
Definition: vfs.h:144
vfs_getcwd_ptr fgetcwd
Definition: vfs.h:161
vfs_fseek_ptr fseek
Definition: vfs.h:148
vfs_readdir_ptr readdir
Definition: vfs.h:156
vfs_unlink_ptr funlink
Definition: vfs.h:151
vfs_rename_ptr frename
Definition: vfs.h:150
vfs_opendir_ptr fopendir
Definition: vfs.h:155
vfs_read_ptr fread
Definition: vfs.h:145
vfs_ftell_ptr ftell
Definition: vfs.h:147
vfs_utime_ptr futime
Definition: vfs.h:160
vfs_rmdir_ptr frmdir
Definition: vfs.h:154
vfs_closedir_ptr fclosedir
Definition: vfs.h:157
uint8_t directory
Definition: vfs.h:66
uint8_t system
Definition: vfs.h:64
uint8_t mode
Definition: vfs.h:60
uint8_t hidden
Definition: vfs.h:63
uint8_t read_only
Definition: vfs.h:62
uint8_t archive
Definition: vfs.h:67
uint8_t unused
Definition: vfs.h:65
int(* vfs_chmod_ptr)(const char *filename, vfs_st_mode_t attr, vfs_st_mode_t mask)
Definition: vfs.h:132
vfs_free_t * vfs_drive_getfree(vfs_drive_t *drive)
Definition: vfs.c:728
struct vfs_mount vfs_mount_t
void(* vfs_closedir_ptr)(vfs_dir_t *dir)
Definition: vfs.h:131
int vfs_rename(const char *from, const char *to)
Definition: vfs.c:333
void(* on_vfs_mount_ptr)(const char *path, const vfs_t *fs, vfs_st_mode_t mode)
Definition: vfs.h:167
void(* on_vfs_unmount_ptr)(const char *path)
Definition: vfs.h:168
size_t(* vfs_read_ptr)(void *buffer, size_t size, size_t count, vfs_file_t *file)
Definition: vfs.h:117
vfs_free_t * vfs_fgetfree(const char *path)
Definition: vfs.c:564
int(* vfs_rename_ptr)(const char *from, const char *to)
Definition: vfs.h:123
int(* vfs_mkdir_ptr)(const char *path)
Definition: vfs.h:126
volatile int vfs_errno
Definition: vfs.c:211
vfs_dir_t *(* vfs_opendir_ptr)(const char *path)
Definition: vfs.h:129
int vfs_puts(const char *s, vfs_file_t *file)
Definition: vfs.c:300
void vfs_closedir(vfs_dir_t *dir)
Definition: vfs.c:485
bool vfs_eof(vfs_file_t *file)
Definition: vfs.c:326
vfs_dir_t * vfs_opendir(const char *path)
Definition: vfs.c:429
vfs_drive_t * vfs_drives_read(vfs_drives_t *handle, bool add_hidden)
Definition: vfs.c:698
size_t vfs_read(void *buffer, size_t size, size_t count, vfs_file_t *file)
Definition: vfs.c:286
char * vfs_fixpath(char *path)
Definition: vfs.c:220
bool(* vfs_getfree_ptr)(vfs_free_t *free)
Definition: vfs.h:136
vfs_drive_t * vfs_get_drive(const char *path)
Definition: vfs.c:660
int(* vfs_unlink_ptr)(const char *filename)
Definition: vfs.h:124
char *(* vfs_readdir_ptr)(vfs_dir_t *dir, vfs_dirent_t *dirent)
Definition: vfs.h:130
int vfs_rmdir(const char *path)
Definition: vfs.c:373
size_t(* vfs_ftell_ptr)(vfs_file_t *file)
Definition: vfs.h:120
int vfs_stat(const char *filename, vfs_stat_t *st)
Definition: vfs.c:520
int vfs_mkdir(const char *path)
Definition: vfs.c:361
vfs_drives_t * vfs_drives_open(void)
Definition: vfs.c:674
int vfs_drive_format(vfs_drive_t *drive)
Definition: vfs.c:737
struct vfs_mount_ll_entry vfs_mount_ll_entry_t
bool(* vfs_eof_ptr)(vfs_file_t *file)
Definition: vfs.h:122
int vfs_seek(vfs_file_t *file, size_t offset)
Definition: vfs.c:319
int(* vfs_rmdir_ptr)(const char *path)
Definition: vfs.h:128
char *(* vfs_getcwd_ptr)(char *buf, size_t size)
Definition: vfs.h:116
int(* vfs_chdir_ptr)(const char *path)
Definition: vfs.h:127
bool vfs_mount(const char *path, const vfs_t *fs, vfs_st_mode_t mode)
Definition: vfs.c:587
int(* vfs_stat_ptr)(const char *filename, vfs_stat_t *st)
Definition: vfs.h:133
void vfs_close(vfs_file_t *file)
Definition: vfs.c:276
int(* vfs_fseek_ptr)(vfs_file_t *file, size_t offset)
Definition: vfs.h:121
vfs_events_t vfs
Definition: vfs.c:212
void(* vfs_close_ptr)(vfs_file_t *file)
Definition: vfs.h:119
int vfs_chmod(const char *filename, vfs_st_mode_t attr, vfs_st_mode_t mask)
Definition: vfs.c:513
char * vfs_getcwd(char *buf, size_t len)
Definition: vfs.c:498
size_t(* vfs_write_ptr)(const void *buffer, size_t size, size_t count, vfs_file_t *file)
Definition: vfs.h:118
int vfs_utime(const char *filename, struct tm *modified)
Definition: vfs.c:557
int vfs_chdir(const char *path)
Definition: vfs.c:385
bool vfs_unmount(const char *path)
Definition: vfs.c:630
vfs_file_t *(* vfs_open_ptr)(const char *filename, const char *mode)
Definition: vfs.h:115
vfs_file_t * vfs_open(const char *filename, const char *mode)
Definition: vfs.c:263
void(* on_vfs_changed_ptr)(const vfs_t *fs)
Definition: vfs.h:166
void vfs_drives_close(vfs_drives_t *handle)
Definition: vfs.c:723
int(* vfs_utime_ptr)(const char *filename, struct tm *modified)
Definition: vfs.h:134
int(* vfs_format_ptr)(void)
Definition: vfs.h:137
int vfs_unlink(const char *filename)
Definition: vfs.c:349
vfs_dirent_t * vfs_readdir(vfs_dir_t *dir)
Definition: vfs.c:459
size_t vfs_write(const void *buffer, size_t size, size_t count, vfs_file_t *file)
Definition: vfs.c:293
size_t vfs_tell(vfs_file_t *file)
Definition: vfs.c:312