diff options
| author | Doan Luu Duc Tai <doan@luuduct.ai> | 2026-10-30 17:24:45 -0500 |
|---|---|---|
| committer | Doan Luu Duc Tai <doan@luuduct.ai> | 2026-10-30 17:24:45 -0500 |
| commit | 7a0ce2805258e8ac061202904379692d53d5dc95 (patch) | |
| tree | a495aee0cbdc111cd9773f7d2d02753cd1d778d5 | |
| parent | 436e217c7858888702d2b6d9e655597ccadb7281 (diff) | |
Prove OpenSSL PQ crypto in browser WASI and document the migrationfeature/private-chat
| -rw-r--r-- | Cargo.lock | 1144 | ||||
| -rw-r--r-- | about.hbs | 2 | ||||
| -rw-r--r-- | about.toml | 2 | ||||
| -rw-r--r-- | crates/chat-crypto/Cargo.toml | 8 | ||||
| -rw-r--r-- | crates/chat-crypto/README.txt | 63 | ||||
| -rw-r--r-- | crates/chat-crypto/browser/wasi.mjs | 106 | ||||
| -rw-r--r-- | crates/chat-crypto/src/lib.rs | 11 | ||||
| -rw-r--r-- | crates/chat-crypto/src/main.rs | 23 | ||||
| -rw-r--r-- | crates/chat-crypto/tests/browser.mjs | 36 | ||||
| -rw-r--r-- | deny.toml | 17 | ||||
| -rw-r--r-- | docs/CHAT-DESIGN.txt | 4 | ||||
| -rw-r--r-- | docs/CHAT-OPENSSL-MIGRATION.txt | 253 | ||||
| -rw-r--r-- | docs/CHAT-SECURITY-REVIEW.txt | 5 | ||||
| -rw-r--r-- | docs/POLICY.txt | 6 | ||||
| -rwxr-xr-x | infra/chat/build-openssl-wasi.sh | 49 | ||||
| -rw-r--r-- | infra/chat/openssl-wasi.conf | 22 | ||||
| -rw-r--r-- | rust-toolchain.toml | 2 | ||||
| -rw-r--r-- | web/THIRD-PARTY-LICENSES.html | 2092 |
18 files changed, 1174 insertions, 2671 deletions
@@ -23,42 +23,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" [[package]] -name = "aead" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" -dependencies = [ - "crypto-common 0.1.7", - "generic-array 0.14.7", -] - -[[package]] -name = "aes" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures 0.2.17", - "zeroize", -] - -[[package]] -name = "aes-gcm" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" -dependencies = [ - "aead", - "aes", - "cipher", - "ctr", - "ghash", - "subtle", -] - -[[package]] name = "aho-corasick" version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -77,6 +41,16 @@ dependencies = [ ] [[package]] +name = "annotate-snippets" +version = "0.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "710e8eae58854cdc1790fcb56cca04d712a17be849eeb81da2a724bf4bae2bc4" +dependencies = [ + "anstyle", + "unicode-width", +] + +[[package]] name = "anstream" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -160,12 +134,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53" [[package]] -name = "base16ct" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" - -[[package]] name = "base64" version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -178,6 +146,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06" [[package]] +name = "bindgen" +version = "0.72.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895" +dependencies = [ + "annotate-snippets", + "bitflags", + "cexpr", + "clang-sys", + "itertools 0.13.0", + "log", + "prettyplease", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex 1.3.0", + "syn 2.0.119", +] + +[[package]] name = "bit-set" version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -199,18 +188,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06" [[package]] -name = "bitvec" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddcec3d12c579d40898fe0a9a358a803c23e9c52ca3c425707f81c9436211837" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - -[[package]] name = "blake2" version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -234,26 +211,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2f6c7dbe95a6ed67ad9f18e57daf93a2f034c524b99fd2b76d18fdfeb6660aa" dependencies = [ - "hybrid-array 0.4.15", -] - -[[package]] -name = "block-padding" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" -dependencies = [ - "generic-array 0.14.7", -] - -[[package]] -name = "blowfish" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7" -dependencies = [ - "byteorder", - "cipher", + "hybrid-array", ] [[package]] @@ -272,56 +230,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649" [[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "camellia" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3264e2574e9ef2b53ce6f536dea83a69ac0bc600b762d1523ff83fe07230ce30" -dependencies = [ - "byteorder", - "cipher", -] - -[[package]] -name = "cast5" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b07d673db1ccf000e90f54b819db9e75a8348d6eb056e9b8ab53231b7a9911" -dependencies = [ - "cipher", -] - -[[package]] -name = "cbc" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6" -dependencies = [ - "cipher", -] - -[[package]] name = "cc" version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86e055fa6e3e40ad6187ba25b6855eeb635d5271f8e0f0e1e9a5826b8d75bea0" dependencies = [ "find-msvc-tools", - "shlex", + "shlex 2.0.1", ] [[package]] -name = "cfb-mode" -version = "0.8.2" +name = "cexpr" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "738b8d467867f80a71351933f70461f5b56f24d5c93e0cf216e59229c968d330" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" dependencies = [ - "cipher", + "nom", ] [[package]] @@ -344,14 +268,14 @@ dependencies = [ ] [[package]] -name = "cipher" -version = "0.4.4" +name = "clang-sys" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +checksum = "157a8ba7b480713b56f4c09fd13fc3e0a22a5dfab8097ba61cbc5feef950788a" dependencies = [ - "crypto-common 0.1.7", - "inout", - "zeroize", + "glob", + "libc", + "libloading", ] [[package]] @@ -395,23 +319,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1c133bc6a41be0d194c306b5506d15e6feeea7b1d6604bd3f8310dfb2ca96486" [[package]] -name = "cmac" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8543454e3c3f5126effff9cd44d562af4e31fb8ce1cc0d3dcd8f084515dbc1aa" -dependencies = [ - "cipher", - "dbl", - "digest 0.10.7", -] - -[[package]] -name = "cmov" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c9ea0ac24bc397ab3c98583a3c9ba74fa56b09a4449bbe172b9b1ddb016027a" - -[[package]] name = "colorchoice" version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -419,12 +326,6 @@ checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" [[package]] name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "const-oid" version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6ef517f0926dd24a1582492c791b6a4818a4d94e789a334894aa15b0d12f55c" @@ -463,25 +364,12 @@ dependencies = [ ] [[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" -dependencies = [ - "generic-array 0.14.7", - "rand_core 0.6.4", - "subtle", - "zeroize", -] - -[[package]] name = "crypto-common" version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" dependencies = [ "generic-array 0.14.7", - "rand_core 0.6.4", "typenum", ] @@ -491,97 +379,17 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453" dependencies = [ - "hybrid-array 0.4.15", - "rand_core 0.10.1", + "hybrid-array", ] [[package]] -name = "ctr" -version = "0.9.2" +name = "ctor" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +checksum = "914a755b7c2d4af2bdcff7ce1739e2db9a1b81a9b07123d8015786ae03c0980d" dependencies = [ - "cipher", -] - -[[package]] -name = "ctutils" -version = "0.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2376ffd6f96d8a9db59875b4b6b0237d6900b5baf64279714e05493ce64828a" -dependencies = [ - "cmov", -] - -[[package]] -name = "curve25519-dalek" -version = "4.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" -dependencies = [ - "cfg-if", - "cpufeatures 0.2.17", - "curve25519-dalek-derive", - "digest 0.10.7", - "fiat-crypto", - "rustc_version", - "subtle", - "zeroize", -] - -[[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "cx448" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c0cf476284b03eb6c10e78787b21c7abb7d7d43cb2f02532ba6b831ed892fa" -dependencies = [ - "crypto-bigint", - "elliptic-curve", - "rand_core 0.6.4", - "sha3 0.10.9", - "signature 2.2.0", - "subtle", - "zeroize", -] - -[[package]] -name = "dbl" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd2735a791158376708f9347fe8faba9667589d82427ef3aed6794a8981de3d9" -dependencies = [ - "generic-array 0.14.7", -] - -[[package]] -name = "der" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" -dependencies = [ - "const-oid 0.9.6", - "pem-rfc7468", - "zeroize", -] - -[[package]] -name = "des" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffdd80ce8ce993de27e9f063a444a4d53ce8e8db4c1f00cc03af5ad5a9867a1e" -dependencies = [ - "cipher", + "link-section", + "linktime-proc-macro", ] [[package]] @@ -591,7 +399,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", - "const-oid 0.9.6", "crypto-common 0.1.7", "subtle", ] @@ -603,7 +410,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" dependencies = [ "block-buffer 0.12.1", - "const-oid 0.10.2", + "const-oid", "crypto-common 0.2.2", ] @@ -625,120 +432,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" [[package]] -name = "dsa" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48bc224a9084ad760195584ce5abb3c2c34a225fa312a128ad245a6b412b7689" -dependencies = [ - "digest 0.10.7", - "num-bigint-dig", - "num-traits", - "pkcs8", - "rfc6979", - "sha2 0.10.9", - "signature 2.2.0", - "zeroize", -] - -[[package]] name = "dyn-clone" version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" [[package]] -name = "eax" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9954fabd903b82b9d7a68f65f97dc96dd9ad368e40ccc907a7c19d53e6bfac28" -dependencies = [ - "aead", - "cipher", - "cmac", - "ctr", - "subtle", -] - -[[package]] -name = "ecb" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a8bfa975b1aec2145850fcaa1c6fe269a16578c44705a532ae3edc92b8881c7" -dependencies = [ - "cipher", -] - -[[package]] -name = "ecdsa" -version = "0.16.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" -dependencies = [ - "der", - "digest 0.10.7", - "elliptic-curve", - "rfc6979", - "signature 2.2.0", - "spki", -] - -[[package]] -name = "ed25519" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" -dependencies = [ - "pkcs8", - "signature 2.2.0", -] - -[[package]] -name = "ed25519-dalek" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9" -dependencies = [ - "curve25519-dalek", - "ed25519", - "rand_core 0.6.4", - "serde", - "sha2 0.10.9", - "subtle", - "zeroize", -] - -[[package]] name = "either" version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e9c71c2167ca323c882b99918929403426e2373ea17242ff5653e0d5e1058be" [[package]] -name = "elliptic-curve" -version = "0.13.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" -dependencies = [ - "base16ct", - "base64ct", - "crypto-bigint", - "digest 0.10.7", - "ff", - "generic-array 0.14.7", - "group", - "hkdf", - "pem-rfc7468", - "pkcs8", - "rand_core 0.6.4", - "sec1", - "serde_json", - "serdect", - "subtle", - "tap", - "zeroize", -] - -[[package]] name = "ena" version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -770,23 +475,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223" [[package]] -name = "ff" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" -dependencies = [ - "bitvec", - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "fiat-crypto" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" - -[[package]] name = "filetime" version = "0.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -825,12 +513,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" [[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - -[[package]] name = "futures-core" version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -862,7 +544,6 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", - "zeroize", ] [[package]] @@ -895,33 +576,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099" dependencies = [ "cfg-if", - "js-sys", "libc", "r-efi", - "rand_core 0.10.1", - "wasm-bindgen", ] [[package]] -name = "ghash" -version = "0.5.1" +name = "glob" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1" -dependencies = [ - "opaque-debug", - "polyval", -] - -[[package]] -name = "group" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" -dependencies = [ - "ff", - "rand_core 0.6.4", - "subtle", -] +checksum = "e4eba85ea1d0a966a983acd07deee566e67395d2d96b6fb39e62b5a833f1eb0b" [[package]] name = "hashbrown" @@ -951,41 +614,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] -name = "hkdf" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" -dependencies = [ - "hmac", -] - -[[package]] -name = "hmac" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "hybrid-array" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891d15931895091dea5c47afa5b3c9a01ba634b311919fd4d41388fa0e3d76af" -dependencies = [ - "typenum", -] - -[[package]] name = "hybrid-array" version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27f864f10dfb56725ce5ce5472bc52252c8f93a4ab86327122cebf62c5f59a17" dependencies = [ - "ctutils", "typenum", - "zeroize", ] [[package]] @@ -1096,15 +730,6 @@ dependencies = [ ] [[package]] -name = "idea" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "075557004419d7f2031b8bb7f44bb43e55a83ca7b63076a8fb8fe75753836477" -dependencies = [ - "cipher", -] - -[[package]] name = "idna" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1136,16 +761,6 @@ dependencies = [ ] [[package]] -name = "inout" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" -dependencies = [ - "block-padding", - "generic-array 0.14.7", -] - -[[package]] name = "is_terminal_polyfill" version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1153,6 +768,15 @@ checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b4baf93f58d4425749ca49a51c50ebab072c5df6994d08fed93541c331481dc" @@ -1179,15 +803,6 @@ dependencies = [ [[package]] name = "keccak" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb26cec98cce3a3d96cbb7bced3c4b16e3d13f27ec56dbd62cbc8f39cfb9d653" -dependencies = [ - "cpufeatures 0.2.17", -] - -[[package]] -name = "keccak" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d8f198d1db720e4940b5a493201d199d9f24f568f8f746bd13706243a2f71598" @@ -1197,16 +812,6 @@ dependencies = [ ] [[package]] -name = "kem" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01737161ba802849cfd486b5bd209d38ba4943494c249a8126005170c7621edd" -dependencies = [ - "crypto-common 0.2.2", - "rand_core 0.10.1", -] - -[[package]] name = "lalrpop" version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1215,12 +820,12 @@ dependencies = [ "ascii-canvas", "bit-set", "ena", - "itertools", + "itertools 0.15.0", "lalrpop-util", "petgraph", "regex", "regex-syntax", - "sha3 0.12.0", + "sha3", "string_cache", "term", "unicode-xid", @@ -1237,25 +842,32 @@ dependencies = [ ] [[package]] -name = "lazy_static" -version = "1.5.1" +name = "libc" +version = "0.2.191" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65cd87c9a6d60536580b316ad985726104730a5151c99845f2490428ef91240a" + +[[package]] +name = "libloading" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20870f649af7073d53e38067b2a84312175d56ea15217e1b15bc83506ec50afb" +checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ - "spin", + "cfg-if", + "windows-link", ] [[package]] -name = "libc" -version = "0.2.191" +name = "link-section" +version = "0.19.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65cd87c9a6d60536580b316ad985726104730a5151c99845f2490428ef91240a" +checksum = "39c29a617ce3df32c08497bdc1ab6e2376e0b17948ac166a2fbe5977c5954cd9" [[package]] -name = "libm" -version = "0.2.16" +name = "linktime-proc-macro" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" +checksum = "7e57c38c1e860fd37c604281cdfb1dd2216977fd76a50f85ba2f388ef3219616" [[package]] name = "linux-raw-sys" @@ -1285,16 +897,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5d15f86d12da44cd8d4ec3c73984537eb7f4cadcb9776a575a0a8a05ca11005c" [[package]] -name = "md-5" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" -dependencies = [ - "cfg-if", - "digest 0.10.7", -] - -[[package]] name = "memchr" version = "2.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1307,6 +909,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c797b9d6bb23aab2fc369c65f871be49214f5c759af65bde26ffaaa2b646b492" [[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] name = "miniz_oxide" version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1317,86 +925,19 @@ dependencies = [ ] [[package]] -name = "ml-dsa" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "add6b9d92e496f16f4526d68ff29da1483aba4b119baeab8bed3b9e3544a6f3d" -dependencies = [ - "crypto-common 0.2.2", - "ctutils", - "hybrid-array 0.4.15", - "module-lattice", - "shake", - "signature 3.0.0", - "zeroize", -] - -[[package]] -name = "ml-kem" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9ba01ebcf90f6aff8e9b9f55bb69b19e6250e4ade5787d0040eaa27dd226238" -dependencies = [ - "hybrid-array 0.4.15", - "kem", - "module-lattice", - "rand_core 0.10.1", - "sha3 0.12.0", - "shake", - "zeroize", -] - -[[package]] -name = "module-lattice" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c61b87c9683ab7cb1c6871d261ad5479b6b10ceb52c4352aaca3b5d35a8febe" -dependencies = [ - "ctutils", - "hybrid-array 0.4.15", - "num-traits", - "zeroize", -] - -[[package]] name = "new_debug_unreachable" version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" [[package]] -name = "num-bigint-dig" -version = "0.8.6" +name = "nom" +version = "7.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e661dda6640fad38e827a6d4a310ff4763082116fe217f279885c97f511bb0b7" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" dependencies = [ - "lazy_static", - "libm", - "num-integer", - "num-iter", - "num-traits", - "rand 0.8.8", - "smallvec", - "zeroize", -] - -[[package]] -name = "num-integer" -version = "0.1.47" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ce2d95d4b3734dc35aa2f45e1aa22cd416814592a4f9d9205e11affd5b8e10b" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-iter" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c92800bd69a1eac91786bcfe9da64a897eb72911b8dc3095decbd07429e8048b" -dependencies = [ - "num-integer", - "num-traits", + "memchr", + "minimal-lexical", ] [[package]] @@ -1406,19 +947,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", - "libm", -] - -[[package]] -name = "ocb3" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c196e0276c471c843dd5777e7543a36a298a4be942a2a688d8111cd43390dedb" -dependencies = [ - "aead", - "cipher", - "ctr", - "subtle", ] [[package]] @@ -1434,47 +962,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] -name = "opaque-debug" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" - -[[package]] -name = "p256" -version = "0.13.2" +name = "openssl-sys" +version = "0.9.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +checksum = "b47e7e6bb2c38cd930d25a23b40fa52e068c10e85f3e03a7f5ba5aaca5713695" dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.9", -] - -[[package]] -name = "p384" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe42f1670a52a47d448f14b6a5c61dd78fce51856e68edaa38f7ae3a46b8d6b6" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.9", + "bindgen", + "cc", + "libc", + "pkg-config", + "vcpkg", ] [[package]] -name = "p521" -version = "0.13.3" +name = "ossl" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fc9e2161f1f215afdfce23677034ae137bbd45016a880c2eb3ba8eb95f085b2" +checksum = "7e54e22faa3b8beba6a1126e3156649bd145d9dcbb4ec8961e7ad490674fc53e" dependencies = [ - "base16ct", - "ecdsa", - "elliptic-curve", - "primeorder", - "rand_core 0.6.4", - "sha2 0.10.9", + "bindgen", + "cfg-if", + "libc", + "openssl-sys", + "pkg-config", ] [[package]] @@ -1507,20 +1017,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166" dependencies = [ "base64ct", - "rand_core 0.6.4", + "rand_core", "subtle", ] [[package]] -name = "pem-rfc7468" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" -dependencies = [ - "base64ct", -] - -[[package]] name = "petgraph" version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1547,37 +1048,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" [[package]] -name = "pkcs1" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f" -dependencies = [ - "der", - "pkcs8", - "spki", -] - -[[package]] -name = "pkcs8" -version = "0.10.2" +name = "pkg-config" +version = "0.3.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" -dependencies = [ - "der", - "spki", -] - -[[package]] -name = "polyval" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" -dependencies = [ - "cfg-if", - "cpufeatures 0.2.17", - "opaque-debug", - "universal-hash", -] +checksum = "f6b464fbc74e149a392436b17d523f769e057cb6877f6a5c4618bc6f11800548" [[package]] name = "potential_utf" @@ -1589,27 +1063,19 @@ dependencies = [ ] [[package]] -name = "ppv-lite86" -version = "0.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" -dependencies = [ - "zerocopy 0.8.63", -] - -[[package]] name = "precomputed-hash" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" [[package]] -name = "primeorder" -version = "0.13.6" +name = "prettyplease" +version = "0.2.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" +checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ - "elliptic-curve", + "proc-macro2", + "syn 2.0.119", ] [[package]] @@ -1637,55 +1103,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - -[[package]] -name = "rand" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e058c7de0b26af77780c769414d6257830bb240f3c38477dbc2c16e5f54d6d4c" -dependencies = [ - "rand_chacha", - "rand_core 0.6.4", -] - -[[package]] -name = "rand" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65c9fb96cbc91e3478eaae79a69fcd3f1ae4ad052e471fe6732fff548984b4af" -dependencies = [ - "getrandom 0.4.3", - "rand_core 0.10.1", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core 0.6.4", -] - -[[package]] name = "rand_core" version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom 0.2.17", -] - -[[package]] -name = "rand_core" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69" [[package]] name = "redox_syscall" @@ -1726,52 +1147,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4" [[package]] -name = "rfc6979" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" -dependencies = [ - "hmac", - "subtle", -] - -[[package]] -name = "ripemd" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "rsa" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8573f03f5883dcaebdfcf4725caa1ecb9c15b2ef50c43a07b816e06799bb12d" -dependencies = [ - "const-oid 0.9.6", - "digest 0.10.7", - "num-bigint-dig", - "num-integer", - "num-traits", - "pkcs1", - "pkcs8", - "rand_core 0.6.4", - "signature 2.2.0", - "spki", - "subtle", - "zeroize", -] - -[[package]] -name = "rustc_version" -version = "0.4.1" +name = "rustc-hash" +version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" -dependencies = [ - "semver", -] +checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d" [[package]] name = "rustix" @@ -1808,86 +1187,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] -name = "sec1" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" -dependencies = [ - "base16ct", - "der", - "generic-array 0.14.7", - "pkcs8", - "serdect", - "subtle", - "zeroize", -] - -[[package]] -name = "semver" -version = "1.0.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" - -[[package]] name = "sequoia-openpgp" version = "2.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1460dbd9c736920a78bd450eaa6902304605c493bd2222121849ba01ab8df997" dependencies = [ - "aes", - "aes-gcm", "anyhow", "argon2", "base64", - "block-padding", - "blowfish", "buffered-reader", - "camellia", - "cast5", - "cbc", - "cfb-mode", "chrono", - "cipher", - "cx448", - "des", - "digest 0.10.7", - "dsa", + "ctor", "dyn-clone", - "eax", - "ecb", - "ecdsa", - "ed25519", - "ed25519-dalek", "getrandom 0.2.17", - "hkdf", - "idea", "idna", "lalrpop", "lalrpop-util", "libc", - "md-5", "memsec", - "ml-dsa", - "ml-kem", - "num-bigint-dig", - "num-integer", - "ocb3", - "p256", - "p384", - "p521", - "rand 0.10.3", + "openssl-sys", + "ossl", "regex", "regex-syntax", - "ripemd", - "rsa", "sha1collisiondetection", - "sha2 0.10.9", - "sha3 0.10.9", - "slh-dsa", "thiserror", - "twofish", - "typenum", - "x25519-dalek", "xxhash-rust", ] @@ -1944,39 +1267,17 @@ dependencies = [ ] [[package]] -name = "serdect" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177" -dependencies = [ - "base16ct", - "serde", -] - -[[package]] name = "sha1collisiondetection" version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f606421e4a6012877e893c399822a4ed4b089164c5969424e1b9d1e66e6964b" dependencies = [ - "const-oid 0.9.6", "digest 0.10.7", "generic-array 1.4.5", ] [[package]] name = "sha2" -version = "0.10.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" -dependencies = [ - "cfg-if", - "cpufeatures 0.2.17", - "digest 0.10.7", -] - -[[package]] -name = "sha2" version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "47d7069beb7d6ac7b9acd1039986e73443f24234f41074da099d6f994ac9ad19" @@ -1988,35 +1289,20 @@ dependencies = [ [[package]] name = "sha3" -version = "0.10.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77fd7028345d415a4034cf8777cd4f8ab1851274233b45f84e3d955502d93874" -dependencies = [ - "digest 0.10.7", - "keccak 0.1.6", -] - -[[package]] -name = "sha3" version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc9bad02c26382724b2d2692c6f179285e4b54eeecd7968f52a50059c3c11759" dependencies = [ "digest 0.11.3", - "keccak 0.2.2", + "keccak", "sponge-cursor", ] [[package]] -name = "shake" -version = "0.1.0" +name = "shlex" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09057cb2149ad4cbd2da1e26b351f9a4c354219421229c69c3063e6f61947c4a" -dependencies = [ - "digest 0.11.3", - "keccak 0.2.2", - "sponge-cursor", -] +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "shlex" @@ -2025,25 +1311,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba" [[package]] -name = "signature" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" -dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", -] - -[[package]] -name = "signature" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d567dcbaf0049cb8ac2608a76cd95ff9e4412e1899d389ee400918ca7537f5" -dependencies = [ - "digest 0.11.3", -] - -[[package]] name = "simd-adler32" version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2062,47 +1329,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" [[package]] -name = "slh-dsa" -version = "0.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd2f20f4049197e03db1104a6452f4d9e96665d79f880198dce4a7026ba5f267" -dependencies = [ - "const-oid 0.9.6", - "digest 0.10.7", - "hmac", - "hybrid-array 0.3.1", - "pkcs8", - "rand_core 0.6.4", - "sha2 0.10.9", - "sha3 0.10.9", - "signature 2.2.0", - "typenum", - "zerocopy 0.7.35", -] - -[[package]] name = "smallvec" version = "1.16.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0d5d4b1981b8bbbb7aed204cae5726d683d5d6ac7e74ec54122ea28f315e7c8" [[package]] -name = "spin" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3763264f6b73151db08c50ff20d7d8a0b8796e021cdea7ceedad07b80155fa0e" - -[[package]] -name = "spki" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" -dependencies = [ - "base64ct", - "der", -] - -[[package]] name = "sponge-cursor" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2126,7 +1358,7 @@ dependencies = [ "hex", "serde", "serde_json", - "sha2 0.11.1", + "sha2", "tar", "tempfile", "toml", @@ -2138,9 +1370,7 @@ name = "stack-chat-crypto" version = "0.1.0" dependencies = [ "anyhow", - "getrandom 0.4.3", "sequoia-openpgp", - "wasm-bindgen", ] [[package]] @@ -2201,12 +1431,6 @@ dependencies = [ ] [[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - -[[package]] name = "tar" version = "0.4.46" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2309,15 +1533,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06bdbd8cfc056b8d2e2e85f29b56a3bdbecb527cef81eb39e3e7b98af4652770" [[package]] -name = "twofish" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a78e83a30223c757c3947cd144a31014ff04298d8719ae10d03c31c0448c8013" -dependencies = [ - "cipher", -] - -[[package]] name = "typenum" version = "1.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2330,20 +1545,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2c754d6c33795a1c324727428e5a7dedb5b06195f9890bdbcba760d3e246563" [[package]] -name = "unicode-xid" -version = "0.2.6" +name = "unicode-width" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +checksum = "ca718471876992059f251e33aafc334346ada08042b7661dd1fe313a9bced557" [[package]] -name = "universal-hash" -version = "0.5.1" +name = "unicode-xid" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" -dependencies = [ - "crypto-common 0.1.7", - "subtle", -] +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "utf8_iter" @@ -2367,6 +1578,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a3b425286980a367278453f3b6d28cdcb134b574e5a35824a6ff5eebad50bb6" [[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + +[[package]] name = "version_check" version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2522,26 +1739,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc" [[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - -[[package]] -name = "x25519-dalek" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277" -dependencies = [ - "curve25519-dalek", - "rand_core 0.6.4", - "zeroize", -] - -[[package]] name = "xattr" version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2581,47 +1778,6 @@ dependencies = [ ] [[package]] -name = "zerocopy" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" -dependencies = [ - "byteorder", - "zerocopy-derive 0.7.35", -] - -[[package]] -name = "zerocopy" -version = "0.8.63" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5fe1f8f1b06191a00962174c61aa5005e0bb391a6d80d07e24d115c01a92ed8" -dependencies = [ - "zerocopy-derive 0.8.63", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] -name = "zerocopy-derive" -version = "0.8.63" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "863ad3ac83293fb4d740aedbfdc9240dd8d1a50c1099acd76ce80ce7c7230c7f" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] name = "zerofrom" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2643,26 +1799,6 @@ dependencies = [ ] [[package]] -name = "zeroize" -version = "1.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13084392c5e4bc371903e2935a5eaeed24905a7511356b883835e18a78f6879" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c50655cbb0fe3fc43170059e702f1ce5e19b84cec58dc87b037a09935c2f328" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.119", -] - -[[package]] name = "zerotrie" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -24,7 +24,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>. <style>body{max-width:80ch;margin:2rem auto;padding:0 1rem;font:1rem/1.6 system-ui}pre{white-space:pre-wrap;overflow-wrap:anywhere}section{margin:3rem 0}a{color:inherit}</style> </head> <body> -{{#*inline "gnu-name"}}{{#if (eq id "MIT")}}Expat License{{else if (eq id "Apache-2.0")}}Apache License, Version 2.0{{else if (eq id "BSD-3-Clause")}}Modified BSD License{{else if (eq id "BSD-2-Clause")}}FreeBSD License{{else if (eq id "0BSD")}}Zero-clause BSD License{{else if (eq id "Unicode-3.0")}}Unicode License v3{{else if (eq id "Zlib")}}License of ZLib{{else if (eq id "LGPL-2.0-or-later")}}GNU Library General Public License, version 2 or later{{else if (eq id "BSL-1.0")}}Boost Software License{{else if (eq id "AGPL-3.0-or-later")}}GNU Affero General Public License, version 3 or later{{else}}{{name}}{{/if}}{{/inline}} +{{#*inline "gnu-name"}}{{#if (eq id "MIT")}}Expat License{{else if (eq id "Apache-2.0")}}Apache License, Version 2.0{{else if (eq id "BSD-3-Clause")}}Modified BSD License{{else if (eq id "BSD-2-Clause")}}FreeBSD License{{else if (eq id "0BSD")}}Zero-clause BSD License{{else if (eq id "Unicode-3.0")}}Unicode License v3{{else if (eq id "Zlib")}}License of ZLib{{else if (eq id "LGPL-2.0-or-later")}}GNU Library General Public License, version 2 or later{{else if (eq id "ISC")}}ISC License{{else if (eq id "BSL-1.0")}}Boost Software License{{else if (eq id "AGPL-3.0-or-later")}}GNU Affero General Public License, version 3 or later{{else}}{{name}}{{/if}}{{/inline}} <h1>Third-party licenses for Stack</h1> <p>Stack is covered by the GNU Affero General Public License, version 3 or later. This page covers the Rust dependencies recorded in Cargo.lock. Supporting container @@ -13,5 +13,5 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <https://www.gnu.org/licenses/>. -accepted = ["MIT", "Apache-2.0", "BSD-3-Clause", "Unicode-3.0", "Zlib", "0BSD", "LGPL-2.0-or-later", "BSL-1.0"] +accepted = ["MIT", "Apache-2.0", "BSD-3-Clause", "Unicode-3.0", "Zlib", "0BSD", "LGPL-2.0-or-later", "BSL-1.0", "ISC"] private = { ignore = true } diff --git a/crates/chat-crypto/Cargo.toml b/crates/chat-crypto/Cargo.toml index b5bc0c7..eaada21 100644 --- a/crates/chat-crypto/Cargo.toml +++ b/crates/chat-crypto/Cargo.toml @@ -27,15 +27,11 @@ categories = ["cryptography"] publish = false [lib] -crate-type = ["cdylib", "rlib"] +crate-type = ["rlib"] [dependencies] anyhow = "1" -sequoia-openpgp = { version = "=2.4.2", default-features = false, features = ["crypto-rust", "allow-experimental-crypto", "allow-variable-time-crypto"] } -wasm-bindgen = "0.2" - -[target.'cfg(target_arch = "wasm32")'.dependencies] -getrandom = { version = "0.4", features = ["wasm_js"] } +sequoia-openpgp = { version = "=2.4.2", default-features = false, features = ["crypto-openssl"] } [lints] workspace = true diff --git a/crates/chat-crypto/README.txt b/crates/chat-crypto/README.txt index ba78cea..d09ff82 100644 --- a/crates/chat-crypto/README.txt +++ b/crates/chat-crypto/README.txt @@ -23,44 +23,35 @@ CHAT CRYPTOGRAPHY COMPATIBILITY PROBE Fixed encryption: RFC 9980 ML-KEM-1024 + X448, OpenPGP v6. Tested signing: ML-DSA-87 + Ed448, OpenPGP v6. - No algorithm substitution or security-advisory ignore is permitted. + Backend: Sequoia 2.4.2 with OpenSSL 3.6.5. No algorithm substitution or + vulnerability-advisory exception was used. The first checkpoint's Rust + backend is historical and no longer selected. - See ../../docs/CHAT-SECURITY-REVIEW.txt for the blocking dependency review, - and ../../docs/CHAT-DESIGN.txt for the intended application and limitations. + See ../../docs/CHAT-OPENSSL-MIGRATION.txt for the complete decision record, + pinned source hashes, build flags, capability boundaries, dependency-policy + exceptions, observed results, limitations, and reproduction commands. + ../../docs/CHAT-SECURITY-REVIEW.txt records the original dependency findings. + ../../docs/CHAT-DESIGN.txt describes the planned application. -REPRODUCE THE NATIVE TEST +QUICK CHECKS FROM THE STACK ROOT cargo test --locked -p stack-chat-crypto - cargo clippy --locked -p stack-chat-crypto --all-targets - -REPRODUCE THE BROWSER TEST - - From the stack root, install development-only tools under .tools: - - rustup target add wasm32-unknown-unknown - cargo install --locked --version 0.2.130 wasm-bindgen-cli --root .tools - npm install --prefix .tools/browser --save-exact playwright@1.64.1 - PLAYWRIGHT_BROWSERS_PATH="$PWD/.tools/browsers" .tools/browser/node_modules/.bin/playwright install chromium - - Build and bind the Rust module, then run it in actual Chromium: - - cargo build --locked --release -p stack-chat-crypto --target wasm32-unknown-unknown - .tools/bin/wasm-bindgen --target web --out-dir .tools/chat-proof target/wasm32-unknown-unknown/release/stack_chat_crypto.wasm + cargo run --locked -p stack-chat-crypto + sh infra/chat/build-openssl-wasi.sh PLAYWRIGHT_BROWSERS_PATH="$PWD/.tools/browsers" node crates/chat-crypto/tests/browser.mjs - - The harness serves only a blank test document and the generated JS/WASM on - an ephemeral loopback port. It checks the actual browser cryptographic - result and verifies that the probe creates no cookies, web storage, or - IndexedDB databases and sends no requests to external hosts. - - This does not establish the storage or network behavior of a future chat - application, which has not been built yet. LibreJS acceptance has not been - tested; there is no public application or compliance badge for this probe. - The test password is a public fixture, not a real configured secret. - -AUDIT - - .tools/bin/cargo-deny --workspace --all-features check - - This audit is intentionally blocking. Consult the security review rather - than trusting a functional round trip as evidence of production security. + cargo stack check + + Native checks require OpenSSL >=3.5 development files and libclang. + The cross-build script currently supports Linux x86_64 development hosts. + Browser tooling installation is documented in the migration record. + + The harness serves only a blank document, a readable AGPL JavaScript WASI + bridge, and the new WASI binary on an ephemeral loopback port. It verifies + the actual OpenSSL backend, cryptographic round trips, tampering and invalid + credential rejection, repeated fresh instances, and failure without CSPRNG. + It checks for external requests and persistent browser application state. + + The application itself, private chat-file envelope, and session workflow + remain unimplemented. LibreJS acceptance has not been tested; there is no + public chat page or compliance badge. The fixture password is public test + data, not a configured secret. No .env file or user private key is needed. diff --git a/crates/chat-crypto/browser/wasi.mjs b/crates/chat-crypto/browser/wasi.mjs new file mode 100644 index 0000000..d27fe4b --- /dev/null +++ b/crates/chat-crypto/browser/wasi.mjs @@ -0,0 +1,106 @@ +// Copyright (C) 2026 Doan Luu Duc Tai <doan@luuduct.ai> +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see <https://www.gnu.org/licenses/>. + +// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-3.0 + +export async function runProbe(bytes) { + let memory; + let output = ''; + let errors = ''; + let randomCalls = 0; + let randomBytes = 0; + const data = () => new DataView(memory.buffer); + const put32 = (address, value) => data().setUint32(address, value, true); + const noEntries = (count, size) => { put32(count, 0); put32(size, 0); return 0; }; + class Exit extends Error { + constructor(code) { super(`WASI exit ${code}`); this.code = code; } + } + const wasi = { + args_sizes_get: noEntries, + environ_sizes_get: noEntries, + args_get: () => 0, + environ_get: () => 0, + random_get(address, length) { + const buffer = new Uint8Array(memory.buffer, address, length); + for (let offset = 0; offset < length; offset += 65536) { + crypto.getRandomValues(buffer.subarray(offset, Math.min(offset + 65536, length))); + } + randomCalls += 1; + randomBytes += length; + return 0; + }, + clock_time_get(clock, precision, address) { + if (clock !== 0 && clock !== 1) return 52; + const milliseconds = clock === 0 ? Date.now() : performance.now(); + data().setBigUint64(address, BigInt(Math.floor(milliseconds * 1000000)), true); + return 0; + }, + clock_res_get(clock, address) { data().setBigUint64(address, 1000000n, true); return 0; }, + fd_write(fd, vectors, count, written) { + if (fd !== 1 && fd !== 2) return 8; + let total = 0; + for (let index = 0; index < count; index += 1) { + const address = data().getUint32(vectors + index * 8, true); + const length = data().getUint32(vectors + index * 8 + 4, true); + const text = new TextDecoder().decode(new Uint8Array(memory.buffer, address, length)); + if (fd === 1) output += text; else errors += text; + total += length; + if (output.length + errors.length > 65536) throw new Error('Probe output exceeded its limit'); + } + put32(written, total); + return 0; + }, + fd_read(fd, vectors, count, read) { if (fd !== 0) return 8; put32(read, 0); return 0; }, + fd_fdstat_get(fd, address) { + if (fd > 2) return 8; + new Uint8Array(memory.buffer, address, 24).fill(0); + data().setUint8(address, 2); + return 0; + }, + fd_fdstat_set_flags: fd => fd <= 2 ? 0 : 8, + fd_prestat_get: () => 8, + fd_prestat_dir_name: () => 8, + fd_close: fd => fd <= 2 ? 0 : 8, + fd_seek: () => 70, + fd_tell: () => 70, + fd_filestat_get: () => 8, + path_open: () => 76, + sched_yield: () => 0, + proc_exit(code) { throw new Exit(code); }, + }; + for (const name of [ + 'fd_readdir', 'fd_advise', 'fd_allocate', 'fd_datasync', 'fd_sync', + 'fd_filestat_set_size', 'fd_filestat_set_times', 'fd_fdstat_set_rights', + 'path_filestat_get', 'path_filestat_set_times', 'path_readlink', 'path_unlink_file', + 'path_rename', 'path_create_directory', 'path_remove_directory', 'path_link', 'path_symlink', + 'sock_accept', 'sock_recv', 'sock_send', 'sock_shutdown', 'poll_oneoff', + ]) wasi[name] = () => 76; + const module = await WebAssembly.compile(bytes); + for (const entry of WebAssembly.Module.imports(module)) { + if (entry.module !== 'wasi_snapshot_preview1' || typeof wasi[entry.name] !== 'function') { + throw new Error(`Unsupported WASI import: ${entry.module}.${entry.name}`); + } + } + const instance = await WebAssembly.instantiate(module, { wasi_snapshot_preview1: wasi }); + memory = instance.exports.memory; + try { instance.exports._start(); } + catch (error) { if (!(error instanceof Exit) || error.code !== 0) throw new Error(`${error.message}: ${errors}`); } + if (!output.startsWith('PASS: backend=OpenSSL ') || randomCalls === 0) { + throw new Error(`OpenSSL probe did not pass: ${errors || output}`); + } + return { output, randomCalls, randomBytes }; +} + +// @license-end diff --git a/crates/chat-crypto/src/lib.rs b/crates/chat-crypto/src/lib.rs index 93f6674..62319e2 100644 --- a/crates/chat-crypto/src/lib.rs +++ b/crates/chat-crypto/src/lib.rs @@ -33,7 +33,6 @@ use pgp::serialize::{ use pgp::types::{KeyFlags, SymmetricAlgorithm}; use sequoia_openpgp as pgp; use std::io::Write; -use wasm_bindgen::prelude::*; const PASSWORD: &str = "compatibility-test-only-not-a-real-secret"; const TEXT: &[u8] = "stack-chat/v1: UTF-8 message — doan ↔ visitor".as_bytes(); @@ -41,7 +40,6 @@ const TEXT: &[u8] = "stack-chat/v1: UTF-8 message — doan ↔ visitor".as_bytes #[doc = "Exercises v6 PQ generation, protected-key import, signing and two-recipient encryption."] #[doc = "# Errors"] #[doc = "Returns a diagnostic if a required operation or integrity check fails."] -#[wasm_bindgen] pub fn compatibility_probe() -> std::result::Result<String, String> { probe().map_err(|error| format!("{error:#}")) } @@ -165,6 +163,11 @@ fn decrypt(ciphertext: &[u8], recipient: &Cert, sender: &Cert, password: &str) - } fn probe() -> Result<String> { + let backend = pgp::crypto::backend(); + ensure!( + backend.starts_with("OpenSSL "), + "Expected OpenSSL backend, got {backend}" + ); let sender = identity()?; let visitor = identity()?; ensure!( @@ -205,7 +208,9 @@ fn probe() -> Result<String> { decrypt(&altered, &visitor, &sender, PASSWORD).is_err(), "Tampered ciphertext accepted" ); - Ok("PASS: RFC 9980 ML-KEM-1024+X448, ML-DSA-87+Ed448, v6 keys, protected key import, both recipients, wrong password, wrong signer, tampering".to_owned()) + Ok(format!( + "PASS: backend={backend}; RFC 9980 ML-KEM-1024+X448, ML-DSA-87+Ed448, v6 keys, protected key import, both recipients, wrong password, wrong signer, tampering" + )) } #[cfg(test)] diff --git a/crates/chat-crypto/src/main.rs b/crates/chat-crypto/src/main.rs new file mode 100644 index 0000000..b6749cf --- /dev/null +++ b/crates/chat-crypto/src/main.rs @@ -0,0 +1,23 @@ +// Copyright (C) 2026 Doan Luu Duc Tai <doan@luuduct.ai> +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see <https://www.gnu.org/licenses/>. + +#![doc = "Command entry point for the isolated cryptographic compatibility probe."] + +use std::io::{self, Write}; + +fn main() -> io::Result<()> { + let result = stack_chat_crypto::compatibility_probe().map_err(io::Error::other)?; + writeln!(io::stdout().lock(), "{result}") +} diff --git a/crates/chat-crypto/tests/browser.mjs b/crates/chat-crypto/tests/browser.mjs index c6aae93..8d2a9bb 100644 --- a/crates/chat-crypto/tests/browser.mjs +++ b/crates/chat-crypto/tests/browser.mjs @@ -20,8 +20,8 @@ import assert from 'node:assert/strict'; import { chromium } from '../../../.tools/browser/node_modules/playwright/index.mjs'; const assets = new Map([ - ['/crypto.js', ['stack_chat_crypto.js', 'text/javascript']], - ['/stack_chat_crypto_bg.wasm', ['stack_chat_crypto_bg.wasm', 'application/wasm']], + ['/wasi.mjs', [resolve('crates/chat-crypto/browser/wasi.mjs'), 'text/javascript']], + ['/probe.wasm', [resolve('target/wasm32-wasip1/release/stack-chat-crypto.wasm'), 'application/wasm']], ]); const server = createServer(async (request, response) => { response.setHeader('Cache-Control', 'no-store'); @@ -33,7 +33,7 @@ const server = createServer(async (request, response) => { const asset = assets.get(request.url); if (!asset) { response.writeHead(404); response.end(); return; } response.setHeader('Content-Type', asset[1]); - response.end(await readFile(resolve('.tools/chat-proof', asset[0]))); + response.end(await readFile(asset[0])); }); await new Promise(resolveReady => server.listen(0, '127.0.0.1', resolveReady)); const origin = `http://127.0.0.1:${server.address().port}`; @@ -47,17 +47,37 @@ try { }); await page.goto(origin); const result = await page.evaluate(async () => { - const module = await import('/crypto.js'); - await module.default(); - return module.compatibility_probe(); + const { runProbe } = await import('/wasi.mjs'); + const bytes = await (await fetch('/probe.wasm', { cache: 'no-store' })).arrayBuffer(); + const valid = await runProbe(bytes); + const again = await runProbe(bytes); + const getRandomValues = crypto.getRandomValues; + let rejected = false; + crypto.getRandomValues = () => { throw new Error('Entropy unavailable'); }; + try { await runProbe(bytes); } catch (error) { rejected = error.message.includes("Entropy unavailable"); } + finally { crypto.getRandomValues = getRandomValues; } + const modified = new Uint8Array(bytes.slice(0)); + const pattern = new TextEncoder().encode('random_get'); + const offset = modified.findIndex((value, index) => pattern.every((byte, position) => modified[index + position] === byte)); + if (offset < 0) throw new Error('Expected entropy import was not found'); + modified.set(new TextEncoder().encode('reject_get'), offset); + let unknownImportRejected = false; + try { await runProbe(modified); } + catch (error) { unknownImportRejected = error.message.includes('Unsupported WASI import: wasi_snapshot_preview1.reject_get'); } + return { valid, again, rejected, unknownImportRejected }; }); - assert.match(result, /^PASS:/); + assert.match(result.valid.output, /^PASS: backend=OpenSSL 3\.6\.5;/); + assert.match(result.again.output, /^PASS: backend=OpenSSL 3\.6\.5;/); + assert.ok(result.valid.randomCalls > 0 && result.valid.randomBytes > 0); + assert.ok(result.rejected, 'Unavailable browser entropy must fail closed'); + assert.ok(result.unknownImportRejected, 'Unknown host imports must fail closed'); assert.deepEqual(external, []); assert.deepEqual(await page.context().cookies(), []); assert.equal(await page.evaluate(() => localStorage.length + sessionStorage.length), 0); assert.deepEqual(await page.evaluate(async () => indexedDB.databases()), []); assert.equal(await page.evaluate(async () => (await navigator.serviceWorker.getRegistrations()).length), 0); - console.log(result); + console.log(result.valid.output.trim()); + console.log(`Browser CSPRNG: ${result.valid.randomCalls} calls, ${result.valid.randomBytes} bytes; missing entropy and unknown imports rejected.`); console.log('PASS: actual Chromium WASM execution; no external requests, cookies, web storage, or IndexedDB.'); } finally { clearTimeout(deadline); @@ -36,11 +36,26 @@ allow = ["LGPL-2.0-or-later"] name = "xxhash-rust" allow = ["BSL-1.0"] +[[licenses.exceptions]] +name = "libloading" +allow = ["ISC"] + [bans] multiple-versions = "deny" multiple-versions-include-dev = true wildcards = "deny" -skip = [] +skip = [ + { name = "block-buffer", version = "=0.10.4" }, + { name = "cpufeatures", version = "=0.2.17" }, + { name = "crypto-common", version = "=0.1.7" }, + { name = "digest", version = "=0.10.7" }, + { name = "generic-array", version = "=0.14.7" }, + { name = "getrandom", version = "=0.2.17" }, + { name = "hashbrown", version = "=0.15.5" }, + { name = "itertools", version = "=0.13.0" }, + { name = "shlex", version = "=1.3.0" }, + { name = "syn", version = "=2.0.119" }, +] [advisories] yanked = "deny" diff --git a/docs/CHAT-DESIGN.txt b/docs/CHAT-DESIGN.txt index 7b2a14f..7b8849c 100644 --- a/docs/CHAT-DESIGN.txt +++ b/docs/CHAT-DESIGN.txt @@ -111,7 +111,9 @@ LIBREJS AND LICENSING REMAINING RELIABILITY WORK - Resolve the blocking review in CHAT-SECURITY-REVIEW.txt. Then implement and + The OpenSSL compatibility experiment is in CHAT-OPENSSL-MIGRATION.txt. + It supersedes the original backend gate, not the remaining application review. + Implement and test file creation/import, recovery confirmation, signed one-use challenges, authorization, encrypted sends/replies, replay rejection, N=0 and pagination, authenticated counters, quotas, rate limits, hostile file and packet limits, diff --git a/docs/CHAT-OPENSSL-MIGRATION.txt b/docs/CHAT-OPENSSL-MIGRATION.txt new file mode 100644 index 0000000..17149ac --- /dev/null +++ b/docs/CHAT-OPENSSL-MIGRATION.txt @@ -0,0 +1,253 @@ +Copyright (C) 2026 Doan Luu Duc Tai <doan@luuduct.ai> + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see <https://www.gnu.org/licenses/>. + + +OPENSSL BACKEND MIGRATION RECORD + + Date: 2026-10-30. Branch: feature/private-chat. + Scope: a compatibility and dependency-security experiment, not a messenger. + Main and production are unchanged. No real identity files are created. + +DECISION AND FIXED ALGORITHMS + + Retain Sequoia OpenPGP 2.4.2 and RFC 9980 ML-KEM-1024 + X448 encryption. + Retain ML-DSA-87 + Ed448 signatures, OpenPGP v6 keys, and AES-256 content + encryption. Change the cryptographic backend, not the algorithms or wire + protocol. Probe assertions reject an unexpected backend or key algorithms. + + The previous Rust backend reached cx448 0.1.1 -> crypto-bigint 0.5.5 during + curve arithmetic. It also included rsa 0.9.10. See CHAT-SECURITY-REVIEW.txt + for the original reachability investigation. Neither RustSec issue was + ignored. No mathematical implementation was patched locally. + + The current manifest enables only Sequoia's crypto-openssl feature. The + allow-experimental-crypto and allow-variable-time-crypto opt-ins are gone. + The resolved graph has no cx448, crypto-bigint, or rsa crate. This removes + those Rust backend dependencies; it does not prove that all side channels + are absent from a browser or that external C dependencies have no defects. + +VERSIONS AND SOURCE PROVENANCE + + Rust toolchain: 1.99.1, pinned in rust-toolchain.toml. + Sequoia OpenPGP: 2.4.2, exact requirement and Cargo.lock. + OpenSSL: 3.6.5, native host library and source-built static WASI libraries. + WASI SDK: 34.0 x86_64 Linux, bundled Clang/libclang 23.1.0-wasi-sdk. + Browser test runner: Playwright 1.64.1, Chromium 156.0.8078.4. + + SDK archive: + https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-34/wasi-sdk-34.0-x86_64-linux.tar.gz + SHA-256 b761e3a0721dbae9c09a0059e5fdb2bf917d1b4a8a7b430fb3b5aafb0984b2c4 + + OpenSSL archive: + https://github.com/openssl/openssl/releases/download/openssl-3.6.5/openssl-3.6.5.tar.gz + SHA-256 a2157c2830efdec3788939b00c9b0638306d3f0bbb76dc4832ee503bb397df98 + + Digests were checked against upstream GitHub release asset metadata. The + build script verifies each archive before extraction. Hash checking pins + these inputs; it is not a claim that upstream release signatures were + independently verified or that output is bit-for-bit reproducible across + hosts. Archives, SDK, libraries, and build products stay under ignored + .tools/ and target/. The native development library is supplied by the OS. + +WHY WASI + + The original Rust-backend proof used wasm32-unknown-unknown and generated + wasm-bindgen JavaScript. The OpenSSL proof uses a wasm32-wasip1 command + module and a small explicit browser WASI bridge. The Rust command calls + the same compatibility_probe function used by native tests. + + The browser harness loads the new WASI binary directly, not old generated + glue. It requires the output to identify OpenSSL 3.6.5, preventing a stale + Rust-backend artifact from being accepted as evidence of OpenSSL support. + Old browser-build commands are historical and must not be reused here. + +BUILD CONFIGURATION AND BOUNDARIES + + infra/chat/openssl-wasi.conf adds a build target inheriting BASE_unix with + little-endian and 32-bit bignum configuration. It changes configuration, + not OpenSSL's cryptographic source routines. C code is compiled at -O2. + No third-party rand.patch, unconditional entropy-success patch, or custom + random-number generator is applied. A SHA-256 comparison of all 5889 original + regular files against the downloaded OpenSSL archive found no changed or + missing originals after the build; only the separate target configuration + was added. OpenSSL 3.6.5 already supports WASI + getentropy in providers/implementations/rands/seeding/rand_unix.c. + + Configure selects --with-rand-seed=getrandom. WASI libc's entropy request + reaches wasi_snapshot_preview1.random_get. The browser bridge services it + exclusively through crypto.getRandomValues, splitting requests at 65536 + bytes. There is no Math.random, fixed seed, or success-on-failure fallback. + The negative test replaces that API with a failure and requires rejection. + + Build options disable assembly, async operations, automatic config loading, + DSO/modules, POSIX I/O, secure-memory arenas, shared libraries, sockets, + C stdio, thread pools, threads, and interactive console UI. They avoid + unsupported host capabilities and use static libraries. Disabling the + secure-memory arena means ordinary WASM linear memory is used; it does not + establish secure erasure, locked pages, or protection from delivered JS. + Disabling C stdio does not disable the Rust command's captured output. + + _WASI_EMULATED_GETPID and libwasi-emulated-getpid supply the SDK's process-ID + emulation. getuid/geteuid/getgid/getegid map to getpagesize, following the + common WASI port configuration: the browser module has no real OS user IDs + or privilege boundary. These values are not used as randomness or identity + credentials. This is an explicit portability assumption, not a general + POSIX security emulation layer. + + Rust bindings use the SDK's libclang and WASI sysroot with target + wasm32-wasip1 and -fvisibility=default. Without explicit visibility, the + initial bindgen attempt omitted function declarations. Rust's bundled WASI + libc search path precedes the SDK libraries: reversing that order initially + failed to link __wasi_init_tp. The SDK library path remains available for + the emulated-getpid archive. These failures were toolchain integration + issues; no generated cryptographic bindings were manually edited. + +BROWSER CAPABILITIES + + The WASI bridge supplies clocks, browser CSPRNG, empty arguments/environment, + EOF on stdin, and bounded in-memory stdout/stderr for this closed test. + It supplies no real files, preopened directories, sockets, or process launch. + Listed filesystem/network operations return NOTCAPABLE or BADF. Unknown + imports fail before instantiation. Standard output is capped at 65536 chars. + + Those capability denials protect against accidentally connecting the WASI + module to host storage or networking. They do not isolate it from malicious + JavaScript delivered by the same server. Memory, clocks, randomness, and + imported bridge functions remain part of the trusted browser environment. + A test deadline closes Chromium after 120 seconds if execution stalls. + +VERIFICATION + + Native: the same probe passes using OpenSSL 3.6.5. It checks v6 generation, + exact algorithm selection, protected-secret-key serialization/import, + signed UTF-8 encryption to both participants, decryption by each, wrong + password rejection, unexpected signer rejection, and ciphertext tampering. + + Browser: actual Chromium executes the OpenSSL WASI binary and passes the + same checks, then repeats with a fresh module instance. One observed normal + execution requested 1792 bytes across 72 browser CSPRNG calls. These counts + are observations, not cryptographic requirements or entropy estimates. + Removing secure randomness causes failure rather than a successful result. + A modified module requesting an unknown host import is also rejected before + instantiation. These negative tests require the expected failure reason. + + The harness also observes no external requests, cookies, localStorage, + sessionStorage, IndexedDB databases, or service-worker registrations. + Its HTTP responses carry Cache-Control: no-store. This establishes only + this probe's behavior, not that browsers/OSes cannot retain memory, caches, + crash dumps, swap, or restored state. A complete chat session does not exist. + + The native tests, WASI build, and browser test are separate checks. A native + pass cannot stand in for browser execution. A functional pass and a clean + vulnerability scan cannot stand in for a cryptographic or side-channel audit. + +DEPENDENCY POLICY REVIEW + + The RustSec database reports no advisories for the current resolved graph. + No advisory ignore was added. Bans on wildcards, unknown Git/registry sources, + and unreviewed duplicate versions remain enabled. The following existing + upstream API generations cannot be unified merely by cargo update. Duplicate + exceptions match only the exact older version; other versions remain subject + to the duplicate ban. All these packages still undergo advisory and license + checks. Cargo.lock pins both sides of each pair. + + block-buffer 0.10.4 vs 0.12.1 + crypto-common 0.1.7 vs 0.2.2 + digest 0.10.7 vs 0.11.3 + Sequoia's Argon2 0.5.3 -> BLAKE2 0.10 uses the older digest API. + Root SHA-256 and the parser generator's SHA3 use the newer API. + + cpufeatures 0.2.17 vs 0.3.1 + Argon2 uses 0.2; root SHA-256 and parser-generator SHA3 use 0.3. + + generic-array 0.14.7 vs 1.4.5 + Argon2/BLAKE2 digest uses 0.14; SHA1 collision detection uses 1.x. + + getrandom 0.2.17 vs 0.4.3 + Sequoia's unknown-unknown WASM target dependencies declare 0.2; + the root CLI's tempfile uses 0.4. The current browser target is WASI, + whose OpenSSL entropy source is the bridge described above. The + all-target graph is still audited rather than excluding that edge. + + hashbrown 0.15.5 vs 0.17.1 + petgraph uses 0.15 directly and indexmap 2.14 uses 0.17. Both are + brought in by the parser generator at build time. + + itertools 0.13.0 vs 0.15.0 + shlex 1.3.0 vs 2.0.1 + bindgen uses older APIs; lalrpop and cc require the newer ones. + These are build dependencies, not a justification to skip auditing. + + syn 2.0.119 vs 3.0.9 + bindgen/prettyplease and Windows support use syn 2. Root derive + macros and other dependencies use syn 3. Changing that would require + upstream migration or unrelated dependency downgrades. + + The only new license allowance is ISC, scoped to libloading, a bindgen/clang + dependency. GNU-compatible third-party licenses remain correctly attributed. + cargo-about generates notices for the complete workspace. The static OpenSSL + C library and SDK are not Rust crates; their original licenses and sources + must accompany any distributed browser artifact as appropriate. Source + OpenSSL LICENSE.txt is Apache-2.0. Do not treat the Rust notice page alone + as complete documentation of external C/toolchain distribution obligations. + +EXTERNAL LIBRARY MAINTENANCE + + cargo-deny does not audit the externally built OpenSSL C archive or SDK. + Review OpenSSL's release/advisory pages separately and rebuild when needed: + https://openssl-library.org/news/timeline/ + https://openssl-library.org/news/vulnerabilities-3.6/ + OpenSSL 3.6.5 is the tested security-patch release dated 2026-09-29. A green + Rust audit is not a lifetime security guarantee for this pinned C version. + Choose and document a supported update policy before production deployment. + +REPRODUCE FROM THE STACK ROOT + + Native prerequisites: OpenSSL >=3.5 development headers/library, libclang, + pkg-config, and the pinned Rust toolchain. For the cross build also provide + a Linux x86_64 build host, Perl, make, curl, tar, and sha256sum. No root-owned + packages or system settings are changed by the cross-build script. + + cargo test --locked -p stack-chat-crypto + cargo run --locked -p stack-chat-crypto + sh infra/chat/build-openssl-wasi.sh + npm install --prefix .tools/browser --save-exact playwright@1.64.1 + PLAYWRIGHT_BROWSERS_PATH="$PWD/.tools/browsers" .tools/browser/node_modules/.bin/playwright install chromium + PLAYWRIGHT_BROWSERS_PATH="$PWD/.tools/browsers" node crates/chat-crypto/tests/browser.mjs + cargo stack check + + The build script pins archive versions and hashes, configures static OpenSSL, + installs it under .tools/openssl-wasi, builds the Rust WASI command, and prints + its SHA-256. It does not download/use an unverified precompiled OpenSSL binary. + It may reuse already extracted sources; use a fresh ignored tools/build tree + when independently verifying the source archive rather than trusting a + previously modified extraction. Downloads and test artifacts are not secrets. + + Build logs and complete dependency trees are local ignored diagnostics in + .tools/chat-openssl-*.log and .tools/chat-openssl-duplicates.txt. The native + result and the browser result must explicitly identify the OpenSSL backend. + +REMAINING WORK + + Observed WASI artifact SHA-256 on this development machine: + 7fba6b96377619ef41f056d4027c4409107372e9300b2dd69be865e72892df79 + This is a diagnostic identifier, not a cross-host reproducibility promise. + + This removes the specific Rust-backend dependency blocker and demonstrates + the fixed algorithms in a browser. It is not a complete messaging service, + audit of OpenSSL/WASI/JIT timing behavior, LibreJS certification, or proof + against malicious delivery. The file format, authentication, server/database, + quotas, hostile-input handling, pagination/counts, backup recovery, complete + session lifecycle, and browser-state tests still need implementation. diff --git a/docs/CHAT-SECURITY-REVIEW.txt b/docs/CHAT-SECURITY-REVIEW.txt index 7de1d36..4567322 100644 --- a/docs/CHAT-SECURITY-REVIEW.txt +++ b/docs/CHAT-SECURITY-REVIEW.txt @@ -16,7 +16,9 @@ along with this program. If not, see <https://www.gnu.org/licenses/>. CHAT CRYPTOGRAPHY SECURITY REVIEW - Date: 2026-10-30. Status: blocked for deployment and private-message use. + Date: 2026-10-30. Historical review of the initial Rust backend. + The current OpenSSL migration is recorded in CHAT-OPENSSL-MIGRATION.txt. + Private-message use and production deployment are still not ready. Branch: feature/private-chat. Production and main remain unchanged. FIXED REQUIREMENT @@ -24,6 +26,7 @@ FIXED REQUIREMENT Encryption must remain RFC 9980 ML-KEM-1024 + X448 using v6 keys. The compatibility probe pairs it with ML-DSA-87 + Ed448 signatures. No fallback encryption profile is implemented or approved. + The findings below apply to checkpoint 436e217, before the backend change. TEST RESULTS diff --git a/docs/POLICY.txt b/docs/POLICY.txt index e2cc4a9..4c8d0bd 100644 --- a/docs/POLICY.txt +++ b/docs/POLICY.txt @@ -48,8 +48,10 @@ STRICTNESS or broad warning suppression is introduced. cargo-deny rejects duplicate crate versions, wildcard requirements, unknown - registries, unknown Git sources, and yanked versions. There are no duplicate - version skip exceptions. Its AGPL allowance is scoped to this package. + registries, unknown Git sources, and yanked versions. The chat prototype has + exact-version duplicate exceptions reviewed in CHAT-OPENSSL-MIGRATION.txt. + No RustSec advisories are ignored. First-party AGPL and required dependency + license allowances are scoped to their individual packages. The dependency allowlist retains the requested permissive licenses and Zlib; an unused allowance may produce an informational audit warning. diff --git a/infra/chat/build-openssl-wasi.sh b/infra/chat/build-openssl-wasi.sh new file mode 100755 index 0000000..7cdd9b6 --- /dev/null +++ b/infra/chat/build-openssl-wasi.sh @@ -0,0 +1,49 @@ +#!/bin/sh +# Copyright (C) 2026 Doan Luu Duc Tai <doan@luuduct.ai> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <https://www.gnu.org/licenses/>. + +set -eu +ROOT="$(CDPATH= cd -- "$(dirname -- "$0")/../.." && pwd)" +SOURCE="$ROOT/.tools/wasi-source" +SDK="$SOURCE/wasi-sdk-34.0-x86_64-linux" +PREFIX="$ROOT/.tools/openssl-wasi" +mkdir -p "$SOURCE" + +fetch() { + file="$1" + digest="$2" + url="$3" + if ! test -f "$file"; then + curl --fail --location --retry 2 "$url" --output "$file.download" + printf '%s %s\n' "$digest" "$file.download" | sha256sum --check --status + mv "$file.download" "$file" + fi + printf '%s %s\n' "$digest" "$file" | sha256sum --check +} + +fetch "$SOURCE/sdk.tar.gz" b761e3a0721dbae9c09a0059e5fdb2bf917d1b4a8a7b430fb3b5aafb0984b2c4 https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-34/wasi-sdk-34.0-x86_64-linux.tar.gz +fetch "$SOURCE/openssl.tar.gz" a2157c2830efdec3788939b00c9b0638306d3f0bbb76dc4832ee503bb397df98 https://github.com/openssl/openssl/releases/download/openssl-3.6.5/openssl-3.6.5.tar.gz +if ! test -x "$SDK/bin/clang"; then tar -xzf "$SOURCE/sdk.tar.gz" -C "$SOURCE"; fi +if ! test -f "$SOURCE/openssl-3.6.5/Configure"; then tar -xzf "$SOURCE/openssl.tar.gz" -C "$SOURCE"; fi +cp "$ROOT/infra/chat/openssl-wasi.conf" "$SOURCE/openssl-3.6.5/Configurations/99-stack-wasi.conf" +cd "$SOURCE/openssl-3.6.5" +env CC="$SDK/bin/clang" AR="$SDK/bin/llvm-ar" RANLIB="$SDK/bin/llvm-ranlib" CFLAGS='-O2 -D_WASI_EMULATED_GETPID -Dgetuid=getpagesize -Dgeteuid=getpagesize -Dgetgid=getpagesize -Dgetegid=getpagesize' LDFLAGS='-lwasi-emulated-getpid' ./Configure stack-wasi --prefix="$PREFIX" --libdir=lib --with-rand-seed=getrandom no-asm no-async no-autoload-config no-dso no-module no-posix-io no-secure-memory no-shared no-sock no-stdio no-thread-pool no-threads no-ui-console +make -j"${CHAT_BUILD_JOBS:-8}" build_libs +make install_dev +cd "$ROOT" +rustup target add wasm32-wasip1 +RUST_LIB="$(rustc --print target-libdir --target wasm32-wasip1)/self-contained" +env LIBCLANG_PATH="$SDK/lib" OPENSSL_DIR="$PREFIX" OPENSSL_STATIC=1 CC_wasm32_wasip1="$SDK/bin/clang" AR_wasm32_wasip1="$SDK/bin/llvm-ar" BINDGEN_EXTRA_CLANG_ARGS_wasm32_wasip1="--sysroot=$SDK/share/wasi-sysroot --target=wasm32-wasip1 -fvisibility=default" RUSTFLAGS="-Lnative=$RUST_LIB -Lnative=$SDK/share/wasi-sysroot/lib/wasm32-wasip1 -Clink-arg=-lwasi-emulated-getpid" cargo build --locked --release -p stack-chat-crypto --bin stack-chat-crypto --target wasm32-wasip1 +sha256sum target/wasm32-wasip1/release/stack-chat-crypto.wasm diff --git a/infra/chat/openssl-wasi.conf b/infra/chat/openssl-wasi.conf new file mode 100644 index 0000000..479adee --- /dev/null +++ b/infra/chat/openssl-wasi.conf @@ -0,0 +1,22 @@ +# Copyright (C) 2026 Doan Luu Duc Tai <doan@luuduct.ai> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <https://www.gnu.org/licenses/>. + +my %targets = ( + "stack-wasi" => { + inherit_from => [ "BASE_unix" ], + lib_cppflags => add("-DL_ENDIAN"), + bn_ops => "THIRTY_TWO_BIT", + }, +); diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 43b0204..945b1bb 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -17,4 +17,4 @@ channel = "1.99.1" profile = "minimal" components = ["clippy", "rustfmt"] -targets = ["x86_64-unknown-linux-musl", "wasm32-unknown-unknown"] +targets = ["x86_64-unknown-linux-musl", "wasm32-wasip1"] diff --git a/web/THIRD-PARTY-LICENSES.html b/web/THIRD-PARTY-LICENSES.html index 82ff9b9..892b28f 100644 --- a/web/THIRD-PARTY-LICENSES.html +++ b/web/THIRD-PARTY-LICENSES.html @@ -32,79 +32,331 @@ applications and their operating-system packages have their own notices.</p> <p>Headings follow <a href="https://www.gnu.org/licenses/license-list.html">GNU's license names</a> where listed. SPDX identifiers remain available for exact identification. The original license texts below are unchanged.</p> -<ul><li><a href="#MIT">Expat License</a> (249)</li><li><a href="#Unicode-3.0">Unicode License v3</a> (19)</li><li><a href="#BSD-3-Clause">Modified BSD License</a> (5)</li><li><a href="#LGPL-2.0-or-later">GNU Library General Public License, version 2 or later</a> (2)</li><li><a href="#BSL-1.0">Boost Software License</a> (1)</li><li><a href="#Zlib">License of ZLib</a> (1)</li></ul> -<section id="license-0" data-spdx="BSD-3-Clause"> -<h2 id="BSD-3-Clause">Modified BSD License</h2> -<ul><li><a href="https://github.com/dalek-cryptography/subtle">subtle 2.6.1</a></li></ul> -<pre>Copyright (c) 2016-2017 Isis Agora Lovecruft, Henry de Valence. All rights reserved. -Copyright (c) 2016-2024 Isis Agora Lovecruft. All rights reserved. +<ul><li><a href="#MIT">Expat License</a> (174)</li><li><a href="#Unicode-3.0">Unicode License v3</a> (19)</li><li><a href="#Apache-2.0">Apache License, Version 2.0</a> (2)</li><li><a href="#BSD-3-Clause">Modified BSD License</a> (2)</li><li><a href="#LGPL-2.0-or-later">GNU Library General Public License, version 2 or later</a> (2)</li><li><a href="#BSL-1.0">Boost Software License</a> (1)</li><li><a href="#ISC">ISC License</a> (1)</li><li><a href="#Zlib">License of ZLib</a> (1)</li></ul> +<section id="license-0" data-spdx="Apache-2.0"> +<h2 id="Apache-2.0">Apache License, Version 2.0</h2> +<ul><li><a href="https://github.com/KyleMayes/clang-sys">clang-sys 1.9.1</a></li></ul> +<pre> + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. -1. Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. + END OF TERMS AND CONDITIONS -2. Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. + APPENDIX: How to apply the Apache License to your work. -3. Neither the name of the copyright holder nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS -IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED -TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. </pre> </section> -<section id="license-1" data-spdx="BSD-3-Clause"> +<section id="license-1" data-spdx="Apache-2.0"> -<ul><li><a href="https://github.com/dalek-cryptography/curve25519-dalek/tree/main/ed25519-dalek">ed25519-dalek 2.2.0</a></li></ul> -<pre>Copyright (c) 2017-2019 isis agora lovecruft. All rights reserved. +<ul><li><a href="https://github.com/latchset/kryoptic">ossl 1.5.4</a></li></ul> +<pre>Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION -1. Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. +1. Definitions. -2. Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. -3. Neither the name of the copyright holder nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS -IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED -TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. </pre> </section> <section id="license-2" data-spdx="BSD-3-Clause"> +<h2 id="BSD-3-Clause">Modified BSD License</h2> +<ul><li><a href="https://github.com/rust-lang/rust-bindgen">bindgen 0.72.1</a></li></ul> +<pre>BSD 3-Clause License + +Copyright (c) 2013, Jyun-Yan You +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +</pre> +</section> +<section id="license-3" data-spdx="BSD-3-Clause"> -<ul><li><a href="https://github.com/dalek-cryptography/curve25519-dalek/tree/main/x25519-dalek">x25519-dalek 2.0.1</a></li></ul> -<pre>Copyright (c) 2017-2021 isis agora lovecruft. All rights reserved. -Copyright (c) 2019-2021 DebugSteven. All rights reserved. +<ul><li><a href="https://github.com/dalek-cryptography/subtle">subtle 2.6.1</a></li></ul> +<pre>Copyright (c) 2016-2017 Isis Agora Lovecruft, Henry de Valence. All rights reserved. +Copyright (c) 2016-2024 Isis Agora Lovecruft. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are @@ -134,22 +386,6 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. </pre> </section> -<section id="license-3" data-spdx="BSD-3-Clause"> - -<ul><li><a href="https://github.com/dalek-cryptography/curve25519-dalek/tree/main/curve25519-dalek">curve25519-dalek 4.1.3</a></li><li><a href="https://github.com/dignifiedquire/cx448">cx448 0.1.1</a></li></ul> -<pre>Copyright (c) <year> <owner>. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -</pre> -</section> <section id="license-4" data-spdx="BSL-1.0"> <h2 id="BSL-1.0">Boost Software License</h2> <ul><li><a href="https://github.com/DoumanAsh/xxhash-rust">xxhash-rust 0.8.19</a></li></ul> @@ -178,7 +414,24 @@ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-5" data-spdx="LGPL-2.0-or-later"> +<section id="license-5" data-spdx="ISC"> +<h2 id="ISC">ISC License</h2> +<ul><li><a href="https://github.com/nagisa/rust_libloading/">libloading 0.8.9</a></li></ul> +<pre>Copyright © 2015, Simonas Kazlauskas + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without +fee is hereby granted, provided that the above copyright notice and this permission notice appear +in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS +SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE +AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, +NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF +THIS SOFTWARE. +</pre> +</section> +<section id="license-6" data-spdx="LGPL-2.0-or-later"> <h2 id="LGPL-2.0-or-later">GNU Library General Public License, version 2 or later</h2> <ul><li><a href="https://gitlab.com/sequoia-pgp/sequoia">buffered-reader 1.4.1</a></li><li><a href="https://gitlab.com/sequoia-pgp/sequoia">sequoia-openpgp 2.4.2</a></li></ul> <pre>Sequoia PGP is free software; you can redistribute it and/or modify it @@ -681,7 +934,7 @@ necessary. Here is a sample; alter the names: That's all there is to it! </pre> </section> -<section id="license-6" data-spdx="MIT"> +<section id="license-7" data-spdx="MIT"> <h2 id="MIT">Expat License</h2> <ul><li><a href="https://github.com/allan2/dotenvy">dotenvy 0.15.7</a></li></ul> <pre># The MIT License (MIT) @@ -706,44 +959,10 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</pre> </section> -<section id="license-7" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/block-ciphers">blowfish 0.9.1</a></li></ul> -<pre>Copyright (c) 2006-2009 Graydon Hoare -Copyright (c) 2009-2013 Mozilla Foundation - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> <section id="license-8" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/hashes">sha3 0.10.9</a></li></ul> -<pre>Copyright (c) 2006-2009 Graydon Hoare -Copyright (c) 2009-2013 Mozilla Foundation -Copyright (c) 2014 Sébastien Martini -Copyright (c) 2016-2023 Artyom Pavlov, Marek Kotewicz +<ul><li><a href="https://github.com/jethrogb/rust-cexpr">cexpr 0.6.0</a></li></ul> +<pre>(C) Copyright 2016 Jethro G. Beekman Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -772,38 +991,6 @@ DEALINGS IN THE SOFTWARE. </section> <section id="license-9" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/hashes">md-5 0.10.6</a></li><li><a href="https://github.com/RustCrypto/hashes">sha2 0.10.9</a></li></ul> -<pre>Copyright (c) 2006-2009 Graydon Hoare -Copyright (c) 2009-2013 Mozilla Foundation -Copyright (c) 2016 Artyom Pavlov - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-10" data-spdx="MIT"> - <ul><li><a href="https://github.com/rust-lang/ena">ena 0.14.4</a></li></ul> <pre>Copyright (c) 2010 The Rust Project Developers @@ -832,7 +1019,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-11" data-spdx="MIT"> +<section id="license-10" data-spdx="MIT"> <ul><li><a href="https://github.com/servo/core-foundation-rs">core-foundation-sys 0.8.7</a></li><li><a href="https://github.com/servo/string-cache">string_cache 0.11.0</a></li></ul> <pre>Copyright (c) 2012-2013 Mozilla Foundation @@ -862,7 +1049,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-12" data-spdx="MIT"> +<section id="license-11" data-spdx="MIT"> <ul><li><a href="https://github.com/KokaKiwi/rust-hex">hex 0.4.3</a></li></ul> <pre>Copyright (c) 2013-2014 The Rust Project Developers. @@ -887,7 +1074,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-13" data-spdx="MIT"> +<section id="license-12" data-spdx="MIT"> <ul><li><a href="https://github.com/servo/rust-url/">idna 1.1.0</a></li></ul> <pre>Copyright (c) 2013-2025 The rust-url developers @@ -917,9 +1104,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-14" data-spdx="MIT"> +<section id="license-13" data-spdx="MIT"> -<ul><li><a href="https://github.com/rust-lang/cc-rs">cc 1.10.0</a></li><li><a href="https://github.com/rust-lang/cfg-if">cfg-if 1.0.5</a></li><li><a href="https://github.com/alexcrichton/filetime">filetime 0.2.29</a></li><li><a href="https://github.com/rust-lang/cc-rs">find-msvc-tools 0.1.15</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen/tree/master/crates/js-sys">js-sys 0.3.107</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen/tree/main/crates/macro-support">wasm-bindgen-macro-support 0.2.130</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen/tree/master/crates/macro">wasm-bindgen-macro 0.2.130</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen/tree/master/crates/shared">wasm-bindgen-shared 0.2.130</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen">wasm-bindgen 0.2.130</a></li></ul> +<ul><li><a href="https://github.com/rust-lang/cc-rs">cc 1.10.0</a></li><li><a href="https://github.com/rust-lang/cfg-if">cfg-if 1.0.5</a></li><li><a href="https://github.com/alexcrichton/filetime">filetime 0.2.29</a></li><li><a href="https://github.com/rust-lang/cc-rs">find-msvc-tools 0.1.15</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen/tree/master/crates/js-sys">js-sys 0.3.107</a></li><li><a href="https://github.com/rust-openssl/rust-openssl">openssl-sys 0.9.117</a></li><li><a href="https://github.com/rust-lang/pkg-config-rs">pkg-config 0.3.34</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen/tree/main/crates/macro-support">wasm-bindgen-macro-support 0.2.130</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen/tree/master/crates/macro">wasm-bindgen-macro 0.2.130</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen/tree/master/crates/shared">wasm-bindgen-shared 0.2.130</a></li><li><a href="https://github.com/wasm-bindgen/wasm-bindgen">wasm-bindgen 0.2.130</a></li></ul> <pre>Copyright (c) 2014 Alex Crichton Permission is hereby granted, free of charge, to any @@ -947,7 +1134,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-15" data-spdx="MIT"> +<section id="license-14" data-spdx="MIT"> <ul><li><a href="https://github.com/lambda-fairy/rust-errno">errno 0.3.14</a></li></ul> <pre>Copyright (c) 2014 Chris Wong @@ -977,7 +1164,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-16" data-spdx="MIT"> +<section id="license-15" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/formats">base64ct 1.8.3</a></li></ul> <pre>Copyright (c) 2014 Steve "Sc00bz" Thomas (steve at tobtu dot com) @@ -1008,11 +1195,10 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-17" data-spdx="MIT"> +<section id="license-16" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/formats/tree/master/base16ct">base16ct 0.2.0</a></li></ul> -<pre>Copyright (c) 2014 Steve "Sc00bz" Thomas (steve at tobtu dot com) -Copyright (c) 2022 The RustCrypto Project Developers +<ul><li><a href="https://github.com/bitflags/bitflags">bitflags 2.13.2</a></li><li><a href="https://github.com/rust-lang/glob">glob 0.3.4</a></li><li><a href="https://github.com/rust-lang/log">log 0.4.35</a></li><li><a href="https://github.com/rust-num/num-traits">num-traits 0.2.19</a></li><li><a href="https://github.com/rust-lang/regex">regex-automata 0.4.18</a></li><li><a href="https://github.com/rust-lang/regex">regex-syntax 0.8.11</a></li><li><a href="https://github.com/rust-lang/regex">regex 1.13.1</a></li></ul> +<pre>Copyright (c) 2014 The Rust Project Developers Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated @@ -1039,37 +1225,32 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-18" data-spdx="MIT"> +<section id="license-17" data-spdx="MIT"> -<ul><li><a href="https://github.com/bitflags/bitflags">bitflags 2.13.2</a></li><li><a href="https://github.com/rust-lang/log">log 0.4.35</a></li><li><a href="https://github.com/dignifiedquire/num-bigint">num-bigint-dig 0.8.6</a></li><li><a href="https://github.com/rust-num/num-integer">num-integer 0.1.47</a></li><li><a href="https://github.com/rust-num/num-iter">num-iter 0.1.46</a></li><li><a href="https://github.com/rust-num/num-traits">num-traits 0.2.19</a></li><li><a href="https://github.com/rust-lang/regex">regex-automata 0.4.18</a></li><li><a href="https://github.com/rust-lang/regex">regex-syntax 0.8.11</a></li><li><a href="https://github.com/rust-lang/regex">regex 1.13.1</a></li></ul> -<pre>Copyright (c) 2014 The Rust Project Developers +<ul><li><a href="https://github.com/Geal/nom">nom 7.1.3</a></li></ul> +<pre>Copyright (c) 2014-2019 Geoffroy Couprie -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-19" data-spdx="MIT"> +<section id="license-18" data-spdx="MIT"> <ul><li><a href="https://github.com/rust-lang/flate2-rs">flate2 1.1.10</a></li></ul> <pre>Copyright (c) 2014-2026 Alex Crichton @@ -1099,9 +1280,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-20" data-spdx="MIT"> +<section id="license-19" data-spdx="MIT"> -<ul><li><a href="https://github.com/rayon-rs/either">either 1.19.0</a></li><li><a href="https://github.com/rust-itertools/itertools">itertools 0.15.0</a></li><li><a href="https://github.com/petgraph/petgraph">petgraph 0.8.3</a></li></ul> +<ul><li><a href="https://github.com/rayon-rs/either">either 1.19.0</a></li><li><a href="https://github.com/rust-itertools/itertools">itertools 0.13.0</a></li><li><a href="https://github.com/rust-itertools/itertools">itertools 0.15.0</a></li><li><a href="https://github.com/petgraph/petgraph">petgraph 0.8.3</a></li></ul> <pre>Copyright (c) 2015 Permission is hereby granted, free of charge, to any @@ -1129,7 +1310,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-21" data-spdx="MIT"> +<section id="license-20" data-spdx="MIT"> <ul><li><a href="https://github.com/mbrubeck/rust-debug-unreachable">new_debug_unreachable 1.0.6</a></li></ul> <pre>Copyright (c) 2015 Jonathan Reem @@ -1159,7 +1340,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-22" data-spdx="MIT"> +<section id="license-21" data-spdx="MIT"> <ul><li><a href="https://github.com/Stebalien/tempfile">tempfile 3.27.0</a></li><li><a href="https://github.com/Stebalien/xattr">xattr 1.7.0</a></li></ul> <pre>Copyright (c) 2015 Steven Allen @@ -1189,7 +1370,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-23" data-spdx="MIT"> +<section id="license-22" data-spdx="MIT"> <ul><li><a href="https://github.com/lalrpop/ascii-canvas">ascii-canvas 4.0.0</a></li><li><a href="https://github.com/lalrpop/lalrpop">lalrpop-util 0.23.2</a></li><li><a href="https://github.com/lalrpop/lalrpop">lalrpop 0.23.2</a></li></ul> <pre>Copyright (c) 2015 The LALRPOP Project Developers @@ -1219,9 +1400,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-24" data-spdx="MIT"> +<section id="license-23" data-spdx="MIT"> -<ul><li><a href="https://github.com/withoutboats/heck">heck 0.5.0</a></li><li><a href="https://github.com/unicode-rs/unicode-xid">unicode-xid 0.2.6</a></li></ul> +<ul><li><a href="https://github.com/withoutboats/heck">heck 0.5.0</a></li><li><a href="https://github.com/unicode-rs/unicode-width">unicode-width 0.2.3</a></li><li><a href="https://github.com/unicode-rs/unicode-xid">unicode-xid 0.2.6</a></li></ul> <pre>Copyright (c) 2015 The Rust Project Developers Permission is hereby granted, free of charge, to any @@ -1249,7 +1430,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-25" data-spdx="MIT"> +<section id="license-24" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/hashes">blake2 0.10.6</a></li></ul> <pre>Copyright (c) 2015-2016 The blake2-rfc Developers, Cesar Barros @@ -1280,7 +1461,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-26" data-spdx="MIT"> +<section id="license-25" data-spdx="MIT"> <ul><li><a href="https://github.com/petgraph/fixedbitset">fixedbitset 0.5.7</a></li></ul> <pre>Copyright (c) 2015-2017 @@ -1310,38 +1491,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-27" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/KDFs/">hkdf 0.12.4</a></li></ul> -<pre>Copyright (c) 2015-2018 Vlad Filippov -Copyright (c) 2018-2021 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-28" data-spdx="MIT"> +<section id="license-26" data-spdx="MIT"> <ul><li><a href="https://github.com/rust-lang/futures-rs">futures-core 0.3.34</a></li><li><a href="https://github.com/rust-lang/futures-rs">futures-task 0.3.34</a></li><li><a href="https://github.com/rust-lang/futures-rs">futures-util 0.3.34</a></li></ul> <pre>Copyright (c) 2016 Alex Crichton @@ -1372,7 +1522,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-29" data-spdx="MIT"> +<section id="license-27" data-spdx="MIT"> <ul><li><a href="https://github.com/rust-lang/hashbrown">hashbrown 0.15.5</a></li><li><a href="https://github.com/rust-lang/hashbrown">hashbrown 0.17.1</a></li></ul> <pre>Copyright (c) 2016 Amanieu d'Antras @@ -1402,7 +1552,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-30" data-spdx="MIT"> +<section id="license-28" data-spdx="MIT"> <ul><li><a href="https://github.com/alacritty/vte">utf8parse 0.2.2</a></li></ul> <pre>Copyright (c) 2016 Joe Wilm @@ -1432,9 +1582,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-31" data-spdx="MIT"> +<section id="license-29" data-spdx="MIT"> -<ul><li><a href="https://github.com/Amanieu/parking_lot">lock_api 0.4.14</a></li><li><a href="https://github.com/Amanieu/parking_lot">parking_lot 0.12.5</a></li><li><a href="https://github.com/Amanieu/parking_lot">parking_lot_core 0.9.12</a></li><li><a href="https://github.com/djc/rustc-version-rs">rustc_version 0.4.1</a></li></ul> +<ul><li><a href="https://github.com/Amanieu/parking_lot">lock_api 0.4.14</a></li><li><a href="https://github.com/Amanieu/parking_lot">parking_lot 0.12.5</a></li><li><a href="https://github.com/Amanieu/parking_lot">parking_lot_core 0.9.12</a></li></ul> <pre>Copyright (c) 2016 The Rust Project Developers Permission is hereby granted, free of charge, to any @@ -1462,7 +1612,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-32" data-spdx="MIT"> +<section id="license-30" data-spdx="MIT"> <ul><li><a href="https://github.com/indexmap-rs/indexmap">indexmap 2.14.2</a></li></ul> <pre>Copyright (c) 2016--2017 @@ -1492,7 +1642,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-33" data-spdx="MIT"> +<section id="license-31" data-spdx="MIT"> <ul><li><a href="https://github.com/indexmap-rs/equivalent">equivalent 1.0.3</a></li></ul> <pre>Copyright (c) 2016--2023 @@ -1522,7 +1672,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-34" data-spdx="MIT"> +<section id="license-32" data-spdx="MIT"> <ul><li><a href="https://github.com/bluss/scopeguard">scopeguard 1.2.0</a></li></ul> <pre>Copyright (c) 2016-2019 Ulrik Sverdrup "bluss" and scopeguard developers @@ -1552,37 +1702,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-35" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/traits">cipher 0.4.4</a></li></ul> -<pre>Copyright (c) 2016-2020 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-36" data-spdx="MIT"> +<section id="license-33" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/hashes">sha2 0.11.1</a></li></ul> <pre>Copyright (c) 2016-2026 The RustCrypto Project Developers @@ -1615,39 +1735,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-37" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/block-ciphers">twofish 0.7.1</a></li></ul> -<pre>Copyright (c) 2017 Alexander Krotov - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-38" data-spdx="MIT"> +<section id="license-34" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/MACs">cmac 0.7.2</a></li><li><a href="https://github.com/RustCrypto/traits">digest 0.10.7</a></li><li><a href="https://github.com/RustCrypto/MACs">hmac 0.12.1</a></li></ul> +<ul><li><a href="https://github.com/RustCrypto/traits">digest 0.10.7</a></li></ul> <pre>Copyright (c) 2017 Artyom Pavlov Permission is hereby granted, free of charge, to any @@ -1675,67 +1765,38 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-39" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/block-ciphers">idea 0.5.1</a></li></ul> -<pre>Copyright (c) 2017 Damian Czaja - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-40" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/block-ciphers">des 0.8.1</a></li></ul> -<pre>Copyright (c) 2017 Gulshan Singh, Antoni Boucher, Artyom Pavlov - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. +<section id="license-35" data-spdx="MIT"> -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. +<ul><li><a href="https://github.com/mcgoo/vcpkg-rs">vcpkg 0.2.15</a></li></ul> +<pre>Copyright (c) 2017 Jim McGrath
+
+Permission is hereby granted, free of charge, to any
+person obtaining a copy of this software and associated
+documentation files (the "Software"), to deal in the
+Software without restriction, including without
+limitation the rights to use, copy, modify, merge,
+publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software
+is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice
+shall be included in all copies or substantial portions
+of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
+ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
+TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
+PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
+SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
+IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+DEALINGS IN THE SOFTWARE.
+
</pre> </section> -<section id="license-41" data-spdx="MIT"> +<section id="license-36" data-spdx="MIT"> <ul><li><a href="https://gitlab.redox-os.org/redox-os/syscall">redox_syscall 0.5.18</a></li></ul> <pre>Copyright (c) 2017 Redox OS Developers @@ -1762,7 +1823,7 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-42" data-spdx="MIT"> +<section id="license-37" data-spdx="MIT"> <ul><li><a href="https://github.com/storyyeller/stable_deref_trait">stable_deref_trait 1.2.1</a></li></ul> <pre>Copyright (c) 2017 Robert Grosse @@ -1791,7 +1852,7 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</pre> </section> -<section id="license-43" data-spdx="MIT"> +<section id="license-38" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/traits">digest 0.11.3</a></li></ul> <pre>Copyright (c) 2017-2025 RustCrypto Developers @@ -1822,37 +1883,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-44" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/block-ciphers">aes 0.8.4</a></li></ul> -<pre>Copyright (c) 2018 Artyom Pavlov - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-45" data-spdx="MIT"> +<section id="license-39" data-spdx="MIT"> <ul><li><a href="https://github.com/cuviper/autocfg">autocfg 1.5.1</a></li></ul> <pre>Copyright (c) 2018 Josh Stone @@ -1882,7 +1913,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-46" data-spdx="MIT"> +<section id="license-40" data-spdx="MIT"> <ul><li><a href="https://github.com/servo/rust-smallvec">smallvec 1.16.4</a></li></ul> <pre>Copyright (c) 2018 The Servo Project Developers @@ -1912,40 +1943,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-47" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/block-ciphers">cast5 0.11.1</a></li></ul> -<pre>Copyright (c) 2018-2019 Friedel Ziegelmayer -Copyright (c) 2018-2019 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-48" data-spdx="MIT"> +<section id="license-41" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/utils">block-buffer 0.10.4</a></li><li><a href="https://github.com/RustCrypto/utils">block-padding 0.3.3</a></li><li><a href="https://github.com/RustCrypto/utils">dbl 0.3.2</a></li></ul> +<ul><li><a href="https://github.com/RustCrypto/utils">block-buffer 0.10.4</a></li></ul> <pre>Copyright (c) 2018-2019 The RustCrypto Project Developers Permission is hereby granted, free of charge, to any @@ -1973,128 +1973,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-49" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/signatures/tree/master/ecdsa">ecdsa 0.16.9</a></li><li><a href="https://github.com/RustCrypto/sponges/tree/master/keccak">keccak 0.1.6</a></li><li><a href="https://github.com/RustCrypto/signatures/tree/master/rfc6979">rfc6979 0.4.0</a></li></ul> -<pre>Copyright (c) 2018-2022 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-50" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/block-modes">cbc 0.1.2</a></li><li><a href="https://github.com/RustCrypto/block-modes">cfb-mode 0.8.2</a></li><li><a href="https://github.com/RustCrypto/block-modes">ctr 0.9.2</a></li></ul> -<pre>Copyright (c) 2018-2022 RustCrypto Developers -Copyright (c) 2018 Artyom Pavlov - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-51" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/signatures/tree/master/dsa">dsa 0.6.3</a></li><li><a href="https://github.com/RustCrypto/signatures/tree/master/ed25519">ed25519 2.2.3</a></li><li><a href="https://github.com/RustCrypto/traits/tree/master/signature">signature 2.2.0</a></li></ul> -<pre>Copyright (c) 2018-2023 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-52" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/utils">opaque-debug 0.3.1</a></li></ul> -<pre>Copyright (c) 2018-2024 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-53" data-spdx="MIT"> +<section id="license-42" data-spdx="MIT"> <ul><li><a href="https://github.com/rust-random/getrandom">getrandom 0.2.17</a></li></ul> <pre>Copyright (c) 2018-2024 The rust-random Project Developers @@ -2125,7 +2004,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-54" data-spdx="MIT"> +<section id="license-43" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/utils">block-buffer 0.12.1</a></li></ul> <pre>Copyright (c) 2018-2025 The RustCrypto Project Developers @@ -2155,69 +2034,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-55" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/traits">signature 3.0.0</a></li></ul> -<pre>Copyright (c) 2018-2026 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-56" data-spdx="MIT"> - -<ul><li><a href="https://github.com/rust-random/rand_core">rand_core 0.10.1</a></li></ul> -<pre>Copyright (c) 2018-2026 The Rand Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-57" data-spdx="MIT"> +<section id="license-44" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/sponges">keccak 0.2.2</a></li><li><a href="https://github.com/RustCrypto/utils">zeroize 1.9.1</a></li></ul> +<ul><li><a href="https://github.com/RustCrypto/sponges">keccak 0.2.2</a></li></ul> <pre>Copyright (c) 2018-2026 The RustCrypto Project Developers Permission is hereby granted, free of charge, to any @@ -2245,7 +2064,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-58" data-spdx="MIT"> +<section id="license-45" data-spdx="MIT"> <ul><li><a href="https://github.com/rust-random/getrandom">getrandom 0.4.3</a></li></ul> <pre>Copyright (c) 2018-2026 The rust-random Project Developers @@ -2276,7 +2095,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-59" data-spdx="MIT"> +<section id="license-46" data-spdx="MIT"> <ul><li><a href="https://github.com/tokio-rs/slab">slab 0.4.12</a></li></ul> <pre>Copyright (c) 2019 Carl Lerche @@ -2306,7 +2125,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-60" data-spdx="MIT"> +<section id="license-47" data-spdx="MIT"> <ul><li><a href="https://github.com/fitzgen/bumpalo">bumpalo 3.20.3</a></li></ul> <pre>Copyright (c) 2019 Nick Fitzgerald @@ -2336,67 +2155,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-61" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/universal-hashes">ghash 0.5.1</a></li></ul> -<pre>Copyright (c) 2019 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-62" data-spdx="MIT"> - -<ul><li><a href="https://github.com/cryptocorrosion/cryptocorrosion">ppv-lite86 0.2.21</a></li></ul> -<pre>Copyright (c) 2019 The CryptoCorrosion Contributors - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-63" data-spdx="MIT"> +<section id="license-48" data-spdx="MIT"> <ul><li><a href="https://github.com/Stebalien/term">term 1.2.1</a></li></ul> <pre>Copyright (c) 2019 The Rust Project Developers @@ -2426,158 +2185,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-64" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/AEADs">aes-gcm 0.10.3</a></li></ul> -<pre>Copyright (c) 2019 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-65" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/traits">aead 0.5.2</a></li></ul> -<pre>Copyright (c) 2019 The RustCrypto Project Developers -Copyright (c) 2019 MobileCoin, LLC - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-66" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/traits">universal-hash 0.5.1</a></li></ul> -<pre>Copyright (c) 2019-2020 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-67" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/universal-hashes">polyval 0.6.2</a></li></ul> -<pre>Copyright (c) 2019-2023 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-68" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/utils">zeroize_derive 1.5.0</a></li></ul> -<pre>Copyright (c) 2019-2026 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-69" data-spdx="MIT"> +<section id="license-49" data-spdx="MIT"> <ul><li><a href="https://github.com/strawlab/iana-time-zone">iana-time-zone-haiku 0.1.2</a></li><li><a href="https://github.com/strawlab/iana-time-zone">iana-time-zone 0.1.65</a></li></ul> <pre>Copyright (c) 2020 Andrew D. Straw @@ -2607,129 +2215,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-70" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/AEADs">eax 0.5.0</a></li></ul> -<pre>Copyright (c) 2020 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-71" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/elliptic-curves/tree/master/p384">p384 0.13.1</a></li></ul> -<pre>Copyright (c) 2020-2021 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-72" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/traits/tree/master/elliptic-curve">elliptic-curve 0.13.8</a></li><li><a href="https://github.com/RustCrypto/elliptic-curves/tree/master/p521">p521 0.13.3</a></li></ul> -<pre>Copyright (c) 2020-2022 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-73" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/formats/tree/master/const-oid">const-oid 0.9.6</a></li></ul> -<pre>Copyright (c) 2020-2022 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-74" data-spdx="MIT"> +<section id="license-50" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/elliptic-curves/tree/master/p256">p256 0.13.2</a></li><li><a href="https://github.com/RustCrypto/traits/tree/master/password-hash">password-hash 0.5.0</a></li><li><a href="https://github.com/RustCrypto/elliptic-curves/tree/master/primeorder">primeorder 0.13.6</a></li></ul> +<ul><li><a href="https://github.com/RustCrypto/traits/tree/master/password-hash">password-hash 0.5.0</a></li></ul> <pre>Copyright (c) 2020-2023 RustCrypto Developers Permission is hereby granted, free of charge, to any @@ -2757,37 +2245,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-75" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/formats/tree/master/der">der 0.7.10</a></li><li><a href="https://github.com/RustCrypto/formats/tree/master/pkcs8">pkcs8 0.10.2</a></li></ul> -<pre>Copyright (c) 2020-2023 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-76" data-spdx="MIT"> +<section id="license-51" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/utils">cpufeatures 0.2.17</a></li></ul> <pre>Copyright (c) 2020-2025 The RustCrypto Project Developers @@ -2817,7 +2275,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-77" data-spdx="MIT"> +<section id="license-52" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/formats">const-oid 0.10.2</a></li><li><a href="https://github.com/RustCrypto/utils">cpufeatures 0.3.1</a></li></ul> <pre>Copyright (c) 2020-2026 The RustCrypto Project Developers @@ -2847,7 +2305,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-78" data-spdx="MIT"> +<section id="license-53" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/hashes">sha3 0.12.0</a></li></ul> <pre>Copyright (c) 2020-2026 The RustCrypto Project Developers @@ -2881,9 +2339,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-79" data-spdx="MIT"> +<section id="license-54" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/traits">crypto-common 0.1.7</a></li><li><a href="https://github.com/RustCrypto/hashes">ripemd 0.1.3</a></li></ul> +<ul><li><a href="https://github.com/RustCrypto/traits">crypto-common 0.1.7</a></li></ul> <pre>Copyright (c) 2021 RustCrypto Developers Permission is hereby granted, free of charge, to any @@ -2911,127 +2369,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-80" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/block-ciphers">camellia 0.1.0</a></li></ul> -<pre>Copyright (c) 2021 Shun Sakai - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-81" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/crypto-bigint">crypto-bigint 0.5.5</a></li><li><a href="https://github.com/RustCrypto/formats/tree/master/pem-rfc7468">pem-rfc7468 0.7.0</a></li></ul> -<pre>Copyright (c) 2021 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-82" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/formats/tree/master/sec1">sec1 0.7.3</a></li></ul> -<pre>Copyright (c) 2021-2022 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-83" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/formats/tree/master/pkcs1">pkcs1 0.7.5</a></li><li><a href="https://github.com/RustCrypto/formats/tree/master/spki">spki 0.7.3</a></li></ul> -<pre>Copyright (c) 2021-2023 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-84" data-spdx="MIT"> +<section id="license-55" data-spdx="MIT"> <ul><li><a href="https://github.com/RustCrypto/password-hashes/tree/master/argon2">argon2 0.5.3</a></li></ul> <pre>Copyright (c) 2021-2024 The RustCrypto Project Developers @@ -3061,9 +2399,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-85" data-spdx="MIT"> +<section id="license-56" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/traits">crypto-common 0.2.2</a></li><li><a href="https://github.com/RustCrypto/traits">kem 0.3.0</a></li></ul> +<ul><li><a href="https://github.com/RustCrypto/traits">crypto-common 0.2.2</a></li></ul> <pre>Copyright (c) 2021-2026 RustCrypto Developers Permission is hereby granted, free of charge, to any @@ -3091,70 +2429,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-86" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/utils">inout 0.1.4</a></li></ul> -<pre>Copyright (c) 2022 The RustCrypto Project Developers -Copyright (c) 2022 Artyom Pavlov - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-87" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/hybrid-array">hybrid-array 0.3.1</a></li></ul> -<pre>Copyright (c) 2022-2025 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-88" data-spdx="MIT"> +<section id="license-57" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/utils">cmov 0.5.4</a></li><li><a href="https://github.com/RustCrypto/hybrid-array">hybrid-array 0.4.15</a></li></ul> +<ul><li><a href="https://github.com/RustCrypto/hybrid-array">hybrid-array 0.4.15</a></li></ul> <pre>Copyright (c) 2022-2026 The RustCrypto Project Developers Permission is hereby granted, free of charge, to any @@ -3182,7 +2459,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-89" data-spdx="MIT"> +<section id="license-58" data-spdx="MIT"> <ul><li><a href="https://github.com/contain-rs/bit-vec">bit-set 0.11.1</a></li><li><a href="https://github.com/contain-rs/bit-vec">bit-vec 0.10.1</a></li></ul> <pre>Copyright (c) 2023 The Rust Project Developers @@ -3212,152 +2489,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-90" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/AEADs">ocb3 0.1.0</a></li></ul> -<pre>Copyright (c) 2023 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-91" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/signatures">slh-dsa 0.0.3</a></li></ul> -<pre>Copyright (c) 2024 Trail of Bits - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE.</pre> -</section> -<section id="license-92" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/signatures">ml-dsa 0.1.1</a></li></ul> -<pre>Copyright (c) 2024-2026 RustCrypto Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-93" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/KEMs">ml-kem 0.3.3</a></li><li><a href="https://github.com/RustCrypto/KEMs">module-lattice 0.2.3</a></li></ul> -<pre>Copyright (c) 2024-2026 RustCrypto Developers - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -</pre> -</section> -<section id="license-94" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/utils">ctutils 0.4.7</a></li></ul> -<pre>Copyright (c) 2025-2026 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. -</pre> -</section> -<section id="license-95" data-spdx="MIT"> +<section id="license-59" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/XOFs">shake 0.1.0</a></li><li><a href="https://github.com/RustCrypto/utils">sponge-cursor 0.1.0</a></li></ul> +<ul><li><a href="https://github.com/RustCrypto/utils">sponge-cursor 0.1.0</a></li></ul> <pre>Copyright (c) 2026 The RustCrypto Project Developers Permission is hereby granted, free of charge, to any @@ -3385,9 +2519,9 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-96" data-spdx="MIT"> +<section id="license-60" data-spdx="MIT"> -<ul><li><a href="https://github.com/rust-cli/anstyle.git">anstream 1.0.0</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstyle-parse 1.0.0</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstyle-query 1.1.5</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstyle-wincon 3.0.11</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstyle 1.0.14</a></li><li><a href="https://github.com/clap-rs/clap">clap 4.6.7</a></li><li><a href="https://github.com/clap-rs/clap">clap_builder 4.6.7</a></li><li><a href="https://github.com/clap-rs/clap">clap_derive 4.6.7</a></li><li><a href="https://github.com/clap-rs/clap">clap_lex 1.1.1</a></li><li><a href="https://github.com/rust-cli/anstyle.git">colorchoice 1.0.5</a></li><li><a href="https://github.com/polyfill-rs/is_terminal_polyfill">is_terminal_polyfill 1.70.2</a></li><li><a href="https://github.com/polyfill-rs/once_cell_polyfill">once_cell_polyfill 1.70.2</a></li><li><a href="https://github.com/toml-rs/toml">serde_spanned 1.1.2</a></li><li><a href="https://github.com/toml-rs/toml">toml 1.1.8+spec-1.1.0</a></li><li><a href="https://github.com/toml-rs/toml">toml_datetime 1.1.2+spec-1.1.0</a></li><li><a href="https://github.com/toml-rs/toml">toml_parser 1.1.5+spec-1.1.0</a></li><li><a href="https://github.com/toml-rs/toml">toml_writer 1.1.3+spec-1.1.0</a></li></ul> +<ul><li><a href="https://github.com/rust-lang/annotate-snippets-rs">annotate-snippets 0.11.5</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstream 1.0.0</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstyle-parse 1.0.0</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstyle-query 1.1.5</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstyle-wincon 3.0.11</a></li><li><a href="https://github.com/rust-cli/anstyle.git">anstyle 1.0.14</a></li><li><a href="https://github.com/clap-rs/clap">clap 4.6.7</a></li><li><a href="https://github.com/clap-rs/clap">clap_builder 4.6.7</a></li><li><a href="https://github.com/clap-rs/clap">clap_derive 4.6.7</a></li><li><a href="https://github.com/clap-rs/clap">clap_lex 1.1.1</a></li><li><a href="https://github.com/rust-cli/anstyle.git">colorchoice 1.0.5</a></li><li><a href="https://github.com/polyfill-rs/is_terminal_polyfill">is_terminal_polyfill 1.70.2</a></li><li><a href="https://github.com/polyfill-rs/once_cell_polyfill">once_cell_polyfill 1.70.2</a></li><li><a href="https://github.com/toml-rs/toml">serde_spanned 1.1.2</a></li><li><a href="https://github.com/toml-rs/toml">toml 1.1.8+spec-1.1.0</a></li><li><a href="https://github.com/toml-rs/toml">toml_datetime 1.1.2+spec-1.1.0</a></li><li><a href="https://github.com/toml-rs/toml">toml_parser 1.1.5+spec-1.1.0</a></li><li><a href="https://github.com/toml-rs/toml">toml_writer 1.1.3+spec-1.1.0</a></li></ul> <pre>Copyright (c) Individual contributors Permission is hereby granted, free of charge, to any person obtaining a copy @@ -3409,7 +2543,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-97" data-spdx="MIT"> +<section id="license-61" data-spdx="MIT"> <ul><li><a href="https://github.com/rust-lang/libc">libc 0.2.191</a></li></ul> <pre>Copyright (c) The Rust Project Developers @@ -3439,7 +2573,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-98" data-spdx="MIT"> +<section id="license-62" data-spdx="MIT"> <ul><li><a href="https://github.com/hsivonen/idna_adapter">idna_adapter 1.2.2</a></li></ul> <pre>Copyright (c) The rust-url developers @@ -3469,7 +2603,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-99" data-spdx="MIT"> +<section id="license-63" data-spdx="MIT"> <ul><li><a href="https://github.com/composefs/tar-rs">tar 0.4.46</a></li></ul> <pre>Copyright (c) The tar-rs Project Contributors @@ -3499,7 +2633,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-100" data-spdx="MIT"> +<section id="license-64" data-spdx="MIT"> <ul><li><a href="https://github.com/mystor/synstructure">synstructure 0.14.0</a></li></ul> <pre>Copyright 2016 Nika Layzell @@ -3511,9 +2645,9 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-101" data-spdx="MIT"> +<section id="license-65" data-spdx="MIT"> -<ul><li><a href="https://github.com/rust-random/rand">rand 0.10.3</a></li><li><a href="https://github.com/rust-random/rand">rand 0.8.8</a></li><li><a href="https://github.com/rust-random/rand">rand_chacha 0.3.1</a></li><li><a href="https://github.com/rust-random/rand">rand_core 0.6.4</a></li></ul> +<ul><li><a href="https://github.com/rust-random/rand">rand_core 0.6.4</a></li></ul> <pre>Copyright 2018 Developers of the Rand project Copyright (c) 2014 The Rust Project Developers @@ -3542,38 +2676,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-102" data-spdx="MIT"> - -<ul><li><a href="https://github.com/google/zerocopy">zerocopy-derive 0.7.35</a></li><li><a href="https://github.com/google/zerocopy">zerocopy 0.7.35</a></li><li><a href="https://github.com/google/zerocopy">zerocopy 0.8.63</a></li></ul> -<pre>Copyright 2023 The Fuchsia Authors - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - -</pre> -</section> -<section id="license-103" data-spdx="MIT"> +<section id="license-66" data-spdx="MIT"> <ul><li><a href="https://github.com/hsivonen/utf8_iter">utf8_iter 1.1.0</a></li><li><a href="https://github.com/hsivonen/utf_types">utf_types 1.0.0</a></li></ul> <pre>Copyright Mozilla Foundation @@ -3603,33 +2706,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-104" data-spdx="MIT"> - -<ul><li><a href="https://github.com/myrrlyn/tap">tap 1.0.1</a></li></ul> -<pre>MIT License - -Copyright (c) 2017 Elliot Linder <darfink@gmail.com> - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -</pre> -</section> -<section id="license-105" data-spdx="MIT"> +<section id="license-67" data-spdx="MIT"> <ul><li><a href="https://github.com/emilio/precomputed-hash">precomputed-hash 0.1.1</a></li></ul> <pre>MIT License @@ -3655,7 +2732,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-106" data-spdx="MIT"> +<section id="license-68" data-spdx="MIT"> <ul><li><a href="https://gitlab.com/sequoia-pgp/sha1collisiondetection">sha1collisiondetection 0.3.4</a></li></ul> <pre>MIT License @@ -3690,7 +2767,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-107" data-spdx="MIT"> +<section id="license-69" data-spdx="MIT"> <ul><li><a href="https://github.com/srijs/rust-crc32fast">crc32fast 1.5.3</a></li></ul> <pre>MIT License @@ -3716,113 +2793,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-108" data-spdx="MIT"> - -<ul><li><a href="https://github.com/bitvecto-rs/bitvec">bitvec 1.1.1</a></li><li><a href="https://github.com/myrrlyn/wyz">wyz 0.5.1</a></li></ul> -<pre>MIT License - -Copyright (c) 2018 myrrlyn (Alexander Payne) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -</pre> -</section> -<section id="license-109" data-spdx="MIT"> - -<ul><li><a href="https://github.com/bitvecto-rs/radium">radium 0.7.0</a></li></ul> -<pre>MIT License - -Copyright (c) 2019 kneecaw (Nika Layzell) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -</pre> -</section> -<section id="license-110" data-spdx="MIT"> - -<ul><li><a href="https://github.com/myrrlyn/funty">funty 2.0.0</a></li></ul> -<pre>MIT License - -Copyright (c) 2020 myrrlyn (Alexander Payne) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -</pre> -</section> -<section id="license-111" data-spdx="MIT"> - -<ul><li><a href="https://github.com/RustCrypto/formats/tree/master/serdect">serdect 0.2.0</a></li></ul> -<pre>MIT License - -Copyright (c) 2022 The RustCrypto Project Developers - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -</pre> -</section> -<section id="license-112" data-spdx="MIT"> +<section id="license-70" data-spdx="MIT"> -<ul><li><a href="https://github.com/chronotope/chrono">chrono 0.4.45</a></li><li><a href="https://github.com/rust-lang/compiler-builtins">libm 0.2.16</a></li><li><a href="https://github.com/r-efi/r-efi">r-efi 6.0.0</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-core 0.62.2</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-implement 0.60.2</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-interface 0.59.3</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-link 0.2.1</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-result 0.4.1</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-strings 0.5.1</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-sys 0.61.2</a></li></ul> +<ul><li><a href="https://github.com/chronotope/chrono">chrono 0.4.45</a></li><li><a href="https://github.com/r-efi/r-efi">r-efi 6.0.0</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-core 0.62.2</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-implement 0.60.2</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-interface 0.59.3</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-link 0.2.1</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-result 0.4.1</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-strings 0.5.1</a></li><li><a href="https://github.com/microsoft/windows-rs">windows-sys 0.61.2</a></li></ul> <pre>MIT License Copyright (c) <year> <copyright holders> @@ -3843,7 +2816,7 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTI USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-113" data-spdx="MIT"> +<section id="license-71" data-spdx="MIT"> <ul><li><a href="https://github.com/mcountryman/simd-adler32">simd-adler32 0.3.10</a></li></ul> <pre>MIT License @@ -3869,32 +2842,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-114" data-spdx="MIT"> - -<ul><li><a href="https://github.com/magic-akari/ecb">ecb 0.1.2</a></li></ul> -<pre>MIT License - -Copyright (c) magic-akari - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE.</pre> -</section> -<section id="license-115" data-spdx="MIT"> +<section id="license-72" data-spdx="MIT"> <ul><li><a href="https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide">miniz_oxide 0.9.1</a></li></ul> <pre>MIT License @@ -3924,7 +2872,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-116" data-spdx="MIT"> +<section id="license-73" data-spdx="MIT"> <ul><li><a href="https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide">miniz_oxide 0.9.1</a></li></ul> <pre>MIT License @@ -3953,7 +2901,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-117" data-spdx="MIT"> +<section id="license-74" data-spdx="MIT"> <ul><li><a href="https://github.com/quininer/memsec">memsec 0.7.0</a></li></ul> <pre>MIT License @@ -3966,9 +2914,9 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-118" data-spdx="MIT"> +<section id="license-75" data-spdx="MIT"> -<ul><li><a href="https://github.com/RustCrypto/RSA">rsa 0.9.10</a></li></ul> +<ul><li><a href="https://github.com/rust-lang/rustc-hash">rustc-hash 2.1.3</a></li></ul> <pre>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -3993,9 +2941,9 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</pre> </section> -<section id="license-119" data-spdx="MIT"> +<section id="license-76" data-spdx="MIT"> -<ul><li><a href="https://github.com/oyvindln/adler2">adler2 2.0.1</a></li><li><a href="https://github.com/dtolnay/anyhow">anyhow 1.0.104</a></li><li><a href="https://github.com/dalek-cryptography/curve25519-dalek">curve25519-dalek-derive 0.1.1</a></li><li><a href="https://github.com/yaahc/displaydoc">displaydoc 0.2.7</a></li><li><a href="https://github.com/dtolnay/dyn-clone">dyn-clone 1.0.20</a></li><li><a href="https://github.com/smol-rs/fastrand">fastrand 2.5.0</a></li><li><a href="https://github.com/zkcrypto/group">group 0.13.0</a></li><li><a href="https://github.com/dtolnay/itoa">itoa 1.0.18</a></li><li><a href="https://github.com/rust-lang-nursery/lazy-static.rs">lazy_static 1.5.1</a></li><li><a href="https://github.com/sunfishcode/linux-raw-sys">linux-raw-sys 0.12.1</a></li><li><a href="https://github.com/matklad/once_cell">once_cell 1.21.4</a></li><li><a href="https://github.com/taiki-e/pin-project-lite">pin-project-lite 0.2.17</a></li><li><a href="https://github.com/dtolnay/proc-macro2">proc-macro2 1.0.107</a></li><li><a href="https://github.com/dtolnay/quote">quote 1.0.47</a></li><li><a href="https://github.com/bytecodealliance/rustix">rustix 1.1.6</a></li><li><a href="https://github.com/dtolnay/rustversion">rustversion 1.0.23</a></li><li><a href="https://github.com/dtolnay/semver">semver 1.0.28</a></li><li><a href="https://github.com/serde-rs/serde">serde 1.0.229</a></li><li><a href="https://github.com/serde-rs/serde">serde_core 1.0.229</a></li><li><a href="https://github.com/serde-rs/serde">serde_derive 1.0.229</a></li><li><a href="https://github.com/serde-rs/json">serde_json 1.0.154</a></li><li><a href="https://github.com/dtolnay/syn">syn 2.0.119</a></li><li><a href="https://github.com/dtolnay/syn">syn 3.0.9</a></li><li><a href="https://github.com/dtolnay/thiserror">thiserror-impl 2.0.21</a></li><li><a href="https://github.com/dtolnay/thiserror">thiserror 2.0.21</a></li><li><a href="https://github.com/dtolnay/unicode-ident">unicode-ident 1.0.27</a></li><li><a href="https://github.com/bytecodealliance/wasi">wasi 0.11.1+wasi-snapshot-preview1</a></li><li><a href="https://github.com/google/zerocopy">zerocopy 0.7.35</a></li><li><a href="https://github.com/dtolnay/zmij">zmij 1.0.23</a></li></ul> +<ul><li><a href="https://github.com/oyvindln/adler2">adler2 2.0.1</a></li><li><a href="https://github.com/dtolnay/anyhow">anyhow 1.0.104</a></li><li><a href="https://github.com/yaahc/displaydoc">displaydoc 0.2.7</a></li><li><a href="https://github.com/dtolnay/dyn-clone">dyn-clone 1.0.20</a></li><li><a href="https://github.com/smol-rs/fastrand">fastrand 2.5.0</a></li><li><a href="https://github.com/dtolnay/itoa">itoa 1.0.18</a></li><li><a href="https://github.com/sunfishcode/linux-raw-sys">linux-raw-sys 0.12.1</a></li><li><a href="https://github.com/Alexhuszagh/minimal-lexical">minimal-lexical 0.2.1</a></li><li><a href="https://github.com/matklad/once_cell">once_cell 1.21.4</a></li><li><a href="https://github.com/taiki-e/pin-project-lite">pin-project-lite 0.2.17</a></li><li><a href="https://github.com/dtolnay/prettyplease">prettyplease 0.2.37</a></li><li><a href="https://github.com/dtolnay/proc-macro2">proc-macro2 1.0.107</a></li><li><a href="https://github.com/dtolnay/quote">quote 1.0.47</a></li><li><a href="https://github.com/bytecodealliance/rustix">rustix 1.1.6</a></li><li><a href="https://github.com/dtolnay/rustversion">rustversion 1.0.23</a></li><li><a href="https://github.com/serde-rs/serde">serde 1.0.229</a></li><li><a href="https://github.com/serde-rs/serde">serde_core 1.0.229</a></li><li><a href="https://github.com/serde-rs/serde">serde_derive 1.0.229</a></li><li><a href="https://github.com/serde-rs/json">serde_json 1.0.154</a></li><li><a href="https://github.com/dtolnay/syn">syn 2.0.119</a></li><li><a href="https://github.com/dtolnay/syn">syn 3.0.9</a></li><li><a href="https://github.com/dtolnay/thiserror">thiserror-impl 2.0.21</a></li><li><a href="https://github.com/dtolnay/thiserror">thiserror 2.0.21</a></li><li><a href="https://github.com/dtolnay/unicode-ident">unicode-ident 1.0.27</a></li><li><a href="https://github.com/bytecodealliance/wasi">wasi 0.11.1+wasi-snapshot-preview1</a></li><li><a href="https://github.com/dtolnay/zmij">zmij 1.0.23</a></li></ul> <pre>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the @@ -4021,7 +2969,7 @@ IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-120" data-spdx="MIT"> +<section id="license-77" data-spdx="MIT"> <ul><li><a href="https://github.com/winnow-rs/winnow">winnow 1.0.4</a></li></ul> <pre>Permission is hereby granted, free of charge, to any person obtaining @@ -4044,7 +2992,7 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-121" data-spdx="MIT"> +<section id="license-78" data-spdx="MIT"> <ul><li><a href="https://github.com/jedisct1/rust-siphash">siphasher 1.0.4</a></li></ul> <pre>Permission is hereby granted, free of charge, to any person obtaining a copy @@ -4066,7 +3014,16 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-122" data-spdx="MIT"> +<section id="license-79" data-spdx="MIT"> + +<ul><li><a href="https://github.com/mmastrac/linktime">ctor 1.0.13</a></li><li><a href="https://github.com/mmastrac/linktime">link-section 0.19.3</a></li><li><a href="https://github.com/mmastrac/linktime">linktime-proc-macro 0.2.3</a></li></ul> +<pre>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</pre> +</section> +<section id="license-80" data-spdx="MIT"> <ul><li><a href="https://github.com/nical/android_system_properties">android_system_properties 0.1.6</a></li></ul> <pre>The MIT License (MIT) @@ -4091,32 +3048,7 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-123" data-spdx="MIT"> - -<ul><li><a href="https://github.com/mvdnes/spin-rs.git">spin 0.9.9</a></li></ul> -<pre>The MIT License (MIT) - -Copyright (c) 2014 Mathijs van de Nes - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE.</pre> -</section> -<section id="license-124" data-spdx="MIT"> +<section id="license-81" data-spdx="MIT"> <ul><li><a href="https://github.com/paholg/typenum">typenum 1.20.1</a></li></ul> <pre>The MIT License (MIT) @@ -4142,7 +3074,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-125" data-spdx="MIT"> +<section id="license-82" data-spdx="MIT"> <ul><li><a href="https://github.com/rust-phf/rust-phf">phf_shared 0.14.0</a></li></ul> <pre>The MIT License (MIT) @@ -4167,7 +3099,7 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-126" data-spdx="MIT"> +<section id="license-83" data-spdx="MIT"> <ul><li><a href="https://github.com/marshallpierce/rust-base64">base64 0.22.1</a></li></ul> <pre>The MIT License (MIT) @@ -4193,9 +3125,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-127" data-spdx="MIT"> +<section id="license-84" data-spdx="MIT"> -<ul><li><a href="https://github.com/BurntSushi/aho-corasick">aho-corasick 1.1.5</a></li><li><a href="https://github.com/BurntSushi/byteorder">byteorder 1.5.0</a></li><li><a href="https://github.com/BurntSushi/memchr">memchr 2.8.3</a></li><li><a href="https://github.com/BurntSushi/walkdir">walkdir 2.5.0</a></li></ul> +<ul><li><a href="https://github.com/BurntSushi/aho-corasick">aho-corasick 1.1.5</a></li><li><a href="https://github.com/BurntSushi/memchr">memchr 2.8.3</a></li><li><a href="https://github.com/BurntSushi/walkdir">walkdir 2.5.0</a></li></ul> <pre>The MIT License (MIT) Copyright (c) 2015 Andrew Gallant @@ -4219,7 +3151,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-128" data-spdx="MIT"> +<section id="license-85" data-spdx="MIT"> <ul><li><a href="https://github.com/rapidfuzz/strsim-rs">strsim 0.11.1</a></li></ul> <pre>The MIT License (MIT) @@ -4247,9 +3179,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-129" data-spdx="MIT"> +<section id="license-86" data-spdx="MIT"> -<ul><li><a href="https://github.com/comex/rust-shlex">shlex 2.0.1</a></li></ul> +<ul><li><a href="https://github.com/comex/rust-shlex">shlex 1.3.0</a></li><li><a href="https://github.com/comex/rust-shlex">shlex 2.0.1</a></li></ul> <pre>The MIT License (MIT) Copyright (c) 2015 Nicholas Allegra (comex). @@ -4273,33 +3205,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-130" data-spdx="MIT"> - -<ul><li><a href="https://github.com/mit-plv/fiat-crypto">fiat-crypto 0.2.9</a></li></ul> -<pre>The MIT License (MIT) - -Copyright (c) 2015-2020 the fiat-crypto authors (see the AUTHORS file). - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -</pre> -</section> -<section id="license-131" data-spdx="MIT"> +<section id="license-87" data-spdx="MIT"> <ul><li><a href="https://github.com/BurntSushi/same-file">same-file 1.0.6</a></li><li><a href="https://github.com/BurntSushi/winapi-util">winapi-util 0.1.11</a></li></ul> <pre>The MIT License (MIT) @@ -4325,33 +3231,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-132" data-spdx="MIT"> - -<ul><li><a href="https://github.com/zkcrypto/ff">ff 0.13.1</a></li></ul> -<pre>The MIT License (MIT) - -Copyright (c) 2017 Sean Bowe - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -</pre> -</section> -<section id="license-133" data-spdx="MIT"> +<section id="license-88" data-spdx="MIT"> <ul><li><a href="https://github.com/SergioBenitez/version_check">version_check 0.9.5</a></li></ul> <pre>The MIT License (MIT) @@ -4375,7 +3255,7 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </pre> </section> -<section id="license-134" data-spdx="MIT"> +<section id="license-89" data-spdx="MIT"> <ul><li><a href="https://github.com/fizyk20/generic-array.git">generic-array 0.14.7</a></li><li><a href="https://github.com/fizyk20/generic-array.git">generic-array 1.4.5</a></li></ul> <pre>The MIT License (MIT)
@@ -4400,7 +3280,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.</pre> </section> -<section id="license-135" data-spdx="Unicode-3.0"> +<section id="license-90" data-spdx="Unicode-3.0"> <h2 id="Unicode-3.0">Unicode License v3</h2> <ul><li><a href="https://github.com/dtolnay/unicode-ident">unicode-ident 1.0.27</a></li></ul> <pre>UNICODE LICENSE V3 @@ -4444,7 +3324,7 @@ dealings in these Data Files or Software without prior written authorization of the copyright holder. </pre> </section> -<section id="license-136" data-spdx="Unicode-3.0"> +<section id="license-91" data-spdx="Unicode-3.0"> <ul><li><a href="https://github.com/unicode-org/icu4x">icu_collections 2.4.0</a></li><li><a href="https://github.com/unicode-org/icu4x">icu_locale_core 2.4.0</a></li><li><a href="https://github.com/unicode-org/icu4x">icu_normalizer 2.4.0</a></li><li><a href="https://github.com/unicode-org/icu4x">icu_normalizer_data 2.4.0</a></li><li><a href="https://github.com/unicode-org/icu4x">icu_properties 2.4.0</a></li><li><a href="https://github.com/unicode-org/icu4x">icu_properties_data 2.4.0</a></li><li><a href="https://github.com/unicode-org/icu4x">icu_provider 2.4.0</a></li><li><a href="https://github.com/unicode-org/icu4x">litemap 0.8.3</a></li><li><a href="https://github.com/unicode-org/icu4x">potential_utf 0.1.6</a></li><li><a href="https://github.com/unicode-org/icu4x">tinystr 0.8.5</a></li><li><a href="https://github.com/unicode-org/icu4x">writeable 0.6.4</a></li><li><a href="https://github.com/unicode-org/icu4x">yoke-derive 0.8.4</a></li><li><a href="https://github.com/unicode-org/icu4x">yoke 0.8.4</a></li><li><a href="https://github.com/unicode-org/icu4x">zerofrom-derive 0.1.8</a></li><li><a href="https://github.com/unicode-org/icu4x">zerofrom 0.1.8</a></li><li><a href="https://github.com/unicode-org/icu4x">zerotrie 0.2.5</a></li><li><a href="https://github.com/unicode-org/icu4x">zerovec-derive 0.11.7</a></li><li><a href="https://github.com/unicode-org/icu4x">zerovec 0.11.9</a></li></ul> <pre>UNICODE LICENSE V3 @@ -4495,7 +3375,7 @@ Portions of ICU4X may have been adapted from ICU4C and/or ICU4J. ICU 1.8.1 to ICU 57.1 © 1995-2016 International Business Machines Corporation and others. </pre> </section> -<section id="license-137" data-spdx="Zlib"> +<section id="license-92" data-spdx="Zlib"> <h2 id="Zlib">License of ZLib</h2> <ul><li><a href="https://github.com/orlp/foldhash">foldhash 0.1.5</a></li></ul> <pre>Copyright (c) 2024 Orson Peters |
