X-Git-Url: https://yaffs.net/gitweb/?a=blobdiff_plain;f=direct%2Fyaffsfs.h;h=3f192169352f5c10a734105c5499ef33019abf3c;hb=1dd2d1919e78641592098968e221b661a7451a58;hp=3196f0c6a691b3b17f2d652e075971329ac1d977;hpb=878880321c4fa7ab0e431d22a3dd156a9a272c68;p=yaffs2.git diff --git a/direct/yaffsfs.h b/direct/yaffsfs.h index 3196f0c..3f19216 100644 --- a/direct/yaffsfs.h +++ b/direct/yaffsfs.h @@ -34,6 +34,12 @@ ( (sizeof(Y_LOFF_T) < 8) ? YAFFS_MAX_FILE_SIZE_32 : (0x800000000LL - 1) ) +#ifdef __cplusplus +extern "C" +{ +#endif + + struct yaffs_dirent { long d_ino; /* inode number */ off_t d_off; /* offset to this dirent */ @@ -157,6 +163,10 @@ struct yaffs_dirent *yaffs_readdir(yaffs_DIR *dirp) ; void yaffs_rewinddir(yaffs_DIR *dirp) ; int yaffs_closedir(yaffs_DIR *dirp) ; +/* Some non-standard functions to use fds to access directories */ +struct yaffs_dirent *yaffs_readdir_fd(int fd); +void yaffs_rewinddir_fd(int fd); + int yaffs_mount(const YCHAR *path) ; int yaffs_mount2(const YCHAR *path, int read_only); int yaffs_mount_common(const YCHAR *path, int read_only, int skip_checkpt); @@ -165,6 +175,10 @@ int yaffs_unmount(const YCHAR *path) ; int yaffs_unmount2(const YCHAR *path, int force); int yaffs_remount(const YCHAR *path, int force, int read_only); +int yaffs_format(const YCHAR *path, + int unmount_flag, + int force_unmount_flag, + int remount_flag); int yaffs_sync(const YCHAR *path) ; @@ -207,4 +221,11 @@ int yaffs_set_error(int error); /* Trace control functions */ unsigned yaffs_set_trace(unsigned tm); unsigned yaffs_get_trace(void); + + +#ifdef __cplusplus +} +#endif + + #endif