summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
authorBernard Xiong <[email protected]>2021-09-02 09:55:16 +0800
committerGitHub <[email protected]>2021-09-02 09:55:16 +0800
commitee2881fe7e0afec274f08045ece39dc5a709d3eb (patch)
tree9cd3b362edc794493a5d2fb46c8b477a930fbe3c /components
parentc68917175ad17621f79ccac21bcee6ea2cda7cbe (diff)
parentdd9db58a865775a0756d1b1ce4f1ef021542f54b (diff)
Merge pull request #4991 from mysterywolf/libc_dirent.h
[rtlibc] remove libc_dirent.h
Diffstat (limited to 'components')
-rw-r--r--components/dfs/include/dfs.h27
-rw-r--r--components/dfs/include/dfs_posix.h8
-rw-r--r--components/libc/compilers/common/dirent.h23
3 files changed, 23 insertions, 35 deletions
diff --git a/components/dfs/include/dfs.h b/components/dfs/include/dfs.h
index 80dc433787..0fd8c2dccc 100644
--- a/components/dfs/include/dfs.h
+++ b/components/dfs/include/dfs.h
@@ -15,17 +15,20 @@
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
-
-#include <time.h>
-#include <rtthread.h>
+#include <dirent.h>
+#include <sys/time.h>
#include <rtdevice.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
#ifndef DFS_FILESYSTEMS_MAX
-#define DFS_FILESYSTEMS_MAX 2
+#define DFS_FILESYSTEMS_MAX 4
#endif
#ifndef DFS_FD_MAX
-#define DFS_FD_MAX 4
+#define DFS_FD_MAX 16
#endif
/*
@@ -36,7 +39,7 @@
#endif
#ifndef DFS_PATH_MAX
-#define DFS_PATH_MAX 256
+#define DFS_PATH_MAX DIRENT_NAME_MAX
#endif
#ifndef SECTOR_SIZE
@@ -63,10 +66,6 @@
#define DFS_F_EOF 0x04000000
#define DFS_F_ERR 0x08000000
-#ifdef __cplusplus
-extern "C" {
-#endif
-
struct statfs
{
size_t f_bsize; /* block size */
@@ -74,14 +73,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..a6353fd6f8 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,28 @@
#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
+
+#define DIRENT_NAME_MAX 256
+
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