On Wed, Dec 6, 2017 at 9:49 AM, Ingo Molnar <mingo@xxxxxxxxxx> wrote: > > * Arnd Bergmann <arnd@xxxxxxxx> wrote: > >> gcc-8 warns about using strncpy() with the source size as the limit: >> >> fs/exec.c:1223:32: error: argument to 'sizeof' in 'strncpy' call is the same expression as the source; did you mean to use the size of the destination? [-Werror=sizeof-pointer-memaccess] >> >> This is indeed slightly suspicious, as it protects us from source >> arguments without NUL-termination, but does not guarantee that the >> destination is terminated. >> >> This keeps the strncpy() to ensure we have properly padded target buffer, >> but ensures that we use the correct length, by passing the actual length >> of the destination buffer as well as adding a build-time check to ensure >> it is exactly TASK_COMM_LEN. There are only 23 callsights which I all >> reviewed to ensure this is currently the case. We could get away with >> doing only the check or passing the right length, but it doesn't hurt >> to do both. >> >> Suggested-by: Kees Cook <keescook@xxxxxxxxxxxx> >> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> > > Looks useful. > > Acked-by: Ingo Molnar <mingo@xxxxxxxxxx> Ingo, can you take this into -tip, or should this go via -mm or some other tree? -Kees -- Kees Cook Pixel Security