From 84ce651836e0d037f611cd33a5c65e1d57049432 Mon Sep 17 00:00:00 2001 From: Kyle Evans Date: Wed, 8 Apr 2026 21:41:12 -0500 Subject: [PATCH] : use designated initializers for EXTATTR_NAMESPACE_NAMES This is not a functional change, but it makes it more clear upon inspection of the definition that the mapping property described is preserved. Maybe more importantly, if one ends up getting an index wrong or punching a hole in the name array unexpectedly, then it'll hopefully manifest more clearly as a (null) or nullptr deref rather than potentially just emitting the wrong namespace name. It's noted that this almost certainly invalidates its use in C++, but there aren't really any known C++ consumers of it- let's just cross that bridge if we get there. Reviewed by: kib, mckusick, rmacklem Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55323 --- sys/sys/extattr.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/sys/extattr.h b/sys/sys/extattr.h index 4aabb4af667..91bc5210a54 100644 --- a/sys/sys/extattr.h +++ b/sys/sys/extattr.h @@ -53,9 +53,9 @@ * char *extattr_namespace_names[] = EXTATTR_NAMESPACE_NAMES; */ #define EXTATTR_NAMESPACE_NAMES { \ - EXTATTR_NAMESPACE_EMPTY_STRING, \ - EXTATTR_NAMESPACE_USER_STRING, \ - EXTATTR_NAMESPACE_SYSTEM_STRING } + [EXTATTR_NAMESPACE_EMPTY] = EXTATTR_NAMESPACE_EMPTY_STRING, \ + [EXTATTR_NAMESPACE_USER] = EXTATTR_NAMESPACE_USER_STRING, \ + [EXTATTR_NAMESPACE_SYSTEM] = EXTATTR_NAMESPACE_SYSTEM_STRING } #define EXTATTR_MAXNAMELEN NAME_MAX