From ac75e9ea3bb88143837d474662e888e578711546 Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Thu, 20 May 2021 18:30:35 -0700 Subject: [PATCH] [posix] avoid compiler warning on use of strncpy (#6653) --- src/posix/platform/infra_if.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/posix/platform/infra_if.cpp b/src/posix/platform/infra_if.cpp index 91ab6d5d7..0bbe6f42a 100644 --- a/src/posix/platform/infra_if.cpp +++ b/src/posix/platform/infra_if.cpp @@ -258,7 +258,9 @@ bool InfraNetif::IsRunning(void) const VerifyOrDie(sock != -1, OT_EXIT_ERROR_ERRNO); memset(&ifReq, 0, sizeof(ifReq)); - strncpy(ifReq.ifr_name, mInfraIfName, sizeof(ifReq.ifr_name)); + static_assert(sizeof(ifReq.ifr_name) >= sizeof(mInfraIfName), "mInfraIfName is not of appropriate size."); + strcpy(ifReq.ifr_name, mInfraIfName); + VerifyOrDie(ioctl(sock, SIOCGIFFLAGS, &ifReq) != -1, OT_EXIT_ERROR_ERRNO); close(sock); @@ -274,7 +276,7 @@ void InfraNetif::Init(otInstance *aInstance, const char *aIfName) VerifyOrExit(aIfName != nullptr); VerifyOrDie(strnlen(aIfName, sizeof(mInfraIfName)) <= sizeof(mInfraIfName) - 1, OT_EXIT_INVALID_ARGUMENTS); - strncpy(mInfraIfName, aIfName, sizeof(mInfraIfName)); + strcpy(mInfraIfName, aIfName); // Initializes the infra interface. ifIndex = if_nametoindex(aIfName);