diff options
| author | Bjoern A. Zeeb <bz@FreeBSD.org> | 2025-11-17 22:54:07 +0000 |
|---|---|---|
| committer | Bjoern A. Zeeb <bz@FreeBSD.org> | 2026-01-16 19:37:53 +0000 |
| commit | add692e05ca1825b974804ad65d961719be098f2 (patch) | |
| tree | e519ca83417686e006ef0552ee8ccf6810a194b5 | |
| parent | 6b70b671b3c89678866a6d4979d214434c095186 (diff) | |
LinuxKPI: 802.11: initialize the passed in chandef in cfg80211_chandef_create
cfg80211_chandef_create() gets passed a pointer to a cfg80211_chan_def.
It seems that several users are passing in an uninitialized variable
from the stack and expect cfg80211_chandef_create() to initialize it.
Run memset() on the struct, which for all callers currently seems to do
the right thing, to avoid later accesses to uninitialized struct members
like "punctured".
Reported by: CI (gcc build)
Sponsonred by: The FreeBSD Foundation
(cherry picked from commit 640205bc22c8b2bd31c766f4d0c409c183a8b8dc)
(cherry picked from commit d389d1ac1699aea517a18cf73486e7077cfbda46)
| -rw-r--r-- | sys/compat/linuxkpi/common/include/net/cfg80211.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index f769cfdd4075..305026b34451 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -1450,7 +1450,7 @@ cfg80211_chandef_create(struct cfg80211_chan_def *chandef, KASSERT(chandef != NULL, ("%s: chandef is NULL\n", __func__)); KASSERT(chan != NULL, ("%s: chan is NULL\n", __func__)); - /* memset(chandef, 0, sizeof(*chandef)); */ + memset(chandef, 0, sizeof(*chandef)); chandef->chan = chan; chandef->center_freq1 = chan->center_freq; /* chandef->width, center_freq2, punctured */ |
