[INFO] cloning repository https://github.com/Hagi013/toy-container [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Hagi013/toy-container" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHagi013%2Ftoy-container", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHagi013%2Ftoy-container'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c00a54a4836c9fbf2581f4a360cb22a1dad29b1e [INFO] checking Hagi013/toy-container against master#a609fb45efad59dfd459c76e50899be9f0583b5a for pr-80579 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHagi013%2Ftoy-container" "/workspace/builds/worker-0/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Hagi013/toy-container on toolchain a609fb45efad59dfd459c76e50899be9f0583b5a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Hagi013/toy-container [INFO] finished tweaking git repo https://github.com/Hagi013/toy-container [INFO] tweaked toml for git repo https://github.com/Hagi013/toy-container written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/Hagi013/toy-container already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "rustops/crates-build-env@sha256:c8ac004eab7d63a0ad09a2dde3d3353ba464f767bee4de425dc8f74c46a1905e" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3076f89050717798332e2350eb45a965fd395b4a686780441798c76bcdad745c [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "3076f89050717798332e2350eb45a965fd395b4a686780441798c76bcdad745c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3076f89050717798332e2350eb45a965fd395b4a686780441798c76bcdad745c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3076f89050717798332e2350eb45a965fd395b4a686780441798c76bcdad745c", kill_on_drop: false }` [INFO] [stdout] 3076f89050717798332e2350eb45a965fd395b4a686780441798c76bcdad745c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:c8ac004eab7d63a0ad09a2dde3d3353ba464f767bee4de425dc8f74c46a1905e" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e6f0949cbb7848461d0868b29d44a213099e17c1ff7cade5aad8e626dbbf4bb8 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "e6f0949cbb7848461d0868b29d44a213099e17c1ff7cade5aad8e626dbbf4bb8", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling anyhow v1.0.31 [INFO] [stderr] Compiling nix v0.17.0 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking toy-container v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/print_emulator.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/print_emulator.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Pid`, `chdir`, `chroot`, `mkdir`, `pivot_root`, `sethostname` [INFO] [stdout] --> src/main.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^ ^^^^^^^^^^^ ^^^^^^ ^^^^^ ^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/print_emulator.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | (count / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/print_emulator.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/print_emulator.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/print_emulator.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | (count / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Stderr` [INFO] [stdout] --> src/execution_multi_trace_1.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Child` [INFO] [stdout] --> src/execution_multi_trace_1.rs:3:36 [INFO] [stdout] | [INFO] [stdout] 3 | use std::process::{Command, Stdio, Child}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `File`, `set_permissions` [INFO] [stdout] --> src/execution_multi_trace_1.rs:5:37 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir, OpenOptions, File}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `OpenOptionsExt`, `PermissionsExt`, `symlink` [INFO] [stdout] --> src/execution_multi_trace_1.rs:6:25 [INFO] [stdout] | [INFO] [stdout] 6 | use std::os::unix::fs::{symlink, PermissionsExt, OpenOptionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AsRawFd`, `FromRawFd` [INFO] [stdout] --> src/execution_multi_trace_1.rs:7:25 [INFO] [stdout] | [INFO] [stdout] 7 | use std::os::unix::io::{AsRawFd, FromRawFd}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/execution_multi_trace_1.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/execution_multi_trace_1.rs:10:45 [INFO] [stdout] | [INFO] [stdout] 10 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/execution_multi_trace_1.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLockReadGuard` [INFO] [stdout] --> src/execution_multi_trace_1.rs:19:25 [INFO] [stdout] | [INFO] [stdout] 19 | use std::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard, Arc}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/execution_multi_trace_1.rs:567:9 [INFO] [stdout] | [INFO] [stdout] 567 | (count / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/tracer_1.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 214 | (count / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/execution_multi_trace_1.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 134 | / loop { [INFO] [stdout] 135 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 136 | | // spawn_sh("ls -a", self_pid); [INFO] [stdout] 137 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 138 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/tracer_1.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 214 | (count / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/mirror.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/mirror.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/mirror.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | (count / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Stderr` [INFO] [stdout] --> src/execution_trace_2.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Pid`, `chdir`, `chroot`, `mkdir`, `pivot_root`, `sethostname` [INFO] [stdout] --> src/main.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^ ^^^^^^^^^^^ ^^^^^^ ^^^^^ ^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `File`, `set_permissions` [INFO] [stdout] --> src/execution_trace_2.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir, OpenOptions, File}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `OpenOptionsExt`, `PermissionsExt`, `symlink` [INFO] [stdout] --> src/execution_trace_2.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt, OpenOptionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AsRawFd`, `FromRawFd` [INFO] [stdout] --> src/execution_trace_2.rs:6:25 [INFO] [stdout] | [INFO] [stdout] 6 | use std::os::unix::io::{AsRawFd, FromRawFd}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/execution_trace_2.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/execution_trace_2.rs:9:45 [INFO] [stdout] | [INFO] [stdout] 9 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/execution_trace_2.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLockReadGuard` [INFO] [stdout] --> src/execution_trace_2.rs:18:25 [INFO] [stdout] | [INFO] [stdout] 18 | use std::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard, Arc}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/execution_trace_2.rs:395:21 [INFO] [stdout] | [INFO] [stdout] 395 | (regs.rdx / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `Stderr` [INFO] [stdout] --> src/execution_trace_1.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `set_permissions` [INFO] [stdout] --> src/execution_trace_1.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PermissionsExt`, `symlink` [INFO] [stdout] --> src/execution_trace_1.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/execution_trace_1.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/execution_trace_1.rs:8:45 [INFO] [stdout] | [INFO] [stdout] 8 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/execution_trace_1.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLockReadGuard` [INFO] [stdout] --> src/execution_trace_1.rs:17:25 [INFO] [stdout] | [INFO] [stdout] 17 | use std::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stderr` [INFO] [stdout] --> src/container_1.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `set_permissions` [INFO] [stdout] --> src/container_1.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PermissionsExt`, `symlink` [INFO] [stdout] --> src/container_1.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/execution_multi_trace_1.rs:561:5 [INFO] [stdout] | [INFO] [stdout] 520 | / match status { [INFO] [stdout] 521 | | WaitStatus::PtraceEvent(pid, sig, int) => { [INFO] [stdout] 522 | | match sig { [INFO] [stdout] 523 | | signal::SIGTRAP => { [INFO] [stdout] ... | [INFO] [stdout] 559 | | }, [INFO] [stdout] 560 | | } [INFO] [stdout] | |_____- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 561 | Ok(Some(false)) [INFO] [stdout] | ^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/tracer_1.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let mut emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/tracer_1.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `signal` [INFO] [stdout] --> src/tracer_1.rs:97:25 [INFO] [stdout] | [INFO] [stdout] 97 | let signal: libc::siginfo_t = fetch_signal(pid).unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_signal` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/tracer_1.rs:120:49 [INFO] [stdout] | [INFO] [stdout] 120 | ... WaitStatus::Stopped(pid, signal::SIGTRAP) => {}, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `int` [INFO] [stdout] --> src/tracer_1.rs:175:41 [INFO] [stdout] | [INFO] [stdout] 175 | WaitStatus::PtraceEvent(p, sig, int) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/tracer_1.rs:91:93 [INFO] [stdout] | [INFO] [stdout] 91 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/tracer_1.rs:198:31 [INFO] [stdout] | [INFO] [stdout] 198 | fn handle_syscall_before_exit(pid: Pid, status: WaitStatus, regs: user_regs_struct) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/tracer_1.rs:242:28 [INFO] [stdout] | [INFO] [stdout] 242 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> src/tracer_1.rs:242:33 [INFO] [stdout] | [INFO] [stdout] 242 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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/tracer_1.rs:61:17 [INFO] [stdout] | [INFO] [stdout] 61 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:65:17 [INFO] [stdout] | [INFO] [stdout] 65 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `emulate_flag` is assigned to, but never used [INFO] [stdout] --> src/mirror.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let mut emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] = note: consider using `_emulate_flag` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/mirror.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | emulate_flag = match handle_syscall(pid, status, regs, prev_orig_rax, root_pid) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/mirror.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `signal` [INFO] [stdout] --> src/mirror.rs:88:25 [INFO] [stdout] | [INFO] [stdout] 88 | let signal: libc::siginfo_t = fetch_signal(pid).unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_signal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/mirror.rs:99:29 [INFO] [stdout] | [INFO] [stdout] 99 | let event = ptrace::get_event(pid).unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/mirror.rs:107:49 [INFO] [stdout] | [INFO] [stdout] 107 | ... WaitStatus::Stopped(pid, signal::SIGTRAP) => {}, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `int` [INFO] [stdout] --> src/mirror.rs:162:41 [INFO] [stdout] | [INFO] [stdout] 162 | WaitStatus::PtraceEvent(p, sig, int) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `siginfo` [INFO] [stdout] --> src/mirror.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | let siginfo: libc::siginfo_t = ptrace::get_siginfo(p).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_siginfo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid_num` [INFO] [stdout] --> src/mirror.rs:166:25 [INFO] [stdout] | [INFO] [stdout] 166 | let pid_num: i64 = ptrace::get_event(pid)?; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pid_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_orig_rax` [INFO] [stdout] --> src/mirror.rs:82:73 [INFO] [stdout] | [INFO] [stdout] 82 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_orig_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/mirror.rs:82:93 [INFO] [stdout] | [INFO] [stdout] 82 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/mirror.rs:183:31 [INFO] [stdout] | [INFO] [stdout] 183 | fn handle_syscall_before_exit(pid: Pid, status: WaitStatus, regs: user_regs_struct) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/mirror.rs:225:28 [INFO] [stdout] | [INFO] [stdout] 225 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> src/mirror.rs:225:33 [INFO] [stdout] | [INFO] [stdout] 225 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mirror.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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/mirror.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/print_emulator.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let mut emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_tracesysgood` [INFO] [stdout] --> src/ptrace.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn set_tracesysgood(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end_status` [INFO] [stdout] --> src/print_emulator.rs:63:17 [INFO] [stdout] | [INFO] [stdout] 63 | let end_status = ptrace::wait_pid(pid).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_status` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/print_emulator.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `signal` [INFO] [stdout] --> src/print_emulator.rs:100:25 [INFO] [stdout] | [INFO] [stdout] 100 | let signal: libc::siginfo_t = fetch_signal(pid).unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_signal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/print_emulator.rs:111:29 [INFO] [stdout] | [INFO] [stdout] 111 | let event = ptrace::get_event(pid).unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufRead` [INFO] [stdout] --> src/execution_multi_trace_1.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `Stderr` [INFO] [stdout] --> src/execution_trace_1.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/execution_multi_trace_1.rs:2:50 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `set_permissions` [INFO] [stdout] --> src/execution_trace_1.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/print_emulator.rs:123:49 [INFO] [stdout] | [INFO] [stdout] 123 | ... WaitStatus::Stopped(pid, signal::SIGTRAP) => {}, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `int` [INFO] [stdout] --> src/print_emulator.rs:170:41 [INFO] [stdout] | [INFO] [stdout] 170 | WaitStatus::PtraceEvent(p, sig, int) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `siginfo` [INFO] [stdout] --> src/print_emulator.rs:173:25 [INFO] [stdout] | [INFO] [stdout] 173 | let siginfo: libc::siginfo_t = ptrace::get_siginfo(p).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_siginfo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid_num` [INFO] [stdout] --> src/print_emulator.rs:175:25 [INFO] [stdout] | [INFO] [stdout] 175 | let pid_num: i64 = ptrace::get_event(pid)?; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pid_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/print_emulator.rs:94:93 [INFO] [stdout] | [INFO] [stdout] 94 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/print_emulator.rs:193:31 [INFO] [stdout] | [INFO] [stdout] 193 | fn handle_syscall_before_exit(pid: Pid, status: WaitStatus, regs: user_regs_struct) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/print_emulator.rs:237:28 [INFO] [stdout] | [INFO] [stdout] 237 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> src/print_emulator.rs:237:33 [INFO] [stdout] | [INFO] [stdout] 237 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_orig_rax` [INFO] [stdout] --> src/print_emulator.rs:242:46 [INFO] [stdout] | [INFO] [stdout] 242 | fn emulate(pid: Pid, regs: user_regs_struct, prev_orig_rax: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_orig_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PermissionsExt`, `symlink` [INFO] [stdout] --> src/execution_trace_1.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/execution_trace_1.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/execution_trace_1.rs:8:45 [INFO] [stdout] | [INFO] [stdout] 8 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/execution_trace_1.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLockReadGuard` [INFO] [stdout] --> src/execution_trace_1.rs:17:25 [INFO] [stdout] | [INFO] [stdout] 17 | use std::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/execution_multi_trace_1.rs:458:19 [INFO] [stdout] | [INFO] [stdout] 458 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_orig_rax` [INFO] [stdout] --> src/execution_multi_trace_1.rs:458:73 [INFO] [stdout] | [INFO] [stdout] 458 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_orig_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/execution_multi_trace_1.rs:458:93 [INFO] [stdout] | [INFO] [stdout] 458 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `int` [INFO] [stdout] --> src/execution_multi_trace_1.rs:521:43 [INFO] [stdout] | [INFO] [stdout] 521 | WaitStatus::PtraceEvent(pid, sig, int) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/print_emulator.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let mut emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end_status` [INFO] [stdout] --> src/print_emulator.rs:63:17 [INFO] [stdout] | [INFO] [stdout] 63 | let end_status = ptrace::wait_pid(pid).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_status` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/print_emulator.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `signal` [INFO] [stdout] --> src/print_emulator.rs:100:25 [INFO] [stdout] | [INFO] [stdout] 100 | let signal: libc::siginfo_t = fetch_signal(pid).unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_signal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/print_emulator.rs:111:29 [INFO] [stdout] | [INFO] [stdout] 111 | let event = ptrace::get_event(pid).unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/print_emulator.rs:123:49 [INFO] [stdout] | [INFO] [stdout] 123 | ... WaitStatus::Stopped(pid, signal::SIGTRAP) => {}, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `int` [INFO] [stdout] --> src/print_emulator.rs:170:41 [INFO] [stdout] | [INFO] [stdout] 170 | WaitStatus::PtraceEvent(p, sig, int) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `siginfo` [INFO] [stdout] --> src/print_emulator.rs:173:25 [INFO] [stdout] | [INFO] [stdout] 173 | let siginfo: libc::siginfo_t = ptrace::get_siginfo(p).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_siginfo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid_num` [INFO] [stdout] --> src/print_emulator.rs:175:25 [INFO] [stdout] | [INFO] [stdout] 175 | let pid_num: i64 = ptrace::get_event(pid)?; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pid_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/print_emulator.rs:94:93 [INFO] [stdout] | [INFO] [stdout] 94 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/print_emulator.rs:193:31 [INFO] [stdout] | [INFO] [stdout] 193 | fn handle_syscall_before_exit(pid: Pid, status: WaitStatus, regs: user_regs_struct) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/print_emulator.rs:237:28 [INFO] [stdout] | [INFO] [stdout] 237 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> src/print_emulator.rs:237:33 [INFO] [stdout] | [INFO] [stdout] 237 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | ptrace::set_emulate_option(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:102:25 [INFO] [stdout] | [INFO] [stdout] 102 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:103:25 [INFO] [stdout] | [INFO] [stdout] 103 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | fetch_signal(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:132:25 [INFO] [stdout] | [INFO] [stdout] 132 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:133:25 [INFO] [stdout] | [INFO] [stdout] 133 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:137:21 [INFO] [stdout] | [INFO] [stdout] 137 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:163:17 [INFO] [stdout] | [INFO] [stdout] 163 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:171:17 [INFO] [stdout] | [INFO] [stdout] 171 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:204:17 [INFO] [stdout] | [INFO] [stdout] 204 | ptrace::cont(waited_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/container_1.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 30 | / loop { [INFO] [stdout] 31 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 32 | | spawn_sh("id", self_pid); [INFO] [stdout] 33 | | spawn_sh("ipcs", self_pid); [INFO] [stdout] ... | [INFO] [stdout] 41 | | // spawn_sh("ls -a ..", self_pid); [INFO] [stdout] 42 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 43 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:252:5 [INFO] [stdout] | [INFO] [stdout] 252 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:259:9 [INFO] [stdout] | [INFO] [stdout] 259 | ptrace::sysemu_single(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:261:9 [INFO] [stdout] | [INFO] [stdout] 261 | ptrace::sysemu(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Stderr` [INFO] [stdout] --> src/execution_multi_trace_1.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Child` [INFO] [stdout] --> src/execution_multi_trace_1.rs:3:36 [INFO] [stdout] | [INFO] [stdout] 3 | use std::process::{Command, Stdio, Child}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `File`, `set_permissions` [INFO] [stdout] --> src/execution_multi_trace_1.rs:5:37 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir, OpenOptions, File}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `OpenOptionsExt`, `PermissionsExt`, `symlink` [INFO] [stdout] --> src/execution_multi_trace_1.rs:6:25 [INFO] [stdout] | [INFO] [stdout] 6 | use std::os::unix::fs::{symlink, PermissionsExt, OpenOptionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AsRawFd`, `FromRawFd` [INFO] [stdout] --> src/execution_multi_trace_1.rs:7:25 [INFO] [stdout] | [INFO] [stdout] 7 | use std::os::unix::io::{AsRawFd, FromRawFd}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/execution_multi_trace_1.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/execution_multi_trace_1.rs:10:45 [INFO] [stdout] | [INFO] [stdout] 10 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/execution_multi_trace_1.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLockReadGuard` [INFO] [stdout] --> src/execution_multi_trace_1.rs:19:25 [INFO] [stdout] | [INFO] [stdout] 19 | use std::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard, Arc}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/execution_multi_trace_1.rs:567:9 [INFO] [stdout] | [INFO] [stdout] 567 | (count / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_orig_rax` [INFO] [stdout] --> src/print_emulator.rs:242:46 [INFO] [stdout] | [INFO] [stdout] 242 | fn emulate(pid: Pid, regs: user_regs_struct, prev_orig_rax: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_orig_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 37 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/execution_trace_2.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 132 | / loop { [INFO] [stdout] 133 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 134 | | // spawn_sh("ls -a", self_pid); [INFO] [stdout] 135 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 136 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/print_emulator.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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: unreachable expression [INFO] [stdout] --> src/container_1.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 57 | / loop { [INFO] [stdout] 58 | | exec_sh("uname -n", root_pid); [INFO] [stdout] 59 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 60 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 61 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/print_emulator.rs:61:17 [INFO] [stdout] | [INFO] [stdout] 61 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/print_emulator.rs:65:17 [INFO] [stdout] | [INFO] [stdout] 65 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/print_emulator.rs:82:21 [INFO] [stdout] | [INFO] [stdout] 82 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_tracesysgood` [INFO] [stdout] --> src/ptrace.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn set_tracesysgood(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sysemu` [INFO] [stdout] --> src/ptrace.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn sysemu(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sysemu_single` [INFO] [stdout] --> src/ptrace.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn sysemu_single(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Stderr` [INFO] [stdout] --> src/execution_trace_2.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `File`, `set_permissions` [INFO] [stdout] --> src/execution_trace_2.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir, OpenOptions, File}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `OpenOptionsExt`, `PermissionsExt`, `symlink` [INFO] [stdout] --> src/execution_trace_2.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt, OpenOptionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AsRawFd`, `FromRawFd` [INFO] [stdout] --> src/execution_trace_2.rs:6:25 [INFO] [stdout] | [INFO] [stdout] 6 | use std::os::unix::io::{AsRawFd, FromRawFd}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/execution_trace_2.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/execution_trace_2.rs:9:45 [INFO] [stdout] | [INFO] [stdout] 9 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/execution_trace_2.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLockReadGuard` [INFO] [stdout] --> src/execution_trace_2.rs:18:25 [INFO] [stdout] | [INFO] [stdout] 18 | use std::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard, Arc}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/execution_trace_2.rs:395:21 [INFO] [stdout] | [INFO] [stdout] 395 | (regs.rdx / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/print_emulator.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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/print_emulator.rs:61:17 [INFO] [stdout] | [INFO] [stdout] 61 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/print_emulator.rs:65:17 [INFO] [stdout] | [INFO] [stdout] 65 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/print_emulator.rs:82:21 [INFO] [stdout] | [INFO] [stdout] 82 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/tracer_1.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let mut emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/tracer_1.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `signal` [INFO] [stdout] --> src/tracer_1.rs:97:25 [INFO] [stdout] | [INFO] [stdout] 97 | let signal: libc::siginfo_t = fetch_signal(pid).unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_signal` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/tracer_1.rs:120:49 [INFO] [stdout] | [INFO] [stdout] 120 | ... WaitStatus::Stopped(pid, signal::SIGTRAP) => {}, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `int` [INFO] [stdout] --> src/tracer_1.rs:175:41 [INFO] [stdout] | [INFO] [stdout] 175 | WaitStatus::PtraceEvent(p, sig, int) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/tracer_1.rs:91:93 [INFO] [stdout] | [INFO] [stdout] 91 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/tracer_1.rs:198:31 [INFO] [stdout] | [INFO] [stdout] 198 | fn handle_syscall_before_exit(pid: Pid, status: WaitStatus, regs: user_regs_struct) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/tracer_1.rs:242:28 [INFO] [stdout] | [INFO] [stdout] 242 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> src/tracer_1.rs:242:33 [INFO] [stdout] | [INFO] [stdout] 242 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | let mut child_regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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/execution_multi_trace_1.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/execution_trace_1.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 115 | / loop { [INFO] [stdout] 116 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 117 | | // spawn_sh("ls -a", self_pid); [INFO] [stdout] 118 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 119 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:193:21 [INFO] [stdout] | [INFO] [stdout] 193 | let mut contents = fs::read_to_string(read_guard.as_path()).unwrap(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:244:17 [INFO] [stdout] | [INFO] [stdout] 244 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stderr` [INFO] [stdout] --> src/container_pivot.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | ptrace::set_emulate_option(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:93:25 [INFO] [stdout] | [INFO] [stdout] 93 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:94:25 [INFO] [stdout] | [INFO] [stdout] 94 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:115:21 [INFO] [stdout] | [INFO] [stdout] 115 | fetch_signal(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:119:25 [INFO] [stdout] | [INFO] [stdout] 119 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:120:25 [INFO] [stdout] | [INFO] [stdout] 120 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:124:21 [INFO] [stdout] | [INFO] [stdout] 124 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 150 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:189:17 [INFO] [stdout] | [INFO] [stdout] 189 | ptrace::cont(waited_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `set_permissions` [INFO] [stdout] --> src/container_pivot.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PermissionsExt`, `symlink` [INFO] [stdout] --> src/container_pivot.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/container_pivot.rs:8:45 [INFO] [stdout] | [INFO] [stdout] 8 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chdir` [INFO] [stdout] --> src/escaping_chroot.rs:2:32 [INFO] [stdout] | [INFO] [stdout] 2 | use nix::unistd::{Pid, chroot, chdir, mkdir}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `escaping_chroot::escape_chroot` [INFO] [stdout] --> src/container_pivot.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use escaping_chroot::escape_chroot; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:61:17 [INFO] [stdout] | [INFO] [stdout] 61 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:65:17 [INFO] [stdout] | [INFO] [stdout] 65 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/container_pivot.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 49 | / loop { [INFO] [stdout] 50 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 51 | | spawn_sh("id", self_pid); [INFO] [stdout] 52 | | spawn_sh("ipcs", self_pid); [INFO] [stdout] ... | [INFO] [stdout] 60 | | spawn_sh("ls -a .", self_pid); [INFO] [stdout] 61 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 62 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/container_pivot.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 76 | / loop { [INFO] [stdout] 77 | | exec_sh("uname -n", root_pid); [INFO] [stdout] 78 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 79 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 80 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/execution_trace_1.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 140 | / loop { [INFO] [stdout] 141 | | let status: WaitStatus = ptrace::wait_pid(pid).unwrap(); [INFO] [stdout] 142 | | println!("status: {:?}", status); [INFO] [stdout] 143 | | let regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] ... | [INFO] [stdout] 199 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 200 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 201 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/execution_trace_1.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 115 | / loop { [INFO] [stdout] 116 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 117 | | // spawn_sh("ls -a", self_pid); [INFO] [stdout] 118 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 119 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/execution_trace_1.rs:201:5 [INFO] [stdout] | [INFO] [stdout] 140 | / loop { [INFO] [stdout] 141 | | let status: WaitStatus = ptrace::wait_pid(pid).unwrap(); [INFO] [stdout] 142 | | println!("status: {:?}", status); [INFO] [stdout] 143 | | let regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] ... | [INFO] [stdout] 199 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 200 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 201 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/print_emulator.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:544:17 [INFO] [stdout] | [INFO] [stdout] 544 | let mut child_regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:550:17 [INFO] [stdout] | [INFO] [stdout] 550 | let mut child_regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stderr` [INFO] [stdout] --> src/container_1.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `Stderr` [INFO] [stdout] --> src/executor_1.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `set_permissions` [INFO] [stdout] --> src/executor_1.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PermissionsExt`, `symlink` [INFO] [stdout] --> src/executor_1.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/executor_1.rs:8:45 [INFO] [stdout] | [INFO] [stdout] 8 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLockReadGuard` [INFO] [stdout] --> src/executor_1.rs:14:25 [INFO] [stdout] | [INFO] [stdout] 14 | use std::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/container_1.rs:156:4 [INFO] [stdout] | [INFO] [stdout] 156 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufRead` [INFO] [stdout] --> src/execution_trace_1.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/execution_trace_1.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | let root_pid = getpid(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `is_enter_stop` is never read [INFO] [stdout] --> src/execution_trace_1.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 137 | let mut is_enter_stop: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `is_enter_stop` is never read [INFO] [stdout] --> src/execution_trace_1.rs:188:9 [INFO] [stdout] | [INFO] [stdout] 188 | is_enter_stop = false; [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/print_emulator.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `set_permissions` [INFO] [stdout] --> src/container_1.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PermissionsExt`, `symlink` [INFO] [stdout] --> src/container_1.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cont` [INFO] [stdout] --> src/ptrace.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cont(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_tracesysgood` [INFO] [stdout] --> src/ptrace.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn set_tracesysgood(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/execution_multi_trace_1.rs:421:4 [INFO] [stdout] | [INFO] [stdout] 421 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `make_fifo` [INFO] [stdout] --> src/execution_multi_trace_1.rs:446:4 [INFO] [stdout] | [INFO] [stdout] 446 | fn make_fifo(file_path: &str, mode: Mode) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cont` [INFO] [stdout] --> src/ptrace.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cont(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_tracesysgood` [INFO] [stdout] --> src/ptrace.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn set_tracesysgood(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `handle_syscall_before_exit` [INFO] [stdout] --> src/print_emulator.rs:193:4 [INFO] [stdout] | [INFO] [stdout] 193 | fn handle_syscall_before_exit(pid: Pid, status: WaitStatus, regs: user_regs_struct) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/execution_multi_trace_1.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 134 | / loop { [INFO] [stdout] 135 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 136 | | // spawn_sh("ls -a", self_pid); [INFO] [stdout] 137 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 138 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cont` [INFO] [stdout] --> src/ptrace.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cont(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_tracesysgood` [INFO] [stdout] --> src/ptrace.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn set_tracesysgood(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `handle_syscall_before_exit` [INFO] [stdout] --> src/print_emulator.rs:193:4 [INFO] [stdout] | [INFO] [stdout] 193 | fn handle_syscall_before_exit(pid: Pid, status: WaitStatus, regs: user_regs_struct) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/execution_trace_2.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 132 | / loop { [INFO] [stdout] 133 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 134 | | // spawn_sh("ls -a", self_pid); [INFO] [stdout] 135 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 136 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufRead` [INFO] [stdout] --> src/execution_trace_2.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/execution_trace_2.rs:2:50 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `regs` [INFO] [stdout] --> src/execution_trace_2.rs:230:17 [INFO] [stdout] | [INFO] [stdout] 230 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_regs` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/execution_trace_2.rs:367:19 [INFO] [stdout] | [INFO] [stdout] 367 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_orig_rax` [INFO] [stdout] --> src/execution_trace_2.rs:367:73 [INFO] [stdout] | [INFO] [stdout] 367 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_orig_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/execution_trace_2.rs:367:93 [INFO] [stdout] | [INFO] [stdout] 367 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/container_1.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 30 | / loop { [INFO] [stdout] 31 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 32 | | spawn_sh("id", self_pid); [INFO] [stdout] 33 | | spawn_sh("ipcs", self_pid); [INFO] [stdout] ... | [INFO] [stdout] 41 | | // spawn_sh("ls -a ..", self_pid); [INFO] [stdout] 42 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 43 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `Stderr` [INFO] [stdout] --> src/executor_1.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `set_permissions` [INFO] [stdout] --> src/executor_1.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PermissionsExt`, `symlink` [INFO] [stdout] --> src/executor_1.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/executor_1.rs:8:45 [INFO] [stdout] | [INFO] [stdout] 8 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RwLockReadGuard` [INFO] [stdout] --> src/executor_1.rs:14:25 [INFO] [stdout] | [INFO] [stdout] 14 | use std::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/container_1.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 57 | / loop { [INFO] [stdout] 58 | | exec_sh("uname -n", root_pid); [INFO] [stdout] 59 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 60 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 61 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tracer_1.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_trace_2.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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: unused import: `BufRead` [INFO] [stdout] --> src/execution_trace_1.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/execution_trace_1.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | let root_pid = getpid(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `is_enter_stop` is never read [INFO] [stdout] --> src/execution_trace_1.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 137 | let mut is_enter_stop: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `is_enter_stop` is never read [INFO] [stdout] --> src/execution_trace_1.rs:188:9 [INFO] [stdout] | [INFO] [stdout] 188 | is_enter_stop = false; [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/execution_trace_2.rs:180:21 [INFO] [stdout] | [INFO] [stdout] 180 | let mut contents = fs::read_to_string(read_guard.as_path()).unwrap(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_trace_2.rs:230:17 [INFO] [stdout] | [INFO] [stdout] 230 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/executor_1.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 110 | / loop { [INFO] [stdout] 111 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 112 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 113 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/executor_1.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 128 | / loop { [INFO] [stdout] 129 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 130 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 131 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_tracesysgood` [INFO] [stdout] --> src/ptrace.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn set_tracesysgood(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:110:13 [INFO] [stdout] | [INFO] [stdout] 110 | mount_dir(&(&*MOUNT_DIR.read().unwrap()).as_ref().unwrap(), "target"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 152 | ptrace::set_emulate_option(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:178:13 [INFO] [stdout] | [INFO] [stdout] 178 | handle_trap(pid, child_status); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:229:17 [INFO] [stdout] | [INFO] [stdout] 229 | ptrace::sysemu_single(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:231:17 [INFO] [stdout] | [INFO] [stdout] 231 | ptrace::sysemu(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:411:13 [INFO] [stdout] | [INFO] [stdout] 411 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:436:5 [INFO] [stdout] | [INFO] [stdout] 436 | / mount::( [INFO] [stdout] 437 | | Some(source_path), [INFO] [stdout] 438 | | target_path.as_path(), [INFO] [stdout] 439 | | Some("ext4"), [INFO] [stdout] 440 | | MsFlags::MS_BIND | MsFlags::MS_REC, [INFO] [stdout] 441 | | None, [INFO] [stdout] 442 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:471:21 [INFO] [stdout] | [INFO] [stdout] 471 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 499 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:507:17 [INFO] [stdout] | [INFO] [stdout] 507 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:552:13 [INFO] [stdout] | [INFO] [stdout] 552 | ptrace::setregs(pid, child_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufRead` [INFO] [stdout] --> src/executor_1.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/executor_1.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | let root_pid = getpid(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `detach` [INFO] [stdout] --> src/ptrace.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn detach(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cont` [INFO] [stdout] --> src/ptrace.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cont(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option` [INFO] [stdout] --> src/ptrace.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn set_emulate_option(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wait_all` [INFO] [stdout] --> src/ptrace.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn wait_all() -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `syscall_step` [INFO] [stdout] --> src/ptrace.rs:83:8 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn syscall_step(pid: Pid) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `setregs` [INFO] [stdout] --> src/ptrace.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 91 | pub fn setregs(pid: Pid, urs: user_regs_struct) -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sysemu` [INFO] [stdout] --> src/ptrace.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn sysemu(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sysemu_single` [INFO] [stdout] --> src/ptrace.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn sysemu_single(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_event` [INFO] [stdout] --> src/ptrace.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn get_event(pid: Pid) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_siginfo` [INFO] [stdout] --> src/ptrace.rs:131:8 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn get_siginfo(pid: Pid) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/execution_trace_1.rs:295:4 [INFO] [stdout] | [INFO] [stdout] 295 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | ptrace::set_emulate_option(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:105:25 [INFO] [stdout] | [INFO] [stdout] 105 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:106:25 [INFO] [stdout] | [INFO] [stdout] 106 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:131:21 [INFO] [stdout] | [INFO] [stdout] 131 | fetch_signal(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:135:25 [INFO] [stdout] | [INFO] [stdout] 135 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:136:25 [INFO] [stdout] | [INFO] [stdout] 136 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:140:21 [INFO] [stdout] | [INFO] [stdout] 140 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/executor_1.rs:225:4 [INFO] [stdout] | [INFO] [stdout] 225 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:199:17 [INFO] [stdout] | [INFO] [stdout] 199 | ptrace::cont(waited_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:247:5 [INFO] [stdout] | [INFO] [stdout] 247 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | mount_dir(&(&*MOUNT_DIR.read().unwrap()).as_ref().unwrap(), "target"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | ptrace::set_tracesysgood(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:285:13 [INFO] [stdout] | [INFO] [stdout] 285 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:310:5 [INFO] [stdout] | [INFO] [stdout] 310 | / mount::( [INFO] [stdout] 311 | | Some(source_path), [INFO] [stdout] 312 | | target_path.as_path(), [INFO] [stdout] 313 | | Some("ext4"), [INFO] [stdout] 314 | | MsFlags::MS_BIND | MsFlags::MS_REC, [INFO] [stdout] 315 | | None, [INFO] [stdout] 316 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | ptrace::sysemu_single(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:253:9 [INFO] [stdout] | [INFO] [stdout] 253 | ptrace::sysemu(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/container_1.rs:156:4 [INFO] [stdout] | [INFO] [stdout] 156 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cont` [INFO] [stdout] --> src/ptrace.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cont(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option` [INFO] [stdout] --> src/ptrace.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn set_emulate_option(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_event` [INFO] [stdout] --> src/ptrace.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn get_event(pid: Pid) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/execution_trace_2.rs:330:4 [INFO] [stdout] | [INFO] [stdout] 330 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `make_fifo` [INFO] [stdout] --> src/execution_trace_2.rs:355:4 [INFO] [stdout] | [INFO] [stdout] 355 | fn make_fifo(file_path: &str, mode: Mode) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | ptrace::set_emulate_option(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:105:25 [INFO] [stdout] | [INFO] [stdout] 105 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:106:25 [INFO] [stdout] | [INFO] [stdout] 106 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:131:21 [INFO] [stdout] | [INFO] [stdout] 131 | fetch_signal(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:135:25 [INFO] [stdout] | [INFO] [stdout] 135 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `escape_chroot` [INFO] [stdout] --> src/escaping_chroot.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn escape_chroot(pid: Pid) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/container_pivot.rs:176:4 [INFO] [stdout] | [INFO] [stdout] 176 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 45 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/executor_1.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 110 | / loop { [INFO] [stdout] 111 | | // sleep(Duration::from_secs(3)); [INFO] [stdout] 112 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 113 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:136:25 [INFO] [stdout] | [INFO] [stdout] 136 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:140:21 [INFO] [stdout] | [INFO] [stdout] 140 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:199:17 [INFO] [stdout] | [INFO] [stdout] 199 | ptrace::cont(waited_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:247:5 [INFO] [stdout] | [INFO] [stdout] 247 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | ptrace::sysemu_single(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/print_emulator.rs:253:9 [INFO] [stdout] | [INFO] [stdout] 253 | ptrace::sysemu(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | ptrace::set_emulate_option(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/executor_1.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 128 | / loop { [INFO] [stdout] 129 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 130 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 131 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:102:25 [INFO] [stdout] | [INFO] [stdout] 102 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:103:25 [INFO] [stdout] | [INFO] [stdout] 103 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:128:21 [INFO] [stdout] | [INFO] [stdout] 128 | fetch_signal(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_1.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:132:25 [INFO] [stdout] | [INFO] [stdout] 132 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_1.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:133:25 [INFO] [stdout] | [INFO] [stdout] 133 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:137:21 [INFO] [stdout] | [INFO] [stdout] 137 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:163:17 [INFO] [stdout] | [INFO] [stdout] 163 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:171:17 [INFO] [stdout] | [INFO] [stdout] 171 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:204:17 [INFO] [stdout] | [INFO] [stdout] 204 | ptrace::cont(waited_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:252:5 [INFO] [stdout] | [INFO] [stdout] 252 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:259:9 [INFO] [stdout] | [INFO] [stdout] 259 | ptrace::sysemu_single(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tracer_1.rs:261:9 [INFO] [stdout] | [INFO] [stdout] 261 | ptrace::sysemu(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/execution_multi_trace_1.rs:561:5 [INFO] [stdout] | [INFO] [stdout] 520 | / match status { [INFO] [stdout] 521 | | WaitStatus::PtraceEvent(pid, sig, int) => { [INFO] [stdout] 522 | | match sig { [INFO] [stdout] 523 | | signal::SIGTRAP => { [INFO] [stdout] ... | [INFO] [stdout] 559 | | }, [INFO] [stdout] 560 | | } [INFO] [stdout] | |_____- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stdout] 561 | Ok(Some(false)) [INFO] [stdout] | ^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:97:13 [INFO] [stdout] | [INFO] [stdout] 97 | mount_dir(&(&*MOUNT_DIR.read().unwrap()).as_ref().unwrap(), "target"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:215:13 [INFO] [stdout] | [INFO] [stdout] 215 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:240:5 [INFO] [stdout] | [INFO] [stdout] 240 | / mount::( [INFO] [stdout] 241 | | Some(source_path), [INFO] [stdout] 242 | | target_path.as_path(), [INFO] [stdout] 243 | | Some("ext4"), [INFO] [stdout] 244 | | MsFlags::MS_BIND | MsFlags::MS_REC, [INFO] [stdout] 245 | | None, [INFO] [stdout] 246 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | mount_dir(&(&*MOUNT_DIR.read().unwrap()).as_ref().unwrap(), "target"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | ptrace::set_tracesysgood(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:216:17 [INFO] [stdout] | [INFO] [stdout] 216 | ptrace::sysemu_single(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:218:17 [INFO] [stdout] | [INFO] [stdout] 218 | ptrace::sysemu(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:320:13 [INFO] [stdout] | [INFO] [stdout] 320 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | / mount::( [INFO] [stdout] 346 | | Some(source_path), [INFO] [stdout] 347 | | target_path.as_path(), [INFO] [stdout] 348 | | Some("ext4"), [INFO] [stdout] 349 | | MsFlags::MS_BIND | MsFlags::MS_REC, [INFO] [stdout] 350 | | None, [INFO] [stdout] 351 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:377:21 [INFO] [stdout] | [INFO] [stdout] 377 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:413:17 [INFO] [stdout] | [INFO] [stdout] 413 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:421:17 [INFO] [stdout] | [INFO] [stdout] 421 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufRead` [INFO] [stdout] --> src/execution_multi_trace_1.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/execution_multi_trace_1.rs:2:50 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 37 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufRead` [INFO] [stdout] --> src/execution_trace_2.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Read` [INFO] [stdout] --> src/execution_trace_2.rs:2:50 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead, Read, BufWriter}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `regs` [INFO] [stdout] --> src/execution_trace_2.rs:230:17 [INFO] [stdout] | [INFO] [stdout] 230 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_regs` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 45 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/execution_multi_trace_1.rs:458:19 [INFO] [stdout] | [INFO] [stdout] 458 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 43 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_orig_rax` [INFO] [stdout] --> src/execution_multi_trace_1.rs:458:73 [INFO] [stdout] | [INFO] [stdout] 458 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_orig_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/execution_multi_trace_1.rs:458:93 [INFO] [stdout] | [INFO] [stdout] 458 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `int` [INFO] [stdout] --> src/execution_multi_trace_1.rs:521:43 [INFO] [stdout] | [INFO] [stdout] 521 | WaitStatus::PtraceEvent(pid, sig, int) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_1.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_1.rs:144:13 [INFO] [stdout] | [INFO] [stdout] 144 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stderr` [INFO] [stdout] --> src/container_pivot.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/execution_trace_2.rs:367:19 [INFO] [stdout] | [INFO] [stdout] 367 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FileType`, `set_permissions` [INFO] [stdout] --> src/container_pivot.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, copy, read_dir, FileType, set_permissions, remove_dir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_orig_rax` [INFO] [stdout] --> src/execution_trace_2.rs:367:73 [INFO] [stdout] | [INFO] [stdout] 367 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_orig_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PermissionsExt`, `symlink` [INFO] [stdout] --> src/container_pivot.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use std::os::unix::fs::{symlink, PermissionsExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/execution_trace_2.rs:367:93 [INFO] [stdout] | [INFO] [stdout] 367 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chroot` [INFO] [stdout] --> src/container_pivot.rs:8:45 [INFO] [stdout] | [INFO] [stdout] 8 | use nix::unistd::{Pid, getpid, sethostname, chroot, chdir, mkdir, pivot_root}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chdir` [INFO] [stdout] --> src/escaping_chroot.rs:2:32 [INFO] [stdout] | [INFO] [stdout] 2 | use nix::unistd::{Pid, chroot, chdir, mkdir}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `escaping_chroot::escape_chroot` [INFO] [stdout] --> src/container_pivot.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use escaping_chroot::escape_chroot; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/container_pivot.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 49 | / loop { [INFO] [stdout] 50 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 51 | | spawn_sh("id", self_pid); [INFO] [stdout] 52 | | spawn_sh("ipcs", self_pid); [INFO] [stdout] ... | [INFO] [stdout] 60 | | spawn_sh("ls -a .", self_pid); [INFO] [stdout] 61 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 62 | return 0 as isize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | let mut child_regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/container_pivot.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 76 | / loop { [INFO] [stdout] 77 | | exec_sh("uname -n", root_pid); [INFO] [stdout] 78 | | sleep(Duration::from_secs(3)); [INFO] [stdout] 79 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 80 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `detach` [INFO] [stdout] --> src/ptrace.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn detach(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cont` [INFO] [stdout] --> src/ptrace.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cont(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option` [INFO] [stdout] --> src/ptrace.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn set_emulate_option(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `wait_all` [INFO] [stdout] --> src/ptrace.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn wait_all() -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `syscall_step` [INFO] [stdout] --> src/ptrace.rs:83:8 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn syscall_step(pid: Pid) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `setregs` [INFO] [stdout] --> src/ptrace.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 91 | pub fn setregs(pid: Pid, urs: user_regs_struct) -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sysemu` [INFO] [stdout] --> src/ptrace.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn sysemu(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sysemu_single` [INFO] [stdout] --> src/ptrace.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn sysemu_single(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_event` [INFO] [stdout] --> src/ptrace.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn get_event(pid: Pid) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_siginfo` [INFO] [stdout] --> src/ptrace.rs:131:8 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn get_siginfo(pid: Pid) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/execution_trace_1.rs:295:4 [INFO] [stdout] | [INFO] [stdout] 295 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:193:21 [INFO] [stdout] | [INFO] [stdout] 193 | let mut contents = fs::read_to_string(read_guard.as_path()).unwrap(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:244:17 [INFO] [stdout] | [INFO] [stdout] 244 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BufRead` [INFO] [stdout] --> src/executor_1.rs:2:41 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{Write, Stderr, BufReader, BufRead}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/executor_1.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | let root_pid = getpid(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_trace_2.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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/execution_trace_2.rs:180:21 [INFO] [stdout] | [INFO] [stdout] 180 | let mut contents = fs::read_to_string(read_guard.as_path()).unwrap(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_trace_2.rs:230:17 [INFO] [stdout] | [INFO] [stdout] 230 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::sleep` [INFO] [stdout] --> src/mirror.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/mirror.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/mirror.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | (count / (std::mem::size_of::() as u64)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | mount_dir(&(&*MOUNT_DIR.read().unwrap()).as_ref().unwrap(), "target"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | ptrace::set_tracesysgood(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:285:13 [INFO] [stdout] | [INFO] [stdout] 285 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_1.rs:310:5 [INFO] [stdout] | [INFO] [stdout] 310 | / mount::( [INFO] [stdout] 311 | | Some(source_path), [INFO] [stdout] 312 | | target_path.as_path(), [INFO] [stdout] 313 | | Some("ext4"), [INFO] [stdout] 314 | | MsFlags::MS_BIND | MsFlags::MS_REC, [INFO] [stdout] 315 | | None, [INFO] [stdout] 316 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_pivot.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_pivot.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_pivot.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:544:17 [INFO] [stdout] | [INFO] [stdout] 544 | let mut child_regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/executor_1.rs:225:4 [INFO] [stdout] | [INFO] [stdout] 225 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/execution_multi_trace_1.rs:550:17 [INFO] [stdout] | [INFO] [stdout] 550 | let mut child_regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cont` [INFO] [stdout] --> src/ptrace.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cont(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_tracesysgood` [INFO] [stdout] --> src/ptrace.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn set_tracesysgood(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/execution_multi_trace_1.rs:421:4 [INFO] [stdout] | [INFO] [stdout] 421 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `make_fifo` [INFO] [stdout] --> src/execution_multi_trace_1.rs:446:4 [INFO] [stdout] | [INFO] [stdout] 446 | fn make_fifo(file_path: &str, mode: Mode) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cont` [INFO] [stdout] --> src/ptrace.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn cont(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option` [INFO] [stdout] --> src/ptrace.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn set_emulate_option(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `get_event` [INFO] [stdout] --> src/ptrace.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn get_event(pid: Pid) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/execution_trace_2.rs:330:4 [INFO] [stdout] | [INFO] [stdout] 330 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `make_fifo` [INFO] [stdout] --> src/execution_trace_2.rs:355:4 [INFO] [stdout] | [INFO] [stdout] 355 | fn make_fifo(file_path: &str, mode: Mode) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `escape_chroot` [INFO] [stdout] --> src/escaping_chroot.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn escape_chroot(pid: Pid) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `dir` [INFO] [stdout] --> src/container_pivot.rs:176:4 [INFO] [stdout] | [INFO] [stdout] 176 | fn dir(path: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:97:13 [INFO] [stdout] | [INFO] [stdout] 97 | mount_dir(&(&*MOUNT_DIR.read().unwrap()).as_ref().unwrap(), "target"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `emulate_flag` is assigned to, but never used [INFO] [stdout] --> src/mirror.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let mut emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] = note: consider using `_emulate_flag` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:215:13 [INFO] [stdout] | [INFO] [stdout] 215 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:110:13 [INFO] [stdout] | [INFO] [stdout] 110 | mount_dir(&(&*MOUNT_DIR.read().unwrap()).as_ref().unwrap(), "target"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/mirror.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | emulate_flag = match handle_syscall(pid, status, regs, prev_orig_rax, root_pid) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/executor_1.rs:240:5 [INFO] [stdout] | [INFO] [stdout] 240 | / mount::( [INFO] [stdout] 241 | | Some(source_path), [INFO] [stdout] 242 | | target_path.as_path(), [INFO] [stdout] 243 | | Some("ext4"), [INFO] [stdout] 244 | | MsFlags::MS_BIND | MsFlags::MS_REC, [INFO] [stdout] 245 | | None, [INFO] [stdout] 246 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `emulate_flag` is never read [INFO] [stdout] --> src/mirror.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | emulate_flag = false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:152:5 [INFO] [stdout] | [INFO] [stdout] 152 | ptrace::set_emulate_option(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:178:13 [INFO] [stdout] | [INFO] [stdout] 178 | handle_trap(pid, child_status); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:229:17 [INFO] [stdout] | [INFO] [stdout] 229 | ptrace::sysemu_single(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:231:17 [INFO] [stdout] | [INFO] [stdout] 231 | ptrace::sysemu(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:411:13 [INFO] [stdout] | [INFO] [stdout] 411 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:436:5 [INFO] [stdout] | [INFO] [stdout] 436 | / mount::( [INFO] [stdout] 437 | | Some(source_path), [INFO] [stdout] 438 | | target_path.as_path(), [INFO] [stdout] 439 | | Some("ext4"), [INFO] [stdout] 440 | | MsFlags::MS_BIND | MsFlags::MS_REC, [INFO] [stdout] 441 | | None, [INFO] [stdout] 442 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:471:21 [INFO] [stdout] | [INFO] [stdout] 471 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 499 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:507:17 [INFO] [stdout] | [INFO] [stdout] 507 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_multi_trace_1.rs:552:13 [INFO] [stdout] | [INFO] [stdout] 552 | ptrace::setregs(pid, child_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `signal` [INFO] [stdout] --> src/mirror.rs:88:25 [INFO] [stdout] | [INFO] [stdout] 88 | let signal: libc::siginfo_t = fetch_signal(pid).unwrap(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_signal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/mirror.rs:99:29 [INFO] [stdout] | [INFO] [stdout] 99 | let event = ptrace::get_event(pid).unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/mirror.rs:107:49 [INFO] [stdout] | [INFO] [stdout] 107 | ... WaitStatus::Stopped(pid, signal::SIGTRAP) => {}, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `int` [INFO] [stdout] --> src/mirror.rs:162:41 [INFO] [stdout] | [INFO] [stdout] 162 | WaitStatus::PtraceEvent(p, sig, int) => { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `siginfo` [INFO] [stdout] --> src/mirror.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | let siginfo: libc::siginfo_t = ptrace::get_siginfo(p).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_siginfo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid_num` [INFO] [stdout] --> src/mirror.rs:166:25 [INFO] [stdout] | [INFO] [stdout] 166 | let pid_num: i64 = ptrace::get_event(pid)?; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pid_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_orig_rax` [INFO] [stdout] --> src/mirror.rs:82:73 [INFO] [stdout] | [INFO] [stdout] 82 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_orig_rax` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_pid` [INFO] [stdout] --> src/mirror.rs:82:93 [INFO] [stdout] | [INFO] [stdout] 82 | fn handle_syscall(pid: Pid, status: WaitStatus, regs: user_regs_struct, prev_orig_rax: u64, root_pid: Pid) -> Result> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/mirror.rs:183:31 [INFO] [stdout] | [INFO] [stdout] 183 | fn handle_syscall_before_exit(pid: Pid, status: WaitStatus, regs: user_regs_struct) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pid` [INFO] [stdout] --> src/mirror.rs:225:28 [INFO] [stdout] | [INFO] [stdout] 225 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_pid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `code` [INFO] [stdout] --> src/mirror.rs:225:33 [INFO] [stdout] | [INFO] [stdout] 225 | WaitStatus::Exited(pid, code) => true, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | mount_dir(&(&*MOUNT_DIR.read().unwrap()).as_ref().unwrap(), "target"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | ptrace::set_tracesysgood(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:216:17 [INFO] [stdout] | [INFO] [stdout] 216 | ptrace::sysemu_single(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:218:17 [INFO] [stdout] | [INFO] [stdout] 218 | ptrace::sysemu(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:320:13 [INFO] [stdout] | [INFO] [stdout] 320 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | / mount::( [INFO] [stdout] 346 | | Some(source_path), [INFO] [stdout] 347 | | target_path.as_path(), [INFO] [stdout] 348 | | Some("ext4"), [INFO] [stdout] 349 | | MsFlags::MS_BIND | MsFlags::MS_REC, [INFO] [stdout] 350 | | None, [INFO] [stdout] 351 | | ); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:377:21 [INFO] [stdout] | [INFO] [stdout] 377 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:413:17 [INFO] [stdout] | [INFO] [stdout] 413 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/execution_trace_2.rs:421:17 [INFO] [stdout] | [INFO] [stdout] 421 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mirror.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [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/mirror.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let mut regs: user_regs_struct = ptrace::getregs(pid).unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 43 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_pivot.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | chdir("/root"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_pivot.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | prepare_bash(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/container_pivot.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | copy_dir(entry.as_os_str().to_str().unwrap(), Path::new(target).join(entry.file_name().unwrap()).as_os_str().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `traceme` [INFO] [stdout] --> src/ptrace.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn traceme() -> Result<()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_tracesysgood` [INFO] [stdout] --> src/ptrace.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn set_tracesysgood(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `set_emulate_option_simple` [INFO] [stdout] --> src/ptrace.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn set_emulate_option_simple(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sysemu` [INFO] [stdout] --> src/ptrace.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn sysemu(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sysemu_single` [INFO] [stdout] --> src/ptrace.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn sysemu_single(pid: Pid) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `pokeuser` [INFO] [stdout] --> src/ptrace.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn pokeuser(pid: Pid, addr: u64, data: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | ptrace::set_emulate_option(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:93:25 [INFO] [stdout] | [INFO] [stdout] 93 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:94:25 [INFO] [stdout] | [INFO] [stdout] 94 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:115:21 [INFO] [stdout] | [INFO] [stdout] 115 | fetch_signal(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:119:25 [INFO] [stdout] | [INFO] [stdout] 119 | ptrace::attach(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:120:25 [INFO] [stdout] | [INFO] [stdout] 120 | ptrace::set_emulate_option(event_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:124:21 [INFO] [stdout] | [INFO] [stdout] 124 | ptrace::detach(pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 150 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | ptrace::setregs(pid, new_regs); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/mirror.rs:189:17 [INFO] [stdout] | [INFO] [stdout] 189 | ptrace::cont(waited_pid); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | ptrace::syscall(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | ptrace::step(pid, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | / Errno::result( [INFO] [stdout] 102 | | unsafe { libc::ptrace(31 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut::(), std::ptr::n... [INFO] [stdout] 104 | | ) [INFO] [stdout] 105 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/ptrace.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / Errno::result( [INFO] [stdout] 111 | | unsafe { libc::ptrace(32 as libc::c_uint, libc::pid_t::from(pid), std::ptr::null_mut::(), std::ptr::null_mut:: src/ptrace.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | / Errno::result( [INFO] [stdout] 120 | | unsafe { libc::ptrace(6 as libc::c_uint, libc::pid_t::from(pid), addr as *mut libc::c_void, data as *mut libc::c_void) } [INFO] [stdout] 121 | | ) [INFO] [stdout] 122 | | .map(drop); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 12.96s [INFO] running `Command { std: "docker" "inspect" "e6f0949cbb7848461d0868b29d44a213099e17c1ff7cade5aad8e626dbbf4bb8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e6f0949cbb7848461d0868b29d44a213099e17c1ff7cade5aad8e626dbbf4bb8", kill_on_drop: false }` [INFO] [stdout] e6f0949cbb7848461d0868b29d44a213099e17c1ff7cade5aad8e626dbbf4bb8