Skip to content

Commit

Permalink
feat(shadowsocks): GetAdaptersAddresses only valid network adapters
Browse files Browse the repository at this point in the history
  • Loading branch information
zonyitoo committed Aug 11, 2023
1 parent d3f2095 commit 42157f7
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions crates/shadowsocks/src/net/sys/windows/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,10 @@ use windows_sys::{
NetworkManagement::IpHelper::{
if_nametoindex,
GetAdaptersAddresses,
GAA_FLAG_INCLUDE_PREFIX,
GAA_FLAG_SKIP_ANYCAST,
GAA_FLAG_SKIP_DNS_SERVER,
GAA_FLAG_SKIP_MULTICAST,
GAA_FLAG_SKIP_UNICAST,
IP_ADAPTER_ADDRESSES_LH,
},
Networking::WinSock::{
Expand Down Expand Up @@ -221,7 +224,7 @@ fn find_adapter_interface_index(addr: &SocketAddr, iface: &str) -> io::Result<Op
loop {
let ret = GetAdaptersAddresses(
AF_UNSPEC as u32,
GAA_FLAG_INCLUDE_PREFIX,
GAA_FLAG_SKIP_UNICAST | GAA_FLAG_SKIP_ANYCAST | GAA_FLAG_SKIP_MULTICAST | GAA_FLAG_SKIP_DNS_SERVER,
ptr::null(),
ip_adapter_addresses_buffer.as_mut_ptr() as *mut _,
&mut ip_adapter_addresses_buffer_size as *mut _,
Expand Down

0 comments on commit 42157f7

Please sign in to comment.