1
1

opal/util/ethtool: fix (infamous) strncpy usage

the infamous strncpy does not NULL terminate the destination when the buffer is truncated
do it ourself !

fix CID 1362576
Этот коммит содержится в:
Gilles Gouaillardet 2016-06-09 09:54:50 +09:00
родитель ead7efef3f
Коммит 1f651d17c1

Просмотреть файл

@ -58,6 +58,8 @@ opal_ethtool_get_speed (const char *if_name)
memset(&ifr, 0, sizeof(struct ifreq)); memset(&ifr, 0, sizeof(struct ifreq));
strncpy(ifr.ifr_name, if_name, IF_NAMESIZE); strncpy(ifr.ifr_name, if_name, IF_NAMESIZE);
/* strncpy does not null terminate when the string is truncated */
ifr.ifr_name[IF_NAMESIZE-1] = '\0';
ifr.ifr_data = (char *)&edata; ifr.ifr_data = (char *)&edata;
if (ioctl(sockfd, SIOCETHTOOL, &ifr) < 0) { if (ioctl(sockfd, SIOCETHTOOL, &ifr) < 0) {