瀏覽代碼

core: common check for ifa->ifa_addr in add_intefaces

- if no ip address associated with the network interface, it is not
  useful anyhow
Daniel-Constantin Mierla 9 年之前
父節點
當前提交
c395ae00d7
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      socket_info.c

+ 4 - 1
socket_info.c

@@ -1205,9 +1205,12 @@ int add_interfaces(char* if_name, int family, unsigned short port,
 
 	for (ifa = ifap; ifa; ifa = ifa->ifa_next)
 	{
+		/* skip if no IP addr associated with the interface */
+		if (ifa->ifa_addr==0)
+			continue;
 #ifdef AF_PACKET
 		/* skip AF_PACKET addr family since it is of no use later on */
-		if (ifa->ifa_addr && ifa->ifa_addr->sa_family == AF_PACKET)
+		if (ifa->ifa_addr->sa_family == AF_PACKET)
 			continue;
 #endif
 		if (if_name && strcmp(if_name, ifa->ifa_name))