[INFO] cloning repository https://github.com/yasuyuky/sectora
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yasuyuky/sectora" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyasuyuky%2Fsectora", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyasuyuky%2Fsectora'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] bfc4521691329f827b152908188a96ab2d2f37ed
[INFO] checking yasuyuky/sectora against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyasuyuky%2Fsectora" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/yasuyuky/sectora
[INFO] finished tweaking git repo https://github.com/yasuyuky/sectora
[INFO] tweaked toml for git repo https://github.com/yasuyuky/sectora written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/yasuyuky/sectora on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/yasuyuky/sectora already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded clap_complete v4.5.59
[INFO] [stderr]   Downloaded sd-notify v0.4.5
[INFO] [stderr]   Downloaded syslog v7.0.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c3a8b5e2995edc77c15cbc13ae55be55a1db61a4fa547a20d89190710eea335a
[INFO] running `Command { std: "docker" "start" "-a" "c3a8b5e2995edc77c15cbc13ae55be55a1db61a4fa547a20d89190710eea335a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c3a8b5e2995edc77c15cbc13ae55be55a1db61a4fa547a20d89190710eea335a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3a8b5e2995edc77c15cbc13ae55be55a1db61a4fa547a20d89190710eea335a", kill_on_drop: false }`
[INFO] [stdout] c3a8b5e2995edc77c15cbc13ae55be55a1db61a4fa547a20d89190710eea335a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f02557d82521a562eb3929f3aecf67ae2252c6e826c48937a248c2bc326a03df
[INFO] running `Command { std: "docker" "start" "-a" "f02557d82521a562eb3929f3aecf67ae2252c6e826c48937a248c2bc326a03df", kill_on_drop: false }`
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]     Checking indexmap v2.11.4
[INFO] [stderr]     Checking openssl-sys v0.9.107
[INFO] [stderr]     Checking socket2 v0.5.9
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking deranged v0.4.1
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]     Checking clap_builder v4.5.49
[INFO] [stderr]     Checking winnow v0.7.13
[INFO] [stderr]     Checking serde_json v1.0.145
[INFO] [stderr]     Checking serde_spanned v1.0.3
[INFO] [stderr]     Checking toml_datetime v0.7.3
[INFO] [stderr]     Checking hostname v0.4.0
[INFO] [stderr]    Compiling sectora v0.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking rustls-pki-types v1.11.0
[INFO] [stderr]     Checking sd-notify v0.4.5
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking toml_parser v1.0.4
[INFO] [stderr]     Checking toml v0.9.8
[INFO] [stderr]     Checking openssl v0.10.72
[INFO] [stderr]     Checking syslog v7.0.0
[INFO] [stderr]     Checking clap v4.5.49
[INFO] [stderr]     Checking clap_complete v4.5.59
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking tokio-util v0.7.14
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking h2 v0.4.8
[INFO] [stderr]     Checking tower-http v0.6.5
[INFO] [stderr]     Checking native-tls v0.2.14
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking hyper-util v0.1.13
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.24
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Serde(serde_json::Error),
[INFO] [stdout]   |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 3 -     Serde(serde_json::Error),
[INFO] [stdout] 3 +     Serde(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Io(std::io::Error),
[INFO] [stdout]   |     -- ^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 4 -     Io(std::io::Error),
[INFO] [stdout] 4 +     Io(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Toml(toml::de::Error),
[INFO] [stdout]   |     ---- ^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 -     Toml(toml::de::Error),
[INFO] [stdout] 5 +     Toml(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ParseMsg(ParseMessageError),
[INFO] [stdout]   |     -------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 6 -     ParseMsg(ParseMessageError),
[INFO] [stdout] 6 +     ParseMsg(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Id(std::num::ParseIntError),
[INFO] [stdout]    |     -- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 26 -     Id(std::num::ParseIntError),
[INFO] [stdout] 26 +     Id(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Sector(ParseSectorError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 -     Sector(ParseSectorError),
[INFO] [stdout] 33 +     Sector(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Gid(std::num::ParseIntError),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Gid(std::num::ParseIntError),
[INFO] [stdout] 34 +     Gid(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Member(std::num::ParseIntError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 35 -     Member(std::num::ParseIntError),
[INFO] [stdout] 35 +     Member(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/structs.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 12 |     pub token: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 13 |     pub org: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 14 |     #[serde(default = "default_team")]
[INFO] [stdout] 15 |     pub team: Vec<TeamConfig>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 16 |     #[serde(default = "default_repo")]
[INFO] [stdout] 17 |     pub repo: Vec<RepoConfig>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     #[serde(default = "default_endpoint")]
[INFO] [stdout] 19 |     pub endpoint: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 20 |     #[serde(default = "default_home")]
[INFO] [stdout] 21 |     pub home: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 22 |     #[serde(default = "default_sh")]
[INFO] [stdout] 23 |     pub sh: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 24 |     #[serde(default = "default_cache_duration")]
[INFO] [stdout] 25 |     pub cache_duration: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     #[serde(default = "default_cert_path")]
[INFO] [stdout] 27 |     pub cert_path: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 28 |     #[serde(default = "default_user_conf_path")]
[INFO] [stdout] 29 |     pub user_conf_path: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     #[serde(default = "default_cache_dir")]
[INFO] [stdout] 31 |     pub cache_dir: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 32 |     pub proxy_url: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PublicKey` is never constructed
[INFO] [stdout]    --> src/structs.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub struct PublicKey {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rate` is never constructed
[INFO] [stdout]    --> src/structs.rs:295:12
[INFO] [stdout]     |
[INFO] [stdout] 295 | pub struct Rate {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RateLimit` is never constructed
[INFO] [stdout]    --> src/structs.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct RateLimit {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]   --> src/lib.rs:75:17
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]    |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 91 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getpwnam_r"), errnop);
[INFO] [stdout]    |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/lib.rs:86:1
[INFO] [stdout]    |
[INFO] [stdout] 86 | / pub unsafe extern "C" fn _nss_sectora_getpwnam_r(cnameptr: *const libc::c_char, pwptr: *mut Passwd,
[INFO] [stdout] 87 | |                                                  buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 88 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 89 | |                                                  -> libc::c_int {
[INFO] [stdout]    | |_______________________________________________________________^
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]   --> src/lib.rs:75:17
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]    |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 92 |     let msg = try_unwrap!(conn.communicate(CMsg::Pw(Pw::Nam(string_from(cnameptr)))), errnop);
[INFO] [stdout]    |               ------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]    = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]   --> src/lib.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |         match { (*pwptr).pack_args(&mut buffer, &login, uid, gid, &home, &sh) } {
[INFO] [stdout]    |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 101 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 104 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 115 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getpwuid_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / pub unsafe extern "C" fn _nss_sectora_getpwuid_r(uid: libc::uid_t, pwptr: *mut Passwd, buf: *mut libc::c_char,
[INFO] [stdout] 112 | |                                                  buflen: libc::size_t, errnop: *mut libc::c_int)
[INFO] [stdout] 113 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 116 |     let msg = try_unwrap!(conn.communicate(CMsg::Pw(Pw::Uid(uid as u64))), errnop);
[INFO] [stdout]     |               -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:123:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |         match { (*pwptr).pack_args(&mut buffer, &login, uid, gid, &home, &sh) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 125 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 152 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getpwent_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:148:1
[INFO] [stdout]     |
[INFO] [stdout] 148 | / pub unsafe extern "C" fn _nss_sectora_getpwent_r(pwptr: *mut Passwd, buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 149 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 150 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 153 |     let msg = try_unwrap!(conn.communicate(CMsg::Pw(Pw::Ent(Ent::Get(process::id())))), errnop);
[INFO] [stdout]     |               --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:160:17
[INFO] [stdout]     |
[INFO] [stdout] 160 |         match { (*pwptr).pack_args(&mut buffer, &login, uid, gid, &home, &sh) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 162 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 165 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 190 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getspnam_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:185:1
[INFO] [stdout]     |
[INFO] [stdout] 185 | / pub unsafe extern "C" fn _nss_sectora_getspnam_r(cnameptr: *const libc::c_char, spptr: *mut Spwd,
[INFO] [stdout] 186 | |                                                  buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 187 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 188 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 191 |     let msg = try_unwrap!(conn.communicate(CMsg::Sp(Sp::Nam(string_from(cnameptr)))), errnop);
[INFO] [stdout]     |               ------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:193:17
[INFO] [stdout]     |
[INFO] [stdout] 193 |         match { (*spptr).pack_args(&mut buffer, &login, &pass) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 195 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 198 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 222 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getspent_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | / pub unsafe extern "C" fn _nss_sectora_getspent_r(spptr: *mut Spwd, buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 219 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 220 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 223 |     let msg = try_unwrap!(conn.communicate(CMsg::Sp(Sp::Ent(Ent::Get(process::id())))), errnop);
[INFO] [stdout]     |               --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:225:17
[INFO] [stdout]     |
[INFO] [stdout] 225 |         match { (*spptr).pack_args(&mut buffer, &login, &pass) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 227 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 230 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 254 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getgrgid_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | / pub unsafe extern "C" fn _nss_sectora_getgrgid_r(gid: libc::gid_t, grptr: *mut Group, buf: *mut libc::c_char,
[INFO] [stdout] 251 | |                                                  buflen: libc::size_t, errnop: *mut libc::c_int)
[INFO] [stdout] 252 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 255 |     let msg = try_unwrap!(conn.communicate(CMsg::Gr(Gr::Gid(gid as u64))), errnop);
[INFO] [stdout]     |               -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:258:17
[INFO] [stdout]     |
[INFO] [stdout] 258 |         match { (*grptr).pack_args(&mut buffer, &sector.get_group(), u64::from(gid), &members) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 260 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 263 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 275 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getgrnam_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:270:1
[INFO] [stdout]     |
[INFO] [stdout] 270 | / pub unsafe extern "C" fn _nss_sectora_getgrnam_r(cnameptr: *const libc::c_char, grptr: *mut Group,
[INFO] [stdout] 271 | |                                                  buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 272 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 273 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 276 |     let msg = try_unwrap!(conn.communicate(CMsg::Gr(Gr::Nam(string_from(cnameptr)))), errnop);
[INFO] [stdout]     |               ------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:279:17
[INFO] [stdout]     |
[INFO] [stdout] 279 |         match { (*grptr).pack_args(&mut buffer, &sector.get_group(), sector.get_gid(), &members) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 281 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 284 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Serde(serde_json::Error),
[INFO] [stdout]   |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 3 -     Serde(serde_json::Error),
[INFO] [stdout] 3 +     Serde(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Io(std::io::Error),
[INFO] [stdout]   |     -- ^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 4 -     Io(std::io::Error),
[INFO] [stdout] 4 +     Io(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Toml(toml::de::Error),
[INFO] [stdout]   |     ---- ^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 -     Toml(toml::de::Error),
[INFO] [stdout] 5 +     Toml(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ParseMsg(ParseMessageError),
[INFO] [stdout]   |     -------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 6 -     ParseMsg(ParseMessageError),
[INFO] [stdout] 6 +     ParseMsg(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 308 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getgrent_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:304:1
[INFO] [stdout]     |
[INFO] [stdout] 304 | / pub unsafe extern "C" fn _nss_sectora_getgrent_r(grptr: *mut Group, buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 305 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 306 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 309 |     let msg = try_unwrap!(conn.communicate(CMsg::Gr(Gr::Ent(Ent::Get(process::id())))), errnop);
[INFO] [stdout]     |               --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:312:17
[INFO] [stdout]     |
[INFO] [stdout] 312 |         match { (*grptr).pack_args(&mut buffer, &sector.get_group(), sector.get_gid(), &members) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 314 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 317 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Id(std::num::ParseIntError),
[INFO] [stdout]    |     -- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 26 -     Id(std::num::ParseIntError),
[INFO] [stdout] 26 +     Id(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Sector(ParseSectorError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 -     Sector(ParseSectorError),
[INFO] [stdout] 33 +     Sector(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Gid(std::num::ParseIntError),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Gid(std::num::ParseIntError),
[INFO] [stdout] 34 +     Gid(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Member(std::num::ParseIntError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 35 -     Member(std::num::ParseIntError),
[INFO] [stdout] 35 +     Member(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]   --> src/lib.rs:75:17
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]    |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 91 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getpwnam_r"), errnop);
[INFO] [stdout]    |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/lib.rs:86:1
[INFO] [stdout]    |
[INFO] [stdout] 86 | / pub unsafe extern "C" fn _nss_sectora_getpwnam_r(cnameptr: *const libc::c_char, pwptr: *mut Passwd,
[INFO] [stdout] 87 | |                                                  buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 88 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 89 | |                                                  -> libc::c_int {
[INFO] [stdout]    | |_______________________________________________________________^
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/structs.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 12 |     pub token: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 13 |     pub org: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 14 |     #[serde(default = "default_team")]
[INFO] [stdout] 15 |     pub team: Vec<TeamConfig>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 16 |     #[serde(default = "default_repo")]
[INFO] [stdout] 17 |     pub repo: Vec<RepoConfig>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     #[serde(default = "default_endpoint")]
[INFO] [stdout] 19 |     pub endpoint: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 20 |     #[serde(default = "default_home")]
[INFO] [stdout] 21 |     pub home: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 22 |     #[serde(default = "default_sh")]
[INFO] [stdout] 23 |     pub sh: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 24 |     #[serde(default = "default_cache_duration")]
[INFO] [stdout] 25 |     pub cache_duration: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     #[serde(default = "default_cert_path")]
[INFO] [stdout] 27 |     pub cert_path: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 28 |     #[serde(default = "default_user_conf_path")]
[INFO] [stdout] 29 |     pub user_conf_path: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     #[serde(default = "default_cache_dir")]
[INFO] [stdout] 31 |     pub cache_dir: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 32 |     pub proxy_url: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PublicKey` is never constructed
[INFO] [stdout]    --> src/structs.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub struct PublicKey {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rate` is never constructed
[INFO] [stdout]    --> src/structs.rs:295:12
[INFO] [stdout]     |
[INFO] [stdout] 295 | pub struct Rate {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RateLimit` is never constructed
[INFO] [stdout]    --> src/structs.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct RateLimit {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]   --> src/lib.rs:75:17
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]    |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 92 |     let msg = try_unwrap!(conn.communicate(CMsg::Pw(Pw::Nam(string_from(cnameptr)))), errnop);
[INFO] [stdout]    |               ------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]    = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]   --> src/lib.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |         match { (*pwptr).pack_args(&mut buffer, &login, uid, gid, &home, &sh) } {
[INFO] [stdout]    |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 101 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 104 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 115 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getpwuid_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / pub unsafe extern "C" fn _nss_sectora_getpwuid_r(uid: libc::uid_t, pwptr: *mut Passwd, buf: *mut libc::c_char,
[INFO] [stdout] 112 | |                                                  buflen: libc::size_t, errnop: *mut libc::c_int)
[INFO] [stdout] 113 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 116 |     let msg = try_unwrap!(conn.communicate(CMsg::Pw(Pw::Uid(uid as u64))), errnop);
[INFO] [stdout]     |               -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:123:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |         match { (*pwptr).pack_args(&mut buffer, &login, uid, gid, &home, &sh) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 125 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Serde(serde_json::Error),
[INFO] [stdout]   |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 3 -     Serde(serde_json::Error),
[INFO] [stdout] 3 +     Serde(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Io(std::io::Error),
[INFO] [stdout]   |     -- ^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 4 -     Io(std::io::Error),
[INFO] [stdout] 4 +     Io(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Toml(toml::de::Error),
[INFO] [stdout]   |     ---- ^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 -     Toml(toml::de::Error),
[INFO] [stdout] 5 +     Toml(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ParseMsg(ParseMessageError),
[INFO] [stdout]   |     -------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 6 -     ParseMsg(ParseMessageError),
[INFO] [stdout] 6 +     ParseMsg(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Id(std::num::ParseIntError),
[INFO] [stdout]    |     -- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 26 -     Id(std::num::ParseIntError),
[INFO] [stdout] 26 +     Id(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Sector(ParseSectorError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 -     Sector(ParseSectorError),
[INFO] [stdout] 33 +     Sector(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Gid(std::num::ParseIntError),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Gid(std::num::ParseIntError),
[INFO] [stdout] 34 +     Gid(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Member(std::num::ParseIntError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 35 -     Member(std::num::ParseIntError),
[INFO] [stdout] 35 +     Member(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/structs.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 12 |     pub token: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 13 |     pub org: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 14 |     #[serde(default = "default_team")]
[INFO] [stdout] 15 |     pub team: Vec<TeamConfig>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 16 |     #[serde(default = "default_repo")]
[INFO] [stdout] 17 |     pub repo: Vec<RepoConfig>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     #[serde(default = "default_endpoint")]
[INFO] [stdout] 19 |     pub endpoint: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 20 |     #[serde(default = "default_home")]
[INFO] [stdout] 21 |     pub home: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 22 |     #[serde(default = "default_sh")]
[INFO] [stdout] 23 |     pub sh: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 24 |     #[serde(default = "default_cache_duration")]
[INFO] [stdout] 25 |     pub cache_duration: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     #[serde(default = "default_cert_path")]
[INFO] [stdout] 27 |     pub cert_path: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 28 |     #[serde(default = "default_user_conf_path")]
[INFO] [stdout] 29 |     pub user_conf_path: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     #[serde(default = "default_cache_dir")]
[INFO] [stdout] 31 |     pub cache_dir: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 32 |     pub proxy_url: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PublicKey` is never constructed
[INFO] [stdout]    --> src/structs.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub struct PublicKey {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rate` is never constructed
[INFO] [stdout]    --> src/structs.rs:295:12
[INFO] [stdout]     |
[INFO] [stdout] 295 | pub struct Rate {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RateLimit` is never constructed
[INFO] [stdout]    --> src/structs.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct RateLimit {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 152 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getpwent_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:148:1
[INFO] [stdout]     |
[INFO] [stdout] 148 | / pub unsafe extern "C" fn _nss_sectora_getpwent_r(pwptr: *mut Passwd, buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 149 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 150 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 153 |     let msg = try_unwrap!(conn.communicate(CMsg::Pw(Pw::Ent(Ent::Get(process::id())))), errnop);
[INFO] [stdout]     |               --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:160:17
[INFO] [stdout]     |
[INFO] [stdout] 160 |         match { (*pwptr).pack_args(&mut buffer, &login, uid, gid, &home, &sh) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 162 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 165 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 190 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getspnam_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:185:1
[INFO] [stdout]     |
[INFO] [stdout] 185 | / pub unsafe extern "C" fn _nss_sectora_getspnam_r(cnameptr: *const libc::c_char, spptr: *mut Spwd,
[INFO] [stdout] 186 | |                                                  buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 187 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 188 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 191 |     let msg = try_unwrap!(conn.communicate(CMsg::Sp(Sp::Nam(string_from(cnameptr)))), errnop);
[INFO] [stdout]     |               ------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:193:17
[INFO] [stdout]     |
[INFO] [stdout] 193 |         match { (*spptr).pack_args(&mut buffer, &login, &pass) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 195 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 198 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 222 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getspent_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:218:1
[INFO] [stdout]     |
[INFO] [stdout] 218 | / pub unsafe extern "C" fn _nss_sectora_getspent_r(spptr: *mut Spwd, buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 219 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 220 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 223 |     let msg = try_unwrap!(conn.communicate(CMsg::Sp(Sp::Ent(Ent::Get(process::id())))), errnop);
[INFO] [stdout]     |               --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:225:17
[INFO] [stdout]     |
[INFO] [stdout] 225 |         match { (*spptr).pack_args(&mut buffer, &login, &pass) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 227 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 230 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 254 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getgrgid_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | / pub unsafe extern "C" fn _nss_sectora_getgrgid_r(gid: libc::gid_t, grptr: *mut Group, buf: *mut libc::c_char,
[INFO] [stdout] 251 | |                                                  buflen: libc::size_t, errnop: *mut libc::c_int)
[INFO] [stdout] 252 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 255 |     let msg = try_unwrap!(conn.communicate(CMsg::Gr(Gr::Gid(gid as u64))), errnop);
[INFO] [stdout]     |               -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:258:17
[INFO] [stdout]     |
[INFO] [stdout] 258 |         match { (*grptr).pack_args(&mut buffer, &sector.get_group(), u64::from(gid), &members) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 260 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 263 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 275 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getgrnam_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:270:1
[INFO] [stdout]     |
[INFO] [stdout] 270 | / pub unsafe extern "C" fn _nss_sectora_getgrnam_r(cnameptr: *const libc::c_char, grptr: *mut Group,
[INFO] [stdout] 271 | |                                                  buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 272 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 273 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 276 |     let msg = try_unwrap!(conn.communicate(CMsg::Gr(Gr::Nam(string_from(cnameptr)))), errnop);
[INFO] [stdout]     |               ------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:279:17
[INFO] [stdout]     |
[INFO] [stdout] 279 |         match { (*grptr).pack_args(&mut buffer, &sector.get_group(), sector.get_gid(), &members) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 281 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 284 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 308 |     let conn = try_unwrap!(Connection::new("_nss_sectora_getgrent_r"), errnop);
[INFO] [stdout]     |                --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/lib.rs:304:1
[INFO] [stdout]     |
[INFO] [stdout] 304 | / pub unsafe extern "C" fn _nss_sectora_getgrent_r(grptr: *mut Group, buf: *mut libc::c_char, buflen: libc::size_t,
[INFO] [stdout] 305 | |                                                  errnop: *mut libc::c_int)
[INFO] [stdout] 306 | |                                                  -> libc::c_int {
[INFO] [stdout]     | |_______________________________________________________________^
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:75:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 *$err_no_p = Errno::EAGAIN as libc::c_int;
[INFO] [stdout]     |                 ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 309 |     let msg = try_unwrap!(conn.communicate(CMsg::Gr(Gr::Ent(Ent::Get(process::id())))), errnop);
[INFO] [stdout]     |               --------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `try_unwrap` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:312:17
[INFO] [stdout]     |
[INFO] [stdout] 312 |         match { (*grptr).pack_args(&mut buffer, &sector.get_group(), sector.get_gid(), &members) } {
[INFO] [stdout]     |                 ^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 314 |             Err(_) => fail!(errnop, Errno::ERANGE, NssStatus::TryAgain),
[INFO] [stdout]     |                       ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/lib.rs:51:9
[INFO] [stdout]     |
[INFO] [stdout]  51 |         *$err_no_p = $err_no as libc::c_int;
[INFO] [stdout]     |         ^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout] ...
[INFO] [stdout] 317 |     fail!(errnop, Errno::ENOENT, NssStatus::NotFound)
[INFO] [stdout]     |     ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Serde(serde_json::Error),
[INFO] [stdout]   |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 3 -     Serde(serde_json::Error),
[INFO] [stdout] 3 +     Serde(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Io(std::io::Error),
[INFO] [stdout]   |     -- ^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 4 -     Io(std::io::Error),
[INFO] [stdout] 4 +     Io(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Toml(toml::de::Error),
[INFO] [stdout]   |     ---- ^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 -     Toml(toml::de::Error),
[INFO] [stdout] 5 +     Toml(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ParseMsg(ParseMessageError),
[INFO] [stdout]   |     -------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 6 -     ParseMsg(ParseMessageError),
[INFO] [stdout] 6 +     ParseMsg(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Id(std::num::ParseIntError),
[INFO] [stdout]    |     -- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 26 -     Id(std::num::ParseIntError),
[INFO] [stdout] 26 +     Id(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Sector(ParseSectorError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 -     Sector(ParseSectorError),
[INFO] [stdout] 33 +     Sector(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Gid(std::num::ParseIntError),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Gid(std::num::ParseIntError),
[INFO] [stdout] 34 +     Gid(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Member(std::num::ParseIntError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 35 -     Member(std::num::ParseIntError),
[INFO] [stdout] 35 +     Member(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/structs.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 12 |     pub token: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 13 |     pub org: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 14 |     #[serde(default = "default_team")]
[INFO] [stdout] 15 |     pub team: Vec<TeamConfig>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 16 |     #[serde(default = "default_repo")]
[INFO] [stdout] 17 |     pub repo: Vec<RepoConfig>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 18 |     #[serde(default = "default_endpoint")]
[INFO] [stdout] 19 |     pub endpoint: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 20 |     #[serde(default = "default_home")]
[INFO] [stdout] 21 |     pub home: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 22 |     #[serde(default = "default_sh")]
[INFO] [stdout] 23 |     pub sh: String,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 24 |     #[serde(default = "default_cache_duration")]
[INFO] [stdout] 25 |     pub cache_duration: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     #[serde(default = "default_cert_path")]
[INFO] [stdout] 27 |     pub cert_path: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 28 |     #[serde(default = "default_user_conf_path")]
[INFO] [stdout] 29 |     pub user_conf_path: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     #[serde(default = "default_cache_dir")]
[INFO] [stdout] 31 |     pub cache_dir: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 32 |     pub proxy_url: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PublicKey` is never constructed
[INFO] [stdout]    --> src/structs.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub struct PublicKey {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rate` is never constructed
[INFO] [stdout]    --> src/structs.rs:295:12
[INFO] [stdout]     |
[INFO] [stdout] 295 | pub struct Rate {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RateLimit` is never constructed
[INFO] [stdout]    --> src/structs.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct RateLimit {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Serde(serde_json::Error),
[INFO] [stdout]   |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 3 -     Serde(serde_json::Error),
[INFO] [stdout] 3 +     Serde(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Io(std::io::Error),
[INFO] [stdout]   |     -- ^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 4 -     Io(std::io::Error),
[INFO] [stdout] 4 +     Io(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Toml(toml::de::Error),
[INFO] [stdout]   |     ---- ^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 -     Toml(toml::de::Error),
[INFO] [stdout] 5 +     Toml(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ParseMsg(ParseMessageError),
[INFO] [stdout]   |     -------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 6 -     ParseMsg(ParseMessageError),
[INFO] [stdout] 6 +     ParseMsg(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Id(std::num::ParseIntError),
[INFO] [stdout]    |     -- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 26 -     Id(std::num::ParseIntError),
[INFO] [stdout] 26 +     Id(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Sector(ParseSectorError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 -     Sector(ParseSectorError),
[INFO] [stdout] 33 +     Sector(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Gid(std::num::ParseIntError),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Gid(std::num::ParseIntError),
[INFO] [stdout] 34 +     Gid(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Member(std::num::ParseIntError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 35 -     Member(std::num::ParseIntError),
[INFO] [stdout] 35 +     Member(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `proxy_url` is never read
[INFO] [stdout]   --> src/structs.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub proxy_url: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Serde(serde_json::Error),
[INFO] [stdout]   |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 3 -     Serde(serde_json::Error),
[INFO] [stdout] 3 +     Serde(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 |     Io(std::io::Error),
[INFO] [stdout]   |     -- ^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 4 -     Io(std::io::Error),
[INFO] [stdout] 4 +     Io(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 |     Toml(toml::de::Error),
[INFO] [stdout]   |     ---- ^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 -     Toml(toml::de::Error),
[INFO] [stdout] 5 +     Toml(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ParseMsg(ParseMessageError),
[INFO] [stdout]   |     -------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 6 -     ParseMsg(ParseMessageError),
[INFO] [stdout] 6 +     ParseMsg(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Id(std::num::ParseIntError),
[INFO] [stdout]    |     -- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 26 -     Id(std::num::ParseIntError),
[INFO] [stdout] 26 +     Id(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Sector(ParseSectorError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 33 -     Sector(ParseSectorError),
[INFO] [stdout] 33 +     Sector(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Gid(std::num::ParseIntError),
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Gid(std::num::ParseIntError),
[INFO] [stdout] 34 +     Gid(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/error.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Member(std::num::ParseIntError),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseSectorGroupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 35 -     Member(std::num::ParseIntError),
[INFO] [stdout] 35 +     Member(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `proxy_url` is never read
[INFO] [stdout]   --> src/structs.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Config {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub proxy_url: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.78s
[INFO] running `Command { std: "docker" "inspect" "f02557d82521a562eb3929f3aecf67ae2252c6e826c48937a248c2bc326a03df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f02557d82521a562eb3929f3aecf67ae2252c6e826c48937a248c2bc326a03df", kill_on_drop: false }`
[INFO] [stdout] f02557d82521a562eb3929f3aecf67ae2252c6e826c48937a248c2bc326a03df
