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
# cargo-deny 설정 — audio-toolkit (9 standalone 크레이트 공유)
#
# 사용 (각 크레이트별, audio-toolkit/ 루트에서):
# cargo deny check --manifest-path audio-core-bsd/Cargo.toml --config deny.toml
# cargo deny check --manifest-path audio-io-bsd/Cargo.toml --config deny.toml --all-features
# ... (CI/Makefile에서 각 크레이트 순회)
#
# 프로젝트 라이선스: BSD-2-Clause. 강카피레프트(GPL/AGPL) 차단, 약카피레프트(MPL/LGPL)는
# 호환 범위에서 허용하되 copyleft="warn"으로 검토 대상 표시.
[]
= true
[]
# 허용 라이선스 (BSD-2-Clause 프로젝트와 호환)
= [
"MIT",
"Apache-2.0",
"Apache-2.0 WITH LLVM-exception",
"BSD-2-Clause",
"BSD-3-Clause",
"ISC",
"Zlib",
"Unicode-DFS-2016",
"Unicode-3.0",
"Unlicense", # public domain — pdfork(audio-plugin-bsd). BSD-2보다 관대(저작권 전체 포기).
"MPL-2.0", # 약카피레프트(파일단위) — symphonia, capsicum. 링크 호환, 수정 금지.
"LGPL-2.1", # 동적 링크 호환 — alsa-lib(cpal 경유, audio-io cpal-backend feature). 시스템 공유라이브러리 동적 링크 전제.
]
# 강카피레프트/비허가: 자동 차단
= [
"GPL-2.0",
"GPL-2.0+",
"GPL-3.0",
"GPL-3.0+",
"AGPL-1.0",
"AGPL-3.0",
"CC0-1.0", # 표기만 CC0인 경우 주의
]
# copyleft(MPL/LGPL 등) 발견 시 warn (허용하되 검토 유도)
= "warn"
= 0.8
# 라이선스 필드 누락 의존성은 fail
= "deny"
[]
# 필요 시 특정 크레이트 예외 (현재 없음)
[[]]
# pdfork — 라이선스 명확화 필요시 여기에 (확인 후 기재)
# 예: name = "pdfork"; 버전/라이선스 확정 후 expression 지정
[]
# 알려진 취약점(cargo audit DB) 차단
= ["https://github.com/RustSec/advisory-db"]
= "deny"
= "warn"
= "deny"
[]
# 같은 크레이트 중복 버전 warn
= "warn"
= "warn"
[]
# crates.io 외 출처 허용 여부
= "warn"
= "warn"
= ["https://github.com/rust-lang/crates.io-index"]