mirror of
https://gitlab.com/pezkuwichain/pezkuwi-sdk.git
synced 2026-10-20 18:56:23 +00:00
Make this monorepo's tracked tree identical to the deployed github repo (github.com/pezkuwichain/pezkuwi-DKS): all RC/AH/People runtimes and framework carry the mainnet fixes (incl. U128CurrencyToVote everywhere, so the staking election stall cannot recur), and tools/usdt-bridge matches the current, public-safe custody tooling (real config/deploy units gitignored, secret-file locations and server IPs stripped, sanitized *.example templates committed). Only exception to the mirror: GitLab-native CI is preserved (.gitlab-ci.yml and .gitlab/), to be rebuilt to match the github CI pipeline in a follow-up.
129 lines
5.9 KiB
TOML
129 lines
5.9 KiB
TOML
# cargo-deny v2 configuration for Pezkuwi SDK
|
|
# https://embarkstudios.github.io/cargo-deny/
|
|
|
|
[graph]
|
|
targets = [
|
|
{ triple = "wasm32-unknown-unknown" },
|
|
{ triple = "x86_64-unknown-linux-gnu" },
|
|
{ triple = "x86_64-unknown-linux-musl" },
|
|
]
|
|
# all-features prevents krates 0.20+ from panicking with "unable to locate std"
|
|
# on workspace crates that have a std feature but don't enable it by default.
|
|
all-features = true
|
|
|
|
# Advisory database - check for known vulnerabilities
|
|
# In v2: all vulnerability/unsound/notice advisories automatically emit errors.
|
|
# Use `ignore` to suppress specific advisories.
|
|
[advisories]
|
|
yanked = "warn"
|
|
# All unmaintained crates are transitive upstream dependencies we cannot replace.
|
|
# Track via quarterly review instead of blocking CI.
|
|
unmaintained = "none"
|
|
ignore = [
|
|
# ── wasmtime ──────────────────────────────────────────────────────────────
|
|
# wasmtime is pinned at 37.x (the version sc-executor-wasmtime targets). Clearing
|
|
# these needs wasmtime 42.0.2+ — a 5-major-version bump requiring cranelift updates
|
|
# and executor API adaptation, so it is a dedicated, tested effort (issue #7), not a
|
|
# drop-in bump; we will NOT destabilize the fund-critical executor on a whim. The
|
|
# toolchain (now 1.96.0) no longer blocks it. Risk is contained regardless: these
|
|
# CVEs only affect the Winch backend, Component Model, or 64-bit tables — none of
|
|
# which PezkuwiChain's executor uses.
|
|
"RUSTSEC-2026-0006", # wasmtime: segfault with f64.copysign on x86-64
|
|
"RUSTSEC-2026-0020", # wasmtime: WASI guest-controlled resource exhaustion
|
|
"RUSTSEC-2026-0021", # wasmtime: panic in wasi:http/types.fields
|
|
"RUSTSEC-2026-0085", # wasmtime: panic lifting flags component value
|
|
"RUSTSEC-2026-0086", # wasmtime: host data leakage 64-bit tables + Winch
|
|
"RUSTSEC-2026-0087", # wasmtime: segfault f64x2.splat on Cranelift x86-64
|
|
"RUSTSEC-2026-0088", # wasmtime: data leakage pooling allocator instances
|
|
"RUSTSEC-2026-0089", # wasmtime: host panic table.fill with Winch
|
|
"RUSTSEC-2026-0091", # wasmtime: OOB write transcoding component model strings
|
|
"RUSTSEC-2026-0092", # wasmtime: panic transcoding misaligned UTF-16 strings
|
|
"RUSTSEC-2026-0093", # wasmtime: heap OOB read UTF-16 to latin1+utf16
|
|
"RUSTSEC-2026-0094", # wasmtime: masked return value table.grow Winch
|
|
"RUSTSEC-2026-0095", # wasmtime: Winch sandbox-escaping memory access
|
|
"RUSTSEC-2026-0096", # wasmtime: miscompiled guest heap aarch64 Cranelift
|
|
|
|
# ── memmap2 ───────────────────────────────────────────────────────────────
|
|
# Unsound unchecked pointer-offset in memory-mapping. Host-side only — memmap2
|
|
# is not reachable from the WASM runtime (no mmap in WASM), so it cannot affect
|
|
# on-chain/fund logic. Transitive dep; no fixed release for the pinned versions.
|
|
"RUSTSEC-2026-0186", # memmap2: unchecked pointer offset (unsound, host-side)
|
|
|
|
# ── webpki ────────────────────────────────────────────────────────────────
|
|
# Name-constraints and CRL parsing bugs in transitive webpki dep.
|
|
# We do not use CRLs or rely on certificate name constraints in our P2P/RPC stack.
|
|
"RUSTSEC-2026-0098", # webpki: URI name constraints incorrectly accepted
|
|
"RUSTSEC-2026-0099", # webpki: wildcard name constraints incorrectly accepted
|
|
"RUSTSEC-2026-0104", # webpki: reachable panic in CRL parsing (onlySomeReasons BIT STRING)
|
|
|
|
# ── git2 / libgit2 (build tooling only) ───────────────────────────────────
|
|
# Pulled by build-time tooling (wasm-builder / cargo metadata), NOT present in
|
|
# the runtime WASM or the node consensus path. Track for upstream git2 bump.
|
|
"RUSTSEC-2026-0183", # git2: potential UB in Remote::list()
|
|
"RUSTSEC-2026-0184", # git2: potential UB in Signature from buffer-created BlameHunk
|
|
|
|
# ── hickory DNS (node networking only) ────────────────────────────────────
|
|
# Transitive via libp2p DNS resolution. DoS on malformed/cross-zone responses.
|
|
# Affects node networking availability only, not the runtime. Track upstream.
|
|
"RUSTSEC-2026-0118", # hickory: NSEC3 closest-encloser proof unbounded loop
|
|
"RUSTSEC-2026-0119", # hickory: O(n^2) name-compression CPU exhaustion
|
|
|
|
# ── wasmtime (additional; see toolchain note above) ───────────────────────
|
|
"RUSTSEC-2026-0114", # wasmtime: panic allocating table exceeding host address space (64-bit tables; unused)
|
|
]
|
|
|
|
# License compliance
|
|
# In v2: all licenses are denied unless explicitly allowed.
|
|
# Removed v1 fields: unlicensed, deny, copyleft, allow-osi-fsf-free, default
|
|
[licenses]
|
|
confidence-threshold = 0.8
|
|
allow = [
|
|
"Apache-2.0 WITH LLVM-exception",
|
|
"Apache-2.0",
|
|
"BSD-2-Clause",
|
|
"BSD-3-Clause",
|
|
"BSL-1.0",
|
|
"CC0-1.0",
|
|
"CDLA-Permissive-2.0",
|
|
"GPL-3.0-only WITH Classpath-exception-2.0",
|
|
"GPL-3.0-only",
|
|
"GPL-3.0-or-later WITH Classpath-exception-2.0",
|
|
"GPL-3.0-or-later",
|
|
"ISC",
|
|
"MIT",
|
|
"MIT-0",
|
|
"MPL-2.0",
|
|
"NCSA",
|
|
"OpenSSL",
|
|
"Unicode-3.0",
|
|
"Unicode-DFS-2016",
|
|
"Unlicense",
|
|
"Zlib",
|
|
]
|
|
exceptions = [
|
|
# ring uses a custom ISC-style license
|
|
{ allow = ["OpenSSL"], name = "ring" },
|
|
]
|
|
|
|
[licenses.private]
|
|
ignore = true
|
|
|
|
# Banned crates and duplicate version detection
|
|
[bans]
|
|
multiple-versions = "warn"
|
|
wildcards = "allow"
|
|
highlight = "simplest-path"
|
|
deny = []
|
|
skip = []
|
|
skip-tree = []
|
|
|
|
# Source origin checks
|
|
[sources]
|
|
unknown-registry = "warn"
|
|
unknown-git = "warn"
|
|
allow-registry = ["https://github.com/rust-lang/crates.io-index"]
|
|
allow-git = [
|
|
# Our serde fork with wasm32v1-none target fix (pending upstream merge)
|
|
"https://github.com/pezkuwichain/serde.git",
|
|
]
|