On Mon, May 22, 2023 at 03:53:50PM +0000, Azeem Shaikh wrote: > strlcpy() reads the entire source buffer first. > This read may exceed the destination size limit. > This is both inefficient and can lead to linear read > overflows if a source string is not NUL-terminated [1]. > In an effort to remove strlcpy() completely [2], replace > strlcpy() here with strscpy(). > No return values were used, so direct replacement is safe. ... > memset(&cec_info, 0, sizeof(cec_info)); > - strlcpy(cec_info.type, "tda9950", sizeof(cec_info.type)); > + strscpy(cec_info.type, "tda9950", sizeof(cec_info.type)); Please explain how: 1) a C string can not be NUL terminated. 2) this source string could be longer than I2C_NAME_SIZE (20 bytes) which is unlikely to ever shrink. I'm not saying I disagree with the patch, but the boilerplate commit message isn't correct for this change, and is actually misleading for what the patch actually is. -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!