Xiang Xiao
0148e1d501
fs: Support the root file system attributes(mode, uid, gid and time)
...
Note: all attributes is guarded by PSEUDOFS_ATTRIBUTES to save the space
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I664d60382e356068fd920f08aca5b4a49d8d92a9
2021-07-14 10:35:15 -03:00
Xiang Xiao
30135b5f18
vfs: stat_recursive should return -ENOSYS if stat callback is NULL
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ic342b6fff112d24c7355ddc8aa0937dfc544f1b4
2021-07-13 11:32:52 -03:00
Xiang Xiao
ee767021b3
fs: Remove the inernal st_count field from struct stat
...
it's more simple to reuse the resolve argument as the recursive count
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I826b2fef3af8b12aae230e4766ab09f8de988f8a
2021-07-09 16:38:51 -03:00
Xiang Xiao
2e54df0f35
Don't include assert.h from public header file
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-06-03 08:36:03 -07:00
ligd
3386941a10
fs: remove INODE_IS_SPECIAL() use others instead
...
Change-Id: I949f1ad012836e6cb233d5362fe2542732b5ecf4
Signed-off-by: ligd <liguiding1@xiaomi.com>
2020-12-30 12:21:02 -06:00
Xiang Xiao
b76c4672d6
vfs: Create a node as the root of pseudo file system
...
to remove the special process for root
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-09-16 11:44:57 -07:00
Xiang Xiao
6584bfa361
fs: Add static to stat_recursive
...
since it is called in one source file
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-09-16 01:06:53 -07:00
Xiang Xiao
91ed14c631
vfs/stat: Make the flag defintion more confirm POSIX standard
...
specified here:
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_stat.h.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-07-07 13:41:10 +01:00
Xiang Xiao
b598ab43d7
fs: Implement lstat function
...
specified here:
https://pubs.opengroup.org/onlinepubs/009695399/functions/lstat.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Iefc23a02d425ff84fa4027aea7da1181b01eced7
2020-06-30 13:09:58 -06:00
Gregory Nutt
1c002e1049
fs/vfs/fs_fstat: Correct fstat() for proxied block and MTD drivers.
...
Block and MTD drivers may be opened and managed as though they were character drivers. But this is really sleight of hand; there is a hidden character driver proxy that mediates the interface to the block and MTD drivers in this case.
fstat(), however, did not account for this. It would report the characteristics of the proxy character driver, not of the underlying block or MTD driver.
This change corrects that. fstat now checks if the character driver is such a proxy and, if so, reports the characteristics of the underlying block or MTD driver, not the proxy character driver.
2020-05-28 17:34:09 +01:00
Oleg Evseev
3b75201447
fs/vfs/fs_stat.c: correct style
2020-05-26 16:56:10 +08:00
Oleg
dd9d9878ad
fs/vfs/fs_stat.c: fill file size for mtd inode
...
Now when stat() is calling for mtd device it also set size of file as number of bytes of all sectors related to this mtd device.
2020-05-25 13:53:50 -06:00
Oleg
e1dbb6b2a9
Update fs/vfs/fs_stat.c
...
Co-authored-by: patacongo <spudarnia@yahoo.com>
2020-05-25 10:10:52 -06:00
Oleg
f6c3296f76
fs/vfs/fs_stat.c: fill file size for block inode
2020-05-25 10:10:52 -06:00
Xiang Xiao
65308eabb4
fs/vfs: Add nx_stat function
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-03 12:15:54 -06:00
Gregory Nutt
d2af57169b
tools/nxstyle.c: Fix a rare false alarm that could occur if a variable or function name begins with the sub-string 'union' or 'struct'. misc fixes under fs/ and sched/ from application of current version of nxstyle.
2019-12-01 13:01:16 -06:00
Gregory Nutt
bd3cc792ff
fs/: Run all .c files under fs/ through tools/nxstyle.
2019-10-27 11:48:14 -06:00
Juha Niskanen
e8b5dd4528
Fix use of undefined pp-token #errror, other typos.
2019-09-19 18:19:18 -06:00
Xiang Xiao
e674edfa19
fd/dirent, fs/driver/, and fs/vfs: Make MTD device accessible via a character driver proxy like block devices
2018-11-08 09:59:18 -06:00
Gregory Nutt
12c4c4c8a6
In some cases, packets are still not sent behind the router. I found that NuttX sends the ARP requests not to the router but to the target. Mistake in file net/route/netdev_router.c. From Aleksandr Kazantsev
2017-09-20 13:19:05 -06:00
Gregory Nutt
c5a8e96dbc
Add basic fstat() support. Now all that is needed is to modify ALL of the file systems.
2017-02-12 12:48:24 -06:00
Gregory Nutt
51a14c9b2f
C Library: Add a very limited, first step implementation of setvbuf(). This is a collaborative effort. Alan Carvalho de Assis did the initial prototype.
2017-02-08 10:33:18 -06:00
Gregory Nutt
2d2fe301cb
Update some comments; link counter can be uint8_t; Add a debug assertion.
2017-02-07 15:50:54 -06:00
Gregory Nutt
b758176963
stat(): Add logic to avoid infinite recursive in circular paths containing soft links.
2017-02-07 12:32:45 -06:00
Gregory Nutt
45fd98da88
Add macros support that will eventually allow dynamic allocation of strings need to support soft links.
2017-02-05 14:25:45 -06:00
Gregory Nutt
8f2c7198ed
inode_find: Now takes struct inode_desc_s type as input. This was necessary before that structure includes some data storage. It was used within inode_find(), but that means that the life of the data was the life of inode_find(). That data must persist longer. It is now provided by the caller so that the life of the data persists for the entire life of the caller.
2017-02-05 09:51:42 -06:00
Gregory Nutt
0c9935f8ac
FS: Remove inode_find_nofollow. Instead provide a bool nofollow argument to inode_find.
2017-02-04 11:46:54 -06:00
Gregory Nutt
36704b7d9c
FS: Argument is now a structure describing the search.
2017-02-04 11:21:44 -06:00
Gregory Nutt
60ba5a5261
Soft links: Fix logic and remove kludge of last commit. Rename inode_dereference() as inode_linktarget() and make global.
2017-02-03 13:22:33 -06:00
Gregory Nutt
7c59e05305
FS: Separate inode_search() and inode_free() from fs_inode.c and put in separate files. Flesh out symbolic link logic in stat() and readdir(). There are still some issues with stat().
2017-02-03 11:23:57 -06:00
Gregory Nutt
c70987e551
nuttx/fs: Fix some spacing and alignment issues
2015-10-11 11:39:29 -06:00
Gregory Nutt
cb9e27c3b0
Standardize naming used for public data and function groupings
2015-10-02 16:30:35 -06:00
Gregory Nutt
ae90309b36
Move fs/fs.h to fs/inode/inode.h and some to fs/driver/driver.h
2014-09-29 07:14:38 -06:00
Gregory Nutt
1b2729e35e
More testing, bugfixes and integration of VFS-based named semaphores
2014-09-28 17:30:42 -06:00
Gregory Nutt
ff73be870e
Move renaming files in fs/. to fs/vfs/. (Don't all belong there)
2014-09-28 11:46:11 -06:00