[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] checking samokhvalovrs/twamp_reflector against try#3a4cb0edb4040379c037e06efeb5409e44be7b77 for pr-146377
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsamokhvalovrs%2Ftwamp_reflector" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[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-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/samokhvalovrs/twamp_reflector on toolchain 3a4cb0edb4040379c037e06efeb5409e44be7b77
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3a4cb0edb4040379c037e06efeb5409e44be7b77" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[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" "+3a4cb0edb4040379c037e06efeb5409e44be7b77" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.86
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.86
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.86
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.86
[INFO] [stderr]   Downloaded js-sys v0.3.63
[INFO] [stderr]   Downloaded bumpalo v3.12.2
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.86
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+3a4cb0edb4040379c037e06efeb5409e44be7b77" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a67fe87b01233ed337238518dfe06619f531236c9437a5409ca6732c5f3a821c
[INFO] running `Command { std: "docker" "start" "-a" "a67fe87b01233ed337238518dfe06619f531236c9437a5409ca6732c5f3a821c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a67fe87b01233ed337238518dfe06619f531236c9437a5409ca6732c5f3a821c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a67fe87b01233ed337238518dfe06619f531236c9437a5409ca6732c5f3a821c", kill_on_drop: false }`
[INFO] [stdout] a67fe87b01233ed337238518dfe06619f531236c9437a5409ca6732c5f3a821c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+3a4cb0edb4040379c037e06efeb5409e44be7b77" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f550c263b4ef30801c61a1703cbce2afbf75675e1a82b67b48fbfaa0e42f7237
[INFO] running `Command { std: "docker" "start" "-a" "f550c263b4ef30801c61a1703cbce2afbf75675e1a82b67b48fbfaa0e42f7237", kill_on_drop: false }`
[INFO] [stderr]     Checking num-traits v0.2.15
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking memoffset v0.7.1
[INFO] [stderr]     Checking nix v0.26.2
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]     Checking chrono v0.4.24
[INFO] [stderr]     Checking 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)]` (part of `#[warn(unused)]`) 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::<u32>() * 2);
[INFO] [stdout]     |             ^                              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 133 -   offset += (std::mem::size_of::<u32>() * 2);
[INFO] [stdout] 133 +   offset += std::mem::size_of::<u32>() * 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::<u32>() * 2);
[INFO] [stdout]     |          ^                              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 161 -   ret += (std::mem::size_of::<u32>() * 2);
[INFO] [stdout] 161 +   ret += std::mem::size_of::<u32>() * 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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::<u16>();
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) 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 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)]` (part of `#[warn(unused)]`) 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::<u32>() * 2);
[INFO] [stdout]     |             ^                              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 133 -   offset += (std::mem::size_of::<u32>() * 2);
[INFO] [stdout] 133 +   offset += std::mem::size_of::<u32>() * 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::<u32>() * 2);
[INFO] [stdout]     |          ^                              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 161 -   ret += (std::mem::size_of::<u32>() * 2);
[INFO] [stdout] 161 +   ret += std::mem::size_of::<u32>() * 2 ;
[INFO] [stdout]     |
[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: 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)]` (part of `#[warn(unused)]`) 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: value assigned to `sended` is never read
[INFO] [stdout]    --> src/main.rs:837:27
[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: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: 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: 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)]` (part of `#[warn(unused)]`) 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<net::UdpSocket>,
[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<u32, String>{
[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)]` (part of `#[warn(nonstandard_style)]`) 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]     |       ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 106 - const ErrorEstimate: u16 = 0x8001;
[INFO] [stdout] 106 + const ERROR_ESTIMATE: u16 = 0x8001;
[INFO] [stdout]     |
[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)]` (part of `#[warn(nonstandard_style)]`) 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<i32> ) -> 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<i32> ) -> 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]     |       ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 739 - const TwampPort: u16 = 862;
[INFO] [stdout] 739 + const TWAMP_PORT: u16 = 862;
[INFO] [stdout]     |
[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: 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: 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)]` (part of `#[warn(unused)]`) 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] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 864 |       let _ = write!( visible, "0x{:02x} ", b);
[INFO] [stdout]     |       +++++++
[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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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::<u16>();
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) 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: 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)]` (part of `#[warn(unused)]`) 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: value assigned to `sended` is never read
[INFO] [stdout]    --> src/main.rs:837:27
[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: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: 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: 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)]` (part of `#[warn(unused)]`) 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<net::UdpSocket>,
[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<u32, String>{
[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)]` (part of `#[warn(nonstandard_style)]`) 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]     |       ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 106 - const ErrorEstimate: u16 = 0x8001;
[INFO] [stdout] 106 + const ERROR_ESTIMATE: u16 = 0x8001;
[INFO] [stdout]     |
[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)]` (part of `#[warn(nonstandard_style)]`) 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<i32> ) -> 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<i32> ) -> 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]     |       ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 739 - const TwampPort: u16 = 862;
[INFO] [stdout] 739 + const TWAMP_PORT: u16 = 862;
[INFO] [stdout]     |
[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)]` (part of `#[warn(unused)]`) 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] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 864 |       let _ = write!( visible, "0x{:02x} ", b);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.22s
[INFO] running `Command { std: "docker" "inspect" "f550c263b4ef30801c61a1703cbce2afbf75675e1a82b67b48fbfaa0e42f7237", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f550c263b4ef30801c61a1703cbce2afbf75675e1a82b67b48fbfaa0e42f7237", kill_on_drop: false }`
[INFO] [stdout] f550c263b4ef30801c61a1703cbce2afbf75675e1a82b67b48fbfaa0e42f7237
