[INFO] cloning repository https://github.com/samokhvalovrs/twamp_reflector [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/samokhvalovrs/twamp_reflector" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsamokhvalovrs%2Ftwamp_reflector", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsamokhvalovrs%2Ftwamp_reflector'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 1e7a6809dda740a5b79545bf4187564f55861f15 [INFO] building samokhvalovrs/twamp_reflector against master#44f415c1d617ebc7b931a243b7b321ef8a6ca47c for pr-142134-abi-ast-error [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsamokhvalovrs%2Ftwamp_reflector" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/samokhvalovrs/twamp_reflector on toolchain 44f415c1d617ebc7b931a243b7b321ef8a6ca47c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/samokhvalovrs/twamp_reflector [INFO] finished tweaking git repo https://github.com/samokhvalovrs/twamp_reflector [INFO] tweaked toml for git repo https://github.com/samokhvalovrs/twamp_reflector written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/samokhvalovrs/twamp_reflector already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d6fed6b7a34091bcafe2d8c60322c263a3d9d553a50479b702ce28bb3a2a65c7 [INFO] running `Command { std: "docker" "start" "-a" "d6fed6b7a34091bcafe2d8c60322c263a3d9d553a50479b702ce28bb3a2a65c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d6fed6b7a34091bcafe2d8c60322c263a3d9d553a50479b702ce28bb3a2a65c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d6fed6b7a34091bcafe2d8c60322c263a3d9d553a50479b702ce28bb3a2a65c7", kill_on_drop: false }` [INFO] [stdout] d6fed6b7a34091bcafe2d8c60322c263a3d9d553a50479b702ce28bb3a2a65c7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 11b1a2d0cf5db147930d42f4b63402deba29e66b5a77bd78e2f31a9951a31374 [INFO] running `Command { std: "docker" "start" "-a" "11b1a2d0cf5db147930d42f4b63402deba29e66b5a77bd78e2f31a9951a31374", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling libc v0.2.142 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling iana-time-zone v0.1.56 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling memoffset v0.7.1 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling time v0.1.45 [INFO] [stderr] Compiling nix v0.26.2 [INFO] [stderr] Compiling chrono v0.4.24 [INFO] [stderr] Compiling twamp_reflector v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Error` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fmt::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::IoSliceMut` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::IoSliceMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::stdout` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::stdout; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::net::SocketAddr` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::net::SocketAddr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::fd::AsFd` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::os::fd::AsFd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr::null` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::ptr::null; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/main.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/main.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::escape_default` [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::ascii::escape_default; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::cmsg_space` [INFO] [stdout] --> src/main.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use nix::cmsg_space; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::libc::getsockopt` [INFO] [stdout] --> src/main.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use nix::libc::getsockopt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::sys::socket::sockopt::Ipv6TClass` [INFO] [stdout] --> src/main.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use nix::sys::socket::sockopt::Ipv6TClass; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::sys::socket::sockopt::Ipv6Ttl` [INFO] [stdout] --> src/main.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | use nix::sys::socket::sockopt::Ipv6Ttl; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::sys::time::*` [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use nix::sys::time::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::sys::uio::IoVec` [INFO] [stdout] --> src/main.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use nix::sys::uio::IoVec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::*` [INFO] [stdout] --> src/main.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::time::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:133:13 [INFO] [stdout] | [INFO] [stdout] 133 | offset += (std::mem::size_of::() * 2); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 133 - offset += (std::mem::size_of::() * 2); [INFO] [stdout] 133 + offset += std::mem::size_of::() * 2; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:161:10 [INFO] [stdout] | [INFO] [stdout] 161 | ret += (std::mem::size_of::() * 2); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 161 - ret += (std::mem::size_of::() * 2); [INFO] [stdout] 161 + ret += std::mem::size_of::() * 2; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `nix::sys::uio::IoVec`: `IoVec` is no longer used in the public interface, use `IoSlice` or `IoSliceMut` instead [INFO] [stdout] --> src/main.rs:30:20 [INFO] [stdout] | [INFO] [stdout] 30 | use nix::sys::uio::IoVec; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:822:3 [INFO] [stdout] | [INFO] [stdout] 800 | / loop { [INFO] [stdout] 801 | | let (_size, addr) = match sock.recv_from(&mut recv_buf) { [INFO] [stdout] 802 | | Ok((s,a)) => (s,a), [INFO] [stdout] 803 | | Err(err) => return Result::Err(err.to_string()), [INFO] [stdout] ... | [INFO] [stdout] 820 | | } [INFO] [stdout] | |___- any code following this expression is unreachable [INFO] [stdout] 821 | [INFO] [stdout] 822 | Result::Ok(0) [INFO] [stdout] | ^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/main.rs:951:3 [INFO] [stdout] | [INFO] [stdout] 926 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 951 | / unsafe { [INFO] [stdout] 952 | | LibcSocketServer(3); [INFO] [stdout] 953 | | } [INFO] [stdout] | |___^ unreachable statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recv_buffer` [INFO] [stdout] --> src/main.rs:119:28 [INFO] [stdout] | [INFO] [stdout] 119 | fn parse_reflected_packet( recv_buffer: &[u8], recved: usize ) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recv_buffer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recved` [INFO] [stdout] --> src/main.rs:119:48 [INFO] [stdout] | [INFO] [stdout] 119 | fn parse_reflected_packet( recv_buffer: &[u8], recved: usize ) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_recved` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `offset` is never read [INFO] [stdout] --> src/main.rs:137:3 [INFO] [stdout] | [INFO] [stdout] 137 | offset += std::mem::size_of::(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/main.rs:280:14 [INFO] [stdout] | [INFO] [stdout] 280 | Err( error ) => break, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:290:11 [INFO] [stdout] | [INFO] [stdout] 290 | Err(e) => return Result::Err("failed to get ip scr".to_string() ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:295:11 [INFO] [stdout] | [INFO] [stdout] 295 | Err(e) => return Result::Err("failed to get scr port".to_string() ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:301:11 [INFO] [stdout] | [INFO] [stdout] 301 | Err(e) => return Result::Err("failed to get scr flow".to_string() ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:306:11 [INFO] [stdout] | [INFO] [stdout] 306 | Err(e) => return Result::Err("failed to get scr scope".to_string() ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recv_buffer` [INFO] [stdout] --> src/main.rs:791:28 [INFO] [stdout] | [INFO] [stdout] 791 | fn twamp_parse_udp_packet( recv_buffer: &[u8], send_buffer: &mut [u8], recv_count: usize ) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recv_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `send_buffer` [INFO] [stdout] --> src/main.rs:791:48 [INFO] [stdout] | [INFO] [stdout] 791 | fn twamp_parse_udp_packet( recv_buffer: &[u8], send_buffer: &mut [u8], recv_count: usize ) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_send_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recv_count` [INFO] [stdout] --> src/main.rs:791:72 [INFO] [stdout] | [INFO] [stdout] 791 | fn twamp_parse_udp_packet( recv_buffer: &[u8], send_buffer: &mut [u8], recv_count: usize ) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recv_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `sended` is never read [INFO] [stdout] --> src/main.rs:837:11 [INFO] [stdout] | [INFO] [stdout] 837 | let mut sended: usize = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:834:7 [INFO] [stdout] | [INFO] [stdout] 834 | let mut send_buf: [u8; 1024] = [0u8; 1024]; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:836:7 [INFO] [stdout] | [INFO] [stdout] 836 | let mut twamp_packet_size: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/main.rs:876:7 [INFO] [stdout] | [INFO] [stdout] 876 | let t: TwampTS = TwampTS { integer: (0), fractional: (0) }; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `packet` [INFO] [stdout] --> src/main.rs:976:11 [INFO] [stdout] | [INFO] [stdout] 976 | let mut packet: [u8; 1024] = [0u8; 1024]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_packet` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:905:7 [INFO] [stdout] | [INFO] [stdout] 905 | let mut port: u16 = 9999; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `sender_offset` is never used [INFO] [stdout] --> src/main.rs:105:7 [INFO] [stdout] | [INFO] [stdout] 105 | const sender_offset: usize = 14; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `SeqNum`, `ReflectorTS`, `RecvByReflectorTS`, `RecvedTTL`, `SenderSeqNum`, and `SenderTS` are never read [INFO] [stdout] --> src/main.rs:110:3 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct ReflectedPacket { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 110 | SeqNum: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 111 | ReflectorTS: TwampTS, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 112 | RecvByReflectorTS: TwampTS, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 113 | RecvedTTL: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 114 | SenderSeqNum: u32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 115 | SenderTS: TwampTS, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_reflected_packet` is never used [INFO] [stdout] --> src/main.rs:119:4 [INFO] [stdout] | [INFO] [stdout] 119 | fn parse_reflected_packet( recv_buffer: &[u8], recved: usize ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fill_test_packet` is never used [INFO] [stdout] --> src/main.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn fill_test_packet( send_buffer: &mut [u8], seq_num: u32 ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REFWAIT` is never used [INFO] [stdout] --> src/main.rs:740:7 [INFO] [stdout] | [INFO] [stdout] 740 | const REFWAIT:u32 = 900; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `senders` is never read [INFO] [stdout] --> src/main.rs:743:3 [INFO] [stdout] | [INFO] [stdout] 742 | pub struct TwampSenders { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 743 | senders: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `ip_addr`, `ip_port`, `socket`, `max_clients`, and `work` are never read [INFO] [stdout] --> src/main.rs:754:3 [INFO] [stdout] | [INFO] [stdout] 753 | pub struct TwampReflector { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 754 | ip_addr : net::Ipv6Addr, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 755 | ip_port: net::SocketAddrV6, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 756 | socket: net::UdpSocket, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 757 | max_clients: i16, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 758 | work: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `sended_offset` is never used [INFO] [stdout] --> src/main.rs:789:7 [INFO] [stdout] | [INFO] [stdout] 789 | const sended_offset:usize = 24; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `twamp_parse_udp_packet` is never used [INFO] [stdout] --> src/main.rs:791:4 [INFO] [stdout] | [INFO] [stdout] 791 | fn twamp_parse_udp_packet( recv_buffer: &[u8], send_buffer: &mut [u8], recv_count: usize ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `twamp_read` is never used [INFO] [stdout] --> src/main.rs:796:4 [INFO] [stdout] | [INFO] [stdout] 796 | fn twamp_read( sock: &mut UdpSocket) -> Result{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `twamp_client` is never used [INFO] [stdout] --> src/main.rs:825:4 [INFO] [stdout] | [INFO] [stdout] 825 | fn twamp_client(port: &u16) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `sender_offset` should have an upper case name [INFO] [stdout] --> src/main.rs:105:7 [INFO] [stdout] | [INFO] [stdout] 105 | const sender_offset: usize = 14; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `SENDER_OFFSET` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ErrorEstimate` should have an upper case name [INFO] [stdout] --> src/main.rs:106:7 [INFO] [stdout] | [INFO] [stdout] 106 | const ErrorEstimate: u16 = 0x8001; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `ERROR_ESTIMATE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `SeqNum` should have a snake case name [INFO] [stdout] --> src/main.rs:110:3 [INFO] [stdout] | [INFO] [stdout] 110 | SeqNum: u32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `seq_num` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `ReflectorTS` should have a snake case name [INFO] [stdout] --> src/main.rs:111:3 [INFO] [stdout] | [INFO] [stdout] 111 | ReflectorTS: TwampTS, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `reflector_ts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `RecvByReflectorTS` should have a snake case name [INFO] [stdout] --> src/main.rs:112:3 [INFO] [stdout] | [INFO] [stdout] 112 | RecvByReflectorTS: TwampTS, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `recv_by_reflector_ts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `RecvedTTL` should have a snake case name [INFO] [stdout] --> src/main.rs:113:3 [INFO] [stdout] | [INFO] [stdout] 113 | RecvedTTL: u8, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `recved_ttl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `SenderSeqNum` should have a snake case name [INFO] [stdout] --> src/main.rs:114:3 [INFO] [stdout] | [INFO] [stdout] 114 | SenderSeqNum: u32, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `sender_seq_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `SenderTS` should have a snake case name [INFO] [stdout] --> src/main.rs:115:3 [INFO] [stdout] | [INFO] [stdout] 115 | SenderTS: TwampTS, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `sender_ts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `TwampReflector` should have a snake case name [INFO] [stdout] --> src/main.rs:199:11 [INFO] [stdout] | [INFO] [stdout] 199 | unsafe fn TwampReflector( udp_sock: UdpSocket, TraffClass: Option ) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `twamp_reflector` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `TraffClass` should have a snake case name [INFO] [stdout] --> src/main.rs:199:48 [INFO] [stdout] | [INFO] [stdout] 199 | unsafe fn TwampReflector( udp_sock: UdpSocket, TraffClass: Option ) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `traff_class` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `LibcSocketServer` should have a snake case name [INFO] [stdout] --> src/main.rs:333:11 [INFO] [stdout] | [INFO] [stdout] 333 | unsafe fn LibcSocketServer(tc: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `libc_socket_server` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TwampPort` should have an upper case name [INFO] [stdout] --> src/main.rs:739:7 [INFO] [stdout] | [INFO] [stdout] 739 | const TwampPort: u16 = 862; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `TWAMP_PORT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `sended_offset` should have an upper case name [INFO] [stdout] --> src/main.rs:789:7 [INFO] [stdout] | [INFO] [stdout] 789 | const sended_offset:usize = 24; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `SENDED_OFFSET` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:813:5 [INFO] [stdout] | [INFO] [stdout] 813 | sock.set_ttl(255); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 813 | let _ = sock.set_ttl(255); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:864:7 [INFO] [stdout] | [INFO] [stdout] 864 | write!( visible, "0x{:02x} ", b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.95s [INFO] running `Command { std: "docker" "inspect" "11b1a2d0cf5db147930d42f4b63402deba29e66b5a77bd78e2f31a9951a31374", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "11b1a2d0cf5db147930d42f4b63402deba29e66b5a77bd78e2f31a9951a31374", kill_on_drop: false }` [INFO] [stdout] 11b1a2d0cf5db147930d42f4b63402deba29e66b5a77bd78e2f31a9951a31374 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9a45a407870a1648fe2085be7e2d37b30b6ea707e0005f3d809a1d9b900dbb21 [INFO] running `Command { std: "docker" "start" "-a" "9a45a407870a1648fe2085be7e2d37b30b6ea707e0005f3d809a1d9b900dbb21", kill_on_drop: false }` [INFO] [stderr] Compiling twamp_reflector v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fmt::Display` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Display; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Error` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fmt::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::IoSliceMut` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::IoSliceMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::stdout` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::stdout; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::net::SocketAddr` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::net::SocketAddr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::fd::AsFd` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::os::fd::AsFd; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr::null` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::ptr::null; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/main.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/main.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ascii::escape_default` [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::ascii::escape_default; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::cmsg_space` [INFO] [stdout] --> src/main.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use nix::cmsg_space; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::libc::getsockopt` [INFO] [stdout] --> src/main.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use nix::libc::getsockopt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::sys::socket::sockopt::Ipv6TClass` [INFO] [stdout] --> src/main.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use nix::sys::socket::sockopt::Ipv6TClass; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::sys::socket::sockopt::Ipv6Ttl` [INFO] [stdout] --> src/main.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | use nix::sys::socket::sockopt::Ipv6Ttl; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::sys::time::*` [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use nix::sys::time::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `nix::sys::uio::IoVec` [INFO] [stdout] --> src/main.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use nix::sys::uio::IoVec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::*` [INFO] [stdout] --> src/main.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::time::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:133:13 [INFO] [stdout] | [INFO] [stdout] 133 | offset += (std::mem::size_of::() * 2); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 133 - offset += (std::mem::size_of::() * 2); [INFO] [stdout] 133 + offset += std::mem::size_of::() * 2; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:161:10 [INFO] [stdout] | [INFO] [stdout] 161 | ret += (std::mem::size_of::() * 2); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 161 - ret += (std::mem::size_of::() * 2); [INFO] [stdout] 161 + ret += std::mem::size_of::() * 2; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `nix::sys::uio::IoVec`: `IoVec` is no longer used in the public interface, use `IoSlice` or `IoSliceMut` instead [INFO] [stdout] --> src/main.rs:30:20 [INFO] [stdout] | [INFO] [stdout] 30 | use nix::sys::uio::IoVec; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:822:3 [INFO] [stdout] | [INFO] [stdout] 800 | / loop { [INFO] [stdout] 801 | | let (_size, addr) = match sock.recv_from(&mut recv_buf) { [INFO] [stdout] 802 | | Ok((s,a)) => (s,a), [INFO] [stdout] 803 | | Err(err) => return Result::Err(err.to_string()), [INFO] [stdout] ... | [INFO] [stdout] 820 | | } [INFO] [stdout] | |___- any code following this expression is unreachable [INFO] [stdout] 821 | [INFO] [stdout] 822 | Result::Ok(0) [INFO] [stdout] | ^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/main.rs:951:3 [INFO] [stdout] | [INFO] [stdout] 926 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 951 | / unsafe { [INFO] [stdout] 952 | | LibcSocketServer(3); [INFO] [stdout] 953 | | } [INFO] [stdout] | |___^ unreachable statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recv_buffer` [INFO] [stdout] --> src/main.rs:119:28 [INFO] [stdout] | [INFO] [stdout] 119 | fn parse_reflected_packet( recv_buffer: &[u8], recved: usize ) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recv_buffer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recved` [INFO] [stdout] --> src/main.rs:119:48 [INFO] [stdout] | [INFO] [stdout] 119 | fn parse_reflected_packet( recv_buffer: &[u8], recved: usize ) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_recved` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `offset` is never read [INFO] [stdout] --> src/main.rs:137:3 [INFO] [stdout] | [INFO] [stdout] 137 | offset += std::mem::size_of::(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/main.rs:280:14 [INFO] [stdout] | [INFO] [stdout] 280 | Err( error ) => break, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:290:11 [INFO] [stdout] | [INFO] [stdout] 290 | Err(e) => return Result::Err("failed to get ip scr".to_string() ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:295:11 [INFO] [stdout] | [INFO] [stdout] 295 | Err(e) => return Result::Err("failed to get scr port".to_string() ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:301:11 [INFO] [stdout] | [INFO] [stdout] 301 | Err(e) => return Result::Err("failed to get scr flow".to_string() ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:306:11 [INFO] [stdout] | [INFO] [stdout] 306 | Err(e) => return Result::Err("failed to get scr scope".to_string() ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recv_buffer` [INFO] [stdout] --> src/main.rs:791:28 [INFO] [stdout] | [INFO] [stdout] 791 | fn twamp_parse_udp_packet( recv_buffer: &[u8], send_buffer: &mut [u8], recv_count: usize ) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recv_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `send_buffer` [INFO] [stdout] --> src/main.rs:791:48 [INFO] [stdout] | [INFO] [stdout] 791 | fn twamp_parse_udp_packet( recv_buffer: &[u8], send_buffer: &mut [u8], recv_count: usize ) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_send_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recv_count` [INFO] [stdout] --> src/main.rs:791:72 [INFO] [stdout] | [INFO] [stdout] 791 | fn twamp_parse_udp_packet( recv_buffer: &[u8], send_buffer: &mut [u8], recv_count: usize ) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recv_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `sended` is never read [INFO] [stdout] --> src/main.rs:837:11 [INFO] [stdout] | [INFO] [stdout] 837 | let mut sended: usize = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:834:7 [INFO] [stdout] | [INFO] [stdout] 834 | let mut send_buf: [u8; 1024] = [0u8; 1024]; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:836:7 [INFO] [stdout] | [INFO] [stdout] 836 | let mut twamp_packet_size: usize = 0; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/main.rs:876:7 [INFO] [stdout] | [INFO] [stdout] 876 | let t: TwampTS = TwampTS { integer: (0), fractional: (0) }; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `packet` [INFO] [stdout] --> src/main.rs:976:11 [INFO] [stdout] | [INFO] [stdout] 976 | let mut packet: [u8; 1024] = [0u8; 1024]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_packet` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:905:7 [INFO] [stdout] | [INFO] [stdout] 905 | let mut port: u16 = 9999; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `sender_offset` is never used [INFO] [stdout] --> src/main.rs:105:7 [INFO] [stdout] | [INFO] [stdout] 105 | const sender_offset: usize = 14; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `SeqNum`, `ReflectorTS`, `RecvByReflectorTS`, `RecvedTTL`, `SenderSeqNum`, and `SenderTS` are never read [INFO] [stdout] --> src/main.rs:110:3 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct ReflectedPacket { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 110 | SeqNum: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 111 | ReflectorTS: TwampTS, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 112 | RecvByReflectorTS: TwampTS, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 113 | RecvedTTL: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 114 | SenderSeqNum: u32, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 115 | SenderTS: TwampTS, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_reflected_packet` is never used [INFO] [stdout] --> src/main.rs:119:4 [INFO] [stdout] | [INFO] [stdout] 119 | fn parse_reflected_packet( recv_buffer: &[u8], recved: usize ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fill_test_packet` is never used [INFO] [stdout] --> src/main.rs:123:4 [INFO] [stdout] | [INFO] [stdout] 123 | fn fill_test_packet( send_buffer: &mut [u8], seq_num: u32 ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REFWAIT` is never used [INFO] [stdout] --> src/main.rs:740:7 [INFO] [stdout] | [INFO] [stdout] 740 | const REFWAIT:u32 = 900; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `senders` is never read [INFO] [stdout] --> src/main.rs:743:3 [INFO] [stdout] | [INFO] [stdout] 742 | pub struct TwampSenders { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 743 | senders: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `ip_addr`, `ip_port`, `socket`, `max_clients`, and `work` are never read [INFO] [stdout] --> src/main.rs:754:3 [INFO] [stdout] | [INFO] [stdout] 753 | pub struct TwampReflector { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 754 | ip_addr : net::Ipv6Addr, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 755 | ip_port: net::SocketAddrV6, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 756 | socket: net::UdpSocket, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 757 | max_clients: i16, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 758 | work: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `sended_offset` is never used [INFO] [stdout] --> src/main.rs:789:7 [INFO] [stdout] | [INFO] [stdout] 789 | const sended_offset:usize = 24; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `twamp_parse_udp_packet` is never used [INFO] [stdout] --> src/main.rs:791:4 [INFO] [stdout] | [INFO] [stdout] 791 | fn twamp_parse_udp_packet( recv_buffer: &[u8], send_buffer: &mut [u8], recv_count: usize ) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `twamp_read` is never used [INFO] [stdout] --> src/main.rs:796:4 [INFO] [stdout] | [INFO] [stdout] 796 | fn twamp_read( sock: &mut UdpSocket) -> Result{ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `twamp_client` is never used [INFO] [stdout] --> src/main.rs:825:4 [INFO] [stdout] | [INFO] [stdout] 825 | fn twamp_client(port: &u16) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `sender_offset` should have an upper case name [INFO] [stdout] --> src/main.rs:105:7 [INFO] [stdout] | [INFO] [stdout] 105 | const sender_offset: usize = 14; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `SENDER_OFFSET` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ErrorEstimate` should have an upper case name [INFO] [stdout] --> src/main.rs:106:7 [INFO] [stdout] | [INFO] [stdout] 106 | const ErrorEstimate: u16 = 0x8001; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `ERROR_ESTIMATE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `SeqNum` should have a snake case name [INFO] [stdout] --> src/main.rs:110:3 [INFO] [stdout] | [INFO] [stdout] 110 | SeqNum: u32, [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `seq_num` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `ReflectorTS` should have a snake case name [INFO] [stdout] --> src/main.rs:111:3 [INFO] [stdout] | [INFO] [stdout] 111 | ReflectorTS: TwampTS, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `reflector_ts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `RecvByReflectorTS` should have a snake case name [INFO] [stdout] --> src/main.rs:112:3 [INFO] [stdout] | [INFO] [stdout] 112 | RecvByReflectorTS: TwampTS, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `recv_by_reflector_ts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `RecvedTTL` should have a snake case name [INFO] [stdout] --> src/main.rs:113:3 [INFO] [stdout] | [INFO] [stdout] 113 | RecvedTTL: u8, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `recved_ttl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `SenderSeqNum` should have a snake case name [INFO] [stdout] --> src/main.rs:114:3 [INFO] [stdout] | [INFO] [stdout] 114 | SenderSeqNum: u32, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `sender_seq_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `SenderTS` should have a snake case name [INFO] [stdout] --> src/main.rs:115:3 [INFO] [stdout] | [INFO] [stdout] 115 | SenderTS: TwampTS, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `sender_ts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `TwampReflector` should have a snake case name [INFO] [stdout] --> src/main.rs:199:11 [INFO] [stdout] | [INFO] [stdout] 199 | unsafe fn TwampReflector( udp_sock: UdpSocket, TraffClass: Option ) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `twamp_reflector` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `TraffClass` should have a snake case name [INFO] [stdout] --> src/main.rs:199:48 [INFO] [stdout] | [INFO] [stdout] 199 | unsafe fn TwampReflector( udp_sock: UdpSocket, TraffClass: Option ) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `traff_class` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `LibcSocketServer` should have a snake case name [INFO] [stdout] --> src/main.rs:333:11 [INFO] [stdout] | [INFO] [stdout] 333 | unsafe fn LibcSocketServer(tc: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `libc_socket_server` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TwampPort` should have an upper case name [INFO] [stdout] --> src/main.rs:739:7 [INFO] [stdout] | [INFO] [stdout] 739 | const TwampPort: u16 = 862; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `TWAMP_PORT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `sended_offset` should have an upper case name [INFO] [stdout] --> src/main.rs:789:7 [INFO] [stdout] | [INFO] [stdout] 789 | const sended_offset:usize = 24; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `SENDED_OFFSET` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:813:5 [INFO] [stdout] | [INFO] [stdout] 813 | sock.set_ttl(255); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 813 | let _ = sock.set_ttl(255); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:864:7 [INFO] [stdout] | [INFO] [stdout] 864 | write!( visible, "0x{:02x} ", b); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: linking with `cc` failed: exit status: 1 [INFO] [stdout] | [INFO] [stdout] = note: "cc" "-m64" "/tmp/rustcI9zlIW/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libtest-*,libgetopts-*,libunicode_width-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/debug/deps/{libnix-37026990718d59ce.rlib,libmemoffset-c567c6e77c2f40a9.rlib,libstatic_assertions-9e16f6c4863825ef.rlib,libpin_utils-ea4b982528073b6b.rlib,libbitflags-def4ff224bdcd924.rlib,libcfg_if-02ffc4ff30a29427.rlib,libchrono-8d9af212c94bb919.rlib,libiana_time_zone-739947cf8ba98617.rlib,libnum_integer-b8360c367d1a9a2d.rlib,libnum_traits-f6d40fb825abd658.rlib,libtime-20a43f98030a05b6.rlib,liblibc-e1608603b56312f9.rlib}.rlib" "/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,libcfg_if-*,liblibc-*,liballoc-*,librustc_std_workspace_core-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/tmp/rustcI9zlIW/raw-dylibs" "-B/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,-znostart-stop-gc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/twamp_reflector-50a7f515d04c964a" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs" [INFO] [stdout] = note: some arguments are omitted. use `--verbose` to show all linker arguments [INFO] [stdout] = note: PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace. [INFO] [stdout] collect2: fatal error: ld terminated with signal 7 [Bus error], core dumped [INFO] [stdout] compilation terminated. [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `twamp_reflector` (bin "twamp_reflector" test) due to 1 previous error; 66 warnings emitted [INFO] running `Command { std: "docker" "inspect" "9a45a407870a1648fe2085be7e2d37b30b6ea707e0005f3d809a1d9b900dbb21", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9a45a407870a1648fe2085be7e2d37b30b6ea707e0005f3d809a1d9b900dbb21", kill_on_drop: false }` [INFO] [stdout] 9a45a407870a1648fe2085be7e2d37b30b6ea707e0005f3d809a1d9b900dbb21