diff options
Diffstat (limited to 'src/udp/frame.rs')
-rw-r--r-- | src/udp/frame.rs | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/src/udp/frame.rs b/src/udp/frame.rs index f04b004..e8f3b69 100644 --- a/src/udp/frame.rs +++ b/src/udp/frame.rs @@ -140,27 +140,12 @@ pub type PeerServerMessage = (SocketAddr, Vec<u8>); pub struct VecUdpCodec; impl VecUdpCodec { fn decode(&mut self, src: &SocketAddr, buf: &[u8]) -> io::Result<PeerServerMessage> { - let unmapped_ip = match src.ip() { - IpAddr::V6(v6addr) => { - if let Some(v4addr) = v6_mapped_to_v4(v6addr) { - IpAddr::V4(v4addr) - } else { - IpAddr::V6(v6addr) - } - } - v4addr => v4addr - }; - Ok((SocketAddr::new(unmapped_ip, src.port()), buf.to_vec())) + Ok((*src, buf.to_vec())) } fn encode(&mut self, msg: PeerServerMessage, buf: &mut Vec<u8>) -> SocketAddr { let (mut addr, mut data) = msg; buf.append(&mut data); - let mapped_ip = match addr.ip() { - IpAddr::V4(v4addr) => IpAddr::V6(v4addr.to_ipv6_mapped()), - v6addr => v6addr - }; - addr.set_ip(mapped_ip); addr } } |