Re: [RFC 0/7] eliminate snprintf with overlapping src and dst
From: Andrew Morton
Date: Wed Mar 09 2016 - 15:49:50 EST
On Tue, 8 Mar 2016 21:40:47 +0100 Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx> wrote:
> Doing snprintf(buf, len, "%s...", buf, ...) for appending to a buffer
> currently works, but it is somewhat fragile, and any other overlap
> between source and destination buffers would be a definite bug. This
> is an attempt at eliminating the relatively few occurences of this
> pattern in the kernel.
I dunno,
snprintf(analog->name, sizeof(analog->name), "Analog %d-axis %d-button",
is pretty damn convenient. Can we instead state that "sprintf shall
support this"? Maybe add a little __init testcase to vsprintf.c to
check that it continues to work OK.