Kaben123 opened a new pull request, #19991:
URL: https://github.com/apache/nuttx/pull/19991

   ## Summary
   
   This PR contains 8 bug-fix commits for the NuttX POSIX filesystem layer:
   
   1. **fs/smartfs**: change fs_heap to lib_tempbuffer (prerequisite for #5)
   2. **fs/inode**: fix off-by-one in `_inode_checkpath` NAME_MAX check
   3. **fs/vfs/rename**: fix rename to same file and rename to subdirectory
   4. **fs/inode**: canonicalize path before inode search to fix `..` resolution
   5. **fs**: remove redundant `..` handling in FS layers after VFS 
canonicalization
   6. **fs/inode**: fix relative-path truncation causing wrong EISDIR
   7. **fs/vfs**: fix `link()` returning EXDEV instead of ENAMETOOLONG
   8. **libc/limits**: increase LINK_MAX to 128 and fix `pathconf`
   
   ## Dependencies
   
   This PR depends on:
   - PR #19949 (fs: add hardlink and mountpt link/lstat infrastructure) — 
**merged**
   - PR #19950 (fs/inode: add POSIX path-resolution infrastructure) — **merged**
   - PR #19990 (fs: add hostfs/rpmsgfs link/symlink/readlink/lstat backends) — 
**in review**
   
   Depends-On: https://github.com/apache/nuttx/pull/19990
   
   ## Testing
   
   - Build verified: `sim:nsh` with `FS_HOSTFS + FS_LINKS + FS_SMARTFS`, zero 
errors/warnings
   - Integration tested on top of PR#1 + PR#2 + PR#3 combined baseline
   
   ## Impact
   
   - Fixes POSIX rename semantics (same-file via hardlink, subdirectory 
detection)
   - Fixes path canonicalization for `..` resolution across mount boundaries
   - Fixes `link()` error code confusion (EXDEV vs ENAMETOOLONG)
   - Removes ~360 lines of redundant `..` handling now handled by VFS layer
   - Raises LINK_MAX from 8 to 128 to match modern POSIX expectations
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to