Skip to content

Commit c3ed4e0

Browse files
Connect sockets during tests
1 parent c157570 commit c3ed4e0

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

tests/common/core.rs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -111,12 +111,25 @@ fn spawn_udp_echo_server_impl(
111111
let local = sock.local_addr()?;
112112
let handle = thread::spawn(move || {
113113
let mut buf = [0u8; 65535];
114+
let mut connected = false;
114115
loop {
115-
match sock.recv_from(&mut buf) {
116-
Ok((n, src)) => {
117-
let _ = sock.send_to(&buf[..n], src);
116+
if !connected {
117+
match sock.recv_from(&mut buf) {
118+
Ok((n, src)) => {
119+
if sock.connect(src).is_ok() {
120+
connected = true;
121+
let _ = sock.send(&buf[..n]);
122+
}
123+
}
124+
Err(_) => {}
125+
}
126+
} else {
127+
match sock.recv(&mut buf) {
128+
Ok(n) => {
129+
let _ = sock.send(&buf[..n]);
130+
}
131+
Err(_) => {}
118132
}
119-
Err(_) => {}
120133
}
121134
}
122135
});

0 commit comments

Comments
 (0)