ioctl(SIOCGIFINDEX) does not require clearing of entire ifr
No binary (build failed)
—
(log yok)
| @@ -161,7 +161,7 @@ static int get_address(char *dev, int *htype) | |
| s = xsocket(PF_PACKET, SOCK_DGRAM, 0); | |
| - | memset(&ifr, 0, sizeof(ifr)); |
| + | /*memset(&ifr, 0, sizeof(ifr)); - SIOCGIFINDEX does not need to clear all */ |
| strncpy_IFNAMSIZ(ifr.ifr_name, dev); | |
| xioctl(s, SIOCGIFINDEX, &ifr); | |
| @@ -444,7 +444,7 @@ static NOINLINE void INET6_setroute(int action, char **args) | |
| if (devname) { | |
| struct ifreq ifr; | |
| - | memset(&ifr, 0, sizeof(ifr)); |
| + | /*memset(&ifr, 0, sizeof(ifr)); - SIOCGIFINDEX does not need to clear all */ |
| strncpy_IFNAMSIZ(ifr.ifr_name, devname); | |
| xioctl(skfd, SIOCGIFINDEX, &ifr); | |
| rt.rtmsg_ifindex = ifr.ifr_ifindex; | |
| @@ -63,7 +63,7 @@ int FAST_FUNC d6_read_interface(const char *interface, int *ifindex, struct in6_ | |
| struct ifreq ifr; | |
| int fd; | |
| - | memset(&ifr, 0, sizeof(ifr)); |
| + | /*memset(&ifr, 0, sizeof(ifr)); - SIOCGIFINDEX does not need to clear all */ |
| strncpy_IFNAMSIZ(ifr.ifr_name, interface); | |
| fd = xsocket(AF_INET6, SOCK_RAW, IPPROTO_RAW); | |
| if (ioctl(fd, SIOCGIFINDEX, &ifr) == 0) { | |