fs/vfs/fs_fstat.c: fix write capability check in proxy_fstat()
Build Documentation / build-html (push) Has been cancelled

In proxy_fstat(), the write permission bits for a block driver proxy
were gated on `i_ops->read` instead of `i_ops->write`:
The effect is that a driver implementing read but not write would have
S_IWOTH | S_IWGRP | S_IWUSR incorrectly set in the fstat() result,
reporting the file as writable when it is not.

Fix: replace `->read` with `->write` in the write check condition.

Signed-off-by: Abhishek Mishra <mishra.abhishek2808@gmail.com>
This commit is contained in:
Abhishek Mishra
2026-04-15 17:03:08 +00:00
committed by Michal Lenc
parent 7139b02cd6
commit 5c9de46c79
+1 -1
View File
@@ -117,7 +117,7 @@ static int proxy_fstat(FAR struct file *filep, FAR struct inode *inode,
buf->st_mode |= S_IROTH | S_IRGRP | S_IRUSR;
}
if (inode->u.i_ops->writev || inode->u.i_ops->read)
if (inode->u.i_ops->writev || inode->u.i_ops->write)
{
buf->st_mode |= S_IWOTH | S_IWGRP | S_IWUSR;
}