From: Colin Ian King <[email protected]>
Field header.tlv is uninitialized and being copied back to userspace
and hence leaking data from the stack to userspace. Fix this by
ensuring the header structure is zero'd.
Fixes: c3078f539704 ("ASoC: SOF: Add Sound Open Firmware KControl support")
Addresses-Coverity: ("Uninitialized scalar variable")
Signed-off-by: Colin Ian King <[email protected]>
---
sound/soc/sof/control.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/sof/control.c b/sound/soc/sof/control.c
index dfc412e2d956..97d5c1a4c1ff 100644
--- a/sound/soc/sof/control.c
+++ b/sound/soc/sof/control.c
@@ -362,7 +362,7 @@ int snd_sof_bytes_ext_get(struct snd_kcontrol *kcontrol,
struct snd_sof_control *scontrol = be->dobj.private;
struct snd_soc_component *scomp = scontrol->scomp;
struct sof_ipc_ctrl_data *cdata = scontrol->control_data;
- struct snd_ctl_tlv header;
+ struct snd_ctl_tlv header = { };
struct snd_ctl_tlv __user *tlvd =
(struct snd_ctl_tlv __user *)binary_data;
int data_size;
--
2.25.1
On 22/04/2020 12:45, Dan Carpenter wrote:
> On Wed, Apr 22, 2020 at 12:24:17PM +0100, Colin King wrote:
>> From: Colin Ian King <[email protected]>
>>
>> Field header.tlv is uninitialized and being copied back to userspace
> ^^^^^^^^^^
> header.tlv is a zero element array so it doens't have any stack data.
Thanks Dan, I totally overlooked that. That's another class if issues I
need to triage correctly.
>
>> and hence leaking data from the stack to userspace. Fix this by
>> ensuring the header structure is zero'd.
>
> regards,
> dan carpenter
>
>
On Wed, Apr 22, 2020 at 12:24:17PM +0100, Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> Field header.tlv is uninitialized and being copied back to userspace
^^^^^^^^^^
header.tlv is a zero element array so it doens't have any stack data.
> and hence leaking data from the stack to userspace. Fix this by
> ensuring the header structure is zero'd.
regards,
dan carpenter