Message ID | 20250105070537.58334-1-tanyaagarwal25699@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Paul Moore |
Headers | show |
Series | [V3] lockdown: Initialize array before use | expand |
Hi Tanya, On Sun, Jan 05, 2025 at 12:35:38PM +0530, Tanya Agarwal wrote: > From: Tanya Agarwal <tanyaagarwal25699@gmail.com> > > The static code analysis tool "Coverity Scan" pointed the following > details out for further development considerations: > CID 1486102: Uninitialized scalar variable (UNINIT) > uninit_use_in_call: Using uninitialized value *temp when calling > strlen. > > Conclusion: > Initialize array before use in lockdown_read() to satisfy the static > analyzer. > > Fixes: 000d388ed3bb ("security: Add a static lockdown policy LSM") > Signed-off-by: Tanya Agarwal <tanyaagarwal25699@gmail.com> I don't believe this is a real bug. The lockdown_reasons array is a non-empty constant, so temp is guaranteed to be written to by sprintf before being passed to strlen. When submitting patches in the future, could you also include an analysis of the conditions that might lead to the bug, along with the coverity scan report? Regards, Kuan-Wei
On Jan 5, 2025 Tanya Agarwal <tanyaagarwal25699@gmail.com> wrote: > > The static code analysis tool "Coverity Scan" pointed the following > details out for further development considerations: > CID 1486102: Uninitialized scalar variable (UNINIT) > uninit_use_in_call: Using uninitialized value *temp when calling > strlen. > > Conclusion: > Initialize array before use in lockdown_read() to satisfy the static > analyzer. > > Fixes: 000d388ed3bb ("security: Add a static lockdown policy LSM") > Signed-off-by: Tanya Agarwal <tanyaagarwal25699@gmail.com> I removed the 'Fixes:' tag as the code isn't actually broken as we discussed in previous iterations of this patch. I also edited the subject line and commit description a bit, but otherwise this is fine. Merged into lsm/dev. -- paul-moore.com
On Sun, Jan 5, 2025 at 11:18 PM Paul Moore <paul@paul-moore.com> wrote: > > On Jan 5, 2025 Tanya Agarwal <tanyaagarwal25699@gmail.com> wrote: > > > > The static code analysis tool "Coverity Scan" pointed the following > > details out for further development considerations: > > CID 1486102: Uninitialized scalar variable (UNINIT) > > uninit_use_in_call: Using uninitialized value *temp when calling > > strlen. > > > > Conclusion: > > Initialize array before use in lockdown_read() to satisfy the static > > analyzer. > > > > Fixes: 000d388ed3bb ("security: Add a static lockdown policy LSM") > > Signed-off-by: Tanya Agarwal <tanyaagarwal25699@gmail.com> > > I removed the 'Fixes:' tag as the code isn't actually broken as we > discussed in previous iterations of this patch. I also edited the > subject line and commit description a bit, but otherwise this is > fine. Merged into lsm/dev. > > -- > paul-moore.com Thank you, Paul. Regards, Tanya
diff --git a/security/lockdown/lockdown.c b/security/lockdown/lockdown.c index f2bdbd55aa2b..cf83afa1d879 100644 --- a/security/lockdown/lockdown.c +++ b/security/lockdown/lockdown.c @@ -96,7 +96,7 @@ static int __init lockdown_lsm_init(void) static ssize_t lockdown_read(struct file *filp, char __user *buf, size_t count, loff_t *ppos) { - char temp[80]; + char temp[80] = ""; int i, offset = 0; for (i = 0; i < ARRAY_SIZE(lockdown_levels); i++) {