[INFO] cloning repository https://github.com/darwinchow/simadmin-volte [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/darwinchow/simadmin-volte" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdarwinchow%2Fsimadmin-volte", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdarwinchow%2Fsimadmin-volte'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2e8d9af0189976cacabed07779f67f8d38060064 [INFO] checking darwinchow/simadmin-volte against 3154cc1a3e6424e44f438a95007d043ed5ceaaf6+rustflags=-Znext-solver=coherence for pr-133502-31 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdarwinchow%2Fsimadmin-volte" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/darwinchow/simadmin-volte [INFO] finished tweaking git repo https://github.com/darwinchow/simadmin-volte [INFO] tweaked toml for git repo https://github.com/darwinchow/simadmin-volte written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/darwinchow/simadmin-volte on toolchain 3154cc1a3e6424e44f438a95007d043ed5ceaaf6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/darwinchow/simadmin-volte 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" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded zvariant_utils v3.2.1 [INFO] [stderr] Downloaded zvariant_derive v5.8.0 [INFO] [stderr] Downloaded zbus v5.12.0 [INFO] [stderr] Downloaded unescaper v0.1.10 [INFO] [stderr] Downloaded zbus_macros v5.12.0 [INFO] [stderr] Downloaded zvariant v5.8.0 [INFO] [stderr] Downloaded mdns-sd v0.13.11 [INFO] [stderr] Downloaded serialport v4.10.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5 [INFO] running `Command { std: "docker" "start" "88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Znext-solver=coherence" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Checking log v0.4.28 [INFO] [stderr] Compiling cc v1.2.48 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking tracing-core v0.1.35 [INFO] [stderr] Checking bitflags v2.10.0 [INFO] [stderr] Checking lock_api v0.4.14 [INFO] [stderr] Checking http v1.4.0 [INFO] [stderr] Checking rustls-pki-types v1.13.1 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling icu_properties_data v2.1.1 [INFO] [stderr] Compiling rustls v0.23.35 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling toml_parser v1.0.4 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Checking http-body v1.0.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling toml_datetime v0.7.3 [INFO] [stderr] Checking webpki-roots v1.0.4 [INFO] [stderr] Compiling toml_edit v0.23.7 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Checking sync_wrapper v1.0.2 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Checking iana-time-zone v0.1.64 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Checking http-body-util v0.1.3 [INFO] [stderr] Checking ipnet v2.11.0 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Checking parking_lot_core v0.9.12 [INFO] [stderr] Checking mio v1.1.0 [INFO] [stderr] Checking signal-hook-registry v1.4.7 [INFO] [stderr] Checking socket2 v0.6.1 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Checking getrandom v0.3.4 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking uuid v1.19.0 [INFO] [stderr] Compiling proc-macro-crate v3.4.0 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking http-range-header v0.4.2 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Checking iri-string v0.7.9 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Compiling nix v0.30.1 [INFO] [stderr] Checking event-listener v5.4.1 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Checking hashlink v0.9.1 [INFO] [stderr] Checking endi v1.1.1 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking event-listener-strategy v0.5.4 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking sha1 v0.10.7 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Checking data-encoding v2.11.1 [INFO] [stderr] Checking anstyle-parse v0.2.7 [INFO] [stderr] Checking nix v0.26.4 [INFO] [stderr] Checking async-broadcast v0.7.2 [INFO] [stderr] Checking futures-lite v2.6.1 [INFO] [stderr] Checking hostname v0.4.2 [INFO] [stderr] Checking webpki-roots v0.26.11 [INFO] [stderr] Checking email-encoding v0.4.1 [INFO] [stderr] Checking nom v8.0.0 [INFO] [stderr] Checking aho-corasick v1.1.4 [INFO] [stderr] Checking ordered-stream v0.2.0 [INFO] [stderr] Checking linux-raw-sys v0.11.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Checking quoted_printable v0.5.2 [INFO] [stderr] Checking anstyle v1.0.13 [INFO] [stderr] Checking adler2 v2.0.1 [INFO] [stderr] Checking simd-adler32 v0.3.9 [INFO] [stderr] Checking rustls-webpki v0.103.8 [INFO] [stderr] Checking colorchoice v1.0.4 [INFO] [stderr] Checking regex-syntax v0.8.8 [INFO] [stderr] Checking email_address v0.2.9 [INFO] [stderr] Checking miniz_oxide v0.8.9 [INFO] [stderr] Checking anstream v0.6.21 [INFO] [stderr] Checking crc32fast v1.5.0 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking spin v0.9.9 [INFO] [stderr] Checking serde_path_to_error v0.1.20 [INFO] [stderr] Checking clap_lex v0.7.6 [INFO] [stderr] Checking clap_builder v4.5.53 [INFO] [stderr] Checking flume v0.11.1 [INFO] [stderr] Checking flate2 v1.1.9 [INFO] [stderr] Checking if-addrs v0.13.4 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Checking tokio v1.48.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking yoke v0.8.1 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Checking zerovec v0.11.5 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking tinystr v0.8.2 [INFO] [stderr] Checking tracing v0.1.43 [INFO] [stderr] Checking potential_utf v0.1.4 [INFO] [stderr] Checking icu_locale_core v2.1.1 [INFO] [stderr] Checking zerotrie v0.2.3 [INFO] [stderr] Checking icu_collections v2.1.1 [INFO] [stderr] Compiling enumflags2_derive v0.7.12 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Checking thiserror v2.0.17 [INFO] [stderr] Checking unescaper v0.1.10 [INFO] [stderr] Checking icu_provider v2.1.1 [INFO] [stderr] Checking tungstenite v0.29.0 [INFO] [stderr] Compiling serde_repr v0.1.20 [INFO] [stderr] Checking icu_normalizer v2.1.1 [INFO] [stderr] Checking icu_properties v2.1.1 [INFO] [stderr] Checking serialport v4.10.0 [INFO] [stderr] Checking axum-core v0.5.5 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Compiling zvariant_utils v3.2.1 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Compiling zvariant_derive v5.8.0 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking url v2.5.7 [INFO] [stderr] Compiling enumflags2 v0.7.12 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking simadmin-protocol v0.1.0 (/opt/rustwide/workdir/crates/simadmin-protocol) [INFO] [stderr] Compiling axum-macros v0.5.0 [INFO] [stderr] Checking tokio-rustls v0.26.4 [INFO] [stderr] Checking hyper v1.8.1 [INFO] [stderr] Checking tower v0.5.2 [INFO] [stderr] Checking tokio-util v0.7.17 [INFO] [stderr] Compiling zvariant v5.8.0 [INFO] [stderr] Checking tower-http v0.6.7 [INFO] [stderr] Checking hyper-util v0.1.18 [INFO] [stderr] Checking lettre v0.11.22 [INFO] [stderr] Checking rusqlite v0.32.1 [INFO] [stderr] Checking tokio-tungstenite v0.29.0 [INFO] [stderr] Checking matchers v0.2.0 [INFO] [stderr] Checking tempfile v3.23.0 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Compiling simadmin v1.1.13 (/opt/rustwide/workdir/backend) [INFO] [stderr] Checking tracing-subscriber v0.3.22 [INFO] [stderr] Checking zip v0.6.6 [INFO] [stderr] Checking simadmin-auth v0.1.0 (/opt/rustwide/workdir/crates/simadmin-auth) [INFO] [stderr] Checking mdns-sd v0.13.11 [INFO] [stderr] Checking md5 v0.7.0 [INFO] [stderr] Checking simadmin-device-core v0.1.0 (/opt/rustwide/workdir/crates/simadmin-device-core) [INFO] [stderr] Checking hyper-rustls v0.27.7 [INFO] [stderr] Compiling zbus_names v4.2.0 [INFO] [stderr] Checking reqwest v0.12.24 [INFO] [stderr] Checking axum v0.8.7 [INFO] [stderr] Compiling zbus_macros v5.12.0 [INFO] [stderr] Checking clap v4.5.53 [INFO] [stderr] Checking simadmin-notify v0.1.0 (/opt/rustwide/workdir/crates/simadmin-notify) [INFO] [stderr] Checking simadmin-agent v0.1.0 (/opt/rustwide/workdir/crates/simadmin-agent) [INFO] [stderr] Checking zbus v5.12.0 [INFO] [stderr] Checking simadmin-device-runtime v0.1.0 (/opt/rustwide/workdir/crates/simadmin-device-runtime) [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:52:17 [INFO] [stdout] | [INFO] [stdout] 52 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `identity::ImsIdentity` [INFO] [stdout] --> backend/src/volte/mod.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | pub use identity::ImsIdentity; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `VolteRuntimeStatus` and `VolteSupervisor` [INFO] [stdout] --> backend/src/volte/mod.rs:51:19 [INFO] [stdout] | [INFO] [stdout] 51 | pub use runtime::{VolteRuntimeStatus, VolteSupervisor}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SlotAllocation` [INFO] [stdout] --> backend/src/volte/mod.rs:52:30 [INFO] [stdout] | [INFO] [stdout] 52 | pub use slot::{DataPathMode, SlotAllocation}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VolteConfig` [INFO] [stdout] --> backend/src/volte_manager.rs:15:36 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::config::{ConfigManager, VolteConfig}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:52:17 [INFO] [stdout] | [INFO] [stdout] 52 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `identity::ImsIdentity` [INFO] [stdout] --> backend/src/volte/mod.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | pub use identity::ImsIdentity; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `VolteRuntimeStatus` and `VolteSupervisor` [INFO] [stdout] --> backend/src/volte/mod.rs:51:19 [INFO] [stdout] | [INFO] [stdout] 51 | pub use runtime::{VolteRuntimeStatus, VolteSupervisor}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SlotAllocation` [INFO] [stdout] --> backend/src/volte/mod.rs:52:30 [INFO] [stdout] | [INFO] [stdout] 52 | pub use slot::{DataPathMode, SlotAllocation}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VolteConfig` [INFO] [stdout] --> backend/src/volte_manager.rs:15:36 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::config::{ConfigManager, VolteConfig}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable call [INFO] [stdout] --> backend/src/hub_agent.rs:542:58 [INFO] [stdout] | [INFO] [stdout] 542 | .map_err(|error| AgentError::Execution(error.to_string()))?; [INFO] [stdout] | ----- ^^^^^^^^^ unreachable call [INFO] [stdout] | | [INFO] [stdout] | any code following this expression is unreachable [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable call [INFO] [stdout] --> backend/src/hub_agent.rs:542:58 [INFO] [stdout] | [INFO] [stdout] 542 | .map_err(|error| AgentError::Execution(error.to_string()))?; [INFO] [stdout] | ----- ^^^^^^^^^ unreachable call [INFO] [stdout] | | [INFO] [stdout] | any code following this expression is unreachable [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMS_SOURCE_IMS` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const SMS_SOURCE_IMS: &str = "volte_ims"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TRACE_PREFIX` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const TRACE_PREFIX: &str = "volte-sms-"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TRACE_FILE_PREFIX` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | pub const TRACE_FILE_PREFIX: &str = "volte-sms-trace-"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MO_TAG` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const MO_TAG: &str = "volte-mo:"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RP_ACK_TIMEOUT` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const RP_ACK_TIMEOUT: Duration = Duration::from_secs(15); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MULTIPART_TTL` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:53:11 [INFO] [stdout] | [INFO] [stdout] 53 | pub const MULTIPART_TTL: Duration = Duration::from_secs(600); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RpType` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:70:10 [INFO] [stdout] | [INFO] [stdout] 70 | pub enum RpType { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_octet` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl RpType { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 83 | pub fn from_octet(o: u8) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_rp_data_mo` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:102:8 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn encode_rp_data_mo(reference: u8, smsc: &str, tpdu: &[u8]) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_rp_ack` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn encode_rp_ack(reference: u8) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RpData` is never constructed [INFO] [stdout] --> backend/src/ims_sms.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct RpData { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decode_rp_data` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:135:8 [INFO] [stdout] | [INFO] [stdout] 135 | pub fn decode_rp_data(rpdu: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_address` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:173:8 [INFO] [stdout] | [INFO] [stdout] 173 | pub fn encode_address(number: &str) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decode_address` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:195:8 [INFO] [stdout] | [INFO] [stdout] 195 | pub fn decode_address(bytes: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Dcs` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:224:10 [INFO] [stdout] | [INFO] [stdout] 224 | pub enum Dcs { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Concat` is never constructed [INFO] [stdout] --> backend/src/ims_sms.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 233 | pub struct Concat { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_sms_submit` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:244:8 [INFO] [stdout] | [INFO] [stdout] 244 | pub fn encode_sms_submit( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `encode_user_data` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:273:4 [INFO] [stdout] | [INFO] [stdout] 273 | fn encode_user_data( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SmsDeliver` is never constructed [INFO] [stdout] --> backend/src/ims_sms.rs:329:12 [INFO] [stdout] | [INFO] [stdout] 329 | pub struct SmsDeliver { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decode_sms_deliver` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:338:8 [INFO] [stdout] | [INFO] [stdout] 338 | pub fn decode_sms_deliver(tpdu: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decode_user_data` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:392:4 [INFO] [stdout] | [INFO] [stdout] 392 | fn decode_user_data( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GSM7_BASIC` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:474:7 [INFO] [stdout] | [INFO] [stdout] 474 | const GSM7_BASIC: &str = "@£$¥èéùìòÇ\nØø\rÅåΔ_ΦΓΛΩΠΨΣΘΞ\u{1b}ÆæßÉ !\"#¤%&'()*+,-./0123456789:;<=>?¡ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÑܧ¿... [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gsm7_encode` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:476:4 [INFO] [stdout] | [INFO] [stdout] 476 | fn gsm7_encode(text: &str) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gsm7_decode` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:489:4 [INFO] [stdout] | [INFO] [stdout] 489 | fn gsm7_decode(septets: &[u8]) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gsm7_pack` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:498:4 [INFO] [stdout] | [INFO] [stdout] 498 | fn gsm7_pack(septets: &[u8], pad: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gsm7_unpack` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:520:4 [INFO] [stdout] | [INFO] [stdout] 520 | fn gsm7_unpack(octets: &[u8], count: usize, pad: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PartialMessage` is never constructed [INFO] [stdout] --> backend/src/ims_sms.rs:545:8 [INFO] [stdout] | [INFO] [stdout] 545 | struct PartialMessage { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultipartCache` is never constructed [INFO] [stdout] --> backend/src/ims_sms.rs:554:12 [INFO] [stdout] | [INFO] [stdout] 554 | pub struct MultipartCache { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MultipartOutcome` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:560:10 [INFO] [stdout] | [INFO] [stdout] 560 | pub enum MultipartOutcome { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `offer` are never used [INFO] [stdout] --> backend/src/ims_sms.rs:569:12 [INFO] [stdout] | [INFO] [stdout] 568 | impl MultipartCache { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 569 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 574 | pub fn offer(&self, msg: &SmsDeliver) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `segment_text` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:627:8 [INFO] [stdout] | [INFO] [stdout] 627 | pub fn segment_text(text: &str, dcs: Dcs) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `choose_dcs` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:643:8 [INFO] [stdout] | [INFO] [stdout] 643 | pub fn choose_dcs(text: &str) -> Dcs { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `duplicate_key` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:654:8 [INFO] [stdout] | [INFO] [stdout] 654 | pub fn duplicate_key(sender: &str, scts: &[u8; 7], text: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENCODE_FAILED` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:56:15 [INFO] [stdout] | [INFO] [stdout] 56 | pub const ENCODE_FAILED: &str = "volte_sms_encode_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RP_ACK_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:57:15 [INFO] [stdout] | [INFO] [stdout] 57 | pub const RP_ACK_SEND_FAILED: &str = "rp_ack_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RP_ACK_TIMEOUT` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:58:15 [INFO] [stdout] | [INFO] [stdout] 58 | pub const RP_ACK_TIMEOUT: &str = "rp_ack_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RP_ACK_UNCONFIRMED` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:59:15 [INFO] [stdout] | [INFO] [stdout] 59 | pub const RP_ACK_UNCONFIRMED: &str = "rp_ack_unconfirmed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NO_RP_ACK_TIMEOUT` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:60:15 [INFO] [stdout] | [INFO] [stdout] 60 | pub const NO_RP_ACK_TIMEOUT: &str = "no_rp_ack_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CACHE_LOCK_POISONED` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | pub const CACHE_LOCK_POISONED: &str = "Native VoLTE MT multipart cache lock poisoned"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_PROXY_SOCKET` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const QMI_PROXY_SOCKET: &str = "@qmi-proxy"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_CARD_STATUS` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const QMI_CARD_STATUS: &str = "--uim-get-card-status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_READ_EF_AD` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const QMI_READ_EF_AD: &str = "--uim-read-transparent=0x3F00,0x7FFF,0x6FAD"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INS_MANAGE_CHANNEL` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:95:7 [INFO] [stdout] | [INFO] [stdout] 95 | const INS_MANAGE_CHANNEL: u8 = 0x70; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INS_SELECT` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:96:7 [INFO] [stdout] | [INFO] [stdout] 96 | const INS_SELECT: u8 = 0xA4; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INS_AUTHENTICATE` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:97:7 [INFO] [stdout] | [INFO] [stdout] 97 | const INS_AUTHENTICATE: u8 = 0x88; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INS_GET_RESPONSE` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:98:7 [INFO] [stdout] | [INFO] [stdout] 98 | const INS_GET_RESPONSE: u8 = 0xC0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLA_BASE` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:101:7 [INFO] [stdout] | [INFO] [stdout] 101 | const CLA_BASE: u8 = 0x00; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TAG_AKA_SUCCESS` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:104:7 [INFO] [stdout] | [INFO] [stdout] 104 | const TAG_AKA_SUCCESS: u8 = 0xDB; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TAG_AKA_SYNC_FAILURE` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:105:7 [INFO] [stdout] | [INFO] [stdout] 105 | const TAG_AKA_SYNC_FAILURE: u8 = 0xDC; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StatusWord` is never constructed [INFO] [stdout] --> backend/src/ims_uim.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct StatusWord { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `is_success`, `more_data`, `wrong_length`, and `to_error` are never used [INFO] [stdout] --> backend/src/ims_uim.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 114 | impl StatusWord { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 115 | pub fn new(sw1: u8, sw2: u8) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub fn is_success(self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn more_data(self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn wrong_length(self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | pub fn to_error(self) -> Option<&'static str> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CommandApdu` is never constructed [INFO] [stdout] --> backend/src/ims_uim.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `encode` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:168:12 [INFO] [stdout] | [INFO] [stdout] 165 | impl CommandApdu { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn encode(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cla_for_channel` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:185:8 [INFO] [stdout] | [INFO] [stdout] 185 | pub fn cla_for_channel(channel: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apdu_open_channel` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:192:8 [INFO] [stdout] | [INFO] [stdout] 192 | pub fn apdu_open_channel() -> CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apdu_close_channel` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:204:8 [INFO] [stdout] | [INFO] [stdout] 204 | pub fn apdu_close_channel(channel: u8) -> CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apdu_select_aid` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:216:8 [INFO] [stdout] | [INFO] [stdout] 216 | pub fn apdu_select_aid(channel: u8, aid: &[u8]) -> CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apdu_authenticate` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:232:8 [INFO] [stdout] | [INFO] [stdout] 232 | pub fn apdu_authenticate(channel: u8, rand: &[u8; 16], autn: &[u8; 16]) -> CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apdu_get_response` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:249:8 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn apdu_get_response(channel: u8, len: u8) -> CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_response` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn split_response(resp: &[u8]) -> Result<(&[u8], StatusWord), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_authenticate_response` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:280:8 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn parse_authenticate_response(body: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_ef_ad` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:326:8 [INFO] [stdout] | [INFO] [stdout] 326 | pub fn parse_ef_ad(body: &[u8]) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_CRSM_EF_AD` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:339:11 [INFO] [stdout] | [INFO] [stdout] 339 | pub const AT_CRSM_EF_AD: &str = "AT+CRSM=176,28589,0,0,4"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_crsm` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:342:8 [INFO] [stdout] | [INFO] [stdout] 342 | pub fn parse_crsm(response: &str) -> Result<(StatusWord, Vec), String> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROXY_CONNECT_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:68:15 [INFO] [stdout] | [INFO] [stdout] 68 | pub const PROXY_CONNECT_FAILED: &str = "sim_auth_proxy_connect_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROXY_OPEN_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:69:15 [INFO] [stdout] | [INFO] [stdout] 69 | pub const PROXY_OPEN_FAILED: &str = "sim_auth_proxy_open_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UIM_CLIENT_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:70:15 [INFO] [stdout] | [INFO] [stdout] 70 | pub const UIM_CLIENT_FAILED: &str = "sim_auth_uim_client_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOGICAL_CHANNEL_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:71:15 [INFO] [stdout] | [INFO] [stdout] 71 | pub const LOGICAL_CHANNEL_FAILED: &str = "sim_auth_logical_channel_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOGICAL_CHANNEL_CLOSE_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:72:15 [INFO] [stdout] | [INFO] [stdout] 72 | pub const LOGICAL_CHANNEL_CLOSE_FAILED: &str = "sim_auth_logical_channel_close_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_EXCHANGE_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | pub const APDU_EXCHANGE_FAILED: &str = "sim_auth_apdu_exchange_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_SECURITY_STATUS` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:74:15 [INFO] [stdout] | [INFO] [stdout] 74 | pub const APDU_SECURITY_STATUS: &str = "sim_auth_apdu_security_status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_BUILD_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:75:15 [INFO] [stdout] | [INFO] [stdout] 75 | pub const APDU_BUILD_FAILED: &str = "sim_auth_apdu_build_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_MORE_DATA_UNHANDLED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:76:15 [INFO] [stdout] | [INFO] [stdout] 76 | pub const APDU_MORE_DATA_UNHANDLED: &str = "sim_auth_apdu_more_data_unhandled"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_WRONG_LENGTH` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:77:15 [INFO] [stdout] | [INFO] [stdout] 77 | pub const APDU_WRONG_LENGTH: &str = "sim_auth_apdu_wrong_length"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_WRONG_LENGTH_UNHANDLED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:78:15 [INFO] [stdout] | [INFO] [stdout] 78 | pub const APDU_WRONG_LENGTH_UNHANDLED: &str = "sim_auth_apdu_wrong_length_unhandled"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_INSTRUCTION_NOT_SUPPORTED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:79:15 [INFO] [stdout] | [INFO] [stdout] 79 | pub const APDU_INSTRUCTION_NOT_SUPPORTED: &str = "sim_auth_apdu_instruction_not_supported"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_CLASS_NOT_SUPPORTED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:80:15 [INFO] [stdout] | [INFO] [stdout] 80 | pub const APDU_CLASS_NOT_SUPPORTED: &str = "sim_auth_apdu_class_not_supported"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APDU_PARAMETER_REJECTED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:81:15 [INFO] [stdout] | [INFO] [stdout] 81 | pub const APDU_PARAMETER_REJECTED: &str = "sim_auth_apdu_parameter_rejected"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKA_RESPONSE_EMPTY` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:82:15 [INFO] [stdout] | [INFO] [stdout] 82 | pub const AKA_RESPONSE_EMPTY: &str = "sim_auth_aka_response_empty"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKA_RESPONSE_PARSE_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:83:15 [INFO] [stdout] | [INFO] [stdout] 83 | pub const AKA_RESPONSE_PARSE_FAILED: &str = "sim_auth_aka_response_parse_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKA_RESPONSE_UNKNOWN_TAG` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:84:15 [INFO] [stdout] | [INFO] [stdout] 84 | pub const AKA_RESPONSE_UNKNOWN_TAG: &str = "sim_auth_aka_response_unknown_tag"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKA_SUCCESS_PARSE_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:85:15 [INFO] [stdout] | [INFO] [stdout] 85 | pub const AKA_SUCCESS_PARSE_FAILED: &str = "sim_auth_aka_success_parse_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKA_SYNC_FAILURE_PARSE_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:86:15 [INFO] [stdout] | [INFO] [stdout] 86 | pub const AKA_SYNC_FAILURE_PARSE_FAILED: &str = "sim_auth_aka_sync_failure_parse_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RETRY_NOT_ATTEMPTED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:87:15 [INFO] [stdout] | [INFO] [stdout] 87 | pub const RETRY_NOT_ATTEMPTED: &str = "sim_auth_retry_not_attempted"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_CREATE_BEARER_PREFIX` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:48:7 [INFO] [stdout] | [INFO] [stdout] 48 | const ARG_CREATE_BEARER_PREFIX: &str = "--create-bearer=apn="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_CREATE_IP_TYPE` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | const ARG_CREATE_IP_TYPE: &str = ",ip-type="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_CREATE_ALLOW_ROAMING` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:50:7 [INFO] [stdout] | [INFO] [stdout] 50 | const ARG_CREATE_ALLOW_ROAMING: &str = ",allow-roaming="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_DELETE_BEARER_PREFIX` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:51:7 [INFO] [stdout] | [INFO] [stdout] 51 | const ARG_DELETE_BEARER_PREFIX: &str = "--delete-bearer="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_CONNECT` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:52:7 [INFO] [stdout] | [INFO] [stdout] 52 | const ARG_CONNECT: &str = "--connect"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_DISCONNECT` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:53:7 [INFO] [stdout] | [INFO] [stdout] 53 | const ARG_DISCONNECT: &str = "--disconnect"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_KEYVALUE` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:56:7 [INFO] [stdout] | [INFO] [stdout] 56 | const ARG_KEYVALUE: &str = "-K"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_BEARER` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:57:7 [INFO] [stdout] | [INFO] [stdout] 57 | const ARG_BEARER: &str = "-b"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BEARER_PATH_PREFIX` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:59:7 [INFO] [stdout] | [INFO] [stdout] 59 | const BEARER_PATH_PREFIX: &str = "/org/freedesktop/ModemManager1/Bearer/"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_CONNECTED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:61:7 [INFO] [stdout] | [INFO] [stdout] 61 | const P_CONNECTED: &str = "bearer.status.connected"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_INTERFACE` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:62:7 [INFO] [stdout] | [INFO] [stdout] 62 | const P_INTERFACE: &str = "bearer.status.interface"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_APN` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:63:7 [INFO] [stdout] | [INFO] [stdout] 63 | const P_APN: &str = "bearer.properties.apn"; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V4_ADDRESS` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:64:7 [INFO] [stdout] | [INFO] [stdout] 64 | const P_V4_ADDRESS: &str = "bearer.ipv4-config.address"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V4_PREFIX` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:65:7 [INFO] [stdout] | [INFO] [stdout] 65 | const P_V4_PREFIX: &str = "bearer.ipv4-config.prefix"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V4_GATEWAY` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:66:7 [INFO] [stdout] | [INFO] [stdout] 66 | const P_V4_GATEWAY: &str = "bearer.ipv4-config.gateway"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V4_DNS` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:67:7 [INFO] [stdout] | [INFO] [stdout] 67 | const P_V4_DNS: &str = "bearer.ipv4-config.dns"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V6_ADDRESS` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:68:7 [INFO] [stdout] | [INFO] [stdout] 68 | const P_V6_ADDRESS: &str = "bearer.ipv6-config.address"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V6_PREFIX` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:69:7 [INFO] [stdout] | [INFO] [stdout] 69 | const P_V6_PREFIX: &str = "bearer.ipv6-config.prefix"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V6_GATEWAY` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:70:7 [INFO] [stdout] | [INFO] [stdout] 70 | const P_V6_GATEWAY: &str = "bearer.ipv6-config.gateway"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V6_DNS` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:71:7 [INFO] [stdout] | [INFO] [stdout] 71 | const P_V6_DNS: &str = "bearer.ipv6-config.dns"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_LOCK_POISONED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:74:7 [INFO] [stdout] | [INFO] [stdout] 74 | const E_LOCK_POISONED: &str = "managed_mm_data_operation_lock_poisoned"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_APN_MISSING` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:75:7 [INFO] [stdout] | [INFO] [stdout] 75 | const E_APN_MISSING: &str = "managed_mm_data_apn_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_BEARER_PATH_MISSING` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:76:7 [INFO] [stdout] | [INFO] [stdout] 76 | const E_BEARER_PATH_MISSING: &str = "managed_mm_data_bearer_path_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_BEARER_NOT_CONNECTED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:77:7 [INFO] [stdout] | [INFO] [stdout] 77 | const E_BEARER_NOT_CONNECTED: &str = "managed_mm_data_bearer_not_connected"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_SETTINGS_NOT_READY` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:78:7 [INFO] [stdout] | [INFO] [stdout] 78 | const E_SETTINGS_NOT_READY: &str = "managed_mm_data_settings_not_ready"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV4_INVALID` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:79:7 [INFO] [stdout] | [INFO] [stdout] 79 | const E_IPV4_INVALID: &str = "managed_mm_data_ipv4_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_PREFIX_INVALID` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:80:7 [INFO] [stdout] | [INFO] [stdout] 80 | const E_PREFIX_INVALID: &str = "managed_mm_data_prefix_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_GATEWAY_INVALID` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:81:7 [INFO] [stdout] | [INFO] [stdout] 81 | const E_GATEWAY_INVALID: &str = "managed_mm_data_gateway_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_INVALID` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:82:7 [INFO] [stdout] | [INFO] [stdout] 82 | const E_IPV6_INVALID: &str = "managed_mm_data_ipv6_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_GATEWAY_INVALID` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:83:7 [INFO] [stdout] | [INFO] [stdout] 83 | const E_IPV6_GATEWAY_INVALID: &str = "managed_mm_data_ipv6_gateway_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_UNEXPECTED_INTERFACE` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:85:7 [INFO] [stdout] | [INFO] [stdout] 85 | const E_UNEXPECTED_INTERFACE: &str = "managed_mm_data_unexpected_interface"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_DUAL_STACK_FAILED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:86:7 [INFO] [stdout] | [INFO] [stdout] 86 | const E_DUAL_STACK_FAILED: &str = "managed_mm_data_dual_stack_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV4_FAILED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:87:7 [INFO] [stdout] | [INFO] [stdout] 87 | const E_IPV4_FAILED: &str = "ipv4_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROUTE_METRIC` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:93:7 [INFO] [stdout] | [INFO] [stdout] 93 | const ROUTE_METRIC: u32 = 730; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SETTINGS_POLL_ATTEMPTS` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:96:7 [INFO] [stdout] | [INFO] [stdout] 96 | const SETTINGS_POLL_ATTEMPTS: u32 = 25; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OPERATION_LOCK` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:98:8 [INFO] [stdout] | [INFO] [stdout] 98 | static OPERATION_LOCK: Mutex<()> = Mutex::new(()); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `IpType` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:106:10 [INFO] [stdout] | [INFO] [stdout] 106 | pub enum IpType { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 112 | impl IpType { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 113 | /// mmcli spelling. [INFO] [stdout] 114 | fn as_str(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AuthMethod` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | pub enum AuthMethod { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:132:8 [INFO] [stdout] | [INFO] [stdout] 131 | impl AuthMethod { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 132 | fn as_str(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ManagedDataRequest` is never constructed [INFO] [stdout] --> backend/src/managed_mm_data.rs:142:12 [INFO] [stdout] | [INFO] [stdout] 142 | pub struct ManagedDataRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Ipv4Config` is never constructed [INFO] [stdout] --> backend/src/managed_mm_data.rs:152:8 [INFO] [stdout] | [INFO] [stdout] 152 | struct Ipv4Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Ipv6Config` is never constructed [INFO] [stdout] --> backend/src/managed_mm_data.rs:160:8 [INFO] [stdout] | [INFO] [stdout] 160 | struct Ipv6Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ManagedDataState` is never constructed [INFO] [stdout] --> backend/src/managed_mm_data.rs:168:12 [INFO] [stdout] | [INFO] [stdout] 168 | pub struct ManagedDataState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `age_secs` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 179 | impl ManagedDataState { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 180 | fn age_secs(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `activate` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:195:8 [INFO] [stdout] | [INFO] [stdout] 195 | pub fn activate(req: &ManagedDataRequest, state: &mut ManagedDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_activate` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:233:4 [INFO] [stdout] | [INFO] [stdout] 233 | fn try_activate(req: &ManagedDataRequest, state: &mut ManagedDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_bearer` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:311:4 [INFO] [stdout] | [INFO] [stdout] 311 | fn create_bearer(req: &ManagedDataRequest) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `connect_bearer` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:340:4 [INFO] [stdout] | [INFO] [stdout] 340 | fn connect_bearer(path: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `delete_bearer` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:345:4 [INFO] [stdout] | [INFO] [stdout] 345 | fn delete_bearer(path: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `wait_for_settings` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:353:4 [INFO] [stdout] | [INFO] [stdout] 353 | fn wait_for_settings(path: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deactivate` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:384:8 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn deactivate(state: &mut ManagedDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cleanup_before_nm` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:420:8 [INFO] [stdout] | [INFO] [stdout] 420 | pub fn cleanup_before_nm(state: &mut ManagedDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mmcli` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:432:4 [INFO] [stdout] | [INFO] [stdout] 432 | fn mmcli(args: &[&str]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_keyvalue` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:446:4 [INFO] [stdout] | [INFO] [stdout] 446 | fn parse_keyvalue(out: &str) -> std::collections::BTreeMap { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_bearer_path` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:460:4 [INFO] [stdout] | [INFO] [stdout] 460 | fn parse_bearer_path(out: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_ipv4` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:467:4 [INFO] [stdout] | [INFO] [stdout] 467 | fn parse_ipv4(p: &std::collections::BTreeMap) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_ipv6` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:497:4 [INFO] [stdout] | [INFO] [stdout] 497 | fn parse_ipv6(p: &std::collections::BTreeMap) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ip_bin` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:531:4 [INFO] [stdout] | [INFO] [stdout] 531 | fn ip_bin() -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_ipv4` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:539:4 [INFO] [stdout] | [INFO] [stdout] 539 | fn configure_ipv4(iface: &str, cfg: &Ipv4Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_ipv6` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:561:4 [INFO] [stdout] | [INFO] [stdout] 561 | fn configure_ipv6(iface: &str, cfg: &Ipv6Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_dns` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:589:4 [INFO] [stdout] | [INFO] [stdout] 589 | fn configure_dns(iface: &str, v4: &Ipv4Config, v6: Option<&Ipv6Config>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `nm_active` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:616:4 [INFO] [stdout] | [INFO] [stdout] 616 | fn nm_active() -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:624:4 [INFO] [stdout] | [INFO] [stdout] 624 | fn run(bin: &str, args: &[&str]) -> Result<()> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> backend/src/ota.rs:1294:5 [INFO] [stdout] | [INFO] [stdout] 1293 | struct BackupPlanEntry { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 1294 | source: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BackupPlanEntry` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENV_PRIMARY_QMI_DEVICE` is never used [INFO] [stdout] --> backend/src/secondary_qmi.rs:88:7 [INFO] [stdout] | [INFO] [stdout] 88 | const ENV_PRIMARY_QMI_DEVICE: &str = "SIMADMIN_PRIMARY_QMI_DEVICE"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_runtime_state` is never used [INFO] [stdout] --> backend/src/secondary_qmi.rs:486:8 [INFO] [stdout] | [INFO] [stdout] 486 | pub fn load_runtime_state() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `primary_qmi_device` is never used [INFO] [stdout] --> backend/src/secondary_qmi.rs:530:8 [INFO] [stdout] | [INFO] [stdout] 530 | pub fn primary_qmi_device() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_CLIENT_NO_RELEASE_CID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:63:7 [INFO] [stdout] | [INFO] [stdout] 63 | const ARG_CLIENT_NO_RELEASE_CID: &str = "--client-no-release-cid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_WDS_NOOP` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:64:7 [INFO] [stdout] | [INFO] [stdout] 64 | const ARG_WDS_NOOP: &str = "--wds-noop"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_CLIENT_CID_PREFIX` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:65:7 [INFO] [stdout] | [INFO] [stdout] 65 | const ARG_CLIENT_CID_PREFIX: &str = "--client-cid="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_SET_IP_FAMILY_4` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:66:7 [INFO] [stdout] | [INFO] [stdout] 66 | const ARG_SET_IP_FAMILY_4: &str = "--wds-set-ip-family=4"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_SET_IP_FAMILY_6` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:67:7 [INFO] [stdout] | [INFO] [stdout] 67 | const ARG_SET_IP_FAMILY_6: &str = "--wds-set-ip-family=6"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_START_NETWORK_PREFIX` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:68:7 [INFO] [stdout] | [INFO] [stdout] 68 | const ARG_START_NETWORK_PREFIX: &str = "--wds-start-network=apn="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_START_SUFFIX_V4` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:69:7 [INFO] [stdout] | [INFO] [stdout] 69 | const ARG_START_SUFFIX_V4: &str = ",3gpp-profile=1,ip-type=4"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_START_SUFFIX_V6` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:70:7 [INFO] [stdout] | [INFO] [stdout] 70 | const ARG_START_SUFFIX_V6: &str = ",3gpp-profile=1,ip-type=6"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_STOP_NETWORK_PREFIX` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:71:7 [INFO] [stdout] | [INFO] [stdout] 71 | const ARG_STOP_NETWORK_PREFIX: &str = "--wds-stop-network="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_GET_CURRENT_SETTINGS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:72:7 [INFO] [stdout] | [INFO] [stdout] 72 | const ARG_GET_CURRENT_SETTINGS: &str = "--wds-get-current-settings"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_GET_PACKET_SERVICE_STATUS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:73:7 [INFO] [stdout] | [INFO] [stdout] 73 | const ARG_GET_PACKET_SERVICE_STATUS: &str = "--wds-get-packet-service-status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MARK_CID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:76:7 [INFO] [stdout] | [INFO] [stdout] 76 | const MARK_CID: &str = "CID:"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MARK_PACKET_DATA_HANDLE` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:77:7 [INFO] [stdout] | [INFO] [stdout] 77 | const MARK_PACKET_DATA_HANDLE: &str = "Packet data handle:"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MARK_CONNECTED` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:78:7 [INFO] [stdout] | [INFO] [stdout] 78 | const MARK_CONNECTED: &str = "Connection status: 'connected'"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_ADDRESS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:81:7 [INFO] [stdout] | [INFO] [stdout] 81 | const F_IPV4_ADDRESS: &str = "IPv4 address"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_MASK` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:82:7 [INFO] [stdout] | [INFO] [stdout] 82 | const F_IPV4_MASK: &str = "IPv4 subnet mask"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_GATEWAY` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:83:7 [INFO] [stdout] | [INFO] [stdout] 83 | const F_IPV4_GATEWAY: &str = "IPv4 gateway address"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_DNS1` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:84:7 [INFO] [stdout] | [INFO] [stdout] 84 | const F_IPV4_DNS1: &str = "IPv4 primary DNS"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_DNS2` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:85:7 [INFO] [stdout] | [INFO] [stdout] 85 | const F_IPV4_DNS2: &str = "IPv4 secondary DNS"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV6_ADDRESS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:86:7 [INFO] [stdout] | [INFO] [stdout] 86 | const F_IPV6_ADDRESS: &str = "IPv6 address"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV6_GATEWAY` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:87:7 [INFO] [stdout] | [INFO] [stdout] 87 | const F_IPV6_GATEWAY: &str = "IPv6 gateway address"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV6_DNS1` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:88:7 [INFO] [stdout] | [INFO] [stdout] 88 | const F_IPV6_DNS1: &str = "IPv6 primary DNS"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV6_DNS2` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:89:7 [INFO] [stdout] | [INFO] [stdout] 89 | const F_IPV6_DNS2: &str = "IPv6 secondary DNS"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MM_PROP_REGISTRATION_STATE` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:92:7 [INFO] [stdout] | [INFO] [stdout] 92 | const MM_PROP_REGISTRATION_STATE: &str = "modem.3gpp.registration-state"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REG_HOME` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:95:7 [INFO] [stdout] | [INFO] [stdout] 95 | const REG_HOME: &str = "home"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REG_ROAMING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:96:7 [INFO] [stdout] | [INFO] [stdout] 96 | const REG_ROAMING: &str = "roaming"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_LOCK_POISONED` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:100:7 [INFO] [stdout] | [INFO] [stdout] 100 | const E_LOCK_POISONED: &str = "secondary_qmi_data_operation_lock_poisoned"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_APN_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:101:7 [INFO] [stdout] | [INFO] [stdout] 101 | const E_APN_MISSING: &str = "secondary_qmi_data_apn_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_CID_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:102:7 [INFO] [stdout] | [INFO] [stdout] 102 | const E_CID_MISSING: &str = "secondary_qmi_data_cid_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_HANDLE_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:103:7 [INFO] [stdout] | [INFO] [stdout] 103 | const E_HANDLE_MISSING: &str = "secondary_qmi_data_handle_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_CID_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:104:7 [INFO] [stdout] | [INFO] [stdout] 104 | const E_IPV6_CID_MISSING: &str = "secondary_qmi_data_ipv6_cid_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_HANDLE_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:105:7 [INFO] [stdout] | [INFO] [stdout] 105 | const E_IPV6_HANDLE_MISSING: &str = "secondary_qmi_data_ipv6_handle_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV4_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:106:7 [INFO] [stdout] | [INFO] [stdout] 106 | const E_IPV4_INVALID: &str = "secondary_qmi_data_ipv4_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_MASK_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:107:7 [INFO] [stdout] | [INFO] [stdout] 107 | const E_MASK_INVALID: &str = "secondary_qmi_data_mask_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_MASK_NON_CONTIGUOUS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:108:7 [INFO] [stdout] | [INFO] [stdout] 108 | const E_MASK_NON_CONTIGUOUS: &str = "secondary_qmi_data_mask_non_contiguous"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_GATEWAY_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:109:7 [INFO] [stdout] | [INFO] [stdout] 109 | const E_GATEWAY_INVALID: &str = "secondary_qmi_data_gateway_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:110:7 [INFO] [stdout] | [INFO] [stdout] 110 | const E_IPV6_INVALID: &str = "secondary_qmi_data_ipv6_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_GATEWAY_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:111:7 [INFO] [stdout] | [INFO] [stdout] 111 | const E_IPV6_GATEWAY_INVALID: &str = "secondary_qmi_data_ipv6_gateway_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_PREFIX_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:112:7 [INFO] [stdout] | [INFO] [stdout] 112 | const E_IPV6_PREFIX_INVALID: &str = "secondary_qmi_data_ipv6_prefix_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_REG_STATE_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:113:7 [INFO] [stdout] | [INFO] [stdout] 113 | const E_REG_STATE_MISSING: &str = "secondary_qmi_data_registration_state_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_ROAMING_FORBIDDEN` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:114:7 [INFO] [stdout] | [INFO] [stdout] 114 | const E_ROAMING_FORBIDDEN: &str = "secondary_qmi_data_roaming_forbidden"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_REG_NOT_HOME` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:117:7 [INFO] [stdout] | [INFO] [stdout] 117 | const E_REG_NOT_HOME: &str = "secondary_qmi_data_registration_not_home"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_DEVICE_UNAVAILABLE` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:118:7 [INFO] [stdout] | [INFO] [stdout] 118 | const E_DEVICE_UNAVAILABLE: &str = "secondary_qmi_device_unavailable"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_DATA6_START_FAILED` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:119:7 [INFO] [stdout] | [INFO] [stdout] 119 | const E_DATA6_START_FAILED: &str = "secondary_qmi_data6_start_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROUTE_METRIC` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:126:7 [INFO] [stdout] | [INFO] [stdout] 126 | const ROUTE_METRIC: u32 = 729; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OPERATION_LOCK` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:129:8 [INFO] [stdout] | [INFO] [stdout] 129 | static OPERATION_LOCK: Mutex<()> = Mutex::new(()); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WdsSession` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 140 | pub struct WdsSession { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Ipv4Config` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:147:8 [INFO] [stdout] | [INFO] [stdout] 147 | struct Ipv4Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Ipv6Config` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | struct Ipv6Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecondaryDataState` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:166:12 [INFO] [stdout] | [INFO] [stdout] 166 | pub struct SecondaryDataState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `age_secs` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:179:8 [INFO] [stdout] | [INFO] [stdout] 178 | impl SecondaryDataState { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] 179 | fn age_secs(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecondaryDataRequest` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:186:12 [INFO] [stdout] | [INFO] [stdout] 186 | pub struct SecondaryDataRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `activate` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:204:8 [INFO] [stdout] | [INFO] [stdout] 204 | pub fn activate( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `IpFamily` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:318:6 [INFO] [stdout] | [INFO] [stdout] 318 | enum IpFamily { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_family_arg`, `start_suffix`, `cid_missing_err`, and `handle_missing_err` are never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:324:8 [INFO] [stdout] | [INFO] [stdout] 323 | impl IpFamily { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 324 | fn set_family_arg(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 330 | fn start_suffix(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | fn cid_missing_err(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 342 | fn handle_missing_err(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `start_session` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:351:4 [INFO] [stdout] | [INFO] [stdout] 351 | fn start_session( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `stop_session` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:381:4 [INFO] [stdout] | [INFO] [stdout] 381 | fn stop_session(ep: &SecondaryQmiEndpoint, s: WdsSession) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deactivate` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:393:8 [INFO] [stdout] | [INFO] [stdout] 393 | pub fn deactivate(state: &mut SecondaryDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_connected` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:436:8 [INFO] [stdout] | [INFO] [stdout] 436 | pub fn is_connected(ep: &SecondaryQmiEndpoint, s: WdsSession) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `qmicli` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:448:4 [INFO] [stdout] | [INFO] [stdout] 448 | fn qmicli(ep: &SecondaryQmiEndpoint, args: &[&str]) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_cid` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:465:4 [INFO] [stdout] | [INFO] [stdout] 465 | fn parse_cid(out: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_packet_data_handle` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:475:4 [INFO] [stdout] | [INFO] [stdout] 475 | fn parse_packet_data_handle(out: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `field` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:485:4 [INFO] [stdout] | [INFO] [stdout] 485 | fn field<'a>(out: &'a str, label: &str) -> Option<&'a str> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_ipv4_settings` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:498:4 [INFO] [stdout] | [INFO] [stdout] 498 | fn read_ipv4_settings(ep: &SecondaryQmiEndpoint, cid: u32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_ipv6_settings` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:528:4 [INFO] [stdout] | [INFO] [stdout] 528 | fn read_ipv6_settings(ep: &SecondaryQmiEndpoint, cid: u32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mask_to_prefix` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:567:4 [INFO] [stdout] | [INFO] [stdout] 567 | fn mask_to_prefix(mask: Ipv4Addr) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ip_bin` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:584:4 [INFO] [stdout] | [INFO] [stdout] 584 | fn ip_bin() -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_ipv4` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:592:4 [INFO] [stdout] | [INFO] [stdout] 592 | fn configure_ipv4(netdev: &str, cfg: &Ipv4Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_ipv6` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:615:4 [INFO] [stdout] | [INFO] [stdout] 615 | fn configure_ipv6(netdev: &str, cfg: &Ipv6Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `flush_interface` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:653:4 [INFO] [stdout] | [INFO] [stdout] 653 | fn flush_interface(netdev: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_dns` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:662:4 [INFO] [stdout] | [INFO] [stdout] 662 | fn configure_dns(netdev: &str, v4: &Ipv4Config, v6: Option<&Ipv6Config>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `nm_active` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:693:4 [INFO] [stdout] | [INFO] [stdout] 693 | fn nm_active() -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_registration_state` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:701:4 [INFO] [stdout] | [INFO] [stdout] 701 | fn read_registration_state() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:717:4 [INFO] [stdout] | [INFO] [stdout] 717 | fn run(bin: &str, args: &[&str]) -> Result<()> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MT_SIP_PORT` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const MT_SIP_PORT: u16 = 47482; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `LISTENER_STARTED` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | static LISTENER_STARTED: AtomicBool = AtomicBool::new(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RECENT_TTL` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:37:7 [INFO] [stdout] | [INFO] [stdout] 37 | const RECENT_TTL: std::time::Duration = std::time::Duration::from_secs(300); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recent_seen` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn recent_seen(sender: &str, text: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `remember_recent` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn remember_recent(sender: &str, text: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_mt_listener` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn spawn_mt_listener(ue: String, db: Arc, notifier: Arc) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | async fn run(db: Arc, notifier: Arc) -> Result<(), String> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bind_reuse` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:127:4 [INFO] [stdout] | [INFO] [stdout] 127 | fn bind_reuse(ue: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_packet` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:149:10 [INFO] [stdout] | [INFO] [stdout] 149 | async fn handle_packet( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_sip` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:272:4 [INFO] [stdout] | [INFO] [stdout] 272 | fn split_sip(data: &[u8]) -> Option<(String, &[u8])> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_response` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:291:4 [INFO] [stdout] | [INFO] [stdout] 291 | fn build_response(head: &str, rp_ack: Option, status: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IMS_DOMAIN_PREFIX` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const IMS_DOMAIN_PREFIX: &str = "ims.mnc"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IMS_DOMAIN_MID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const IMS_DOMAIN_MID: &str = ".mcc"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IMS_DOMAIN_SUFFIX` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const IMS_DOMAIN_SUFFIX: &str = ".3gppnetwork.org"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_READY_MARKER` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const QMI_READY_MARKER: &str = "/run/qmi_auto_activate.ready"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENV_MM_IMS_BEARER` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const ENV_MM_IMS_BEARER: &str = "SIMADMIN_MM_IMS_BEARER"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IP_BIN_CANDIDATES` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const IP_BIN_CANDIDATES: [&str; 2] = ["/bin/ip", "/usr/bin/ip"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_VERSION` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:80:11 [INFO] [stdout] | [INFO] [stdout] 80 | pub const SIP_VERSION: &str = "SIP/2.0"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_EXPIRES_SECS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:83:11 [INFO] [stdout] | [INFO] [stdout] 83 | pub const REGISTER_EXPIRES_SECS: u32 = 3600; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_RECV_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:86:11 [INFO] [stdout] | [INFO] [stdout] 86 | pub const SIP_RECV_TIMEOUT: Duration = Duration::from_secs(10); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VolteConfig` is never constructed [INFO] [stdout] --> backend/src/volte/mod.rs:257:12 [INFO] [stdout] | [INFO] [stdout] 257 | pub struct VolteConfig { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ApnProtocol` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:284:10 [INFO] [stdout] | [INFO] [stdout] 284 | pub enum ApnProtocol { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_cgdcont` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:292:12 [INFO] [stdout] | [INFO] [stdout] 290 | impl ApnProtocol { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 291 | /// `AT+CGDCONT=,"","ims"` [INFO] [stdout] 292 | pub fn as_cgdcont(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ImsFamily` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:303:10 [INFO] [stdout] | [INFO] [stdout] 303 | pub enum ImsFamily { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ip_bin` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:313:8 [INFO] [stdout] | [INFO] [stdout] 313 | pub fn ip_bin() -> Result<&'static str, String> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_hex` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:326:8 [INFO] [stdout] | [INFO] [stdout] 326 | pub fn parse_hex(s: &str) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ims_domain` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:345:8 [INFO] [stdout] | [INFO] [stdout] 345 | pub fn ims_domain(mcc: &str, mnc: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ims_apn` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:352:8 [INFO] [stdout] | [INFO] [stdout] 352 | pub fn ims_apn(mcc: &str, mnc: &str) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DigestAlgorithm` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | pub enum DigestAlgorithm { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `as_str`, `parse`, and `is_aka` are never used [INFO] [stdout] --> backend/src/volte/aka.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl DigestAlgorithm { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 38 | pub fn as_str(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn parse(s: &str) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn is_aka(self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKAV2_PASSWORD_LABEL` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const AKAV2_PASSWORD_LABEL: &str = "http-digest-akav2-password"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DigestChallenge` is never constructed [INFO] [stdout] --> backend/src/volte/aka.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 66 | pub struct DigestChallenge { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AkaChallenge` is never constructed [INFO] [stdout] --> backend/src/volte/aka.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | pub struct AkaChallenge { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AkaResult` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:86:10 [INFO] [stdout] | [INFO] [stdout] 86 | pub enum AkaResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_challenge` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:102:8 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn parse_challenge(header_value: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `aka_challenge_from_nonce` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:161:8 [INFO] [stdout] | [INFO] [stdout] 161 | pub fn aka_challenge_from_nonce(nonce: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `validate_aka_result` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:176:8 [INFO] [stdout] | [INFO] [stdout] 176 | pub fn validate_aka_result(r: &AkaResult, ipsec: bool) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `digest_password` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:212:8 [INFO] [stdout] | [INFO] [stdout] 212 | pub fn digest_password(alg: DigestAlgorithm, res: &[u8], ck: &[u8], ik: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `digest_response` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:234:8 [INFO] [stdout] | [INFO] [stdout] 234 | pub fn digest_response( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `authorization_header` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:280:8 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn authorization_header( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NONCE_COUNT` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:312:11 [INFO] [stdout] | [INFO] [stdout] 312 | pub const NONCE_COUNT: &str = "00000001"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_params` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:319:4 [INFO] [stdout] | [INFO] [stdout] 319 | fn split_params(s: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unquote` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:341:4 [INFO] [stdout] | [INFO] [stdout] 341 | fn unquote(s: &str) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hex` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:345:4 [INFO] [stdout] | [INFO] [stdout] 345 | fn hex(b: &[u8]) -> String { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `md5` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:351:4 [INFO] [stdout] | [INFO] [stdout] 351 | fn md5(data: &[u8]) -> [u8; 16] { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hmac_md5` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:355:4 [INFO] [stdout] | [INFO] [stdout] 355 | fn hmac_md5(key: &[u8], data: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `base64_encode` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:378:4 [INFO] [stdout] | [INFO] [stdout] 378 | fn base64_encode(b: &[u8]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `base64_decode` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:394:4 [INFO] [stdout] | [INFO] [stdout] 394 | fn base64_decode(s: &str) -> Result, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `S` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:429:11 [INFO] [stdout] | [INFO] [stdout] 429 | const S: [u32; 64] = [ [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:435:12 [INFO] [stdout] | [INFO] [stdout] 435 | pub fn compute(input: &[u8]) -> [u8; 16] { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IMS_APN_LABEL` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const IMS_APN_LABEL: &str = "ims"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_MARKER_WAIT` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const QMI_MARKER_WAIT: Duration = Duration::from_secs(30); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MODEM_PRESENT_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const MODEM_PRESENT_TIMEOUT: Duration = Duration::from_secs(60); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MODEM_READY_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const MODEM_READY_TIMEOUT: Duration = Duration::from_secs(45); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `at_define_context` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:42:8 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn at_define_context(cid: u32, proto: ApnProtocol) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `at_activate_context` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn at_activate_context(cid: u32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `at_deactivate_context` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn at_deactivate_context(cid: u32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `at_context_address` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn at_context_address(cid: u32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_LIST_CONTEXTS` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const AT_LIST_CONTEXTS: &str = "AT+CGDCONT?"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_LIST_ACTIVE` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const AT_LIST_ACTIVE: &str = "AT+CGACT?"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_ACTIVATE_PREFIX` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const AT_ACTIVATE_PREFIX: &str = "AT+CGACT=1,"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ImsProfileLease` is never constructed [INFO] [stdout] --> backend/src/volte/bearer.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct ImsProfileLease { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pick_profile` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn pick_profile( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_defined_contexts` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn parse_defined_contexts(response: &str) -> Vec<(u32, String)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_active_contexts` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:129:8 [INFO] [stdout] | [INFO] [stdout] 129 | pub fn parse_active_contexts(response: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mmcli_create_ims_bearer` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:151:8 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn mmcli_create_ims_bearer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `qmicli_start_ims_network` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:171:8 [INFO] [stdout] | [INFO] [stdout] 171 | pub fn qmicli_start_ims_network(apn: &str, cid: u32, family: ImsFamily) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ImsBearer` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:181:10 [INFO] [stdout] | [INFO] [stdout] 181 | pub enum ImsBearer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `interface`, `local`, `gateway`, `prefix`, `pcscf`, and `slot` are never used [INFO] [stdout] --> backend/src/volte/bearer.rs:204:12 [INFO] [stdout] | [INFO] [stdout] 203 | impl ImsBearer { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 204 | pub fn interface(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn local(&self) -> IpAddr { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn gateway(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn prefix(&self) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn pcscf(&self) -> &[IpAddr] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub fn slot(&self) -> ImsSlot { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `qmi_marker_present` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:250:8 [INFO] [stdout] | [INFO] [stdout] 250 | pub fn qmi_marker_present() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `qmi_marker_age_secs` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn qmi_marker_age_secs() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ModemReadiness` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:263:10 [INFO] [stdout] | [INFO] [stdout] 263 | pub enum ModemReadiness { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `classify_modem_state` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:277:8 [INFO] [stdout] | [INFO] [stdout] 277 | pub fn classify_modem_state(state: &str) -> ModemReadiness { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_roaming` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:290:8 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn check_roaming(state: &str, roaming_allowed: bool) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `should_recreate_bearer` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:310:8 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn should_recreate_bearer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `fallback_families` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:323:8 [INFO] [stdout] | [INFO] [stdout] 323 | pub fn fallback_families(granted_v4: bool, granted_v6: bool) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MncLengthSource` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:32:10 [INFO] [stdout] | [INFO] [stdout] 32 | pub enum MncLengthSource { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 43 | impl MncLengthSource { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] 44 | /// beta8 token spellings. Not emitted by beta9. [INFO] [stdout] 45 | pub fn as_str(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ImsIdentity` is never constructed [INFO] [stdout] --> backend/src/volte/identity.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 57 | pub struct ImsIdentity { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FALLBACK_USIM_AID` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | pub const FALLBACK_USIM_AID: [u8; 7] = [0xA0, 0x00, 0x00, 0x00, 0x87, 0x10, 0x02]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_CIMI` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const AT_CIMI: &str = "AT+CIMI"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_CRSM_EF_AD` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:87:11 [INFO] [stdout] | [INFO] [stdout] 87 | pub const AT_CRSM_EF_AD: &str = "AT+CRSM=176,28589,0,0,4"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_CARD_STATUS` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:89:11 [INFO] [stdout] | [INFO] [stdout] 89 | pub const QMI_CARD_STATUS: &str = "--uim-get-card-status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_READ_EF_AD` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:90:11 [INFO] [stdout] | [INFO] [stdout] 90 | pub const QMI_READ_EF_AD: &str = "--uim-read-transparent=0x3F00,0x7FFF,0x6FAD"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `L_APPLICATION_TYPE` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:93:7 [INFO] [stdout] | [INFO] [stdout] 93 | const L_APPLICATION_TYPE: &str = "application type:"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `L_APPLICATION_ID` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:94:7 [INFO] [stdout] | [INFO] [stdout] 94 | const L_APPLICATION_ID: &str = "application id:"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `V_USIM` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:96:7 [INFO] [stdout] | [INFO] [stdout] 96 | const V_USIM: &str = "usim"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_imsi` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:101:8 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn split_imsi(imsi: &str, mnc_len: usize) -> Result<(String, String), String> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mnc_length` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn mnc_length(ef_ad: Option<&[u8]>, mcc: &str, mm_operator_code: Option<&str>) -> (usize, MncLengthSource) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:141:8 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn build( [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_usim_aid` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:181:8 [INFO] [stdout] | [INFO] [stdout] 181 | pub fn parse_usim_aid(card_status: &str) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `own_number_from_p_associated_uri` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | pub fn own_number_from_p_associated_uri(header: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `normalise_uri` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:263:4 [INFO] [stdout] | [INFO] [stdout] 263 | fn normalise_uri(part: &str) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `same_sim` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:275:8 [INFO] [stdout] | [INFO] [stdout] 275 | pub fn same_sim(registered_imsi: &str, current_imsi: &str) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALG_HMAC_MD5_96` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const ALG_HMAC_MD5_96: &str = "hmac-md5-96"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EALG_NULL` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const EALG_NULL: &str = "null"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROT_ESP` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:43:11 [INFO] [stdout] | [INFO] [stdout] 43 | pub const PROT_ESP: &str = "prot=esp"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MOD_TRANS` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const MOD_TRANS: &str = "mod=trans"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `XFRM_AUTH_ALG` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:46:7 [INFO] [stdout] | [INFO] [stdout] 46 | const XFRM_AUTH_ALG: &str = "hmac(md5)"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `XFRM_AUTH_TRUNC_BITS` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:47:7 [INFO] [stdout] | [INFO] [stdout] 47 | const XFRM_AUTH_TRUNC_BITS: u32 = 96; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `XFRM_ENC_ALG` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:48:7 [INFO] [stdout] | [INFO] [stdout] 48 | const XFRM_ENC_ALG: &str = "cipher_null"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MECHANISM_IPSEC_3GPP` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | pub const MECHANISM_IPSEC_3GPP: &str = "ipsec-3gpp"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_SECURITY_CLIENT` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const H_SECURITY_CLIENT: &str = "Security-Client"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_SECURITY_VERIFY` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const H_SECURITY_VERIFY: &str = "Security-Verify"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_SECURITY_SERVER` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const H_SECURITY_SERVER: &str = "security-server"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_REQUIRE` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const H_REQUIRE: &str = "Require"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_PROXY_REQUIRE` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const H_PROXY_REQUIRE: &str = "Proxy-Require"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEC_AGREE` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const SEC_AGREE: &str = "sec-agree"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_MECHANISM` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const P_MECHANISM: &str = "mechanism"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_SPI_C` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | pub const P_SPI_C: &str = "spi-c"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_SPI_S` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const P_SPI_S: &str = "spi-s"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_PORT_C` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const P_PORT_C: &str = "port-c"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_PORT_S` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const P_PORT_S: &str = "port-s"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UE_PORT_MIN` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const UE_PORT_MIN: u16 = 40000; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UE_PORT_MAX` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const UE_PORT_MAX: u16 = 60000; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecurityClient` is never constructed [INFO] [stdout] --> backend/src/volte/ipsec.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct SecurityClient { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_header` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 92 | impl SecurityClient { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn to_header(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecurityServer` is never constructed [INFO] [stdout] --> backend/src/volte/ipsec.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct SecurityServer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_security_server` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:135:8 [INFO] [stdout] | [INFO] [stdout] 135 | pub fn parse_security_server(header_value: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `security_verify_header` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:191:8 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn security_verify_header(server: &SecurityServer) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IpsecContext` is never constructed [INFO] [stdout] --> backend/src/volte/ipsec.rs:197:12 [INFO] [stdout] | [INFO] [stdout] 197 | pub struct IpsecContext { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `local_send_port`, `local_receive_port`, `remote_server_port`, and `remote_client_port` are never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:208:12 [INFO] [stdout] | [INFO] [stdout] 206 | impl IpsecContext { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] 207 | /// UE socket used to send protected requests. [INFO] [stdout] 208 | pub fn local_send_port(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn local_receive_port(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn remote_server_port(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn remote_client_port(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `install` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:229:8 [INFO] [stdout] | [INFO] [stdout] 229 | pub fn install(ctx: &IpsecContext) -> Result>, String> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `state_add` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:264:4 [INFO] [stdout] | [INFO] [stdout] 264 | fn state_add( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `policy_add` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:286:4 [INFO] [stdout] | [INFO] [stdout] 286 | fn policy_add( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `teardown` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:314:8 [INFO] [stdout] | [INFO] [stdout] 314 | pub fn teardown() -> Result>, String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `require_ipv6` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:323:8 [INFO] [stdout] | [INFO] [stdout] 323 | pub fn require_ipv6(addr: IpAddr) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `at_enable_pcscf_reporting` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn at_enable_pcscf_reporting(cid: u32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `at_disable_pcscf_reporting` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn at_disable_pcscf_reporting(cid: u32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `at_read_dynamic_params` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn at_read_dynamic_params(cid: u32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PcscfSource` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:52:10 [INFO] [stdout] | [INFO] [stdout] 52 | pub enum PcscfSource { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `log_message` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl PcscfSource { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 64 | pub fn log_message(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PcscfCandidate` is never constructed [INFO] [stdout] --> backend/src/volte/pcscf.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct PcscfCandidate { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ImsBearerAddressing` is never constructed [INFO] [stdout] --> backend/src/volte/pcscf.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 84 | pub struct ImsBearerAddressing { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `family` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 91 | impl ImsBearerAddressing { [INFO] [stdout] | ------------------------ method in this implementation [INFO] [stdout] 92 | pub fn family(&self) -> ImsFamily { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_cgcontrdp` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:108:8 [INFO] [stdout] | [INFO] [stdout] 108 | pub fn parse_cgcontrdp(response: &str) -> Result<(IpAddr, Option, Vec), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_at_addr` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:145:8 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn parse_at_addr(s: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `filter_by_family` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:179:8 [INFO] [stdout] | [INFO] [stdout] 179 | pub fn filter_by_family( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_candidates` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 198 | pub fn collect_candidates( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `route_commands` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:237:8 [INFO] [stdout] | [INFO] [stdout] 237 | pub fn route_commands( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `require_gateway` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:298:8 [INFO] [stdout] | [INFO] [stdout] 298 | pub fn require_gateway(bearer: &ImsBearerAddressing) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> backend/src/volte/runtime.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 61 | pub enum Stage { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 64 | Identity, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 65 | /// USIM AID resolution + AKA capability probe. [INFO] [stdout] 66 | IdentityAka, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 67 | /// Waiting for radio attach. [INFO] [stdout] 68 | Radio, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 69 | /// Waiting for ModemManager to expose a usable modem. [INFO] [stdout] 70 | Modem, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 71 | /// Creating the IMS PDP context and bearer. [INFO] [stdout] 72 | Bearer, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 73 | /// Discovering P-CSCF and installing routes. [INFO] [stdout] 74 | Pcscf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | RegisterUdp, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stage` 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: variant `PlainUdp` is never constructed [INFO] [stdout] --> backend/src/volte/runtime.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub enum RegistrationMode { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 107 | PlainUdp, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RegistrationMode` 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: methods `success_message` and `refresh_message` are never used [INFO] [stdout] --> backend/src/volte/runtime.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 110 | impl RegistrationMode { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 119 | pub fn success_message(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn refresh_message(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `SendSms` and `Stop` are never constructed [INFO] [stdout] --> backend/src/volte/runtime.rs:185:5 [INFO] [stdout] | [INFO] [stdout] 183 | pub enum RuntimeCommand { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 184 | /// Send an SMS through the IMS runtime. [INFO] [stdout] 185 | SendSms { to: String, body: String }, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | Stop, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RuntimeCommand` 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: constant `REFRESH_INTERVAL` is never used [INFO] [stdout] --> backend/src/volte/runtime.rs:196:11 [INFO] [stdout] | [INFO] [stdout] 196 | pub const REFRESH_INTERVAL: Duration = Duration::from_secs(1800); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/runtime.rs:204:11 [INFO] [stdout] | [INFO] [stdout] 204 | pub const COMMAND_TIMEOUT: Duration = Duration::from_secs(30); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `HealthVerdict` is never used [INFO] [stdout] --> backend/src/volte/runtime.rs:219:10 [INFO] [stdout] | [INFO] [stdout] 219 | pub enum HealthVerdict { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MmHealthInputs` is never constructed [INFO] [stdout] --> backend/src/volte/runtime.rs:234:12 [INFO] [stdout] | [INFO] [stdout] 234 | pub struct MmHealthInputs { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `QmiHealthInputs` is never constructed [INFO] [stdout] --> backend/src/volte/runtime.rs:244:12 [INFO] [stdout] | [INFO] [stdout] 244 | pub struct QmiHealthInputs { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_mm_health` is never used [INFO] [stdout] --> backend/src/volte/runtime.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | pub fn check_mm_health(i: &MmHealthInputs) -> HealthVerdict { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_qmi_health` is never used [INFO] [stdout] --> backend/src/volte/runtime.rs:274:8 [INFO] [stdout] | [INFO] [stdout] 274 | pub fn check_qmi_health(i: &QmiHealthInputs) -> HealthVerdict { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `sms_enabled` is never read [INFO] [stdout] --> backend/src/volte/runtime.rs:305:5 [INFO] [stdout] | [INFO] [stdout] 297 | pub struct VolteSupervisor { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 305 | sms_enabled: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VolteSupervisor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `sms_enabled`, `sms_gate`, and `apply_health` are never used [INFO] [stdout] --> backend/src/volte/runtime.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 308 | impl VolteSupervisor { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 333 | pub fn sms_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | pub fn sms_gate(&self) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 411 | pub fn apply_health(&mut self, v: &HealthVerdict, now_unix: u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_ALLOW` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const H_ALLOW: &str = [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_SUPPORTED` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const H_SUPPORTED: &str = "Supported: path, gruu"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_REQUIRE_SEC_AGREE` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const H_REQUIRE_SEC_AGREE: &str = "Require: sec-agree"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_PROXY_REQUIRE_SEC_AGREE` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const H_PROXY_REQUIRE_SEC_AGREE: &str = "Proxy-Require: sec-agree"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_PANI_EUTRAN` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const H_PANI_EUTRAN: &str = "P-Access-Network-Info: 3GPP-E-UTRAN-FDD"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_ACCEPT_CONTACT_SMSIP` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const H_ACCEPT_CONTACT_SMSIP: &str = "Accept-Contact: *;+g.3gpp.smsip"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_PREFERRED_SERVICE_SMS` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const H_PREFERRED_SERVICE_SMS: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_USER_AGENT` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const H_USER_AGENT: &str = "User-Agent: SimAdmin VoLTE"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_CONTENT_TYPE_3GPP_SMS` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const H_CONTENT_TYPE_3GPP_SMS: &str = "Content-Type: application/vnd.3gpp.sms"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_CONTENT_LENGTH_ZERO` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const H_CONTENT_LENGTH_ZERO: &str = "Content-Length: 0"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_MAX_FORWARDS` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const H_MAX_FORWARDS: &str = "Max-Forwards: 70"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BRANCH_MAGIC` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const BRANCH_MAGIC: &str = "z9hG4bK"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Method` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | pub enum Method { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 58 | impl Method { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 59 | pub fn as_str(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Response` is never constructed [INFO] [stdout] --> backend/src/volte/sip.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | pub struct Response { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `header`, `headers_all`, and `require_header` are never used [INFO] [stdout] --> backend/src/volte/sip.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 81 | impl Response { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 82 | /// First header matching `name`, case-insensitive. [INFO] [stdout] 83 | pub fn header(&self, name: &str) -> Option<&str> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn headers_all(&self, name: &str) -> Vec<&str> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn require_header(&self, name: &str) -> Result<&str, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_response` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn parse_response(raw: &[u8]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_head_body` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:161:4 [INFO] [stdout] | [INFO] [stdout] 161 | fn split_head_body(raw: &[u8]) -> (&[u8], &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:171:4 [INFO] [stdout] | [INFO] [stdout] 171 | fn find(hay: &[u8], needle: &[u8]) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RegisterParams` is never constructed [INFO] [stdout] --> backend/src/volte/sip.rs:177:12 [INFO] [stdout] | [INFO] [stdout] 177 | pub struct RegisterParams<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_register` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:224:8 [INFO] [stdout] | [INFO] [stdout] 224 | pub fn build_register(p: &RegisterParams) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AcceptanceHeaders` is never constructed [INFO] [stdout] --> backend/src/volte/sip.rs:292:12 [INFO] [stdout] | [INFO] [stdout] 292 | pub struct AcceptanceHeaders { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `acceptance_headers` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:303:8 [INFO] [stdout] | [INFO] [stdout] 303 | pub fn acceptance_headers(r: &Response) -> AcceptanceHeaders { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MessageParams` is never constructed [INFO] [stdout] --> backend/src/volte/sip.rs:328:12 [INFO] [stdout] | [INFO] [stdout] 328 | pub struct MessageParams<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_message` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:345:8 [INFO] [stdout] | [INFO] [stdout] 345 | pub fn build_message(p: &MessageParams) -> (String, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recipient_variants` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:378:8 [INFO] [stdout] | [INFO] [stdout] 378 | pub fn recipient_variants(number: &str, home_domain: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_ok` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:389:8 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn build_ok(req: &Response, contact_host: &str, contact_port: u16) -> String { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ImsSlot` is never used [INFO] [stdout] --> backend/src/volte/slot.rs:67:10 [INFO] [stdout] | [INFO] [stdout] 67 | pub enum ImsSlot { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `log_message` is never used [INFO] [stdout] --> backend/src/volte/slot.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl ImsSlot { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 75 | /// Human-readable log line, verbatim from .rodata. [INFO] [stdout] 76 | pub fn log_message(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SlotAllocation` is never constructed [INFO] [stdout] --> backend/src/volte/slot.rs:86:12 [INFO] [stdout] | [INFO] [stdout] 86 | pub struct SlotAllocation { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SlotInputs` is never constructed [INFO] [stdout] --> backend/src/volte/slot.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct SlotInputs { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `allocate` is never used [INFO] [stdout] --> backend/src/volte/slot.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn allocate(inp: SlotInputs) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_EMPTY` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:96:15 [INFO] [stdout] | [INFO] [stdout] 96 | pub const COMMAND_EMPTY: &str = "volte_command_empty"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:97:15 [INFO] [stdout] | [INFO] [stdout] 97 | pub const COMMAND_FAILED: &str = "volte_command_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_SPAWN_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:98:15 [INFO] [stdout] | [INFO] [stdout] 98 | pub const COMMAND_SPAWN_FAILED: &str = "volte_command_spawn_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:99:15 [INFO] [stdout] | [INFO] [stdout] 99 | pub const COMMAND_TIMEOUT: &str = "volte_command_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_WAIT_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:100:15 [INFO] [stdout] | [INFO] [stdout] 100 | pub const COMMAND_WAIT_FAILED: &str = "volte_command_wait_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEPENDENCY_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:101:15 [INFO] [stdout] | [INFO] [stdout] 101 | pub const DEPENDENCY_MISSING: &str = "volte_dependency_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_READ_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:104:15 [INFO] [stdout] | [INFO] [stdout] 104 | pub const AT_READ_FAILED: &str = "volte_at_read_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_WRITE_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:105:15 [INFO] [stdout] | [INFO] [stdout] 105 | pub const AT_WRITE_FAILED: &str = "volte_at_write_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | pub const AT_TIMEOUT: &str = "volte_at_timeout"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IMSI_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:109:15 [INFO] [stdout] | [INFO] [stdout] 109 | pub const IMSI_MISSING: &str = "volte_imsi_missing"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MM_IMSI_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:110:15 [INFO] [stdout] | [INFO] [stdout] 110 | pub const MM_IMSI_MISSING: &str = "volte_mm_imsi_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMSC_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:111:15 [INFO] [stdout] | [INFO] [stdout] 111 | pub const SMSC_MISSING: &str = "volte_smsc_missing"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PHONE_URI_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:112:15 [INFO] [stdout] | [INFO] [stdout] 112 | pub const PHONE_URI_INVALID: &str = "volte_phone_uri_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USIM_AID_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:113:15 [INFO] [stdout] | [INFO] [stdout] 113 | pub const USIM_AID_MISSING: &str = "volte_usim_aid_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USIM_AID_NOT_USIM` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:114:15 [INFO] [stdout] | [INFO] [stdout] 114 | pub const USIM_AID_NOT_USIM: &str = "volte_usim_aid_not_usim"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USIM_AKA_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub const USIM_AKA_FAILED: &str = "volte_usim_aka_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MM_SIM_PATH_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:116:15 [INFO] [stdout] | [INFO] [stdout] 116 | pub const MM_SIM_PATH_MISSING: &str = "volte_mm_sim_path_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MM_SIM_PATH_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:117:15 [INFO] [stdout] | [INFO] [stdout] 117 | pub const MM_SIM_PATH_INVALID: &str = "volte_mm_sim_path_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKA_MATERIAL_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:120:15 [INFO] [stdout] | [INFO] [stdout] 120 | pub const AKA_MATERIAL_INVALID: &str = "volte_aka_material_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKA_RES_EMPTY` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:121:15 [INFO] [stdout] | [INFO] [stdout] 121 | pub const AKA_RES_EMPTY: &str = "volte_aka_res_empty"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_AKA_RES_EMPTY` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:122:15 [INFO] [stdout] | [INFO] [stdout] 122 | pub const IPSEC_AKA_RES_EMPTY: &str = "volte_ipsec_aka_res_empty"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_AKA_RES_EMPTY_WITHOUT_AUTS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:123:15 [INFO] [stdout] | [INFO] [stdout] 123 | pub const IPSEC_AKA_RES_EMPTY_WITHOUT_AUTS: &str = "volte_ipsec_aka_res_empty_without_auts"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIGEST_CHALLENGE_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:124:15 [INFO] [stdout] | [INFO] [stdout] 124 | pub const DIGEST_CHALLENGE_MISSING: &str = "volte_digest_challenge_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIGEST_NONCE_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:125:15 [INFO] [stdout] | [INFO] [stdout] 125 | pub const DIGEST_NONCE_MISSING: &str = "volte_digest_nonce_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIGEST_NONCE_DECODE_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:126:15 [INFO] [stdout] | [INFO] [stdout] 126 | pub const DIGEST_NONCE_DECODE_FAILED: &str = "volte_digest_nonce_decode_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIGEST_REALM_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:127:15 [INFO] [stdout] | [INFO] [stdout] 127 | pub const DIGEST_REALM_MISSING: &str = "volte_digest_realm_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIGEST_QOP_UNSUPPORTED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:128:15 [INFO] [stdout] | [INFO] [stdout] 128 | pub const DIGEST_QOP_UNSUPPORTED: &str = "volte_digest_qop_unsupported"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIGEST_ALGORITHM_UNSUPPORTED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:129:15 [INFO] [stdout] | [INFO] [stdout] 129 | pub const DIGEST_ALGORITHM_UNSUPPORTED: &str = "volte_digest_algorithm_unsupported"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_NONCE_NOT_AKA` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:130:15 [INFO] [stdout] | [INFO] [stdout] 130 | pub const REGISTER_NONCE_NOT_AKA: &str = "volte_register_nonce_not_aka"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_STATUS_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:133:15 [INFO] [stdout] | [INFO] [stdout] 133 | pub const SIP_STATUS_INVALID: &str = "volte_sip_status_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_STATUS_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:134:15 [INFO] [stdout] | [INFO] [stdout] 134 | pub const SIP_STATUS_MISSING: &str = "volte_sip_status_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_HEADER_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:135:15 [INFO] [stdout] | [INFO] [stdout] 135 | pub const SIP_HEADER_MISSING: &str = "volte_sip_header_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_HEADER_NOT_UTF8` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:136:15 [INFO] [stdout] | [INFO] [stdout] 136 | pub const SIP_HEADER_NOT_UTF8: &str = "volte_sip_header_not_utf8"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_NOT_UTF8` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:137:15 [INFO] [stdout] | [INFO] [stdout] 137 | pub const SIP_NOT_UTF8: &str = "volte_sip_not_utf8"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:138:15 [INFO] [stdout] | [INFO] [stdout] 138 | pub const REGISTER_SEND_FAILED: &str = "volte_register_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_INITIAL_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:139:15 [INFO] [stdout] | [INFO] [stdout] 139 | pub const REGISTER_INITIAL_UNEXPECTED_STATUS: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_AUTH_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:141:15 [INFO] [stdout] | [INFO] [stdout] 141 | pub const REGISTER_AUTH_SEND_FAILED: &str = "volte_register_auth_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_AUTH_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:142:15 [INFO] [stdout] | [INFO] [stdout] 142 | pub const REGISTER_AUTH_UNEXPECTED_STATUS: &str = "volte_register_auth_unexpected_status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REQUIRES_IPV6` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:145:15 [INFO] [stdout] | [INFO] [stdout] 145 | pub const IPSEC_REQUIRES_IPV6: &str = "volte_ipsec_requires_ipv6"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_IK_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:146:15 [INFO] [stdout] | [INFO] [stdout] 146 | pub const IPSEC_IK_INVALID: &str = "volte_ipsec_ik_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_UDP_BIND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:147:15 [INFO] [stdout] | [INFO] [stdout] 147 | pub const IPSEC_UDP_BIND_FAILED: &str = "volte_ipsec_udp_bind_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_SEND_UDP_BIND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:148:15 [INFO] [stdout] | [INFO] [stdout] 148 | pub const IPSEC_SEND_UDP_BIND_FAILED: &str = "volte_ipsec_send_udp_bind_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_RECV_UDP_BIND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:149:15 [INFO] [stdout] | [INFO] [stdout] 149 | pub const IPSEC_RECV_UDP_BIND_FAILED: &str = "volte_ipsec_recv_udp_bind_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REGISTER_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:150:15 [INFO] [stdout] | [INFO] [stdout] 150 | pub const IPSEC_REGISTER_SEND_FAILED: &str = "volte_ipsec_register_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REGISTER_INITIAL_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:151:15 [INFO] [stdout] | [INFO] [stdout] 151 | pub const IPSEC_REGISTER_INITIAL_UNEXPECTED_STATUS: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REGISTER_AUTH_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:153:15 [INFO] [stdout] | [INFO] [stdout] 153 | pub const IPSEC_REGISTER_AUTH_SEND_FAILED: &str = "volte_ipsec_register_auth_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REGISTER_AUTH_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:154:15 [INFO] [stdout] | [INFO] [stdout] 154 | pub const IPSEC_REGISTER_AUTH_UNEXPECTED_STATUS: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_AUTS_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:156:15 [INFO] [stdout] | [INFO] [stdout] 156 | pub const IPSEC_AUTS_SEND_FAILED: &str = "volte_ipsec_auts_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_AUTS_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:157:15 [INFO] [stdout] | [INFO] [stdout] 157 | pub const IPSEC_AUTS_UNEXPECTED_STATUS: &str = "volte_ipsec_auts_unexpected_status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SECURITY_SERVER_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:158:15 [INFO] [stdout] | [INFO] [stdout] 158 | pub const SECURITY_SERVER_MISSING: &str = "volte_security_server_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_SPI_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:159:15 [INFO] [stdout] | [INFO] [stdout] 159 | pub const RANDOM_SPI_INVALID: &str = "volte_random_spi_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_PORT_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:160:15 [INFO] [stdout] | [INFO] [stdout] 160 | pub const RANDOM_PORT_INVALID: &str = "volte_random_port_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_PORT_RANGE_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:161:15 [INFO] [stdout] | [INFO] [stdout] 161 | pub const RANDOM_PORT_RANGE_INVALID: &str = "volte_random_port_range_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:162:15 [INFO] [stdout] | [INFO] [stdout] 162 | pub const RANDOM_FAILED: &str = "volte_random_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_ACTIVATION_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:165:15 [INFO] [stdout] | [INFO] [stdout] 165 | pub const DATA_ACTIVATION_FAILED: &str = "volte_data_activation_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA6_ACTIVATION_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:166:15 [INFO] [stdout] | [INFO] [stdout] 166 | pub const DATA6_ACTIVATION_FAILED: &str = "volte_data6_activation_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA6_START_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:167:15 [INFO] [stdout] | [INFO] [stdout] 167 | pub const DATA6_START_FAILED: &str = "volte_data6_start_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_PATH_APN_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:168:15 [INFO] [stdout] | [INFO] [stdout] 168 | pub const DATA_PATH_APN_MISSING: &str = "volte_data_path_apn_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_SLOT_CONFLICT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:169:15 [INFO] [stdout] | [INFO] [stdout] 169 | pub const DATA_SLOT_CONFLICT: &str = "volte_data_slot_conflict"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_SLOT_MODE_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:170:15 [INFO] [stdout] | [INFO] [stdout] 170 | pub const DATA_SLOT_MODE_MISSING: &str = "volte_data_slot_mode_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WDS_CID_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:171:15 [INFO] [stdout] | [INFO] [stdout] 171 | pub const WDS_CID_MISSING: &str = "volte_wds_cid_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WDS_HANDLE_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:172:15 [INFO] [stdout] | [INFO] [stdout] 172 | pub const WDS_HANDLE_MISSING: &str = "volte_wds_handle_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SECONDARY_QMI_SETTINGS_NOT_READY` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:173:15 [INFO] [stdout] | [INFO] [stdout] 173 | pub const SECONDARY_QMI_SETTINGS_NOT_READY: &str = "volte_secondary_qmi_settings_not_ready"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IP_SETTINGS_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:174:15 [INFO] [stdout] | [INFO] [stdout] 174 | pub const IP_SETTINGS_MISSING: &str = "volte_ip_settings_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPV6_GATEWAY_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:175:15 [INFO] [stdout] | [INFO] [stdout] 175 | pub const IPV6_GATEWAY_MISSING: &str = "volte_ipv6_gateway_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CGCONTRDP_IPV6_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:176:15 [INFO] [stdout] | [INFO] [stdout] 176 | pub const CGCONTRDP_IPV6_MISSING: &str = "volte_cgcontrdp_ipv6_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CGCONTRDP_GATEWAY_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:177:15 [INFO] [stdout] | [INFO] [stdout] 177 | pub const CGCONTRDP_GATEWAY_MISSING: &str = "volte_cgcontrdp_gateway_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PCSCF_FAMILY_MISMATCH` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:180:15 [INFO] [stdout] | [INFO] [stdout] 180 | pub const PCSCF_FAMILY_MISMATCH: &str = "volte_pcscf_family_mismatch"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_ALL_PCSCF_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:181:15 [INFO] [stdout] | [INFO] [stdout] 181 | pub const RUNTIME_ALL_PCSCF_FAILED: &str = "volte_runtime_all_pcscf_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_PCSCF_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:182:15 [INFO] [stdout] | [INFO] [stdout] 182 | pub const RUNTIME_MM_PCSCF_MISSING: &str = "volte_runtime_mm_pcscf_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_PCSCF_SETUP_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:183:15 [INFO] [stdout] | [INFO] [stdout] 183 | pub const RUNTIME_MM_PCSCF_SETUP_FAILED: &str = "volte_runtime_mm_pcscf_setup_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_PROFILE_PCSCF_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:184:15 [INFO] [stdout] | [INFO] [stdout] 184 | pub const RUNTIME_PROFILE_PCSCF_MISSING: &str = "volte_runtime_profile_pcscf_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMS_DISABLED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:188:15 [INFO] [stdout] | [INFO] [stdout] 188 | pub const SMS_DISABLED: &str = "volte_sms_disabled"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_SEND_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:190:15 [INFO] [stdout] | [INFO] [stdout] 190 | pub const RUNTIME_SEND_TIMEOUT: &str = "volte_runtime_send_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_REPLY_CLOSED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:192:15 [INFO] [stdout] | [INFO] [stdout] 192 | pub const RUNTIME_REPLY_CLOSED: &str = "volte_runtime_reply_closed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_JOIN_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:193:15 [INFO] [stdout] | [INFO] [stdout] 193 | pub const RUNTIME_JOIN_FAILED: &str = "volte_runtime_join_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_UDP_BIND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:194:15 [INFO] [stdout] | [INFO] [stdout] 194 | pub const RUNTIME_UDP_BIND_FAILED: &str = "volte_runtime_udp_bind_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_UDP_TIMEOUT_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:195:15 [INFO] [stdout] | [INFO] [stdout] 195 | pub const RUNTIME_UDP_TIMEOUT_FAILED: &str = "volte_runtime_udp_timeout_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UDP_RECV_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:196:15 [INFO] [stdout] | [INFO] [stdout] 196 | pub const UDP_RECV_FAILED: &str = "volte_udp_recv_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UDP_RECV_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:197:15 [INFO] [stdout] | [INFO] [stdout] 197 | pub const UDP_RECV_TIMEOUT: &str = "volte_udp_recv_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UDP_TIMEOUT_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:198:15 [INFO] [stdout] | [INFO] [stdout] 198 | pub const UDP_TIMEOUT_FAILED: &str = "volte_udp_timeout_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_IMS_FAMILY_UNSUPPORTED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:199:15 [INFO] [stdout] | [INFO] [stdout] 199 | pub const RUNTIME_IMS_FAMILY_UNSUPPORTED: &str = "volte_runtime_ims_family_unsupported"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_ALL_IP_FAMILIES_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:202:15 [INFO] [stdout] | [INFO] [stdout] 202 | pub const RUNTIME_ALL_IP_FAMILIES_FAILED: &str = "volte_runtime_all_ip_families_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:205:15 [INFO] [stdout] | [INFO] [stdout] 205 | pub const RUNTIME_MM_MODEM: &str = "volte_runtime_mm_modem"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM_PRESENT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:206:15 [INFO] [stdout] | [INFO] [stdout] 206 | pub const RUNTIME_MM_MODEM_PRESENT: &str = "volte_runtime_mm_modem_present"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM_PRESENT_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:207:15 [INFO] [stdout] | [INFO] [stdout] 207 | pub const RUNTIME_MM_MODEM_PRESENT_TIMEOUT: &str = "volte_runtime_mm_modem_present_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM_NOT_READY` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:208:15 [INFO] [stdout] | [INFO] [stdout] 208 | pub const RUNTIME_MM_MODEM_NOT_READY: &str = "volte_runtime_mm_modem_not_ready"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM_WAIT_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:209:15 [INFO] [stdout] | [INFO] [stdout] 209 | pub const RUNTIME_MM_MODEM_WAIT_TIMEOUT: &str = "volte_runtime_mm_modem_wait_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:210:15 [INFO] [stdout] | [INFO] [stdout] 210 | pub const RUNTIME_MM_BEARER: &str = "volte_runtime_mm_bearer"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER_PATH_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:211:15 [INFO] [stdout] | [INFO] [stdout] 211 | pub const RUNTIME_MM_BEARER_PATH_MISSING: &str = "volte_runtime_mm_bearer_path_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER_NOT_CONNECTED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:212:15 [INFO] [stdout] | [INFO] [stdout] 212 | pub const RUNTIME_MM_BEARER_NOT_CONNECTED: &str = "volte_runtime_mm_bearer_not_connected"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER_CONNECT_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:213:15 [INFO] [stdout] | [INFO] [stdout] 213 | pub const RUNTIME_MM_BEARER_CONNECT_FAILED: &str = "volte_runtime_mm_bearer_connect_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER_ROAMING_FORBIDDEN` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:214:15 [INFO] [stdout] | [INFO] [stdout] 214 | pub const RUNTIME_MM_BEARER_ROAMING_FORBIDDEN: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_ADDRESS_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:216:15 [INFO] [stdout] | [INFO] [stdout] 216 | pub const RUNTIME_MM_ADDRESS_MISSING: &str = "volte_runtime_mm_address_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_ADDRESS_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:217:15 [INFO] [stdout] | [INFO] [stdout] 217 | pub const RUNTIME_MM_ADDRESS_INVALID: &str = "volte_runtime_mm_address_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_HEALTH_BEARER` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | pub const RUNTIME_HEALTH_BEARER: &str = "volte_runtime_health_bearer"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_HEALTH_BEARER_CHANGED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:221:15 [INFO] [stdout] | [INFO] [stdout] 221 | pub const RUNTIME_HEALTH_BEARER_CHANGED: &str = "volte_runtime_health_bearer_changed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_HEALTH_BEARER_DISCONNECTED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:222:15 [INFO] [stdout] | [INFO] [stdout] 222 | pub const RUNTIME_HEALTH_BEARER_DISCONNECTED: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_HEALTH_BEARER_QUERY_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:224:15 [INFO] [stdout] | [INFO] [stdout] 224 | pub const RUNTIME_HEALTH_BEARER_QUERY_FAILED: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_HEALTH_QMI_DEVICE_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:226:15 [INFO] [stdout] | [INFO] [stdout] 226 | pub const RUNTIME_HEALTH_QMI_DEVICE_MISSING: &str = "volte_runtime_health_qmi_device_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_HEALTH_QMI_ADDRESS_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:227:15 [INFO] [stdout] | [INFO] [stdout] 227 | pub const RUNTIME_HEALTH_QMI_ADDRESS_MISSING: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_HEALTH_QMI_DISCONNECTED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:229:15 [INFO] [stdout] | [INFO] [stdout] 229 | pub const RUNTIME_HEALTH_QMI_DISCONNECTED: &str = "volte_runtime_health_qmi_disconnected"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMS_ENCODE_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:232:15 [INFO] [stdout] | [INFO] [stdout] 232 | pub const SMS_ENCODE_FAILED: &str = "volte_sms_encode_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMS_MESSAGE_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:233:15 [INFO] [stdout] | [INFO] [stdout] 233 | pub const SMS_MESSAGE_SEND_FAILED: &str = "volte_sms_message_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMS_MESSAGE_ALL_VARIANTS_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:234:15 [INFO] [stdout] | [INFO] [stdout] 234 | pub const SMS_MESSAGE_ALL_VARIANTS_FAILED: &str = "volte_sms_message_all_variants_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_SMS_MESSAGE_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:235:15 [INFO] [stdout] | [INFO] [stdout] 235 | pub const IPSEC_SMS_MESSAGE_SEND_FAILED: &str = "volte_ipsec_sms_message_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_SMS_ALL_VARIANTS_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:236:15 [INFO] [stdout] | [INFO] [stdout] 236 | pub const IPSEC_SMS_ALL_VARIANTS_FAILED: &str = "volte_ipsec_sms_all_variants_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MT_RP_ACK_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:237:15 [INFO] [stdout] | [INFO] [stdout] 237 | pub const RUNTIME_MT_RP_ACK_SEND_FAILED: &str = "volte_runtime_mt_rp_ack_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MT_RP_ACK_UNCONFIRMED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:238:15 [INFO] [stdout] | [INFO] [stdout] 238 | pub const RUNTIME_MT_RP_ACK_UNCONFIRMED: &str = "volte_runtime_mt_rp_ack_unconfirmed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_IPSEC_MT_RP_ACK_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:239:15 [INFO] [stdout] | [INFO] [stdout] 239 | pub const RUNTIME_IPSEC_MT_RP_ACK_SEND_FAILED: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_IPSEC_MT_RP_ACK_UNCONFIRMED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:241:15 [INFO] [stdout] | [INFO] [stdout] 241 | pub const RUNTIME_IPSEC_MT_RP_ACK_UNCONFIRMED: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEX_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:245:15 [INFO] [stdout] | [INFO] [stdout] 245 | pub const HEX_INVALID: &str = "volte_hex_invalid"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IP_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:246:15 [INFO] [stdout] | [INFO] [stdout] 246 | pub const IP_INVALID: &str = "volte_ip_invalid"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `interface` is never read [INFO] [stdout] --> backend/src/volte_manager.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct VolteIdentitySnapshot { [INFO] [stdout] | --------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 49 | pub interface: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VolteIdentitySnapshot` 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: constant `SMS_SOURCE_IMS` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const SMS_SOURCE_IMS: &str = "volte_ims"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TRACE_PREFIX` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const TRACE_PREFIX: &str = "volte-sms-"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TRACE_FILE_PREFIX` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | pub const TRACE_FILE_PREFIX: &str = "volte-sms-trace-"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MO_TAG` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const MO_TAG: &str = "volte-mo:"; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RP_ACK_TIMEOUT` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const RP_ACK_TIMEOUT: Duration = Duration::from_secs(15); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RP_ACK_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:57:15 [INFO] [stdout] | [INFO] [stdout] 57 | pub const RP_ACK_SEND_FAILED: &str = "rp_ack_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RP_ACK_TIMEOUT` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:58:15 [INFO] [stdout] | [INFO] [stdout] 58 | pub const RP_ACK_TIMEOUT: &str = "rp_ack_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RP_ACK_UNCONFIRMED` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:59:15 [INFO] [stdout] | [INFO] [stdout] 59 | pub const RP_ACK_UNCONFIRMED: &str = "rp_ack_unconfirmed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NO_RP_ACK_TIMEOUT` is never used [INFO] [stdout] --> backend/src/ims_sms.rs:60:15 [INFO] [stdout] | [INFO] [stdout] 60 | pub const NO_RP_ACK_TIMEOUT: &str = "no_rp_ack_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_PROXY_SOCKET` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const QMI_PROXY_SOCKET: &str = "@qmi-proxy"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_CARD_STATUS` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const QMI_CARD_STATUS: &str = "--uim-get-card-status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_READ_EF_AD` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const QMI_READ_EF_AD: &str = "--uim-read-transparent=0x3F00,0x7FFF,0x6FAD"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INS_MANAGE_CHANNEL` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:95:7 [INFO] [stdout] | [INFO] [stdout] 95 | const INS_MANAGE_CHANNEL: u8 = 0x70; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INS_GET_RESPONSE` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:98:7 [INFO] [stdout] | [INFO] [stdout] 98 | const INS_GET_RESPONSE: u8 = 0xC0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apdu_open_channel` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:192:8 [INFO] [stdout] | [INFO] [stdout] 192 | pub fn apdu_open_channel() -> CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apdu_close_channel` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:204:8 [INFO] [stdout] | [INFO] [stdout] 204 | pub fn apdu_close_channel(channel: u8) -> CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apdu_get_response` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:249:8 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn apdu_get_response(channel: u8, len: u8) -> CommandApdu { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_CRSM_EF_AD` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:339:11 [INFO] [stdout] | [INFO] [stdout] 339 | pub const AT_CRSM_EF_AD: &str = "AT+CRSM=176,28589,0,0,4"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROXY_CONNECT_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:68:15 [INFO] [stdout] | [INFO] [stdout] 68 | pub const PROXY_CONNECT_FAILED: &str = "sim_auth_proxy_connect_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROXY_OPEN_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:69:15 [INFO] [stdout] | [INFO] [stdout] 69 | pub const PROXY_OPEN_FAILED: &str = "sim_auth_proxy_open_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UIM_CLIENT_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:70:15 [INFO] [stdout] | [INFO] [stdout] 70 | pub const UIM_CLIENT_FAILED: &str = "sim_auth_uim_client_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOGICAL_CHANNEL_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:71:15 [INFO] [stdout] | [INFO] [stdout] 71 | pub const LOGICAL_CHANNEL_FAILED: &str = "sim_auth_logical_channel_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOGICAL_CHANNEL_CLOSE_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:72:15 [INFO] [stdout] | [INFO] [stdout] 72 | pub const LOGICAL_CHANNEL_CLOSE_FAILED: &str = "sim_auth_logical_channel_close_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AKA_RESPONSE_PARSE_FAILED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:83:15 [INFO] [stdout] | [INFO] [stdout] 83 | pub const AKA_RESPONSE_PARSE_FAILED: &str = "sim_auth_aka_response_parse_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RETRY_NOT_ATTEMPTED` is never used [INFO] [stdout] --> backend/src/ims_uim.rs:87:15 [INFO] [stdout] | [INFO] [stdout] 87 | pub const RETRY_NOT_ATTEMPTED: &str = "sim_auth_retry_not_attempted"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_DELETE_BEARER_PREFIX` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:51:7 [INFO] [stdout] | [INFO] [stdout] 51 | const ARG_DELETE_BEARER_PREFIX: &str = "--delete-bearer="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_CONNECT` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:52:7 [INFO] [stdout] | [INFO] [stdout] 52 | const ARG_CONNECT: &str = "--connect"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_DISCONNECT` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:53:7 [INFO] [stdout] | [INFO] [stdout] 53 | const ARG_DISCONNECT: &str = "--disconnect"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_KEYVALUE` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:56:7 [INFO] [stdout] | [INFO] [stdout] 56 | const ARG_KEYVALUE: &str = "-K"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_BEARER` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:57:7 [INFO] [stdout] | [INFO] [stdout] 57 | const ARG_BEARER: &str = "-b"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_APN` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:63:7 [INFO] [stdout] | [INFO] [stdout] 63 | const P_APN: &str = "bearer.properties.apn"; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V6_PREFIX` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:69:7 [INFO] [stdout] | [INFO] [stdout] 69 | const P_V6_PREFIX: &str = "bearer.ipv6-config.prefix"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V6_GATEWAY` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:70:7 [INFO] [stdout] | [INFO] [stdout] 70 | const P_V6_GATEWAY: &str = "bearer.ipv6-config.gateway"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_V6_DNS` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:71:7 [INFO] [stdout] | [INFO] [stdout] 71 | const P_V6_DNS: &str = "bearer.ipv6-config.dns"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_LOCK_POISONED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:74:7 [INFO] [stdout] | [INFO] [stdout] 74 | const E_LOCK_POISONED: &str = "managed_mm_data_operation_lock_poisoned"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_APN_MISSING` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:75:7 [INFO] [stdout] | [INFO] [stdout] 75 | const E_APN_MISSING: &str = "managed_mm_data_apn_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_BEARER_PATH_MISSING` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:76:7 [INFO] [stdout] | [INFO] [stdout] 76 | const E_BEARER_PATH_MISSING: &str = "managed_mm_data_bearer_path_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_BEARER_NOT_CONNECTED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:77:7 [INFO] [stdout] | [INFO] [stdout] 77 | const E_BEARER_NOT_CONNECTED: &str = "managed_mm_data_bearer_not_connected"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_SETTINGS_NOT_READY` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:78:7 [INFO] [stdout] | [INFO] [stdout] 78 | const E_SETTINGS_NOT_READY: &str = "managed_mm_data_settings_not_ready"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_INVALID` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:82:7 [INFO] [stdout] | [INFO] [stdout] 82 | const E_IPV6_INVALID: &str = "managed_mm_data_ipv6_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_GATEWAY_INVALID` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:83:7 [INFO] [stdout] | [INFO] [stdout] 83 | const E_IPV6_GATEWAY_INVALID: &str = "managed_mm_data_ipv6_gateway_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_UNEXPECTED_INTERFACE` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:85:7 [INFO] [stdout] | [INFO] [stdout] 85 | const E_UNEXPECTED_INTERFACE: &str = "managed_mm_data_unexpected_interface"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_DUAL_STACK_FAILED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:86:7 [INFO] [stdout] | [INFO] [stdout] 86 | const E_DUAL_STACK_FAILED: &str = "managed_mm_data_dual_stack_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV4_FAILED` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:87:7 [INFO] [stdout] | [INFO] [stdout] 87 | const E_IPV4_FAILED: &str = "ipv4_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SETTINGS_POLL_ATTEMPTS` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:96:7 [INFO] [stdout] | [INFO] [stdout] 96 | const SETTINGS_POLL_ATTEMPTS: u32 = 25; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OPERATION_LOCK` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:98:8 [INFO] [stdout] | [INFO] [stdout] 98 | static OPERATION_LOCK: Mutex<()> = Mutex::new(()); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Ipv4` and `Ipv6` are never constructed [INFO] [stdout] --> backend/src/managed_mm_data.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 106 | pub enum IpType { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 107 | Ipv4, [INFO] [stdout] | ^^^^ [INFO] [stdout] 108 | Ipv6, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpType` 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: variant `Pap` is never constructed [INFO] [stdout] --> backend/src/managed_mm_data.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 125 | pub enum AuthMethod { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] 126 | None, [INFO] [stdout] 127 | Pap, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AuthMethod` 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: fields `roaming_allowed`, `auth`, `username`, and `password` are never read [INFO] [stdout] --> backend/src/managed_mm_data.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 142 | pub struct ManagedDataRequest { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 145 | pub roaming_allowed: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 146 | pub auth: AuthMethod, [INFO] [stdout] | ^^^^ [INFO] [stdout] 147 | pub username: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 148 | pub password: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ManagedDataRequest` 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: fields `address` and `gateway` are never read [INFO] [stdout] --> backend/src/managed_mm_data.rs:153:5 [INFO] [stdout] | [INFO] [stdout] 152 | struct Ipv4Config { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 153 | address: Ipv4Addr, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 154 | prefix: u8, [INFO] [stdout] 155 | gateway: Ipv4Addr, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Ipv4Config` 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 `Ipv6Config` is never constructed [INFO] [stdout] --> backend/src/managed_mm_data.rs:160:8 [INFO] [stdout] | [INFO] [stdout] 160 | struct Ipv6Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ManagedDataState` is never constructed [INFO] [stdout] --> backend/src/managed_mm_data.rs:168:12 [INFO] [stdout] | [INFO] [stdout] 168 | pub struct ManagedDataState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `age_secs` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 179 | impl ManagedDataState { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 180 | fn age_secs(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `activate` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:195:8 [INFO] [stdout] | [INFO] [stdout] 195 | pub fn activate(req: &ManagedDataRequest, state: &mut ManagedDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_activate` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:233:4 [INFO] [stdout] | [INFO] [stdout] 233 | fn try_activate(req: &ManagedDataRequest, state: &mut ManagedDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_bearer` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:311:4 [INFO] [stdout] | [INFO] [stdout] 311 | fn create_bearer(req: &ManagedDataRequest) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `connect_bearer` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:340:4 [INFO] [stdout] | [INFO] [stdout] 340 | fn connect_bearer(path: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `delete_bearer` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:345:4 [INFO] [stdout] | [INFO] [stdout] 345 | fn delete_bearer(path: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `wait_for_settings` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:353:4 [INFO] [stdout] | [INFO] [stdout] 353 | fn wait_for_settings(path: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deactivate` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:384:8 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn deactivate(state: &mut ManagedDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cleanup_before_nm` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:420:8 [INFO] [stdout] | [INFO] [stdout] 420 | pub fn cleanup_before_nm(state: &mut ManagedDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mmcli` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:432:4 [INFO] [stdout] | [INFO] [stdout] 432 | fn mmcli(args: &[&str]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_ipv6` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:497:4 [INFO] [stdout] | [INFO] [stdout] 497 | fn parse_ipv6(p: &std::collections::BTreeMap) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ip_bin` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:531:4 [INFO] [stdout] | [INFO] [stdout] 531 | fn ip_bin() -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_ipv4` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:539:4 [INFO] [stdout] | [INFO] [stdout] 539 | fn configure_ipv4(iface: &str, cfg: &Ipv4Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_ipv6` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:561:4 [INFO] [stdout] | [INFO] [stdout] 561 | fn configure_ipv6(iface: &str, cfg: &Ipv6Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_dns` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:589:4 [INFO] [stdout] | [INFO] [stdout] 589 | fn configure_dns(iface: &str, v4: &Ipv4Config, v6: Option<&Ipv6Config>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `nm_active` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:616:4 [INFO] [stdout] | [INFO] [stdout] 616 | fn nm_active() -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> backend/src/managed_mm_data.rs:624:4 [INFO] [stdout] | [INFO] [stdout] 624 | fn run(bin: &str, args: &[&str]) -> Result<()> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENV_PRIMARY_QMI_DEVICE` is never used [INFO] [stdout] --> backend/src/secondary_qmi.rs:88:7 [INFO] [stdout] | [INFO] [stdout] 88 | const ENV_PRIMARY_QMI_DEVICE: &str = "SIMADMIN_PRIMARY_QMI_DEVICE"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load_runtime_state` is never used [INFO] [stdout] --> backend/src/secondary_qmi.rs:486:8 [INFO] [stdout] | [INFO] [stdout] 486 | pub fn load_runtime_state() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `primary_qmi_device` is never used [INFO] [stdout] --> backend/src/secondary_qmi.rs:530:8 [INFO] [stdout] | [INFO] [stdout] 530 | pub fn primary_qmi_device() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_START_NETWORK_PREFIX` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:68:7 [INFO] [stdout] | [INFO] [stdout] 68 | const ARG_START_NETWORK_PREFIX: &str = "--wds-start-network=apn="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_STOP_NETWORK_PREFIX` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:71:7 [INFO] [stdout] | [INFO] [stdout] 71 | const ARG_STOP_NETWORK_PREFIX: &str = "--wds-stop-network="; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_GET_CURRENT_SETTINGS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:72:7 [INFO] [stdout] | [INFO] [stdout] 72 | const ARG_GET_CURRENT_SETTINGS: &str = "--wds-get-current-settings"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_GET_PACKET_SERVICE_STATUS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:73:7 [INFO] [stdout] | [INFO] [stdout] 73 | const ARG_GET_PACKET_SERVICE_STATUS: &str = "--wds-get-packet-service-status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MARK_CONNECTED` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:78:7 [INFO] [stdout] | [INFO] [stdout] 78 | const MARK_CONNECTED: &str = "Connection status: 'connected'"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_ADDRESS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:81:7 [INFO] [stdout] | [INFO] [stdout] 81 | const F_IPV4_ADDRESS: &str = "IPv4 address"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_MASK` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:82:7 [INFO] [stdout] | [INFO] [stdout] 82 | const F_IPV4_MASK: &str = "IPv4 subnet mask"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_GATEWAY` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:83:7 [INFO] [stdout] | [INFO] [stdout] 83 | const F_IPV4_GATEWAY: &str = "IPv4 gateway address"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_DNS1` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:84:7 [INFO] [stdout] | [INFO] [stdout] 84 | const F_IPV4_DNS1: &str = "IPv4 primary DNS"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV4_DNS2` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:85:7 [INFO] [stdout] | [INFO] [stdout] 85 | const F_IPV4_DNS2: &str = "IPv4 secondary DNS"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV6_GATEWAY` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:87:7 [INFO] [stdout] | [INFO] [stdout] 87 | const F_IPV6_GATEWAY: &str = "IPv6 gateway address"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F_IPV6_DNS2` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:89:7 [INFO] [stdout] | [INFO] [stdout] 89 | const F_IPV6_DNS2: &str = "IPv6 secondary DNS"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MM_PROP_REGISTRATION_STATE` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:92:7 [INFO] [stdout] | [INFO] [stdout] 92 | const MM_PROP_REGISTRATION_STATE: &str = "modem.3gpp.registration-state"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REG_HOME` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:95:7 [INFO] [stdout] | [INFO] [stdout] 95 | const REG_HOME: &str = "home"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REG_ROAMING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:96:7 [INFO] [stdout] | [INFO] [stdout] 96 | const REG_ROAMING: &str = "roaming"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_LOCK_POISONED` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:100:7 [INFO] [stdout] | [INFO] [stdout] 100 | const E_LOCK_POISONED: &str = "secondary_qmi_data_operation_lock_poisoned"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_APN_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:101:7 [INFO] [stdout] | [INFO] [stdout] 101 | const E_APN_MISSING: &str = "secondary_qmi_data_apn_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_CID_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:102:7 [INFO] [stdout] | [INFO] [stdout] 102 | const E_CID_MISSING: &str = "secondary_qmi_data_cid_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_HANDLE_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:103:7 [INFO] [stdout] | [INFO] [stdout] 103 | const E_HANDLE_MISSING: &str = "secondary_qmi_data_handle_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_CID_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:104:7 [INFO] [stdout] | [INFO] [stdout] 104 | const E_IPV6_CID_MISSING: &str = "secondary_qmi_data_ipv6_cid_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_HANDLE_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:105:7 [INFO] [stdout] | [INFO] [stdout] 105 | const E_IPV6_HANDLE_MISSING: &str = "secondary_qmi_data_ipv6_handle_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV4_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:106:7 [INFO] [stdout] | [INFO] [stdout] 106 | const E_IPV4_INVALID: &str = "secondary_qmi_data_ipv4_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_MASK_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:107:7 [INFO] [stdout] | [INFO] [stdout] 107 | const E_MASK_INVALID: &str = "secondary_qmi_data_mask_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_MASK_NON_CONTIGUOUS` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:108:7 [INFO] [stdout] | [INFO] [stdout] 108 | const E_MASK_NON_CONTIGUOUS: &str = "secondary_qmi_data_mask_non_contiguous"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_GATEWAY_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:109:7 [INFO] [stdout] | [INFO] [stdout] 109 | const E_GATEWAY_INVALID: &str = "secondary_qmi_data_gateway_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:110:7 [INFO] [stdout] | [INFO] [stdout] 110 | const E_IPV6_INVALID: &str = "secondary_qmi_data_ipv6_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_GATEWAY_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:111:7 [INFO] [stdout] | [INFO] [stdout] 111 | const E_IPV6_GATEWAY_INVALID: &str = "secondary_qmi_data_ipv6_gateway_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_IPV6_PREFIX_INVALID` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:112:7 [INFO] [stdout] | [INFO] [stdout] 112 | const E_IPV6_PREFIX_INVALID: &str = "secondary_qmi_data_ipv6_prefix_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_REG_STATE_MISSING` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:113:7 [INFO] [stdout] | [INFO] [stdout] 113 | const E_REG_STATE_MISSING: &str = "secondary_qmi_data_registration_state_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_ROAMING_FORBIDDEN` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:114:7 [INFO] [stdout] | [INFO] [stdout] 114 | const E_ROAMING_FORBIDDEN: &str = "secondary_qmi_data_roaming_forbidden"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_REG_NOT_HOME` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:117:7 [INFO] [stdout] | [INFO] [stdout] 117 | const E_REG_NOT_HOME: &str = "secondary_qmi_data_registration_not_home"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_DEVICE_UNAVAILABLE` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:118:7 [INFO] [stdout] | [INFO] [stdout] 118 | const E_DEVICE_UNAVAILABLE: &str = "secondary_qmi_device_unavailable"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E_DATA6_START_FAILED` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:119:7 [INFO] [stdout] | [INFO] [stdout] 119 | const E_DATA6_START_FAILED: &str = "secondary_qmi_data6_start_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROUTE_METRIC` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:126:7 [INFO] [stdout] | [INFO] [stdout] 126 | const ROUTE_METRIC: u32 = 729; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OPERATION_LOCK` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:129:8 [INFO] [stdout] | [INFO] [stdout] 129 | static OPERATION_LOCK: Mutex<()> = Mutex::new(()); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WdsSession` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 140 | pub struct WdsSession { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Ipv4Config` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:147:8 [INFO] [stdout] | [INFO] [stdout] 147 | struct Ipv4Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Ipv6Config` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | struct Ipv6Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecondaryDataState` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:166:12 [INFO] [stdout] | [INFO] [stdout] 166 | pub struct SecondaryDataState { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `age_secs` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:179:8 [INFO] [stdout] | [INFO] [stdout] 178 | impl SecondaryDataState { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] 179 | fn age_secs(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SecondaryDataRequest` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:186:12 [INFO] [stdout] | [INFO] [stdout] 186 | pub struct SecondaryDataRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `activate` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:204:8 [INFO] [stdout] | [INFO] [stdout] 204 | pub fn activate( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `V4` is never constructed [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:319:5 [INFO] [stdout] | [INFO] [stdout] 318 | enum IpFamily { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 319 | V4, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpFamily` 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: methods `start_suffix`, `cid_missing_err`, and `handle_missing_err` are never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:330:8 [INFO] [stdout] | [INFO] [stdout] 323 | impl IpFamily { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 330 | fn start_suffix(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | fn cid_missing_err(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 342 | fn handle_missing_err(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `start_session` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:351:4 [INFO] [stdout] | [INFO] [stdout] 351 | fn start_session( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `stop_session` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:381:4 [INFO] [stdout] | [INFO] [stdout] 381 | fn stop_session(ep: &SecondaryQmiEndpoint, s: WdsSession) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deactivate` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:393:8 [INFO] [stdout] | [INFO] [stdout] 393 | pub fn deactivate(state: &mut SecondaryDataState) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_connected` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:436:8 [INFO] [stdout] | [INFO] [stdout] 436 | pub fn is_connected(ep: &SecondaryQmiEndpoint, s: WdsSession) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `qmicli` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:448:4 [INFO] [stdout] | [INFO] [stdout] 448 | fn qmicli(ep: &SecondaryQmiEndpoint, args: &[&str]) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_ipv4_settings` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:498:4 [INFO] [stdout] | [INFO] [stdout] 498 | fn read_ipv4_settings(ep: &SecondaryQmiEndpoint, cid: u32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_ipv6_settings` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:528:4 [INFO] [stdout] | [INFO] [stdout] 528 | fn read_ipv6_settings(ep: &SecondaryQmiEndpoint, cid: u32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `ip_bin` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:584:4 [INFO] [stdout] | [INFO] [stdout] 584 | fn ip_bin() -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_ipv4` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:592:4 [INFO] [stdout] | [INFO] [stdout] 592 | fn configure_ipv4(netdev: &str, cfg: &Ipv4Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_ipv6` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:615:4 [INFO] [stdout] | [INFO] [stdout] 615 | fn configure_ipv6(netdev: &str, cfg: &Ipv6Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `flush_interface` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:653:4 [INFO] [stdout] | [INFO] [stdout] 653 | fn flush_interface(netdev: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `configure_dns` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:662:4 [INFO] [stdout] | [INFO] [stdout] 662 | fn configure_dns(netdev: &str, v4: &Ipv4Config, v6: Option<&Ipv6Config>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `nm_active` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:693:4 [INFO] [stdout] | [INFO] [stdout] 693 | fn nm_active() -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_registration_state` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:701:4 [INFO] [stdout] | [INFO] [stdout] 701 | fn read_registration_state() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> backend/src/secondary_qmi_data.rs:717:4 [INFO] [stdout] | [INFO] [stdout] 717 | fn run(bin: &str, args: &[&str]) -> Result<()> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MT_SIP_PORT` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const MT_SIP_PORT: u16 = 47482; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `LISTENER_STARTED` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | static LISTENER_STARTED: AtomicBool = AtomicBool::new(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RECENT_TTL` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:37:7 [INFO] [stdout] | [INFO] [stdout] 37 | const RECENT_TTL: std::time::Duration = std::time::Duration::from_secs(300); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recent_seen` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn recent_seen(sender: &str, text: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `remember_recent` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn remember_recent(sender: &str, text: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_mt_listener` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn spawn_mt_listener(ue: String, db: Arc, notifier: Arc) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | async fn run(db: Arc, notifier: Arc) -> Result<(), String> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bind_reuse` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:127:4 [INFO] [stdout] | [INFO] [stdout] 127 | fn bind_reuse(ue: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_packet` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:149:10 [INFO] [stdout] | [INFO] [stdout] 149 | async fn handle_packet( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_sip` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:272:4 [INFO] [stdout] | [INFO] [stdout] 272 | fn split_sip(data: &[u8]) -> Option<(String, &[u8])> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_response` is never used [INFO] [stdout] --> backend/src/sip_listener.rs:291:4 [INFO] [stdout] | [INFO] [stdout] 291 | fn build_response(head: &str, rp_ack: Option, status: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_READY_MARKER` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const QMI_READY_MARKER: &str = "/run/qmi_auto_activate.ready"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENV_MM_IMS_BEARER` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const ENV_MM_IMS_BEARER: &str = "SIMADMIN_MM_IMS_BEARER"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_RECV_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:86:11 [INFO] [stdout] | [INFO] [stdout] 86 | pub const SIP_RECV_TIMEOUT: Duration = Duration::from_secs(10); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VolteConfig` is never constructed [INFO] [stdout] --> backend/src/volte/mod.rs:257:12 [INFO] [stdout] | [INFO] [stdout] 257 | pub struct VolteConfig { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `digest_response` is never used [INFO] [stdout] --> backend/src/volte/aka.rs:234:8 [INFO] [stdout] | [INFO] [stdout] 234 | pub fn digest_response( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_MARKER_WAIT` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const QMI_MARKER_WAIT: Duration = Duration::from_secs(30); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MODEM_PRESENT_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const MODEM_PRESENT_TIMEOUT: Duration = Duration::from_secs(60); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MODEM_READY_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const MODEM_READY_TIMEOUT: Duration = Duration::from_secs(45); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `at_activate_context` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn at_activate_context(cid: u32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_LIST_CONTEXTS` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const AT_LIST_CONTEXTS: &str = "AT+CGDCONT?"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_LIST_ACTIVE` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const AT_LIST_ACTIVE: &str = "AT+CGACT?"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_ACTIVATE_PREFIX` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const AT_ACTIVATE_PREFIX: &str = "AT+CGACT=1,"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ImsProfileLease` is never constructed [INFO] [stdout] --> backend/src/volte/bearer.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct ImsProfileLease { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ModemManager` is never constructed [INFO] [stdout] --> backend/src/volte/bearer.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 181 | pub enum ImsBearer { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] 182 | /// ModemManager on the primary port. [INFO] [stdout] 183 | ModemManager { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ImsBearer` 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: methods `local`, `gateway`, `prefix`, and `pcscf` are never used [INFO] [stdout] --> backend/src/volte/bearer.rs:210:12 [INFO] [stdout] | [INFO] [stdout] 203 | impl ImsBearer { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn local(&self) -> IpAddr { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn gateway(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn prefix(&self) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn pcscf(&self) -> &[IpAddr] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `qmi_marker_present` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:250:8 [INFO] [stdout] | [INFO] [stdout] 250 | pub fn qmi_marker_present() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `qmi_marker_age_secs` is never used [INFO] [stdout] --> backend/src/volte/bearer.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn qmi_marker_age_secs() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 43 | impl MncLengthSource { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] 44 | /// beta8 token spellings. Not emitted by beta9. [INFO] [stdout] 45 | pub fn as_str(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_CIMI` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const AT_CIMI: &str = "AT+CIMI"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_CRSM_EF_AD` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:87:11 [INFO] [stdout] | [INFO] [stdout] 87 | pub const AT_CRSM_EF_AD: &str = "AT+CRSM=176,28589,0,0,4"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_CARD_STATUS` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:89:11 [INFO] [stdout] | [INFO] [stdout] 89 | pub const QMI_CARD_STATUS: &str = "--uim-get-card-status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QMI_READ_EF_AD` is never used [INFO] [stdout] --> backend/src/volte/identity.rs:90:11 [INFO] [stdout] | [INFO] [stdout] 90 | pub const QMI_READ_EF_AD: &str = "--uim-read-transparent=0x3F00,0x7FFF,0x6FAD"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_SECURITY_CLIENT` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const H_SECURITY_CLIENT: &str = "Security-Client"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_SECURITY_VERIFY` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const H_SECURITY_VERIFY: &str = "Security-Verify"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_SECURITY_SERVER` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const H_SECURITY_SERVER: &str = "security-server"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_REQUIRE` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const H_REQUIRE: &str = "Require"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H_PROXY_REQUIRE` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const H_PROXY_REQUIRE: &str = "Proxy-Require"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SEC_AGREE` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const SEC_AGREE: &str = "sec-agree"; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_MECHANISM` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const P_MECHANISM: &str = "mechanism"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_SPI_C` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | pub const P_SPI_C: &str = "spi-c"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_SPI_S` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const P_SPI_S: &str = "spi-s"; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_PORT_C` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const P_PORT_C: &str = "port-c"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `P_PORT_S` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const P_PORT_S: &str = "port-s"; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UE_PORT_MIN` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const UE_PORT_MIN: u16 = 40000; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UE_PORT_MAX` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const UE_PORT_MAX: u16 = 60000; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `teardown` is never used [INFO] [stdout] --> backend/src/volte/ipsec.rs:314:8 [INFO] [stdout] | [INFO] [stdout] 314 | pub fn teardown() -> Result>, String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `log_message` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl PcscfSource { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 64 | pub fn log_message(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `family` is never used [INFO] [stdout] --> backend/src/volte/pcscf.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 91 | impl ImsBearerAddressing { [INFO] [stdout] | ------------------------ method in this implementation [INFO] [stdout] 92 | pub fn family(&self) -> ImsFamily { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Identity`, `Radio`, `Modem`, `Bearer`, and `Pcscf` are never constructed [INFO] [stdout] --> backend/src/volte/runtime.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 61 | pub enum Stage { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 64 | Identity, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | Radio, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 69 | /// Waiting for ModemManager to expose a usable modem. [INFO] [stdout] 70 | Modem, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 71 | /// Creating the IMS PDP context and bearer. [INFO] [stdout] 72 | Bearer, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 73 | /// Discovering P-CSCF and installing routes. [INFO] [stdout] 74 | Pcscf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Stage` 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: variants `SendSms` and `Stop` are never constructed [INFO] [stdout] --> backend/src/volte/runtime.rs:185:5 [INFO] [stdout] | [INFO] [stdout] 183 | pub enum RuntimeCommand { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 184 | /// Send an SMS through the IMS runtime. [INFO] [stdout] 185 | SendSms { to: String, body: String }, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | Stop, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RuntimeCommand` 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: constant `COMMAND_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/runtime.rs:204:11 [INFO] [stdout] | [INFO] [stdout] 204 | pub const COMMAND_TIMEOUT: Duration = Duration::from_secs(30); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sms_enabled` is never used [INFO] [stdout] --> backend/src/volte/runtime.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 308 | impl VolteSupervisor { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 333 | pub fn sms_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Method` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:48:10 [INFO] [stdout] | [INFO] [stdout] 48 | pub enum Method { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 58 | impl Method { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 59 | pub fn as_str(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `require_header` is never used [INFO] [stdout] --> backend/src/volte/sip.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 81 | impl Response { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn require_header(&self, name: &str) -> Result<&str, String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `home_domain` is never read [INFO] [stdout] --> backend/src/volte/sip.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 328 | pub struct MessageParams<'a> { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 329 | pub home_domain: &'a str, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `log_message` is never used [INFO] [stdout] --> backend/src/volte/slot.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl ImsSlot { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 75 | /// Human-readable log line, verbatim from .rodata. [INFO] [stdout] 76 | pub fn log_message(self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_EMPTY` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:96:15 [INFO] [stdout] | [INFO] [stdout] 96 | pub const COMMAND_EMPTY: &str = "volte_command_empty"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:97:15 [INFO] [stdout] | [INFO] [stdout] 97 | pub const COMMAND_FAILED: &str = "volte_command_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_SPAWN_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:98:15 [INFO] [stdout] | [INFO] [stdout] 98 | pub const COMMAND_SPAWN_FAILED: &str = "volte_command_spawn_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:99:15 [INFO] [stdout] | [INFO] [stdout] 99 | pub const COMMAND_TIMEOUT: &str = "volte_command_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `COMMAND_WAIT_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:100:15 [INFO] [stdout] | [INFO] [stdout] 100 | pub const COMMAND_WAIT_FAILED: &str = "volte_command_wait_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_READ_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:104:15 [INFO] [stdout] | [INFO] [stdout] 104 | pub const AT_READ_FAILED: &str = "volte_at_read_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_WRITE_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:105:15 [INFO] [stdout] | [INFO] [stdout] 105 | pub const AT_WRITE_FAILED: &str = "volte_at_write_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `AT_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:106:15 [INFO] [stdout] | [INFO] [stdout] 106 | pub const AT_TIMEOUT: &str = "volte_at_timeout"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MM_IMSI_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:110:15 [INFO] [stdout] | [INFO] [stdout] 110 | pub const MM_IMSI_MISSING: &str = "volte_mm_imsi_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMSC_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:111:15 [INFO] [stdout] | [INFO] [stdout] 111 | pub const SMSC_MISSING: &str = "volte_smsc_missing"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PHONE_URI_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:112:15 [INFO] [stdout] | [INFO] [stdout] 112 | pub const PHONE_URI_INVALID: &str = "volte_phone_uri_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USIM_AKA_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:115:15 [INFO] [stdout] | [INFO] [stdout] 115 | pub const USIM_AKA_FAILED: &str = "volte_usim_aka_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MM_SIM_PATH_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:116:15 [INFO] [stdout] | [INFO] [stdout] 116 | pub const MM_SIM_PATH_MISSING: &str = "volte_mm_sim_path_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MM_SIM_PATH_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:117:15 [INFO] [stdout] | [INFO] [stdout] 117 | pub const MM_SIM_PATH_INVALID: &str = "volte_mm_sim_path_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_HEADER_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:135:15 [INFO] [stdout] | [INFO] [stdout] 135 | pub const SIP_HEADER_MISSING: &str = "volte_sip_header_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIP_NOT_UTF8` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:137:15 [INFO] [stdout] | [INFO] [stdout] 137 | pub const SIP_NOT_UTF8: &str = "volte_sip_not_utf8"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:138:15 [INFO] [stdout] | [INFO] [stdout] 138 | pub const REGISTER_SEND_FAILED: &str = "volte_register_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_INITIAL_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:139:15 [INFO] [stdout] | [INFO] [stdout] 139 | pub const REGISTER_INITIAL_UNEXPECTED_STATUS: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_AUTH_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:141:15 [INFO] [stdout] | [INFO] [stdout] 141 | pub const REGISTER_AUTH_SEND_FAILED: &str = "volte_register_auth_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REGISTER_AUTH_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:142:15 [INFO] [stdout] | [INFO] [stdout] 142 | pub const REGISTER_AUTH_UNEXPECTED_STATUS: &str = "volte_register_auth_unexpected_status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_UDP_BIND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:147:15 [INFO] [stdout] | [INFO] [stdout] 147 | pub const IPSEC_UDP_BIND_FAILED: &str = "volte_ipsec_udp_bind_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_SEND_UDP_BIND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:148:15 [INFO] [stdout] | [INFO] [stdout] 148 | pub const IPSEC_SEND_UDP_BIND_FAILED: &str = "volte_ipsec_send_udp_bind_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_RECV_UDP_BIND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:149:15 [INFO] [stdout] | [INFO] [stdout] 149 | pub const IPSEC_RECV_UDP_BIND_FAILED: &str = "volte_ipsec_recv_udp_bind_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REGISTER_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:150:15 [INFO] [stdout] | [INFO] [stdout] 150 | pub const IPSEC_REGISTER_SEND_FAILED: &str = "volte_ipsec_register_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REGISTER_INITIAL_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:151:15 [INFO] [stdout] | [INFO] [stdout] 151 | pub const IPSEC_REGISTER_INITIAL_UNEXPECTED_STATUS: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REGISTER_AUTH_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:153:15 [INFO] [stdout] | [INFO] [stdout] 153 | pub const IPSEC_REGISTER_AUTH_SEND_FAILED: &str = "volte_ipsec_register_auth_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_REGISTER_AUTH_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:154:15 [INFO] [stdout] | [INFO] [stdout] 154 | pub const IPSEC_REGISTER_AUTH_UNEXPECTED_STATUS: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_AUTS_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:156:15 [INFO] [stdout] | [INFO] [stdout] 156 | pub const IPSEC_AUTS_SEND_FAILED: &str = "volte_ipsec_auts_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_AUTS_UNEXPECTED_STATUS` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:157:15 [INFO] [stdout] | [INFO] [stdout] 157 | pub const IPSEC_AUTS_UNEXPECTED_STATUS: &str = "volte_ipsec_auts_unexpected_status"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_SPI_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:159:15 [INFO] [stdout] | [INFO] [stdout] 159 | pub const RANDOM_SPI_INVALID: &str = "volte_random_spi_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_PORT_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:160:15 [INFO] [stdout] | [INFO] [stdout] 160 | pub const RANDOM_PORT_INVALID: &str = "volte_random_port_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_PORT_RANGE_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:161:15 [INFO] [stdout] | [INFO] [stdout] 161 | pub const RANDOM_PORT_RANGE_INVALID: &str = "volte_random_port_range_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:162:15 [INFO] [stdout] | [INFO] [stdout] 162 | pub const RANDOM_FAILED: &str = "volte_random_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA_ACTIVATION_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:165:15 [INFO] [stdout] | [INFO] [stdout] 165 | pub const DATA_ACTIVATION_FAILED: &str = "volte_data_activation_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA6_ACTIVATION_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:166:15 [INFO] [stdout] | [INFO] [stdout] 166 | pub const DATA6_ACTIVATION_FAILED: &str = "volte_data6_activation_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DATA6_START_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:167:15 [INFO] [stdout] | [INFO] [stdout] 167 | pub const DATA6_START_FAILED: &str = "volte_data6_start_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WDS_CID_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:171:15 [INFO] [stdout] | [INFO] [stdout] 171 | pub const WDS_CID_MISSING: &str = "volte_wds_cid_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WDS_HANDLE_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:172:15 [INFO] [stdout] | [INFO] [stdout] 172 | pub const WDS_HANDLE_MISSING: &str = "volte_wds_handle_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SECONDARY_QMI_SETTINGS_NOT_READY` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:173:15 [INFO] [stdout] | [INFO] [stdout] 173 | pub const SECONDARY_QMI_SETTINGS_NOT_READY: &str = "volte_secondary_qmi_settings_not_ready"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IP_SETTINGS_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:174:15 [INFO] [stdout] | [INFO] [stdout] 174 | pub const IP_SETTINGS_MISSING: &str = "volte_ip_settings_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_PCSCF_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:182:15 [INFO] [stdout] | [INFO] [stdout] 182 | pub const RUNTIME_MM_PCSCF_MISSING: &str = "volte_runtime_mm_pcscf_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_PCSCF_SETUP_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:183:15 [INFO] [stdout] | [INFO] [stdout] 183 | pub const RUNTIME_MM_PCSCF_SETUP_FAILED: &str = "volte_runtime_mm_pcscf_setup_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_PROFILE_PCSCF_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:184:15 [INFO] [stdout] | [INFO] [stdout] 184 | pub const RUNTIME_PROFILE_PCSCF_MISSING: &str = "volte_runtime_profile_pcscf_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_SEND_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:190:15 [INFO] [stdout] | [INFO] [stdout] 190 | pub const RUNTIME_SEND_TIMEOUT: &str = "volte_runtime_send_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_REPLY_CLOSED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:192:15 [INFO] [stdout] | [INFO] [stdout] 192 | pub const RUNTIME_REPLY_CLOSED: &str = "volte_runtime_reply_closed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_JOIN_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:193:15 [INFO] [stdout] | [INFO] [stdout] 193 | pub const RUNTIME_JOIN_FAILED: &str = "volte_runtime_join_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_UDP_BIND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:194:15 [INFO] [stdout] | [INFO] [stdout] 194 | pub const RUNTIME_UDP_BIND_FAILED: &str = "volte_runtime_udp_bind_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_UDP_TIMEOUT_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:195:15 [INFO] [stdout] | [INFO] [stdout] 195 | pub const RUNTIME_UDP_TIMEOUT_FAILED: &str = "volte_runtime_udp_timeout_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UDP_RECV_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:196:15 [INFO] [stdout] | [INFO] [stdout] 196 | pub const UDP_RECV_FAILED: &str = "volte_udp_recv_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UDP_RECV_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:197:15 [INFO] [stdout] | [INFO] [stdout] 197 | pub const UDP_RECV_TIMEOUT: &str = "volte_udp_recv_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UDP_TIMEOUT_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:198:15 [INFO] [stdout] | [INFO] [stdout] 198 | pub const UDP_TIMEOUT_FAILED: &str = "volte_udp_timeout_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_IMS_FAMILY_UNSUPPORTED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:199:15 [INFO] [stdout] | [INFO] [stdout] 199 | pub const RUNTIME_IMS_FAMILY_UNSUPPORTED: &str = "volte_runtime_ims_family_unsupported"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_ALL_IP_FAMILIES_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:202:15 [INFO] [stdout] | [INFO] [stdout] 202 | pub const RUNTIME_ALL_IP_FAMILIES_FAILED: &str = "volte_runtime_all_ip_families_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:205:15 [INFO] [stdout] | [INFO] [stdout] 205 | pub const RUNTIME_MM_MODEM: &str = "volte_runtime_mm_modem"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM_PRESENT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:206:15 [INFO] [stdout] | [INFO] [stdout] 206 | pub const RUNTIME_MM_MODEM_PRESENT: &str = "volte_runtime_mm_modem_present"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM_PRESENT_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:207:15 [INFO] [stdout] | [INFO] [stdout] 207 | pub const RUNTIME_MM_MODEM_PRESENT_TIMEOUT: &str = "volte_runtime_mm_modem_present_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_MODEM_WAIT_TIMEOUT` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:209:15 [INFO] [stdout] | [INFO] [stdout] 209 | pub const RUNTIME_MM_MODEM_WAIT_TIMEOUT: &str = "volte_runtime_mm_modem_wait_timeout"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:210:15 [INFO] [stdout] | [INFO] [stdout] 210 | pub const RUNTIME_MM_BEARER: &str = "volte_runtime_mm_bearer"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER_PATH_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:211:15 [INFO] [stdout] | [INFO] [stdout] 211 | pub const RUNTIME_MM_BEARER_PATH_MISSING: &str = "volte_runtime_mm_bearer_path_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER_NOT_CONNECTED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:212:15 [INFO] [stdout] | [INFO] [stdout] 212 | pub const RUNTIME_MM_BEARER_NOT_CONNECTED: &str = "volte_runtime_mm_bearer_not_connected"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_BEARER_CONNECT_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:213:15 [INFO] [stdout] | [INFO] [stdout] 213 | pub const RUNTIME_MM_BEARER_CONNECT_FAILED: &str = "volte_runtime_mm_bearer_connect_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_ADDRESS_MISSING` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:216:15 [INFO] [stdout] | [INFO] [stdout] 216 | pub const RUNTIME_MM_ADDRESS_MISSING: &str = "volte_runtime_mm_address_missing"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MM_ADDRESS_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:217:15 [INFO] [stdout] | [INFO] [stdout] 217 | pub const RUNTIME_MM_ADDRESS_INVALID: &str = "volte_runtime_mm_address_invalid"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_HEALTH_BEARER` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | pub const RUNTIME_HEALTH_BEARER: &str = "volte_runtime_health_bearer"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMS_ENCODE_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:232:15 [INFO] [stdout] | [INFO] [stdout] 232 | pub const SMS_ENCODE_FAILED: &str = "volte_sms_encode_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMS_MESSAGE_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:233:15 [INFO] [stdout] | [INFO] [stdout] 233 | pub const SMS_MESSAGE_SEND_FAILED: &str = "volte_sms_message_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMS_MESSAGE_ALL_VARIANTS_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:234:15 [INFO] [stdout] | [INFO] [stdout] 234 | pub const SMS_MESSAGE_ALL_VARIANTS_FAILED: &str = "volte_sms_message_all_variants_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_SMS_MESSAGE_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:235:15 [INFO] [stdout] | [INFO] [stdout] 235 | pub const IPSEC_SMS_MESSAGE_SEND_FAILED: &str = "volte_ipsec_sms_message_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPSEC_SMS_ALL_VARIANTS_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:236:15 [INFO] [stdout] | [INFO] [stdout] 236 | pub const IPSEC_SMS_ALL_VARIANTS_FAILED: &str = "volte_ipsec_sms_all_variants_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MT_RP_ACK_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:237:15 [INFO] [stdout] | [INFO] [stdout] 237 | pub const RUNTIME_MT_RP_ACK_SEND_FAILED: &str = "volte_runtime_mt_rp_ack_send_failed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_MT_RP_ACK_UNCONFIRMED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:238:15 [INFO] [stdout] | [INFO] [stdout] 238 | pub const RUNTIME_MT_RP_ACK_UNCONFIRMED: &str = "volte_runtime_mt_rp_ack_unconfirmed"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_IPSEC_MT_RP_ACK_SEND_FAILED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:239:15 [INFO] [stdout] | [INFO] [stdout] 239 | pub const RUNTIME_IPSEC_MT_RP_ACK_SEND_FAILED: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUNTIME_IPSEC_MT_RP_ACK_UNCONFIRMED` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:241:15 [INFO] [stdout] | [INFO] [stdout] 241 | pub const RUNTIME_IPSEC_MT_RP_ACK_UNCONFIRMED: &str = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IP_INVALID` is never used [INFO] [stdout] --> backend/src/volte/mod.rs:246:15 [INFO] [stdout] | [INFO] [stdout] 246 | pub const IP_INVALID: &str = "volte_ip_invalid"; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 02s [INFO] running `Command { std: "docker" "inspect" "88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5", kill_on_drop: false }` [INFO] [stdout] 88689a1d2f5057c686ca2d7b5702ec5f7b53e867c4b8beb558244295093bbad5