The branch main has been updated by emaste:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=4d125ed6e7d445d574c11dc35c40ec3013559806

commit 4d125ed6e7d445d574c11dc35c40ec3013559806
Author:     Ed Maste <[email protected]>
AuthorDate: 2026-05-22 14:55:49 +0000
Commit:     Ed Maste <[email protected]>
CommitDate: 2026-05-23 20:59:52 +0000

    netlink: Avoid potential undefined behaviour
    
    Taking the address of an OOB array element is UB, even if not
    dereferenced.
    
    Reviewed by: des, bz
    Sponsored by: The FreeBSD Foundation
    Differential Revision: https://reviews.freebsd.org/D57172
---
 sys/netlink/netlink_generic.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/sys/netlink/netlink_generic.c b/sys/netlink/netlink_generic.c
index c2f82eed5656..50c12175e14e 100644
--- a/sys/netlink/netlink_generic.c
+++ b/sys/netlink/netlink_generic.c
@@ -93,12 +93,10 @@ static struct genl_group {
 static inline struct genl_family *
 genl_family(uint16_t family_id)
 {
-       struct genl_family *gf;
-
-       gf = &families[family_id - GENL_MIN_ID];
        KASSERT(family_id - GENL_MIN_ID < MAX_FAMILIES &&
-           gf->family_name != NULL, ("family %u does not exist", family_id));
-       return (gf);
+           families[family_id - GENL_MIN_ID].family_name != NULL,
+           ("family %u does not exist", family_id));
+       return (&families[family_id - GENL_MIN_ID]);
 }
 
 static inline uint16_t

Reply via email to