|
|
@@ -1188,8 +1188,16 @@ impl RendezvousServer {
|
|
1188
|
1188
|
#[inline]
|
|
1189
|
1189
|
fn is_lan(&self, addr: SocketAddr) -> bool {
|
|
1190
|
1190
|
if let Some(network) = &self.inner.mask {
|
|
1191
|
|
- if let SocketAddr::V4(addr) = addr {
|
|
1192
|
|
- return network.contains(*addr.ip());
|
|
|
1191
|
+ match addr {
|
|
|
1192
|
+ SocketAddr::V4(v4_socket_addr) => {
|
|
|
1193
|
+ return network.contains(*v4_socket_addr.ip());
|
|
|
1194
|
+ }
|
|
|
1195
|
+
|
|
|
1196
|
+ SocketAddr::V6(v6_socket_addr) => {
|
|
|
1197
|
+ if let Some(v4_addr) = v6_socket_addr.ip().to_ipv4_mapped() {
|
|
|
1198
|
+ return network.contains(v4_addr);
|
|
|
1199
|
+ }
|
|
|
1200
|
+ }
|
|
1193
|
1201
|
}
|
|
1194
|
1202
|
}
|
|
1195
|
1203
|
false
|