From 423875c96f168f7357369268aad62d121a812266 Mon Sep 17 00:00:00 2001 From: "Tobin C. Harding" Date: Wed, 15 Feb 2017 14:27:25 +1100 Subject: staging: fbtft: Add check on strlcpy() return value Return value of strlcpy() is not checked. Name string is silently truncated if longer that SPI_NAME_SIZE, whilst not detrimental to the program logic it would be nice to notify the user. Module is currently quite verbose, adding extra pr_warn() calls will not overly impact this verbosity. Check return value from call to strlcpy(). If source string is truncated call pr_warn() to notify user. Signed-off-by: Tobin C. Harding Signed-off-by: Greg Kroah-Hartman --- drivers/staging/fbtft/fbtft_device.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'drivers/staging/fbtft') diff --git a/drivers/staging/fbtft/fbtft_device.c b/drivers/staging/fbtft/fbtft_device.c index 61b7bfc7d714..7545e08010bc 100644 --- a/drivers/staging/fbtft/fbtft_device.c +++ b/drivers/staging/fbtft/fbtft_device.c @@ -1483,7 +1483,13 @@ static int __init fbtft_device_init(void) displays[i].pdev->name = name; displays[i].spi = NULL; } else { - strlcpy(displays[i].spi->modalias, name, SPI_NAME_SIZE); + size_t len; + + len = strlcpy(displays[i].spi->modalias, name, + SPI_NAME_SIZE); + if (len >= SPI_NAME_SIZE) + pr_warn("modalias (name) truncated to: %s\n", + displays[i].spi->modalias); displays[i].pdev = NULL; } } -- cgit v1.2.3