2021-07-12 11:31:04 +00:00
|
|
|
From: Felix Fietkau <nbd@nbd.name>
|
|
|
|
Date: Thu, 8 Jul 2021 16:33:03 +0200
|
|
|
|
Subject: [PATCH] hostapd: fix use of uninitialized stack variables
|
|
|
|
|
|
|
|
When a CSA is performed on an 80 MHz channel, hostapd_change_config_freq
|
|
|
|
unconditionally calls hostapd_set_oper_centr_freq_seg0/1_idx with seg0/1
|
|
|
|
filled by ieee80211_freq_to_chan.
|
|
|
|
However, if ieee80211_freq_to_chan fails (because the freq is 0 or invalid),
|
|
|
|
seg0/1 remains uninitialized and filled with stack garbage, causing errors
|
|
|
|
such as "hostapd: 80 MHz: center segment 1 configured"
|
|
|
|
|
|
|
|
Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|
|
|
---
|
|
|
|
|
|
|
|
--- a/src/ap/hostapd.c
|
|
|
|
+++ b/src/ap/hostapd.c
|
2023-03-13 18:35:49 +00:00
|
|
|
@@ -3562,7 +3562,7 @@ static int hostapd_change_config_freq(st
|
2021-07-12 11:31:04 +00:00
|
|
|
struct hostapd_freq_params *old_params)
|
|
|
|
{
|
|
|
|
int channel;
|
|
|
|
- u8 seg0, seg1;
|
|
|
|
+ u8 seg0 = 0, seg1 = 0;
|
|
|
|
struct hostapd_hw_modes *mode;
|
|
|
|
|
|
|
|
if (!params->channel) {
|