Browse Source

fixing get_transport_info

pull/52/head
ssrlive 3 years ago
parent
commit
3b9207fb7a
  1. 7
      src/tun2proxy.rs

7
src/tun2proxy.rs

@ -107,15 +107,16 @@ fn get_transport_info(
.map_err(|e| e.into()), .map_err(|e| e.into()),
IpProtocol::Tcp => TcpPacket::new_checked(packet) IpProtocol::Tcp => TcpPacket::new_checked(packet)
.map(|result| { .map(|result| {
let header_len = result.header_len() as usize;
( (
(result.src_port(), result.dst_port()), (result.src_port(), result.dst_port()),
result.syn() && !result.ack(), result.syn() && !result.ack(),
transport_offset + result.header_len() as usize, transport_offset + header_len,
packet.len(), packet.len() - header_len,
) )
}) })
.map_err(|e| e.into()), .map_err(|e| e.into()),
_ => Err(format!("Unsupported protocol {protocol}").into()), _ => Err(format!("Unsupported protocol {protocol} in IP packet").into()),
} }
} }

Loading…
Cancel
Save