@@ -62,35 +62,38 @@ static Broadcast_Info *fetch_broadcast_info(const Network *ns)
6262 return nullptr ;
6363 }
6464
65- IP_ADAPTER_INFO * pAdapterInfo = (IP_ADAPTER_INFO * )malloc (sizeof (IP_ADAPTER_INFO ));
66- unsigned long ulOutBufLen = sizeof (IP_ADAPTER_INFO );
65+ IP_ADAPTER_INFO * adapter_info = (IP_ADAPTER_INFO * )malloc (sizeof (IP_ADAPTER_INFO ));
6766
68- if (pAdapterInfo == nullptr ) {
67+ if (adapter_info == nullptr ) {
6968 free (broadcast );
7069 return nullptr ;
7170 }
7271
73- if (GetAdaptersInfo (pAdapterInfo , & ulOutBufLen ) == ERROR_BUFFER_OVERFLOW ) {
74- free (pAdapterInfo );
75- pAdapterInfo = (IP_ADAPTER_INFO * )malloc (ulOutBufLen );
72+ unsigned long out_buf_len = sizeof (IP_ADAPTER_INFO );
7673
77- if (pAdapterInfo == nullptr ) {
74+ if (GetAdaptersInfo (adapter_info , & out_buf_len ) == ERROR_BUFFER_OVERFLOW ) {
75+ free (adapter_info );
76+ IP_ADAPTER_INFO * new_adapter_info = (IP_ADAPTER_INFO * )malloc (out_buf_len );
77+
78+ if (new_adapter_info == nullptr ) {
7879 free (broadcast );
7980 return nullptr ;
8081 }
82+
83+ adapter_info = new_adapter_info ;
8184 }
8285
83- const int ret = GetAdaptersInfo (pAdapterInfo , & ulOutBufLen );
86+ const int ret = GetAdaptersInfo (adapter_info , & out_buf_len );
8487
8588 if (ret == NO_ERROR ) {
86- IP_ADAPTER_INFO * pAdapter = pAdapterInfo ;
89+ IP_ADAPTER_INFO * adapter = adapter_info ;
8790
88- while (pAdapter != nullptr ) {
91+ while (adapter != nullptr ) {
8992 IP gateway = {0 };
9093 IP subnet_mask = {0 };
9194
92- if (addr_parse_ip (pAdapter -> IpAddressList .IpMask .String , & subnet_mask )
93- && addr_parse_ip (pAdapter -> GatewayList .IpAddress .String , & gateway )) {
95+ if (addr_parse_ip (adapter -> IpAddressList .IpMask .String , & subnet_mask )
96+ && addr_parse_ip (adapter -> GatewayList .IpAddress .String , & gateway )) {
9497 if (net_family_is_ipv4 (gateway .family ) && net_family_is_ipv4 (subnet_mask .family )) {
9598 IP * ip = & broadcast -> ips [broadcast -> count ];
9699 ip -> family = net_family_ipv4 ();
@@ -106,12 +109,12 @@ static Broadcast_Info *fetch_broadcast_info(const Network *ns)
106109 }
107110 }
108111
109- pAdapter = pAdapter -> Next ;
112+ adapter = adapter -> Next ;
110113 }
111114 }
112115
113- if (pAdapterInfo != nullptr ) {
114- free (pAdapterInfo );
116+ if (adapter_info != nullptr ) {
117+ free (adapter_info );
115118 }
116119
117120 return broadcast ;
0 commit comments