1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# cargo-deny configuration for supply-chain policy enforcement.
#
# Run locally:
# cargo deny check # all checks
# cargo deny check advisories # RustSec advisories only
# cargo deny check licenses # license policy
# cargo deny check bans # banned / duplicate crates
# cargo deny check sources # registry / git source policy
#
# CI runs `cargo deny check` across the full feature set. cargo-audit still
# runs alongside it as a second, advisory-only opinion.
[]
# Leave `targets` unset so every target the crate supports (native, wasm32,
# iOS, Android, musl, Windows ARM64) is evaluated. Restricting targets here
# would let a platform-specific advisory or incompatible license slip through
# on a target we actually ship.
= true
[]
= ["https://github.com/rustsec/advisory-db"]
# Yanked crates in the lockfile are a release hazard: deny them outright.
= "deny"
# Flag crates flagged unmaintained anywhere in the tree, including transitive
# dependencies, so we notice rot early.
= "all"
# Document every ignored advisory with an inline reason. Empty = no exceptions.
= []
[]
# Permissive licenses compatible with this crate's MIT OR Apache-2.0 terms.
# Every entry corresponds to a license actually present in the dependency
# tree (verified with `cargo deny --all-features list`).
= [
"MIT",
"Apache-2.0",
"Apache-2.0 WITH LLVM-exception",
"Unicode-3.0",
"Unlicense",
"Zlib",
]
= 0.8
# Per-crate license overrides. None needed today: the lone LGPL-licensed
# crate (r-efi) dual-offers MIT OR Apache-2.0, which the allow list satisfies.
= []
[]
= false
[]
# Duplicate versions bloat the tree and the binary. Warn rather than deny so a
# transitive version skew does not block CI, but keep it visible for cleanup.
= "warn"
# Wildcard ("*") version requirements pin nothing and are a supply-chain risk.
= "deny"
# Allow a wildcard on path/git deps within the workspace (the fuzz subcrate
# depends on the parent by path), which are not a supply-chain concern.
= true
= "all"
= [
# OpenSSL pulls a C toolchain and a large CVE surface. This crate has no
# TLS needs, so flag any accidental introduction.
{ = "openssl" },
{ = "openssl-sys" },
]
[]
# Only crates.io is an expected source. Anything else (private registry,
# arbitrary git) must be added here deliberately.
= "deny"
= "deny"
= ["https://github.com/rust-lang/crates.io-index"]
= []