On Fri, Jul 14, 2017 at 2:28 PM, Daniel Micay <danielmicay@xxxxxxxxx> wrote: > Using strscpy was wrong because FORTIFY_SOURCE is passing the maximum > possible size of the outermost object, but strscpy defines the count > parameter as the exact buffer size, so this could copy past the end of > the source. This would still be wrong with the planned usage of > __builtin_object_size(p, 1) for intra-object overflow checks since it's > the maximum possible size of the specified object with no guarantee of > it being that large. > > Reuse of the fortified functions like this currently makes the runtime > error reporting less precise but that can be improved later on. > > Signed-off-by: Daniel Micay <danielmicay@xxxxxxxxx> Thanks for fixing this! Linus, do you want to take this directly or have it go via -mm where fortify landed originally? Acked-by: Kees Cook <keescook@xxxxxxxxxxxx> As far as testing goes, was the NFS tree not in -next, or was a test not running against -next? I'm curious why it took until the NFS tree landed in Linus's tree for this to get noticed. Fortify was in -next for a while... -Kees -- Kees Cook Pixel Security