diff options
Diffstat (limited to 'components')
| -rw-r--r-- | components/dfs/include/dfs.h | 19 | ||||
| -rw-r--r-- | components/dfs/include/dfs_posix.h | 8 | ||||
| -rw-r--r-- | components/libc/compilers/common/dirent.h | 27 |
3 files changed, 24 insertions, 30 deletions
diff --git a/components/dfs/include/dfs.h b/components/dfs/include/dfs.h index 80dc433787..6af8bbd99f 100644 --- a/components/dfs/include/dfs.h +++ b/components/dfs/include/dfs.h @@ -16,10 +16,13 @@ #include <stdlib.h> #include <string.h> -#include <time.h> -#include <rtthread.h> +#include <sys/time.h> #include <rtdevice.h> +#ifdef __cplusplus +extern "C" { +#endif + #ifndef DFS_FILESYSTEMS_MAX #define DFS_FILESYSTEMS_MAX 2 #endif @@ -63,9 +66,7 @@ #define DFS_F_EOF 0x04000000 #define DFS_F_ERR 0x08000000 -#ifdef __cplusplus -extern "C" { -#endif +#include <dirent.h> struct statfs { @@ -74,14 +75,6 @@ struct statfs size_t f_bfree; /* free blocks in file system */ }; -struct dirent -{ - uint8_t d_type; /* The type of the file */ - uint8_t d_namlen; /* The length of the not including the terminating null file name */ - uint16_t d_reclen; /* length of this record */ - char d_name[DFS_PATH_MAX]; /* The null-terminated file name */ -}; - struct dfs_fdtable { uint32_t maxfd; diff --git a/components/dfs/include/dfs_posix.h b/components/dfs/include/dfs_posix.h index 0475460d95..ec7cdc9de4 100644 --- a/components/dfs/include/dfs_posix.h +++ b/components/dfs/include/dfs_posix.h @@ -21,14 +21,6 @@ extern "C" { #endif -typedef struct -{ - int fd; /* directory file */ - char buf[512]; - int num; - int cur; -} DIR; - /* directory api*/ int mkdir(const char *path, mode_t mode); DIR *opendir(const char *name); diff --git a/components/libc/compilers/common/dirent.h b/components/libc/compilers/common/dirent.h index bfba586093..6727d96788 100644 --- a/components/libc/compilers/common/dirent.h +++ b/components/libc/compilers/common/dirent.h @@ -6,10 +6,14 @@ * Change Logs: * Date Author Notes */ -#ifndef __RTT_DIRENT_H__ -#define __RTT_DIRENT_H__ +#ifndef __DIRENT_H__ +#define __DIRENT_H__ -#include <rtthread.h> +#include <rtdef.h> + +#ifdef __cplusplus +extern "C" { +#endif /* * dirent.h - format of directory entries @@ -26,27 +30,32 @@ #define DT_REG 0x01 #define DT_DIR 0x02 -#ifdef __cplusplus -extern "C" { -#endif - #ifndef HAVE_DIR_STRUCTURE +#define HAVE_DIR_STRUCTURE typedef struct { int fd; /* directory file */ char buf[512]; int num; int cur; -} DIR; +}DIR; #endif #ifndef HAVE_DIRENT_STRUCTURE +#define HAVE_DIRENT_STRUCTURE + +#ifdef DFS_PATH_MAX +#define DIRENT_NAME_MAX DFS_PATH_MAX +#else +#define DIRENT_NAME_MAX 256 +#endif + struct dirent { rt_uint8_t d_type; /* The type of the file */ rt_uint8_t d_namlen; /* The length of the not including the terminating null file name */ rt_uint16_t d_reclen; /* length of this record */ - char d_name[256]; /* The null-terminated file name */ + char d_name[DIRENT_NAME_MAX]; /* The null-terminated file name */ }; #endif |
