This makes sure format strings cannot leak into the printk call via the constructed buffer. Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> Acked-by: Bradley Grove <bgrove@xxxxxxxxxxxx> --- v2: - add newline via printk instead. --- drivers/scsi/esas2r/esas2r_log.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/scsi/esas2r/esas2r_log.c b/drivers/scsi/esas2r/esas2r_log.c index 9bf285df58dd..a82030aa8577 100644 --- a/drivers/scsi/esas2r/esas2r_log.c +++ b/drivers/scsi/esas2r/esas2r_log.c @@ -165,13 +165,9 @@ static int esas2r_log_master(const long level, /* * Put a line break at the end of the formatted string so that - * we don't wind up with run-on messages. only append if there - * is enough space in the buffer. + * we don't wind up with run-on messages. */ - if (strlen(event_buffer) < buflen) - strcat(buffer, "\n"); - - printk(event_buffer); + printk("%s\n", event_buffer); spin_unlock_irqrestore(&event_buffer_lock, flags); } -- 1.7.9.5 -- Kees Cook Chrome OS Security -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html