summaryrefslogtreecommitdiff
path: root/components/dfs/dfs_v2/src/dfs_file.c
AgeCommit message (Collapse)Author
2026-08-30[dfs][posix] Add record locks, fchmod, and tmpfs metadatabernard
为 DFS v2 增加 POSIX 记录锁、fchmod,以及 tmpfs 的权限和时间元数据。 进程退出时通过 dfs_fdtable_drop_fd 释放文件描述符和记录锁。
2026-08-17Add AF_UNIX sockets implementation (#11681)Bernard Xiong
* components/dfs: support unix socket nodes AF_UNIX pathname binding and descriptor passing require DFSv2 socket nodes and retained open file descriptions across fd tables. Add socket-node creation for tmpfs and devtmpfs, fd reference helpers, and socket F_SETFL forwarding. Impact: DFSv2 socket nodes and descriptor reference handling. Validation: git diff --cached --check. * components/net/sal: support local protocol providers Local IPC protocol families do not have a backing network device. Store the selected provider in each SAL socket and add a local provider registry while preserving netdev checks for Internet sockets. Handle DFSv2 close semantics, socketpair flags, and MSG_CTRUNC for AF_UNIX integration. Impact: SAL protocol dispatch for all socket families. Validation: git diff --cached --check. * components/lwp: support unix socket messages Musl AF_UNIX addresses and ancillary data require explicit ABI and user-memory conversion at the LWP syscall boundary. Add the musl msghdr layout, bounded address and message copying, control-message level conversion, and MSG_CTRUNC translation. Correct receive buffer allocation and copy lengths while handling messages. Impact: LWP socket syscalls when SAL is enabled. Validation: git diff --cached --check. * components/net/af_unix: add local sockets Add an opt-in AF_UNIX provider for pathname-based local IPC without a synthetic network device. Support datagram and stream sockets, blocking and nonblocking I/O, timeouts, poll, socketpair, and SCM_RIGHTS descriptor passing. Include bounded Kconfig settings, component documentation, and utest coverage. Impact: enabled only by RT_USING_AF_UNIX and requires SAL POSIX with DFSv2. Validation: git diff --cached --check. * Fix AF_UNIX CI checks Apply the repository clang-format rules to the affected source lines. Suppress the cppcheck false positive for the devtmpfs list iterator. No functional behavior is changed. * components/lwp: preserve NULL optional msghdr buffers When msg_name or msg_control is NULL, keep the kernel pointer NULL instead of substituting an uninitialized buffer. Reject a NULL control buffer with a nonzero length as EFAULT. Impact: LWP sendmsg/recvmsg conversion on MMU targets. Validation: git diff --cached --check. * components/net/af_unix: fix poll UAF, namespace leak, and SCM_RIGHTS cycles Poll only the local wait queue and wake writers from the receiver. Free namespace entries on detach, and reject AF_UNIX descriptors in SCM_RIGHTS until cycle collection exists. Impact: AF_UNIX poll, bind lifetime, and descriptor passing. Validation: git diff --cached --check. * components/dfs: add DFSv2 AF_UNIX utest suite Add opt-in tests under dfs/utest/v2/af_unix for socket nodes, IPC, poll peer-close, namespace cleanup, and SCM_RIGHTS rejection. Sources are built only when RT_UTEST_TC_USING_DFS_V2_AF_UNIX and the selected test groups are enabled. Impact: DFS utest menu and build; no production AF_UNIX behavior change. Validation: git diff --cached --check.
2026-08-06[fix][dfs] ↵angryproton
增加文件系统操作的类型检查,防止类型不匹配导致数据结构不一致引发的异常
2025-11-07fix:[dfs]ls在文件名太长时打印出来的文件名与大小连接在� ↵wdfk-prog
�起,无法区分
2025-08-04[components/dfs]add doxygen comments for dfs_file.c in dfs_v2.ligr
2025-07-31[bugfix][component/dfs] fix bugs for function _get_parent_path(). (#10539)Guorui Li
* [bugfix][component/dfs]1.Skip the trailing slash character failed. 2. Scenario that parent path is root is not considered. * replace strdup() by rt_strdup(). * free memory after strdup(). * fix issue of not appending '\0' at end when parent path is root.
2024-08-25【修复】修复link系统调用返回值问题zhuzhuzhu
2024-08-25【修复】修复symlink系统调用返回值不是预期问题zhuzhuzhu
2024-04-10fix symlink (#8755)geniusgogo
Signed-off-by: geniusgogo <[email protected]>
2024-04-09[dfsv2] add dfs pwrite preadgeniusgogo
2024-03-28sync smart & dfs (#8672)Shell
Signed-off-by: xqyjlj <[email protected]> Signed-off-by: Shell <[email protected]> Co-authored-by: xqyjlj <[email protected]>
2024-03-15[dfs] fixup bugs in dfs_dentry_lookup (#8612)Shell
Signed-off-by: Shell <[email protected]>
2023-12-12sync update dfs v2. (#8336)geniusgogo
2023-12-06fix #8305, symlink bug.geniusgogo
2023-11-28fix dfs path name overflow. (#8305)geniusgogo
2023-11-28[SAL] Update SAL,Add socketpair sendmsg recvmsg function (#8293)rcitachi
2023-10-21fix ash echo (#8150)xiao-mang
2023-10-20[dfs v2] support O_DIRECT and O_SYNC flags (#8155)XYZ
2023-10-17Sync dfs lwp (#8123)geniusgogo
2023-10-17✨ feat(dfs_v2/cromfs): add symlink support (#8132)xqyjlj
2023-09-25tmpfs adds truncate functionality and unlink adaptationszhouminquan
2023-09-14fix tar -xzvf symbol link (#8034)xiao-mang
2023-09-09[fix] copyfile dest file empty first (#8012)XYZ
2023-08-12fix dfs_file_open error code (#7942)geniusgogo
2023-08-02update dfs (#7887)geniusgogo
2023-07-27[dfs v2]fix fcntl(F_SETFL) bug,and modify the error code when opening… (#7878)Tennn11
2023-07-24modify some function prototypes of the dfs_file_ops structure and the ↵xiao-mang
function declarations based on it (#7849)
2023-06-11Add color ls for executable file. (#7654)Bernard Xiong
2023-06-10[dfs] Add DFS v2.0 (#7606)Bernard Xiong
2023-04-14[HUST CSE][document] Fix some comments, invalid grouping commands and ↵Xu Biang
warnings in Doxygen. 将Doxygen输入文件(由Doxyfile中的INPUT定义)中的失效Doxygen分组指令(如/*@*/和/*@}*/)更改为有效的分组指令(如/**@*/和/**@}*/);(此处只对INPUT中的文件做了修改,bsp目录下和libcpu目录下存在近万个失效的Doxygen分组指令,但由于不作为文档的输入文件且这些文件过于庞大老旧,没有对这些文件中的无效指令做修改) 将图片文件统一放入了images目录下; 修改了Doxyfile和部分Doxygen注释,使得Doxyfile能够定位到新的代码路径且不受重复实现的影响; 解决了一些注释中的参数名不匹配、参数多余/缺失等问题。
2023-04-08[DFS] prepare for dfs_v2.0 (#7200)Bernard Xiong
* [DFS] prepare for dfs_v2. dfs_fd -> dfs_file; dfs_fnode -> dfs_vnode. * [BSP] fix code analysis warning * [smart] fix the pointer overflow. * code format * [smart] fix the lwp->lwp_obj checking.
2023-04-04[DFS] add Kconfig for dfs-v2.0 (#7156)Bernard Xiong
* [DFS] add Kconfig for dfs-v2.0 * [DFS] Optimize the SConscript. * [dfs] move old dfs to dfs/dfs_v1