[rtems-libbsd commit] freenbsd/vfs: VFS attributes need to have the same size mode_t variable

Chris Johns chrisj at rtems.org
Sun Jul 23 23:21:51 UTC 2023


Module:    rtems-libbsd
Branch:    6-freebsd-12
Commit:    60e40e9b83414b43c60bea47f628dd1f60f018b6
Changeset: http://git.rtems.org/rtems-libbsd/commit/?id=60e40e9b83414b43c60bea47f628dd1f60f018b6

Author:    Chris Johns <chrisj at rtems.org>
Date:      Thu Jul 20 14:05:33 2023 +1000

freenbsd/vfs: VFS attributes need to have the same size mode_t variable

If the size in the attributes struct does not match the mode_t the
VNOVAL checks fail because size of the values are not the same.

Updates #4723

---

 freebsd/sys/sys/vnode.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/freebsd/sys/sys/vnode.h b/freebsd/sys/sys/vnode.h
index d297c931..ddb9ac30 100644
--- a/freebsd/sys/sys/vnode.h
+++ b/freebsd/sys/sys/vnode.h
@@ -266,8 +266,12 @@ struct xvnode {
  */
 struct vattr {
 	enum vtype	va_type;	/* vnode type (for create) */
+#ifndef __rtems__
 	u_short		va_mode;	/* files access mode and type */
 	u_short		va_padding0;
+#else /* __rtems__ */
+	mode_t		va_mode;	/* files access mode and type */
+#endif /* __rtems__ */
 	uid_t		va_uid;		/* owner user id */
 	gid_t		va_gid;		/* owner group id */
 	nlink_t		va_nlink;	/* number of references to file */



More information about the vc mailing list