From 62be9551c3656effc2e013da12c9e1c9698c104f Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Mon, 12 Oct 2020 11:59:19 -0400 Subject: [PATCH 16/16] libhandle: fix potential unterminated string problem gcc 10.2 complains about the strncpy call here, since it's possible that the source string is so long that the fspath inside the fdhash structure will end up without a null terminator. Work around strncpy braindamage yet again by forcing the string to be terminated properly. Signed-off-by: Darrick J. Wong Reviewed-by: Eric Sandeen Signed-off-by: Eric Sandeen --- libhandle/handle.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libhandle/handle.c b/libhandle/handle.c index eb099f4..5c1686b 100644 --- a/libhandle/handle.c +++ b/libhandle/handle.c @@ -107,7 +107,8 @@ path_to_fshandle( } fdhp->fsfd = fd; - strncpy(fdhp->fspath, fspath, sizeof(fdhp->fspath)); + strncpy(fdhp->fspath, fspath, sizeof(fdhp->fspath) - 1); + fdhp->fspath[sizeof(fdhp->fspath) - 1] = 0; memcpy(fdhp->fsh, *fshanp, FSIDSIZE); fdhp->fnxt = fdhash_head; -- 1.8.3.1