udp: response parsing: parse ipv6 peers on action 4

This commit is contained in:
Joakim Frostegård 2020-07-31 06:27:05 +02:00
parent 29f4c4dd7c
commit 4067e420c3
2 changed files with 40 additions and 36 deletions

View file

@ -60,11 +60,6 @@ pub fn run_socket_thread(
let mut socket = UdpSocket::from_std(create_socket(config, addr));
let mut buffer = [0u8; MAX_PACKET_SIZE];
let ip_version = match config.server_address {
SocketAddr::V4(_) => IpVersion::IPv4,
SocketAddr::V6(_) => IpVersion::IPv6,
};
let token = Token(thread_id.0 as usize);
let interests = Interest::READABLE;
let timeout = Duration::from_micros(config.network.poll_timeout);
@ -89,7 +84,6 @@ pub fn run_socket_thread(
if event.is_readable(){
read_responses(
thread_id,
ip_version,
&socket,
&mut buffer,
&mut local_state,
@ -132,14 +126,13 @@ pub fn run_socket_thread(
fn read_responses(
thread_id: ThreadId,
ip_version: IpVersion,
socket: &UdpSocket,
buffer: &mut [u8],
ls: &mut SocketWorkerLocalStatistics,
responses: &mut Vec<(ThreadId, Response)>,
){
while let Ok(amt) = socket.recv(buffer) {
match response_from_bytes(&buffer[0..amt], ip_version){
match response_from_bytes(&buffer[0..amt]){
Ok(response) => {
match response {
Response::Announce(ref r) => {