# cargo-deny configuration # https://embarkstudios.github.io/cargo-deny/ [graph] targets = [ { triple = "x86_64-unknown-linux-gnu" }, { triple = "aarch64-unknown-linux-gnu" }, { triple = "x86_64-apple-darwin" }, { triple = "aarch64-apple-darwin" }, ] [advisories] ignore = [ "RUSTSEC-2025-0141", # bincode unmaintained — transitive dep, no direct usage "RUSTSEC-2026-0097", # rand 0.8.5 unsound with custom logger — transitive via age, no custom logger in TCFS "RUSTSEC-2026-0173", # proc-macro-error2 unmaintained — build-time proc-macro dep via age→i18n-embed-fl; no runtime or security impact "RUSTSEC-2026-0189", # rmcp <1.4 Streamable-HTTP-server Host-header DNS rebinding — tcfs-mcp is stdio-only (rmcp::transport::stdio, tcfs-mcp/src/main.rs) and the workspace enables only server/transport-io/macros/schemars features, so the vulnerable HTTP transport is not compiled in; revisit on the rmcp 1.x major bump "RUSTSEC-2026-0194", # quick-xml <0.41 quadratic XML attribute duplicate check — transitive only via opendal/reqsign S3 XML response handling and service-manager/plist launchd plist parsing. opendal 0.55 pins quick-xml 0.38 and opendal 0.57 still pins quick-xml 0.39/0.40 while adding RUSTSEC-2023-0071 via rsa; revisit when upstream opendal/reqsign publish quick-xml >=0.41 support. "RUSTSEC-2026-0195", # quick-xml <0.41 NsReader namespace allocation DoS — same transitive upstream constraint/risk boundary as RUSTSEC-2026-0194; TCFS does not directly parse attacker-supplied XML with quick-xml. # RUSTSEC-2025-0067/0068 removed: serde_yml migrated to serde_norway # RUSTSEC-2026-0190 (anyhow) fixed by bumping anyhow 1.0.102 -> 1.0.103 in Cargo.lock ] [licenses] allow = [ "MIT", "Apache-2.0", "Apache-2.0 WITH LLVM-exception", "BSD-2-Clause", "BSD-3-Clause", "ISC", "Zlib", "Unicode-DFS-2016", "CC0-1.0", "OpenSSL", "Unicode-3.0", "Unlicense", "CDLA-Permissive-2.0", "MPL-2.0", ] exceptions = [] [bans] multiple-versions = "warn" wildcards = "allow" highlight = "all" deny = [] skip = [] skip-tree = [] [sources] unknown-registry = "deny" unknown-git = "deny" allow-registry = ["https://github.com/rust-lang/crates.io-index"] allow-git = []