libnetdevice: migrate API to std::string_view

Bug: 372814636
Test: verified with b/372814636 test service
Change-Id: I9a6226a914195e895193b8a4c2d4d833fcc5dade
diff --git a/automotive/can/1.0/default/libnetdevice/ifreqs.cpp b/automotive/can/1.0/default/libnetdevice/ifreqs.cpp
index 7dbd8fb..2e6ad41 100644
--- a/automotive/can/1.0/default/libnetdevice/ifreqs.cpp
+++ b/automotive/can/1.0/default/libnetdevice/ifreqs.cpp
@@ -70,10 +70,11 @@
     return true;
 }
 
-struct ifreq fromName(const std::string& ifname) {
+struct ifreq fromName(std::string_view ifname) {
     struct ifreq ifr = {};
-    // strncpy: last \0 initialized with ifreq above
-    strncpy(ifr.ifr_name, ifname.c_str(), IF_NAMESIZE - 1);
+    // memcpy: last \0 initialized with ifreq above
+    memcpy(ifr.ifr_name, ifname.data(),
+           std::min(ifname.size(), static_cast<size_t>(IF_NAMESIZE - 1)));
     return ifr;
 }