This commit is contained in:
Edouard Oger 2020-04-16 14:32:59 -04:00
Родитель 94efd274ba
Коммит 779b94e71b
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: A2F740742307674A
53 изменённых файлов: 1379 добавлений и 2055 удалений

Просмотреть файл

@ -130,8 +130,6 @@ commands:
- setup-rust-toolchain:
rust-version: <<parameters.rust-version>>
- setup-sccache
# nss_sys's bindgen needs clang.
- run: sudo apt-get install clang
# clipboard crate depends on some x11 libs.
- run: sudo apt-get install libxcb-shape0-dev libxcb-xfixes0-dev
- run: |

421
Cargo.lock сгенерированный
Просмотреть файл

@ -58,6 +58,12 @@ dependencies = [
"winapi 0.3.8",
]
[[package]]
name = "autocfg"
version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
[[package]]
name = "autocfg"
version = "1.0.0"
@ -115,28 +121,10 @@ dependencies = [
]
[[package]]
name = "bindgen"
version = "0.53.2"
name = "bitflags"
version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6bb26d6a69a335b8cb0e7c7e9775cd5666611dc50a37177c3f2cedcfc040e8c8"
dependencies = [
"bitflags",
"cexpr",
"cfg-if",
"clang-sys",
"clap",
"env_logger",
"lazy_static",
"lazycell",
"log",
"peeking_take_while",
"proc-macro2",
"quote",
"regex",
"rustc-hash",
"shlex",
"which",
]
checksum = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5"
[[package]]
name = "bitflags"
@ -216,15 +204,6 @@ version = "1.0.50"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd"
[[package]]
name = "cexpr"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f4aedb84272dbe89af497cf81375129abda4fc0a9e7c5d317498c15cc30c0d27"
dependencies = [
"nom",
]
[[package]]
name = "cfg-if"
version = "0.1.10"
@ -242,17 +221,6 @@ dependencies = [
"time",
]
[[package]]
name = "clang-sys"
version = "0.29.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fe6837df1d5cba2397b835c8530f51723267e16abbf83892e9e5af4f0e5dd10a"
dependencies = [
"glob",
"libc",
"libloading",
]
[[package]]
name = "clap"
version = "2.33.0"
@ -261,7 +229,7 @@ checksum = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
dependencies = [
"ansi_term",
"atty",
"bitflags",
"bitflags 1.2.1",
"strsim",
"textwrap",
"unicode-width",
@ -274,7 +242,7 @@ version = "0.1.0"
dependencies = [
"failure",
"fxa-client",
"log",
"log 0.4.8",
"sync15",
"url",
"webbrowser",
@ -314,6 +282,15 @@ dependencies = [
"winapi 0.3.8",
]
[[package]]
name = "cloudabi"
version = "0.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
dependencies = [
"bitflags 1.2.1",
]
[[package]]
name = "colored"
version = "1.9.3"
@ -415,7 +392,7 @@ version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
dependencies = [
"autocfg",
"autocfg 1.0.0",
"cfg-if",
"crossbeam-utils",
"lazy_static",
@ -440,7 +417,7 @@ version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
dependencies = [
"autocfg",
"autocfg 1.0.0",
"cfg-if",
"lazy_static",
]
@ -467,6 +444,17 @@ dependencies = [
"memchr",
]
[[package]]
name = "ctest"
version = "0.2.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "28867572096027a9be9d194ae2f99dcbfa03f1c81141d4f44a62d68f8ee3b9f0"
dependencies = [
"cc",
"rustc_version",
"syntex_syntax2",
]
[[package]]
name = "ctor"
version = "0.1.13"
@ -521,7 +509,7 @@ version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "268360cf7696c0c2c83061edb6af090cfea85cbde7d1b8425d6e4ffe9f1c0ec9"
dependencies = [
"log",
"log 0.4.8",
"smallbitvec",
]
@ -574,7 +562,7 @@ checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
dependencies = [
"atty",
"humantime",
"log",
"log 0.4.8",
"regex",
"termcolor",
]
@ -598,6 +586,19 @@ dependencies = [
"syn",
]
[[package]]
name = "extprim"
version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cfba1bd0c749760b3dad3e4d3926b2bf6186f48e244456bfe1ad3aecd55b4fb1"
dependencies = [
"num-traits",
"rand 0.6.5",
"rustc_version",
"semver",
"serde",
]
[[package]]
name = "failure"
version = "0.1.7"
@ -639,7 +640,7 @@ dependencies = [
"backtrace",
"env_logger",
"lazy_static",
"log",
"log 0.4.8",
"rand 0.7.3",
"rayon",
]
@ -651,7 +652,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "087be066eb6e85d7150f0c5400018a32802f99d688b2d3868c526f7bbfe17960"
dependencies = [
"lazy_static",
"log",
"log 0.4.8",
]
[[package]]
@ -662,7 +663,7 @@ checksum = "156072cf5b7e3974da51941bf050f5b8ab5a8df56ad5c1adbd8c07e9d9455b95"
dependencies = [
"dirs",
"failure",
"log",
"log 0.4.8",
]
[[package]]
@ -704,7 +705,7 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
dependencies = [
"bitflags",
"bitflags 1.2.1",
"fuchsia-zircon-sys",
]
@ -774,7 +775,7 @@ dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"hex",
"lazy_static",
"log",
"log 0.4.8",
"mockiato",
"prost",
"prost-derive",
@ -796,7 +797,7 @@ dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"fxa-client",
"lazy_static",
"log",
"log 0.4.8",
"prost",
"serde_json",
"url",
@ -814,12 +815,6 @@ dependencies = [
"wasi",
]
[[package]]
name = "glob"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
[[package]]
name = "h2"
version = "0.2.4"
@ -833,7 +828,7 @@ dependencies = [
"futures-util",
"http",
"indexmap",
"log",
"log 0.4.8",
"slab",
"tokio",
"tokio-util",
@ -847,7 +842,7 @@ checksum = "57528ce5133f688e1bc4daadc3e50bf9093d40e8a1f64c6e506ccbae005e57e6"
dependencies = [
"base64 0.12.0",
"failure",
"log",
"log 0.4.8",
"once_cell",
"rand 0.7.3",
"url",
@ -928,7 +923,7 @@ dependencies = [
"http-body",
"httparse",
"itoa",
"log",
"log 0.4.8",
"net2",
"pin-project",
"time",
@ -973,7 +968,7 @@ version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "076f042c5b7b98f31d205f1249267e12a6518c1481e9dae9764af19b707d2292"
dependencies = [
"autocfg",
"autocfg 1.0.0",
]
[[package]]
@ -1032,28 +1027,12 @@ version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
name = "lazycell"
version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f"
[[package]]
name = "libc"
version = "0.2.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "99e85c08494b21a9054e7fe1374a732aeadaff3980b6990b94bfd3a70f690005"
[[package]]
name = "libloading"
version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753"
dependencies = [
"cc",
"winapi 0.3.8",
]
[[package]]
name = "libsqlite3-sys"
version = "0.17.3"
@ -1081,6 +1060,15 @@ dependencies = [
"viaduct",
]
[[package]]
name = "log"
version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
dependencies = [
"log 0.4.8",
]
[[package]]
name = "log"
version = "0.4.8"
@ -1104,7 +1092,7 @@ dependencies = [
"fxa-client",
"interrupt",
"lazy_static",
"log",
"log 0.4.8",
"more-asserts",
"prettytable-rs",
"prost",
@ -1127,7 +1115,7 @@ dependencies = [
"base16",
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static",
"log",
"log 0.4.8",
"logins",
"prost",
"rusqlite",
@ -1206,7 +1194,7 @@ version = "0.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4fc2c02a7e374099d4ee95a193111f72d2110197fe200272371758f6c3643d8"
dependencies = [
"autocfg",
"autocfg 1.0.0",
]
[[package]]
@ -1237,7 +1225,7 @@ dependencies = [
"iovec",
"kernel32-sys",
"libc",
"log",
"log 0.4.8",
"miow",
"net2",
"slab",
@ -1292,7 +1280,7 @@ dependencies = [
"difference",
"httparse",
"lazy_static",
"log",
"log 0.4.8",
"percent-encoding",
"rand 0.7.3",
"regex",
@ -1325,7 +1313,7 @@ checksum = "2b0d88c06fe90d5ee94048ba40409ef1d9315d86f6f38c2efdaad4fb50c58b2d"
dependencies = [
"lazy_static",
"libc",
"log",
"log 0.4.8",
"openssl",
"openssl-probe",
"openssl-sys",
@ -1358,23 +1346,13 @@ version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "50e4785f2c3b7589a0d0c1dd60285e1188adac4006e8abd6dd578e1567027363"
dependencies = [
"bitflags",
"bitflags 1.2.1",
"cc",
"cfg-if",
"libc",
"void",
]
[[package]]
name = "nom"
version = "5.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b471253da97532da4b61552249c521e01e736071f71c1a4f7ebbfbf0a06aad6"
dependencies = [
"memchr",
"version_check",
]
[[package]]
name = "nss"
version = "0.1.0"
@ -1396,11 +1374,7 @@ version = "0.1.0"
name = "nss_sys"
version = "0.1.0"
dependencies = [
"bindgen",
"nss_build_common",
"serde",
"serde_derive",
"toml",
]
[[package]]
@ -1409,7 +1383,7 @@ version = "0.1.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f6ea62e9d81a77cd3ee9a2a5b9b609447857f3d358704331e4ef39eb247fcba"
dependencies = [
"autocfg",
"autocfg 1.0.0",
"num-traits",
]
@ -1419,7 +1393,7 @@ version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c62be47e61d1842b9170f0fdeec8eba98e60e90e5446449a0545e5152acd7096"
dependencies = [
"autocfg",
"autocfg 1.0.0",
]
[[package]]
@ -1485,7 +1459,7 @@ version = "0.10.29"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cee6d85f4cb4c4f59a6a85d5b68a233d280c82e29e822913b9c8b129fbf20bdd"
dependencies = [
"bitflags",
"bitflags 1.2.1",
"cfg-if",
"foreign-types",
"lazy_static",
@ -1514,7 +1488,7 @@ version = "0.9.55"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7717097d810a0f2e2323f9e5d11e71608355e24828410b55b9d4f18aa5f9a5d8"
dependencies = [
"autocfg",
"autocfg 1.0.0",
"cc",
"libc",
"openssl-src",
@ -1531,12 +1505,6 @@ dependencies = [
"winapi 0.3.8",
]
[[package]]
name = "peeking_take_while"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
[[package]]
name = "percent-encoding"
version = "2.1.0"
@ -1595,7 +1563,7 @@ checksum = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677"
name = "places"
version = "0.1.0"
dependencies = [
"bitflags",
"bitflags 1.2.1",
"caseless",
"clap",
"cli-support",
@ -1611,7 +1579,7 @@ dependencies = [
"idna",
"interrupt",
"lazy_static",
"log",
"log 0.4.8",
"memchr",
"more-asserts",
"percent-encoding",
@ -1640,7 +1608,7 @@ dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"interrupt",
"lazy_static",
"log",
"log 0.4.8",
"places",
"prost",
"serde_json",
@ -1691,7 +1659,7 @@ dependencies = [
"csv",
"encode_unicode",
"lazy_static",
"term",
"term 0.5.2",
"unicode-width",
]
@ -1753,7 +1721,7 @@ version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "df246d292ff63439fea9bc8c0a270bed0e390d5ebd4db4ba15aba81111b5abe3"
dependencies = [
"unicode-xid",
"unicode-xid 0.2.0",
]
[[package]]
@ -1775,7 +1743,7 @@ dependencies = [
"bytes",
"heck",
"itertools",
"log",
"log 0.4.8",
"multimap",
"petgraph",
"prost",
@ -1831,7 +1799,7 @@ dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"hex",
"lazy_static",
"log",
"log 0.4.8",
"mockito",
"prost",
"prost-derive",
@ -1853,7 +1821,7 @@ dependencies = [
"base64 0.12.0",
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static",
"log",
"log 0.4.8",
"prost",
"push",
"rusqlite",
@ -1890,6 +1858,25 @@ dependencies = [
"winapi 0.3.8",
]
[[package]]
name = "rand"
version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
dependencies = [
"autocfg 0.1.7",
"libc",
"rand_chacha 0.1.1",
"rand_core 0.4.2",
"rand_hc 0.1.0",
"rand_isaac",
"rand_jitter",
"rand_os",
"rand_pcg",
"rand_xorshift",
"winapi 0.3.8",
]
[[package]]
name = "rand"
version = "0.7.3"
@ -1898,9 +1885,19 @@ checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
dependencies = [
"getrandom",
"libc",
"rand_chacha",
"rand_chacha 0.2.2",
"rand_core 0.5.1",
"rand_hc",
"rand_hc 0.2.0",
]
[[package]]
name = "rand_chacha"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
dependencies = [
"autocfg 0.1.7",
"rand_core 0.3.1",
]
[[package]]
@ -1937,6 +1934,15 @@ dependencies = [
"getrandom",
]
[[package]]
name = "rand_hc"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
dependencies = [
"rand_core 0.3.1",
]
[[package]]
name = "rand_hc"
version = "0.2.0"
@ -1946,6 +1952,59 @@ dependencies = [
"rand_core 0.5.1",
]
[[package]]
name = "rand_isaac"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
dependencies = [
"rand_core 0.3.1",
]
[[package]]
name = "rand_jitter"
version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
dependencies = [
"libc",
"rand_core 0.4.2",
"winapi 0.3.8",
]
[[package]]
name = "rand_os"
version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
dependencies = [
"cloudabi",
"fuchsia-cprng",
"libc",
"rand_core 0.4.2",
"rdrand",
"winapi 0.3.8",
]
[[package]]
name = "rand_pcg"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
dependencies = [
"autocfg 0.1.7",
"rand_core 0.4.2",
]
[[package]]
name = "rand_xorshift"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
dependencies = [
"rand_core 0.3.1",
]
[[package]]
name = "rayon"
version = "1.3.0"
@ -1992,7 +2051,7 @@ dependencies = [
"cfg-if",
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static",
"log",
"log 0.4.8",
]
[[package]]
@ -2066,7 +2125,7 @@ dependencies = [
"index_vec",
"lazy_static",
"libsqlite3-sys",
"log",
"log 0.4.8",
"matches",
"nss_build_common",
"rusqlite",
@ -2104,7 +2163,7 @@ dependencies = [
"hyper-tls",
"js-sys",
"lazy_static",
"log",
"log 0.4.8",
"mime",
"mime_guess",
"native-tls",
@ -2128,7 +2187,7 @@ version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "57edf4c4cea4d7e0fab069acb5da9e8e8e5403c78abc81b1f37d83af02148ea5"
dependencies = [
"bitflags",
"bitflags 1.2.1",
"fallible-iterator",
"fallible-streaming-iterator",
"libsqlite3-sys",
@ -2156,12 +2215,6 @@ version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
[[package]]
name = "rustc-hash"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
[[package]]
name = "rustc_version"
version = "0.2.3"
@ -2208,7 +2261,7 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "572dfa3a0785509e7a44b5b4bebcf94d41ba34e9ed9eb9df722545c3b3c4144a"
dependencies = [
"bitflags",
"bitflags 1.2.1",
"core-foundation",
"core-foundation-sys",
"libc",
@ -2294,12 +2347,6 @@ dependencies = [
"url",
]
[[package]]
name = "shlex"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
[[package]]
name = "slab"
version = "0.4.2"
@ -2325,7 +2372,7 @@ dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"interrupt",
"lazy_static",
"log",
"log 0.4.8",
"rusqlite",
]
@ -2367,7 +2414,7 @@ checksum = "0df0eb663f387145cab623dea85b09c2c5b4b0aef44e945d928e682fce71bb03"
dependencies = [
"proc-macro2",
"quote",
"unicode-xid",
"unicode-xid 0.2.0",
]
[[package]]
@ -2400,7 +2447,7 @@ dependencies = [
"failure",
"fxa-client",
"lazy_static",
"log",
"log 0.4.8",
"logins",
"rand 0.7.3",
"structopt",
@ -2422,7 +2469,7 @@ dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"interrupt",
"lazy_static",
"log",
"log 0.4.8",
"rc_crypto",
"serde",
"serde_derive",
@ -2439,7 +2486,7 @@ version = "0.1.0"
dependencies = [
"failure",
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log",
"log 0.4.8",
"serde",
"serde_json",
"sync-guid",
@ -2455,7 +2502,7 @@ dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"interrupt",
"lazy_static",
"log",
"log 0.4.8",
"logins",
"places",
"prost",
@ -2474,7 +2521,7 @@ name = "sync_manager_ffi"
version = "0.1.0"
dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log",
"log 0.4.8",
"logins_ffi",
"places-ffi",
"prost",
@ -2492,7 +2539,57 @@ dependencies = [
"proc-macro2",
"quote",
"syn",
"unicode-xid",
"unicode-xid 0.2.0",
]
[[package]]
name = "syntex_errors"
version = "0.59.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3133289179676c9f5c5b2845bf5a2e127769f4889fcbada43035ef6bd662605e"
dependencies = [
"libc",
"serde",
"serde_derive",
"syntex_pos",
"term 0.4.6",
"unicode-xid 0.1.0",
]
[[package]]
name = "syntex_pos"
version = "0.59.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "30ab669fa003d208c681f874bbc76d91cc3d32550d16b5d9d2087cf477316470"
dependencies = [
"serde",
"serde_derive",
]
[[package]]
name = "syntex_syntax2"
version = "0.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "258814d9936ab6783a399fffdc04ee7be388280ea6f70dc855a2cb7e06cc6650"
dependencies = [
"bitflags 0.9.1",
"extprim",
"log 0.3.9",
"serde",
"serde_derive",
"serde_json",
"syntex_errors",
"syntex_pos",
"unicode-xid 0.1.0",
]
[[package]]
name = "systest"
version = "0.1.0"
dependencies = [
"ctest",
"libc",
"nss_sys",
]
[[package]]
@ -2506,7 +2603,7 @@ dependencies = [
"failure",
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"interrupt",
"log",
"log 0.4.8",
"prost",
"prost-derive",
"serde",
@ -2525,7 +2622,7 @@ dependencies = [
"base16",
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static",
"log",
"log 0.4.8",
"prost",
"serde_json",
"sync15",
@ -2558,6 +2655,16 @@ dependencies = [
"winapi 0.3.8",
]
[[package]]
name = "term"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fa63644f74ce96fbeb9b794f66aff2a52d601cbd5e80f4b97123e3899f4570f1"
dependencies = [
"kernel32-sys",
"winapi 0.2.8",
]
[[package]]
name = "term"
version = "0.5.2"
@ -2675,7 +2782,7 @@ dependencies = [
"bytes",
"futures-core",
"futures-sink",
"log",
"log 0.4.8",
"pin-project-lite",
"tokio",
]
@ -2740,6 +2847,12 @@ version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
[[package]]
name = "unicode-xid"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
[[package]]
name = "unicode-xid"
version = "0.2.0"
@ -2783,7 +2896,7 @@ dependencies = [
"failure",
"failure_derive",
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log",
"log 0.4.8",
"once_cell",
"prost",
"prost-derive",
@ -2798,7 +2911,7 @@ version = "0.1.0"
dependencies = [
"ffi-support 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static",
"log",
"log 0.4.8",
"reqwest",
"viaduct",
]
@ -2826,7 +2939,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0"
dependencies = [
"log",
"log 0.4.8",
"try-lock",
]
@ -2856,7 +2969,7 @@ checksum = "d967d37bf6c16cca2973ca3af071d0a2523392e4a594548155d89a678f4237cd"
dependencies = [
"bumpalo",
"lazy_static",
"log",
"log 0.4.8",
"proc-macro2",
"quote",
"syn",
@ -2934,7 +3047,7 @@ dependencies = [
"interrupt",
"lazy_static",
"libsqlite3-sys",
"log",
"log 0.4.8",
"nss_build_common",
"rusqlite",
"serde",
@ -3038,5 +3151,5 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e917a3f24142e9ff8be2414e36c649d47d6cc2ba81f16201cdef96e533e02de"
dependencies = [
"libc",
"log",
"log 0.4.8",
]

Просмотреть файл

@ -19,6 +19,7 @@ members = [
"components/support/rc_crypto/nss",
"components/support/rc_crypto/nss/nss_build_common",
"components/support/rc_crypto/nss/nss_sys",
"components/support/rc_crypto/nss/systest",
"components/support/sql",
"components/support/sync15-traits",
"components/support/viaduct-reqwest",

Просмотреть файл

@ -7,13 +7,10 @@ the details of which are reproduced below.
* [Mozilla Public License 2.0](#mozilla-public-license-20)
* [Apache License 2.0](#apache-license-20)
* [MIT License: SwiftKeychainWrapper](#mit-license-swiftkeychainwrapper)
* [MIT License: aho-corasick, byteorder, memchr, termcolor](#mit-license-aho-corasick-byteorder-memchr-termcolor)
* [MIT License: ansi_term](#mit-license-ansi_term)
* [MIT License: atty](#mit-license-atty)
* [MIT License: aho-corasick, byteorder, memchr](#mit-license-aho-corasick-byteorder-memchr)
* [MIT License: bincode](#mit-license-bincode)
* [MIT License: bytes](#mit-license-bytes)
* [MIT License: caseless](#mit-license-caseless)
* [MIT License: clap](#mit-license-clap)
* [MIT License: h2](#mit-license-h2)
* [MIT License: http-body](#mit-license-http-body)
* [MIT License: hyper](#mit-license-hyper)
@ -22,25 +19,19 @@ the details of which are reproduced below.
* [MIT License: matches](#mit-license-matches)
* [MIT License: mime_guess](#mit-license-mime_guess)
* [MIT License: mio](#mit-license-mio)
* [MIT License: nom](#mit-license-nom)
* [MIT License: openssl-sys](#mit-license-openssl-sys)
* [MIT License: rusqlite](#mit-license-rusqlite)
* [MIT License: schannel](#mit-license-schannel)
* [MIT License: slab](#mit-license-slab)
* [MIT License: strsim](#mit-license-strsim)
* [MIT License: synstructure](#mit-license-synstructure)
* [MIT License: textwrap](#mit-license-textwrap)
* [MIT License: tokio, tokio-tls, tokio-util](#mit-license-tokio-tokio-tls-tokio-util)
* [MIT License: tower-service](#mit-license-tower-service)
* [MIT License: try-lock](#mit-license-try-lock)
* [MIT License: want](#mit-license-want)
* [MIT License: which](#mit-license-which)
* [MIT License: winapi](#mit-license-winapi)
* [MIT License: winreg](#mit-license-winreg)
* [CC0-1.0 License: base16](#cc0-10-license-base16)
* [ISC License: libloading](#isc-license-libloading)
* [ISC License: ring](#isc-license-ring)
* [BSD-3-Clause License: bindgen](#bsd-3-clause-license-bindgen)
* [BSD-3-Clause License: protobuf](#bsd-3-clause-license-protobuf)
* [BSD-3-Clause License: sqlcipher](#bsd-3-clause-license-sqlcipher)
* [OpenSSL License](#openssl-license)
@ -441,16 +432,13 @@ The following text applies to code linked from these dependencies:
[base64](https://github.com/marshallpierce/rust-base64),
[bitflags](https://github.com/bitflags/bitflags),
[cc](https://github.com/alexcrichton/cc-rs),
[cexpr](https://github.com/jethrogb/rust-cexpr),
[cfg-if](https://github.com/alexcrichton/cfg-if),
[clang-sys](https://github.com/KyleMayes/clang-sys),
[core-foundation-sys](https://github.com/servo/core-foundation-rs),
[core-foundation](https://github.com/servo/core-foundation-rs),
[dogear](https://github.com/mozilla/dogear),
[dtoa](https://github.com/dtolnay/dtoa),
[either](https://github.com/bluss/either),
[encoding_rs](https://github.com/hsivonen/encoding_rs),
[env_logger](https://github.com/sebasmagri/env_logger/),
[failure](https://github.com/rust-lang-nursery/failure),
[failure_derive](https://github.com/rust-lang-nursery/failure),
[fallible-iterator](https://github.com/sfackler/rust-fallible-iterator),
@ -466,11 +454,9 @@ The following text applies to code linked from these dependencies:
[futures-task](https://github.com/rust-lang/futures-rs),
[futures-util](https://github.com/rust-lang/futures-rs),
[getrandom](https://github.com/rust-random/getrandom),
[glob](https://github.com/rust-lang/glob),
[hex](https://github.com/KokaKiwi/rust-hex),
[http](https://github.com/hyperium/http),
[httparse](https://github.com/seanmonstar/httparse),
[humantime](https://github.com/tailhook/humantime),
[hyper-tls](https://github.com/hyperium/hyper-tls),
[idna](https://github.com/servo/rust-url/),
[indexmap](https://github.com/bluss/indexmap),
@ -479,7 +465,6 @@ The following text applies to code linked from these dependencies:
[itoa](https://github.com/dtolnay/itoa),
[jna](https://github.com/java-native-access/jna),
[lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs),
[lazycell](https://github.com/indiv0/lazycell),
[libc](https://github.com/rust-lang/libc),
[linked-hash-map](https://github.com/contain-rs/linked-hash-map),
[log](https://github.com/rust-lang/log),
@ -493,7 +478,6 @@ The following text applies to code linked from these dependencies:
[openssl-probe](https://github.com/alexcrichton/openssl-probe),
[openssl-src](https://github.com/alexcrichton/openssl-src-rs),
[openssl](https://github.com/sfackler/rust-openssl),
[peeking_take_while](https://github.com/fitzgen/peeking_take_while),
[percent-encoding](https://github.com/servo/rust-url/),
[pin-project-internal](https://github.com/taiki-e/pin-project),
[pin-project-lite](https://github.com/taiki-e/pin-project-lite),
@ -504,7 +488,6 @@ The following text applies to code linked from these dependencies:
[proc-macro2](https://github.com/alexcrichton/proc-macro2),
[prost-derive](https://github.com/danburkert/prost),
[prost](https://github.com/danburkert/prost),
[quick-error](http://github.com/tailhook/quick-error),
[quote](https://github.com/dtolnay/quote),
[rand](https://github.com/rust-random/rand),
[rand_chacha](https://github.com/rust-random/rand),
@ -514,7 +497,6 @@ The following text applies to code linked from these dependencies:
[remove_dir_all](https://github.com/XAMPPRocky/remove_dir_all.git),
[reqwest](https://github.com/seanmonstar/reqwest),
[rustc-demangle](https://github.com/alexcrichton/rustc-demangle),
[rustc-hash](https://github.com/rust-lang-nursery/rustc-hash),
[ryu](https://github.com/dtolnay/ryu),
[security-framework-sys](https://github.com/kornelski/rust-security-framework),
[security-framework](https://github.com/kornelski/rust-security-framework),
@ -522,7 +504,6 @@ The following text applies to code linked from these dependencies:
[serde_derive](https://github.com/serde-rs/serde),
[serde_json](https://github.com/serde-rs/json),
[serde_urlencoded](https://github.com/nox/serde_urlencoded),
[shlex](https://github.com/comex/rust-shlex),
[smallbitvec](https://github.com/servo/smallbitvec),
[smallvec](https://github.com/servo/rust-smallvec),
[swift-protobuf](https://github.com/apple/swift-protobuf),
@ -530,14 +511,11 @@ The following text applies to code linked from these dependencies:
[tempfile](https://github.com/Stebalien/tempfile),
[thread_local](https://github.com/Amanieu/thread_local-rs),
[time](https://github.com/rust-lang/time),
[toml](https://github.com/alexcrichton/toml-rs),
[unicase](https://github.com/seanmonstar/unicase),
[unicode-bidi](https://github.com/servo/unicode-bidi),
[unicode-normalization](https://github.com/unicode-rs/unicode-normalization),
[unicode-width](https://github.com/unicode-rs/unicode-width),
[unicode-xid](https://github.com/unicode-rs/unicode-xid),
[url](https://github.com/servo/rust-url),
[vec_map](https://github.com/contain-rs/vec-map),
[version_check](https://github.com/SergioBenitez/version_check),
[winapi-x86_64-pc-windows-gnu](https://github.com/retep998/winapi-rs),
[winapi](https://github.com/retep998/winapi-rs)
@ -778,13 +756,12 @@ SOFTWARE.
```
-------------
## MIT License: aho-corasick, byteorder, memchr, termcolor
## MIT License: aho-corasick, byteorder, memchr
The following text applies to code linked from these dependencies:
[aho-corasick](https://github.com/BurntSushi/aho-corasick),
[byteorder](https://github.com/BurntSushi/byteorder),
[memchr](https://github.com/BurntSushi/rust-memchr),
[termcolor](https://github.com/BurntSushi/termcolor)
[memchr](https://github.com/BurntSushi/rust-memchr)
```
The MIT License (MIT)
@ -809,65 +786,6 @@ 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.
```
-------------
## MIT License: ansi_term
The following text applies to code linked from these dependencies:
[ansi_term](https://github.com/ogham/rust-ansi-term)
```
The MIT License (MIT)
Copyright (c) 2014 Benjamin Sago
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.
```
-------------
## MIT License: atty
The following text applies to code linked from these dependencies:
[atty](https://github.com/softprops/atty)
```
Copyright (c) 2015-2019 Doug Tangren
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.
```
-------------
## MIT License: bincode
@ -963,36 +881,6 @@ 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.
```
-------------
## MIT License: clap
The following text applies to code linked from these dependencies:
[clap](https://github.com/clap-rs/clap)
```
The MIT License (MIT)
Copyright (c) 2015-2016 Kevin B. Knapp
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.
```
-------------
## MIT License: h2
@ -1241,35 +1129,6 @@ 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.
```
-------------
## MIT License: nom
The following text applies to code linked from these dependencies:
[nom](https://github.com/Geal/nom)
```
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:
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.
```
-------------
## MIT License: openssl-sys
@ -1382,38 +1241,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
```
-------------
## MIT License: strsim
The following text applies to code linked from these dependencies:
[strsim](https://github.com/dguo/strsim-rs)
```
The MIT License (MIT)
Copyright (c) 2015 Danny Guo
Copyright (c) 2016 Titus Wormer <tituswormer@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.
```
-------------
## MIT License: synstructure
@ -1430,36 +1257,6 @@ 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.
```
-------------
## MIT License: textwrap
The following text applies to code linked from these dependencies:
[textwrap](https://github.com/mgeisler/textwrap)
```
MIT License
Copyright (c) 2016 Martin Geisler
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.
```
-------------
## MIT License: tokio, tokio-tls, tokio-util
@ -1589,34 +1386,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
```
-------------
## MIT License: which
The following text applies to code linked from these dependencies:
[which](https://github.com/harryfei/which-rs.git)
```
Copyright (c) 2015 fangyuanziti
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.
```
-------------
## MIT License: winapi
@ -1805,27 +1574,6 @@ express Statement of Purpose.
party to this document and has no duty or obligation with respect to
this CC0 or use of the Work.
```
-------------
## ISC License: libloading
The following text applies to code linked from these dependencies:
[libloading](https://github.com/nagisa/rust_libloading/)
```
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.
```
-------------
## ISC License: ring
@ -1849,44 +1597,6 @@ 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.
```
-------------
## BSD-3-Clause License: bindgen
The following text applies to code linked from these dependencies:
[bindgen](https://github.com/rust-lang/rust-bindgen)
```
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.
```
-------------
## BSD-3-Clause License: protobuf

Просмотреть файл

@ -33,3 +33,6 @@ for manifest in $(cargo metadata --format-version 1 --no-deps | tr -s '"' '\n' |
echo "## no-default-features test for package $package (manifest @ $manifest)"
cargo test --manifest-path "$manifest" --no-default-features ${EXTRA_ARGS[@]:+"${EXTRA_ARGS[@]}"}
done
# Test NSS bindings
cargo run -p systest

Просмотреть файл

@ -49,8 +49,6 @@ RUN apt-get update -qq \
# For `cc` crates; see https://github.com/jwilm/alacritty/issues/1440.
# <TODO: Is this still true?>.
g++ \
# <TODO: Explain why we have this dependency>.
clang \
python3 \
python3-pip \
# taskcluster > mohawk > setuptools.

Просмотреть файл

@ -6,8 +6,6 @@
//! against `nss` but has an `nss`-enabled `sqlcipher` turned on (for example,
//! by a `cargo` feature activated by something else in the workspace).
//! it might need to issue link commands for NSS.
//!
//! It essentially contains the non-bindgen part of nss_sys's build.rs.
use std::{
env,
@ -24,16 +22,30 @@ pub enum LinkingKind {
#[derive(Debug, PartialEq, Clone)]
pub struct NoNssDir;
pub fn link_nss() -> Result<(PathBuf, PathBuf), NoNssDir> {
let (lib_dir, include_dir) = get_nss()?;
println!(
"cargo:rustc-link-search=native={}",
lib_dir.to_string_lossy()
);
println!("cargo:include={}", include_dir.to_string_lossy());
let kind = determine_kind();
link_nss_libs(kind);
Ok((lib_dir, include_dir))
pub fn link_nss() -> Result<(), NoNssDir> {
let is_gecko = env::var_os("MOZ_TOPOBJDIR").is_some();
if !is_gecko {
let (lib_dir, include_dir) = get_nss()?;
println!(
"cargo:rustc-link-search=native={}",
lib_dir.to_string_lossy()
);
println!("cargo:include={}", include_dir.to_string_lossy());
let kind = determine_kind();
link_nss_libs(kind);
} else {
let libs = match env::var("CARGO_CFG_TARGET_OS")
.as_ref()
.map(std::string::String::as_str)
{
Ok("android") | Ok("macos") => vec!["nss3"],
_ => vec!["nssutil3", "nss3", "plds4", "plc4", "nspr4"],
};
for lib in &libs {
println!("cargo:rustc-link-lib=dylib={}", lib);
}
}
Ok(())
}
fn get_nss() -> Result<(PathBuf, PathBuf), NoNssDir> {

Просмотреть файл

@ -9,8 +9,4 @@ license = "MPL-2.0"
crate-type = ["lib"]
[build-dependencies]
bindgen = "0.53.1"
serde = "1.0.104"
serde_derive = "1.0.104"
toml = "0.5.3"
nss_build_common = {path = "../nss_build_common"}

Просмотреть файл

@ -1,6 +1,3 @@
## nss_sys
Low-level NSS bindings for Rust.
Much of the mechanics of the binding definitions are auto-generated from NSS header files using
[bindgen](https://docs.rs/bindgen/); see [bindings.toml](./bindings.toml) and [build.rs](./build.rs) for details.
Low-level NSS bindings for Rust. They are verified using the `systest` crate in the parent directory.

Просмотреть файл

@ -1,138 +0,0 @@
# In this file, every section corresponds to a header file.
# A corresponding binding file will be created in $OUT_DIR.
# We use an indirection for the headers because it's easier
# than figuring out where they are on the gecko worktree
# when generating bindings.
headers = [
"nss_blapit.h",
"nss_keyhi.h",
"nss_keythi.h",
"nss_nss.h",
"nss_pk11pub.h",
"nss_pkcs11t.h",
"nss_prerror.h",
"nss_prtypes.h",
"nss_secasn1t.h",
"nss_seccomon.h",
"nss_secoidt.h",
]
enums = [
"KeyType",
"PK11ObjectType",
"PK11Origin",
"SECItemType",
"SECOidTag",
"SECStatus",
]
functions = [
"NSS_GetVersion",
"NSS_InitContext",
"NSS_SecureMemcmp",
"NSS_VersionCheck",
"PK11_CreateContextBySymKey",
"PK11_CreateGenericObject",
"PK11_Decrypt",
"PK11_Derive",
"PK11_DestroyContext",
"PK11_DestroyGenericObject",
"PK11_DigestBegin",
"PK11_DigestFinal",
"PK11_DigestOp",
"PK11_Encrypt",
"PK11_ExtractKeyValue",
"PK11_FindKeyByKeyID",
"PK11_FreeSlot",
"PK11_FreeSymKey",
"PK11_GenerateKeyPair",
"PK11_GenerateRandom",
"PK11_GetInternalSlot",
"PK11_GetKeyData",
"PK11_HashBuf",
"PK11_ImportSymKey",
"PK11_PubDeriveWithKDF",
"PK11_ReadRawAttribute",
"PORT_FreeArena",
"PR_GetError",
"PR_GetErrorText",
"PR_GetErrorTextLength",
"SECITEM_FreeItem",
"SECKEY_ConvertToPublicKey",
"SECKEY_CopyPublicKey",
"SECKEY_DestroyPrivateKey",
"SECKEY_DestroyPublicKey",
"SECOID_FindOIDByTag",
]
types = [
"CK_ATTRIBUTE",
"CK_ATTRIBUTE_TYPE",
"CK_BBOOL",
"CK_GCM_PARAMS",
"CK_KEY_TYPE",
"CK_MECHANISM_TYPE",
"CK_NSS_HKDFParams",
"CK_OBJECT_CLASS",
"KeyType",
"NSSInitContext",
"NSSInitParameters",
"PK11Context",
"PK11GenericObject",
"PK11ObjectType",
"PK11Origin",
"PK11SlotInfo",
"PK11SymKey",
"PLArenaPool",
"PRBool",
"PRErrorCode",
"PRInt32",
"PRUint32",
"SECItem",
"SECKEYPrivateKey",
"SECKEYPublicKey",
"SECOidData",
"SECOidTag",
"SECStatus",
]
opaque = [
"NSSInitContext",
"NSSInitParameters",
"PK11Context",
"PK11SlotInfo",
"PK11SymKey",
]
variables = [
"AES_BLOCK_SIZE",
"CKA_CLASS",
"CKA_EC_PARAMS",
"CKA_EC_POINT",
"CKA_ENCRYPT",
"CKA_ID",
"CKA_KEY_TYPE",
"CKA_PRIVATE",
"CKA_SENSITIVE",
"CKA_SIGN",
"CKA_TOKEN",
"CKA_VALUE",
"CKA_WRAP",
"CKD_NULL",
"CKK_EC",
"CKM_AES_CBC_PAD",
"CKM_AES_GCM",
"CKM_ECDH1_DERIVE",
"CKM_EC_KEY_PAIR_GEN",
"CKM_NSS_HKDF_SHA256",
"CKM_SHA256_HMAC",
"CKM_SHA512_HMAC",
"CKO_PRIVATE_KEY",
"CK_INVALID_HANDLE",
"EC_POINT_FORM_UNCOMPRESSED",
"HASH_LENGTH_MAX",
"KU_ALL",
"NSS_INIT_FORCEOPEN",
"NSS_INIT_NOCERTDB",
"NSS_INIT_NOMODDB",
"NSS_INIT_OPTIMIZESPACE",
"NSS_INIT_READONLY",
"SEC_ASN1_OBJECT_ID",
"SHA256_LENGTH",
]

Просмотреть файл

@ -1,5 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "pk11pub.h"

Просмотреть файл

@ -1,5 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "pkcs11t.h"

Просмотреть файл

@ -1,5 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "prerror.h"

Просмотреть файл

@ -1,5 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "prtypes.h"

Просмотреть файл

@ -1,5 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "secasn1t.h"

Просмотреть файл

@ -1,5 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "seccomon.h"

Просмотреть файл

@ -1,5 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "secoidt.h"

Просмотреть файл

@ -2,268 +2,6 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use bindgen::Builder;
use serde_derive::Deserialize;
use std::{env, fs, path::PathBuf, process::Command};
use toml;
use nss_build_common::*;
const BINDINGS_DIR: &str = "bindings";
const BINDINGS_CONFIG: &str = "bindings.toml";
// This is the format of a single section of the configuration file.
#[derive(Deserialize)]
struct Bindings {
// The .h header files to generate from.
headers: Vec<String>,
// functions that are explicitly included
functions: Option<Vec<String>>,
// types that are explicitly included
types: Option<Vec<String>>,
// (un-used) functions that are explicitly included
// functions: Option<Vec<String>>,
// variables (and `#define`s) that are explicitly included
variables: Option<Vec<String>>,
// types that should be explicitly marked as opaque
opaque: Option<Vec<String>>,
// enumerations that are turned into a module (without this, the enum is
// mapped using the default, which means that the individual values are
// formed with an underscore as <enum_type>_<enum_value_name>).
enums: Option<Vec<String>>,
// Any item that is specifically excluded; if none of the types, functions,
// or variables fields are specified, everything defined will be mapped,
// so this can be used to limit that.
exclude: Option<Vec<String>>,
}
const DEFAULT_ANDROID_NDK_API_VERSION: &str = "21";
// Set the CLANG_PATH env variable to point to the right clang for the NDK in question.
// Note that this basically needs to be done first thing in main.
fn maybe_setup_ndk_clang_path() {
let target_os = env::var("CARGO_CFG_TARGET_OS").ok();
if target_os.as_ref().map_or(false, |x| x == "android") {
let mut buf = PathBuf::from(env("ANDROID_NDK_ROOT").unwrap());
let ndk_api = env_str("ANDROID_NDK_API_VERSION")
.unwrap_or_else(|| DEFAULT_ANDROID_NDK_API_VERSION.to_owned());
if ndk_api.is_empty() {
println!("cargo:warning=ANDROID_NDK_API_VERSION is unset. Trying unprefixed");
}
let mut target = env::var("TARGET").unwrap();
if target == "armv7-linux-androideabi" {
// See https://developer.android.com/ndk/guides/other_build_systems
// for information on why this is weird and different (or at least,
// confirmation that it's supposed to be that way...)
target = "armv7a-linux-androideabi".to_owned();
}
for &path in &["toolchains", "llvm", "prebuilt", android_host_tag(), "bin"] {
buf.push(path);
}
buf.push(format!("{}{}-clang", target, ndk_api));
env::set_var("CLANG_PATH", buf);
}
}
fn main() {
let is_gecko = env::var_os("MOZ_TOPOBJDIR").is_some();
if is_gecko {
main_gecko();
} else {
main_regular();
}
}
fn main_regular() {
// Note: this has to be first!
maybe_setup_ndk_clang_path();
// 1. NSS linking.
let (_, include_dir) = link_nss().expect("To build nss_sys, NSS_DIR must be set!");
// 2. Bindings.
let config_file = PathBuf::from(BINDINGS_DIR).join(BINDINGS_CONFIG);
println!("cargo:rerun-if-changed={}", config_file.to_str().unwrap());
let config = fs::read_to_string(config_file).expect("unable to read binding configuration");
let bindings: Bindings = toml::from_str(&config).unwrap();
println!(
"cargo:include={}",
include_dir.join("nss").to_str().unwrap()
);
let mut flags: Vec<String> = Vec::new();
flags.push(String::from("-I") + include_dir.join("nss").to_str().unwrap());
build_bindings(&bindings, &flags[..], false);
}
pub fn main_gecko() {
// 1. NSS linking.
let libs = match env::var("CARGO_CFG_TARGET_OS")
.as_ref()
.map(std::string::String::as_str)
{
Ok("android") | Ok("macos") => vec!["nss3"],
_ => vec!["nssutil3", "nss3", "plds4", "plc4", "nspr4"],
};
for lib in &libs {
println!("cargo:rustc-link-lib=dylib={}", lib);
}
let mut flags: Vec<String> = Vec::new();
if let Some(path) = env::var_os("MOZ_TOPOBJDIR").map(PathBuf::from) {
println!(
"cargo:rustc-link-search=native={}",
path.join("dist").join("bin").to_str().unwrap()
);
let nsslib_path = path.clone().join("security").join("nss").join("lib");
println!(
"cargo:rustc-link-search=native={}",
nsslib_path.join("nss").join("nss_nss3").to_str().unwrap()
);
println!(
"cargo:rustc-link-search=native={}",
path.join("config")
.join("external")
.join("nspr")
.join("pr")
.to_str()
.unwrap()
);
let flags_path = path.join("netwerk/socket/neqo/extra-bindgen-flags");
println!("cargo:rerun-if-changed={}", flags_path.to_str().unwrap());
flags = fs::read_to_string(flags_path)
.expect("Failed to read extra-bindgen-flags file")
.split_whitespace()
.map(std::borrow::ToOwned::to_owned)
.collect();
flags.push(String::from("-include"));
flags.push(
path.join("dist")
.join("include")
.join("mozilla-config.h")
.to_str()
.unwrap()
.to_string(),
);
} else {
println!("cargo:warning=MOZ_TOPOBJDIR should be set by default, otherwise the build is not guaranteed to finish.");
}
// 2. Bindings.
let config_file = PathBuf::from(BINDINGS_DIR).join(BINDINGS_CONFIG);
println!("cargo:rerun-if-changed={}", config_file.to_str().unwrap());
let config = fs::read_to_string(config_file).expect("unable to read binding configuration");
let bindings: Bindings = toml::from_str(&config).unwrap();
build_bindings(&bindings, &flags[..], true);
}
fn build_bindings(bindings: &Bindings, flags: &[String], is_gecko: bool) {
let out = PathBuf::from(env::var("OUT_DIR").unwrap()).join("nss_bindings.rs");
let mut builder = Builder::default().generate_comments(false);
for h in bindings.headers.iter().cloned() {
let header = PathBuf::from(BINDINGS_DIR).join(h);
let header = header.to_str().unwrap();
println!("cargo:rerun-if-changed={}", header);
builder = builder.header(header);
}
// Fix our cross-compilation include directories.
if !is_gecko {
builder = fix_include_dirs(builder);
}
builder = builder.clang_args(flags);
// Apply the configuration.
let empty: Vec<String> = vec![];
for v in bindings.types.as_ref().unwrap_or_else(|| &empty).iter() {
builder = builder.whitelist_type(v);
}
for v in bindings.functions.as_ref().unwrap_or_else(|| &empty).iter() {
builder = builder.whitelist_function(v);
}
for v in bindings.variables.as_ref().unwrap_or_else(|| &empty).iter() {
builder = builder.whitelist_var(v);
}
for v in bindings.exclude.as_ref().unwrap_or_else(|| &empty).iter() {
builder = builder.blacklist_item(v);
}
for v in bindings.opaque.as_ref().unwrap_or_else(|| &empty).iter() {
builder = builder.opaque_type(v);
}
for v in bindings.enums.as_ref().unwrap_or_else(|| &empty).iter() {
builder = builder.constified_enum_module(v);
}
let bindings = builder.generate().expect("unable to generate bindings");
bindings
.write_to_file(out)
.expect("couldn't write bindings");
}
fn fix_include_dirs(mut builder: Builder) -> Builder {
let target_os = env::var("CARGO_CFG_TARGET_OS");
let target_arch = env::var("CARGO_CFG_TARGET_ARCH");
match target_os.as_ref().map(|x| &**x) {
Ok("macos") => {
// Cheap and dirty way to detect that we are cross-compiling.
if env::var_os("CI").is_some() {
builder = builder
.detect_include_paths(false)
.clang_arg("-isysroot/tmp/MacOSX10.11.sdk");
}
}
Ok("windows") => {
if env::var_os("CI").is_some() {
builder = builder.clang_arg("-D_M_X64");
}
}
Ok("ios") => {
let sdk_root;
match target_arch.as_ref().map(|x| &**x).unwrap() {
"aarch64" => {
sdk_root = get_ios_sdk_root("iphoneos");
builder = builder.clang_arg("--target=arm64-apple-ios") // See https://github.com/rust-lang/rust-bindgen/issues/1211
}
"x86_64" => {
sdk_root = get_ios_sdk_root("iphonesimulator");
}
_ => panic!("Unknown iOS architecture."),
}
builder = builder
.detect_include_paths(false)
.clang_arg(format!("-isysroot{}", &sdk_root));
}
_ => {}
}
builder
}
fn android_host_tag() -> &'static str {
// cfg! target_os actually refers to the host environment in this case (build script).
#[cfg(target_os = "macos")]
return "darwin-x86_64";
#[cfg(target_os = "linux")]
return "linux-x86_64";
#[cfg(target_os = "windows")]
return "windows-x86_64";
}
fn get_ios_sdk_root(sdk_name: &str) -> String {
let output = Command::new("xcrun")
.arg("--show-sdk-path")
.arg("-sdk")
.arg(sdk_name)
.output()
.unwrap();
if output.status.success() {
String::from_utf8(output.stdout).unwrap().trim().to_string()
} else {
panic!("Could not get iOS SDK root!")
}
nss_build_common::link_nss().unwrap();
}

Просмотреть файл

@ -1,5 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
include!(concat!(env!("OUT_DIR"), "/nss_bindings.rs"));

Просмотреть файл

@ -0,0 +1,8 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
pub const EC_POINT_FORM_UNCOMPRESSED: u32 = 4;
pub const SHA256_LENGTH: u32 = 32;
pub const HASH_LENGTH_MAX: u32 = 64;
pub const AES_BLOCK_SIZE: u32 = 16;

Просмотреть файл

@ -0,0 +1,12 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use crate::*;
extern "C" {
pub fn SECKEY_CopyPublicKey(pubKey: *const SECKEYPublicKey) -> *mut SECKEYPublicKey;
pub fn SECKEY_ConvertToPublicKey(privateKey: *mut SECKEYPrivateKey) -> *mut SECKEYPublicKey;
pub fn SECKEY_DestroyPrivateKey(key: *mut SECKEYPrivateKey);
pub fn SECKEY_DestroyPublicKey(key: *mut SECKEYPublicKey);
}

Просмотреть файл

@ -0,0 +1,140 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use crate::*;
use std::os::raw::{c_int, c_uchar, c_void};
pub type SECKEYPublicKey = SECKEYPublicKeyStr;
#[repr(C)]
pub struct SECKEYPublicKeyStr {
pub arena: *mut PLArenaPool,
pub keyType: u32, /* KeyType */
pub pkcs11Slot: *mut PK11SlotInfo,
pub pkcs11ID: CK_OBJECT_HANDLE,
pub u: SECKEYPublicKeyStr_u,
}
#[repr(C)]
pub union SECKEYPublicKeyStr_u {
pub rsa: SECKEYRSAPublicKey,
pub dsa: SECKEYDSAPublicKey,
pub dh: SECKEYDHPublicKey,
pub kea: SECKEYKEAPublicKey,
pub fortezza: SECKEYFortezzaPublicKey,
pub ec: SECKEYECPublicKey,
}
pub type SECKEYPrivateKey = SECKEYPrivateKeyStr;
#[repr(C)]
pub struct SECKEYPrivateKeyStr {
pub arena: *mut PLArenaPool,
pub keyType: u32, /* KeyType */
pub pkcs11Slot: *mut PK11SlotInfo,
pub pkcs11ID: CK_OBJECT_HANDLE,
pub pkcs11IsTemp: PRBool,
pub wincx: *mut c_void,
pub staticflags: PRUint32,
}
#[repr(u32)]
pub enum KeyType {
nullKey = 0,
rsaKey = 1,
dsaKey = 2,
fortezzaKey = 3,
dhKey = 4,
keaKey = 5,
ecKey = 6,
rsaPssKey = 7,
rsaOaepKey = 8,
}
pub type SECKEYRSAPublicKey = SECKEYRSAPublicKeyStr;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECKEYRSAPublicKeyStr {
pub arena: *mut PLArenaPool,
pub modulus: SECItem,
pub publicExponent: SECItem,
}
pub type SECKEYDSAPublicKey = SECKEYDSAPublicKeyStr;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECKEYDSAPublicKeyStr {
pub params: SECKEYPQGParams,
pub publicValue: SECItem,
}
pub type SECKEYPQGParams = SECKEYPQGParamsStr;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECKEYPQGParamsStr {
pub arena: *mut PLArenaPool,
pub prime: SECItem,
pub subPrime: SECItem,
pub base: SECItem,
}
pub type SECKEYDHPublicKey = SECKEYDHPublicKeyStr;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECKEYDHPublicKeyStr {
pub arena: *mut PLArenaPool,
pub prime: SECItem,
pub base: SECItem,
pub publicValue: SECItem,
}
pub type SECKEYKEAPublicKey = SECKEYKEAPublicKeyStr;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECKEYKEAPublicKeyStr {
pub params: SECKEYKEAParams,
pub publicValue: SECItem,
}
pub type SECKEYKEAParams = SECKEYKEAParamsStr;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECKEYKEAParamsStr {
pub arena: *mut PLArenaPool,
pub hash: SECItem,
}
pub type SECKEYFortezzaPublicKey = SECKEYFortezzaPublicKeyStr;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECKEYFortezzaPublicKeyStr {
pub KEAversion: c_int,
pub DSSversion: c_int,
pub KMID: [c_uchar; 8usize],
pub clearance: SECItem,
pub KEApriviledge: SECItem,
pub DSSpriviledge: SECItem,
pub KEAKey: SECItem,
pub DSSKey: SECItem,
pub params: SECKEYPQGParams,
pub keaParams: SECKEYPQGParams,
}
pub type SECKEYECPublicKey = SECKEYECPublicKeyStr;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECKEYECPublicKeyStr {
pub DEREncodedParams: SECKEYECParams,
pub size: c_int,
pub publicValue: SECItem,
pub encoding: u32, /* ECPointEncoding */
}
pub type SECKEYECParams = SECItem;
#[repr(u32)]
#[derive(Copy, Clone)]
pub enum ECPointEncoding {
ECPoint_Uncompressed = 0,
ECPoint_XOnly = 1,
ECPoint_Undefined = 2,
}

Просмотреть файл

@ -0,0 +1,38 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
mod blapit;
pub use blapit::*;
mod keyhi;
pub use keyhi::*;
mod keythi;
pub use keythi::*;
mod nss;
pub use nss::*;
mod pk11pub;
pub use pk11pub::*;
mod pkcs11n;
pub use pkcs11n::*;
mod pkcs11t;
pub use pkcs11t::*;
mod plarena;
pub use plarena::*;
mod prerror;
pub use prerror::*;
mod prtypes;
pub use prtypes::*;
mod secasn1t;
pub use secasn1t::*;
mod seccomon;
pub use seccomon::*;
mod secitem;
pub use secitem::*;
mod secmodt;
pub use secmodt::*;
mod secoid;
pub use secoid::*;
mod secoidt;
pub use secoidt::*;
mod secport;
pub use secport::*;

Просмотреть файл

@ -0,0 +1,28 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use crate::*;
use std::os::raw::c_char;
extern "C" {
pub fn NSS_VersionCheck(importedVersion: *const c_char) -> PRBool;
pub fn NSS_InitContext(
configdir: *const c_char,
certPrefix: *const c_char,
keyPrefix: *const c_char,
secmodName: *const c_char,
initParams: *mut NSSInitParameters,
flags: PRUint32,
) -> *mut NSSInitContext;
}
pub const NSS_INIT_READONLY: u32 = 1;
pub const NSS_INIT_NOCERTDB: u32 = 2;
pub const NSS_INIT_NOMODDB: u32 = 4;
pub const NSS_INIT_FORCEOPEN: u32 = 8;
pub const NSS_INIT_OPTIMIZESPACE: u32 = 32;
// Opaque types
pub type NSSInitContext = u8;
pub type NSSInitParameters = [u64; 10usize];

Просмотреть файл

@ -0,0 +1,113 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
pub use crate::*;
use std::os::raw::{c_int, c_uchar, c_uint, c_void};
extern "C" {
pub fn PK11_FreeSlot(slot: *mut PK11SlotInfo);
pub fn PK11_GetInternalSlot() -> *mut PK11SlotInfo;
pub fn PK11_GenerateRandom(data: *mut c_uchar, len: c_int) -> SECStatus;
pub fn PK11_FreeSymKey(key: *mut PK11SymKey);
pub fn PK11_ImportSymKey(
slot: *mut PK11SlotInfo,
type_: CK_MECHANISM_TYPE,
origin: u32, /* PK11Origin */
operation: CK_ATTRIBUTE_TYPE,
key: *mut SECItem,
wincx: *mut c_void,
) -> *mut PK11SymKey;
pub fn PK11_Derive(
baseKey: *mut PK11SymKey,
mechanism: CK_MECHANISM_TYPE,
param: *mut SECItem,
target: CK_MECHANISM_TYPE,
operation: CK_ATTRIBUTE_TYPE,
keySize: c_int,
) -> *mut PK11SymKey;
pub fn PK11_PubDeriveWithKDF(
privKey: *mut SECKEYPrivateKey,
pubKey: *mut SECKEYPublicKey,
isSender: PRBool,
randomA: *mut SECItem,
randomB: *mut SECItem,
derive: CK_MECHANISM_TYPE,
target: CK_MECHANISM_TYPE,
operation: CK_ATTRIBUTE_TYPE,
keySize: c_int,
kdf: CK_ULONG,
sharedData: *mut SECItem,
wincx: *mut c_void,
) -> *mut PK11SymKey;
pub fn PK11_ExtractKeyValue(symKey: *mut PK11SymKey) -> SECStatus;
pub fn PK11_GetKeyData(symKey: *mut PK11SymKey) -> *mut SECItem;
pub fn PK11_GenerateKeyPair(
slot: *mut PK11SlotInfo,
type_: CK_MECHANISM_TYPE,
param: *mut c_void,
pubk: *mut *mut SECKEYPublicKey,
isPerm: PRBool,
isSensitive: PRBool,
wincx: *mut c_void,
) -> *mut SECKEYPrivateKey;
pub fn PK11_FindKeyByKeyID(
slot: *mut PK11SlotInfo,
keyID: *mut SECItem,
wincx: *mut c_void,
) -> *mut SECKEYPrivateKey;
pub fn PK11_Decrypt(
symkey: *mut PK11SymKey,
mechanism: CK_MECHANISM_TYPE,
param: *mut SECItem,
out: *mut c_uchar,
outLen: *mut c_uint,
maxLen: c_uint,
enc: *const c_uchar,
encLen: c_uint,
) -> SECStatus;
pub fn PK11_Encrypt(
symKey: *mut PK11SymKey,
mechanism: CK_MECHANISM_TYPE,
param: *mut SECItem,
out: *mut c_uchar,
outLen: *mut c_uint,
maxLen: c_uint,
data: *const c_uchar,
dataLen: c_uint,
) -> SECStatus;
pub fn PK11_DestroyContext(context: *mut PK11Context, freeit: PRBool);
pub fn PK11_CreateContextBySymKey(
type_: CK_MECHANISM_TYPE,
operation: CK_ATTRIBUTE_TYPE,
symKey: *mut PK11SymKey,
param: *mut SECItem,
) -> *mut PK11Context;
pub fn PK11_DigestBegin(cx: *mut PK11Context) -> SECStatus;
pub fn PK11_HashBuf(
hashAlg: u32, /* SECOidTag */
out: *mut c_uchar,
in_: *const c_uchar,
len: PRInt32,
) -> SECStatus;
pub fn PK11_DigestOp(context: *mut PK11Context, in_: *const c_uchar, len: c_uint) -> SECStatus;
pub fn PK11_DigestFinal(
context: *mut PK11Context,
data: *mut c_uchar,
outLen: *mut c_uint,
length: c_uint,
) -> SECStatus;
pub fn PK11_DestroyGenericObject(object: *mut PK11GenericObject) -> SECStatus;
pub fn PK11_CreateGenericObject(
slot: *mut PK11SlotInfo,
pTemplate: *const CK_ATTRIBUTE,
count: c_int,
token: PRBool,
) -> *mut PK11GenericObject;
pub fn PK11_ReadRawAttribute(
type_: u32, /* PK11ObjectType */
object: *mut c_void,
attr: CK_ATTRIBUTE_TYPE,
item: *mut SECItem,
) -> SECStatus;
}

Просмотреть файл

@ -0,0 +1,25 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
pub use crate::*;
pub const CKM_NSS_HKDF_SHA256: u32 = 3_461_563_220; // (CKM_NSS + 4)
#[repr(C)]
pub struct CK_GCM_PARAMS {
pub pIv: CK_BYTE_PTR,
pub ulIvLen: CK_ULONG,
pub pAAD: CK_BYTE_PTR,
pub ulAADLen: CK_ULONG,
pub ulTagBits: CK_ULONG,
}
#[repr(C)]
pub struct CK_NSS_HKDFParams {
pub bExtract: CK_BBOOL,
pub pSalt: CK_BYTE_PTR,
pub ulSaltLen: CK_ULONG,
pub bExpand: CK_BBOOL,
pub pInfo: CK_BYTE_PTR,
pub ulInfoLen: CK_ULONG,
}

Просмотреть файл

@ -0,0 +1,48 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use std::os::raw::{c_uchar, c_ulong, c_void};
pub const CK_TRUE: CK_BBOOL = 1;
pub const CK_FALSE: CK_BBOOL = 0;
pub type CK_BYTE = c_uchar;
pub type CK_BBOOL = CK_BYTE;
pub type CK_ULONG = c_ulong;
pub type CK_BYTE_PTR = *mut CK_BYTE;
pub type CK_VOID_PTR = *mut c_void;
pub type CK_OBJECT_HANDLE = CK_ULONG;
pub type CK_OBJECT_CLASS = CK_ULONG;
pub type CK_KEY_TYPE = CK_ULONG;
pub type CK_ATTRIBUTE_TYPE = CK_ULONG;
#[repr(C)]
#[derive(Clone, Copy)]
pub struct CK_ATTRIBUTE {
pub type_: CK_ATTRIBUTE_TYPE,
pub pValue: CK_VOID_PTR,
pub ulValueLen: CK_ULONG,
}
pub type CK_MECHANISM_TYPE = CK_ULONG;
pub const CK_INVALID_HANDLE: u32 = 0;
pub const CKO_PRIVATE_KEY: u32 = 3;
pub const CKK_EC: u32 = 3;
pub const CKA_CLASS: u32 = 0;
pub const CKA_TOKEN: u32 = 1;
pub const CKA_PRIVATE: u32 = 2;
pub const CKA_VALUE: u32 = 17;
pub const CKA_KEY_TYPE: u32 = 256;
pub const CKA_ID: u32 = 258;
pub const CKA_SENSITIVE: u32 = 259;
pub const CKA_ENCRYPT: u32 = 260;
pub const CKA_WRAP: u32 = 262;
pub const CKA_SIGN: u32 = 264;
pub const CKA_EC_PARAMS: u32 = 384;
pub const CKA_EC_POINT: u32 = 385;
pub const CKM_SHA256_HMAC: u32 = 593;
pub const CKM_SHA512_HMAC: u32 = 625;
pub const CKM_EC_KEY_PAIR_GEN: u32 = 4160;
pub const CKM_ECDH1_DERIVE: u32 = 4176;
pub const CKM_AES_CBC_PAD: u32 = 4229;
pub const CKM_AES_GCM: u32 = 4231;
pub const CKD_NULL: u32 = 1;

Просмотреть файл

@ -0,0 +1,22 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
pub use crate::*;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct PLArena {
pub next: *mut PLArena,
pub base: PRUword,
pub limit: PRUword,
pub avail: PRUword,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct PLArenaPool {
pub first: PLArena,
pub current: *mut PLArena,
pub arenasize: PRUint32,
pub mask: PRUword,
}

Просмотреть файл

@ -0,0 +1,14 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
pub use crate::*;
use std::os::raw::c_char;
extern "C" {
pub fn PR_GetError() -> PRErrorCode;
pub fn PR_GetErrorTextLength() -> PRInt32;
pub fn PR_GetErrorText(text: *mut c_char) -> PRInt32;
}
pub type PRErrorCode = PRInt32;

Просмотреть файл

@ -0,0 +1,13 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use std::os::raw::{c_int, c_uint, c_ulong};
pub type PRIntn = c_int;
pub type PRBool = PRIntn;
pub type PRUword = c_ulong;
pub type PRInt32 = c_int;
pub type PRUint32 = c_uint;
pub const PR_FALSE: PRBool = 0;
pub const PR_TRUE: PRBool = 1;

Просмотреть файл

@ -2,4 +2,4 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nss.h"
pub const SEC_ASN1_OBJECT_ID: u32 = 6;

Просмотреть файл

@ -0,0 +1,43 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use std::os::raw::{c_uchar, c_uint};
#[repr(u32)]
pub enum SECItemType {
siBuffer = 0,
siClearDataBuffer = 1,
siCipherDataBuffer = 2,
siDERCertBuffer = 3,
siEncodedCertBuffer = 4,
siDERNameBuffer = 5,
siEncodedNameBuffer = 6,
siAsciiNameString = 7,
siAsciiString = 8,
siDEROID = 9,
siUnsignedInteger = 10,
siUTCTime = 11,
siGeneralizedTime = 12,
siVisibleString = 13,
siUTF8String = 14,
siBMPString = 15,
}
pub type SECItem = SECItemStr;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct SECItemStr {
pub type_: u32, /* SECItemType */
pub data: *mut c_uchar,
pub len: c_uint,
}
#[repr(i32)]
#[derive(PartialEq)]
pub enum _SECStatus {
SECWouldBlock = -2,
SECFailure = -1,
SECSuccess = 0,
}
pub use _SECStatus as SECStatus;

Просмотреть файл

@ -2,4 +2,8 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "blapit.h"
pub use crate::*;
extern "C" {
pub fn SECITEM_FreeItem(zap: *mut SECItem, freeit: PRBool);
}

Просмотреть файл

@ -0,0 +1,33 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
// Opaque pointers as these types are giant.
pub type PK11SlotInfo = u8;
pub type PK11SymKey = u8;
pub type PK11Context = u8;
#[repr(u32)]
pub enum PK11Origin {
PK11_OriginNULL = 0,
PK11_OriginDerive = 1,
PK11_OriginGenerated = 2,
PK11_OriginFortezzaHack = 3,
PK11_OriginUnwrap = 4,
}
#[repr(u32)]
pub enum PK11ObjectType {
PK11_TypeGeneric = 0,
PK11_TypePrivKey = 1,
PK11_TypePubKey = 2,
PK11_TypeCert = 3,
PK11_TypeSymKey = 4,
}
// #[repr(C)]
// #[derive(Copy, Clone)]
// pub struct PK11GenericObjectStr {
// _unused: [u8; 0],
// }
pub type PK11GenericObject = u8;

Просмотреть файл

@ -2,4 +2,8 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "keyhi.h"
pub use crate::*;
extern "C" {
pub fn SECOID_FindOIDByTag(tagnum: u32 /* SECOidTag */) -> *mut SECOidData;
}

Просмотреть файл

@ -0,0 +1,392 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
pub use crate::*;
use std::os::raw::{c_char, c_ulong};
#[repr(C)]
#[derive(Copy, Clone)]
pub struct SECOidDataStr {
pub oid: SECItem,
pub offset: u32, /* SECOidTag */
pub desc: *const c_char,
pub mechanism: c_ulong,
pub supportedExtension: u32, /* SECSupportExtenTag */
}
pub type SECOidData = SECOidDataStr;
pub enum SECSupportExtenTag {
INVALID_CERT_EXTENSION = 0,
UNSUPPORTED_CERT_EXTENSION = 1,
SUPPORTED_CERT_EXTENSION = 2,
}
#[repr(u32)]
pub enum SECOidTag {
SEC_OID_UNKNOWN = 0,
SEC_OID_MD2 = 1,
SEC_OID_MD4 = 2,
SEC_OID_MD5 = 3,
SEC_OID_SHA1 = 4,
SEC_OID_RC2_CBC = 5,
SEC_OID_RC4 = 6,
SEC_OID_DES_EDE3_CBC = 7,
SEC_OID_RC5_CBC_PAD = 8,
SEC_OID_DES_ECB = 9,
SEC_OID_DES_CBC = 10,
SEC_OID_DES_OFB = 11,
SEC_OID_DES_CFB = 12,
SEC_OID_DES_MAC = 13,
SEC_OID_DES_EDE = 14,
SEC_OID_ISO_SHA_WITH_RSA_SIGNATURE = 15,
SEC_OID_PKCS1_RSA_ENCRYPTION = 16,
SEC_OID_PKCS1_MD2_WITH_RSA_ENCRYPTION = 17,
SEC_OID_PKCS1_MD4_WITH_RSA_ENCRYPTION = 18,
SEC_OID_PKCS1_MD5_WITH_RSA_ENCRYPTION = 19,
SEC_OID_PKCS1_SHA1_WITH_RSA_ENCRYPTION = 20,
SEC_OID_PKCS5_PBE_WITH_MD2_AND_DES_CBC = 21,
SEC_OID_PKCS5_PBE_WITH_MD5_AND_DES_CBC = 22,
SEC_OID_PKCS5_PBE_WITH_SHA1_AND_DES_CBC = 23,
SEC_OID_PKCS7 = 24,
SEC_OID_PKCS7_DATA = 25,
SEC_OID_PKCS7_SIGNED_DATA = 26,
SEC_OID_PKCS7_ENVELOPED_DATA = 27,
SEC_OID_PKCS7_SIGNED_ENVELOPED_DATA = 28,
SEC_OID_PKCS7_DIGESTED_DATA = 29,
SEC_OID_PKCS7_ENCRYPTED_DATA = 30,
SEC_OID_PKCS9_EMAIL_ADDRESS = 31,
SEC_OID_PKCS9_UNSTRUCTURED_NAME = 32,
SEC_OID_PKCS9_CONTENT_TYPE = 33,
SEC_OID_PKCS9_MESSAGE_DIGEST = 34,
SEC_OID_PKCS9_SIGNING_TIME = 35,
SEC_OID_PKCS9_COUNTER_SIGNATURE = 36,
SEC_OID_PKCS9_CHALLENGE_PASSWORD = 37,
SEC_OID_PKCS9_UNSTRUCTURED_ADDRESS = 38,
SEC_OID_PKCS9_EXTENDED_CERTIFICATE_ATTRIBUTES = 39,
SEC_OID_PKCS9_SMIME_CAPABILITIES = 40,
SEC_OID_AVA_COMMON_NAME = 41,
SEC_OID_AVA_COUNTRY_NAME = 42,
SEC_OID_AVA_LOCALITY = 43,
SEC_OID_AVA_STATE_OR_PROVINCE = 44,
SEC_OID_AVA_ORGANIZATION_NAME = 45,
SEC_OID_AVA_ORGANIZATIONAL_UNIT_NAME = 46,
SEC_OID_AVA_DN_QUALIFIER = 47,
SEC_OID_AVA_DC = 48,
SEC_OID_NS_TYPE_GIF = 49,
SEC_OID_NS_TYPE_JPEG = 50,
SEC_OID_NS_TYPE_URL = 51,
SEC_OID_NS_TYPE_HTML = 52,
SEC_OID_NS_TYPE_CERT_SEQUENCE = 53,
SEC_OID_MISSI_KEA_DSS_OLD = 54,
SEC_OID_MISSI_DSS_OLD = 55,
SEC_OID_MISSI_KEA_DSS = 56,
SEC_OID_MISSI_DSS = 57,
SEC_OID_MISSI_KEA = 58,
SEC_OID_MISSI_ALT_KEA = 59,
SEC_OID_NS_CERT_EXT_NETSCAPE_OK = 60,
SEC_OID_NS_CERT_EXT_ISSUER_LOGO = 61,
SEC_OID_NS_CERT_EXT_SUBJECT_LOGO = 62,
SEC_OID_NS_CERT_EXT_CERT_TYPE = 63,
SEC_OID_NS_CERT_EXT_BASE_URL = 64,
SEC_OID_NS_CERT_EXT_REVOCATION_URL = 65,
SEC_OID_NS_CERT_EXT_CA_REVOCATION_URL = 66,
SEC_OID_NS_CERT_EXT_CA_CRL_URL = 67,
SEC_OID_NS_CERT_EXT_CA_CERT_URL = 68,
SEC_OID_NS_CERT_EXT_CERT_RENEWAL_URL = 69,
SEC_OID_NS_CERT_EXT_CA_POLICY_URL = 70,
SEC_OID_NS_CERT_EXT_HOMEPAGE_URL = 71,
SEC_OID_NS_CERT_EXT_ENTITY_LOGO = 72,
SEC_OID_NS_CERT_EXT_USER_PICTURE = 73,
SEC_OID_NS_CERT_EXT_SSL_SERVER_NAME = 74,
SEC_OID_NS_CERT_EXT_COMMENT = 75,
SEC_OID_NS_CERT_EXT_LOST_PASSWORD_URL = 76,
SEC_OID_NS_CERT_EXT_CERT_RENEWAL_TIME = 77,
SEC_OID_NS_KEY_USAGE_GOVT_APPROVED = 78,
SEC_OID_X509_SUBJECT_DIRECTORY_ATTR = 79,
SEC_OID_X509_SUBJECT_KEY_ID = 80,
SEC_OID_X509_KEY_USAGE = 81,
SEC_OID_X509_PRIVATE_KEY_USAGE_PERIOD = 82,
SEC_OID_X509_SUBJECT_ALT_NAME = 83,
SEC_OID_X509_ISSUER_ALT_NAME = 84,
SEC_OID_X509_BASIC_CONSTRAINTS = 85,
SEC_OID_X509_NAME_CONSTRAINTS = 86,
SEC_OID_X509_CRL_DIST_POINTS = 87,
SEC_OID_X509_CERTIFICATE_POLICIES = 88,
SEC_OID_X509_POLICY_MAPPINGS = 89,
SEC_OID_X509_POLICY_CONSTRAINTS = 90,
SEC_OID_X509_AUTH_KEY_ID = 91,
SEC_OID_X509_EXT_KEY_USAGE = 92,
SEC_OID_X509_AUTH_INFO_ACCESS = 93,
SEC_OID_X509_CRL_NUMBER = 94,
SEC_OID_X509_REASON_CODE = 95,
SEC_OID_X509_INVALID_DATE = 96,
SEC_OID_X500_RSA_ENCRYPTION = 97,
SEC_OID_RFC1274_UID = 98,
SEC_OID_RFC1274_MAIL = 99,
SEC_OID_PKCS12 = 100,
SEC_OID_PKCS12_MODE_IDS = 101,
SEC_OID_PKCS12_ESPVK_IDS = 102,
SEC_OID_PKCS12_BAG_IDS = 103,
SEC_OID_PKCS12_CERT_BAG_IDS = 104,
SEC_OID_PKCS12_OIDS = 105,
SEC_OID_PKCS12_PBE_IDS = 106,
SEC_OID_PKCS12_SIGNATURE_IDS = 107,
SEC_OID_PKCS12_ENVELOPING_IDS = 108,
SEC_OID_PKCS12_PKCS8_KEY_SHROUDING = 109,
SEC_OID_PKCS12_KEY_BAG_ID = 110,
SEC_OID_PKCS12_CERT_AND_CRL_BAG_ID = 111,
SEC_OID_PKCS12_SECRET_BAG_ID = 112,
SEC_OID_PKCS12_X509_CERT_CRL_BAG = 113,
SEC_OID_PKCS12_SDSI_CERT_BAG = 114,
SEC_OID_PKCS12_PBE_WITH_SHA1_AND_128_BIT_RC4 = 115,
SEC_OID_PKCS12_PBE_WITH_SHA1_AND_40_BIT_RC4 = 116,
SEC_OID_PKCS12_PBE_WITH_SHA1_AND_TRIPLE_DES_CBC = 117,
SEC_OID_PKCS12_PBE_WITH_SHA1_AND_128_BIT_RC2_CBC = 118,
SEC_OID_PKCS12_PBE_WITH_SHA1_AND_40_BIT_RC2_CBC = 119,
SEC_OID_PKCS12_RSA_ENCRYPTION_WITH_128_BIT_RC4 = 120,
SEC_OID_PKCS12_RSA_ENCRYPTION_WITH_40_BIT_RC4 = 121,
SEC_OID_PKCS12_RSA_ENCRYPTION_WITH_TRIPLE_DES = 122,
SEC_OID_PKCS12_RSA_SIGNATURE_WITH_SHA1_DIGEST = 123,
SEC_OID_ANSIX9_DSA_SIGNATURE = 124,
SEC_OID_ANSIX9_DSA_SIGNATURE_WITH_SHA1_DIGEST = 125,
SEC_OID_BOGUS_DSA_SIGNATURE_WITH_SHA1_DIGEST = 126,
SEC_OID_VERISIGN_USER_NOTICES = 127,
SEC_OID_PKIX_CPS_POINTER_QUALIFIER = 128,
SEC_OID_PKIX_USER_NOTICE_QUALIFIER = 129,
SEC_OID_PKIX_OCSP = 130,
SEC_OID_PKIX_OCSP_BASIC_RESPONSE = 131,
SEC_OID_PKIX_OCSP_NONCE = 132,
SEC_OID_PKIX_OCSP_CRL = 133,
SEC_OID_PKIX_OCSP_RESPONSE = 134,
SEC_OID_PKIX_OCSP_NO_CHECK = 135,
SEC_OID_PKIX_OCSP_ARCHIVE_CUTOFF = 136,
SEC_OID_PKIX_OCSP_SERVICE_LOCATOR = 137,
SEC_OID_PKIX_REGCTRL_REGTOKEN = 138,
SEC_OID_PKIX_REGCTRL_AUTHENTICATOR = 139,
SEC_OID_PKIX_REGCTRL_PKIPUBINFO = 140,
SEC_OID_PKIX_REGCTRL_PKI_ARCH_OPTIONS = 141,
SEC_OID_PKIX_REGCTRL_OLD_CERT_ID = 142,
SEC_OID_PKIX_REGCTRL_PROTOCOL_ENC_KEY = 143,
SEC_OID_PKIX_REGINFO_UTF8_PAIRS = 144,
SEC_OID_PKIX_REGINFO_CERT_REQUEST = 145,
SEC_OID_EXT_KEY_USAGE_SERVER_AUTH = 146,
SEC_OID_EXT_KEY_USAGE_CLIENT_AUTH = 147,
SEC_OID_EXT_KEY_USAGE_CODE_SIGN = 148,
SEC_OID_EXT_KEY_USAGE_EMAIL_PROTECT = 149,
SEC_OID_EXT_KEY_USAGE_TIME_STAMP = 150,
SEC_OID_OCSP_RESPONDER = 151,
SEC_OID_NETSCAPE_SMIME_KEA = 152,
SEC_OID_FORTEZZA_SKIPJACK = 153,
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_128_BIT_RC4 = 154,
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_40_BIT_RC4 = 155,
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_3KEY_TRIPLE_DES_CBC = 156,
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_2KEY_TRIPLE_DES_CBC = 157,
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_128_BIT_RC2_CBC = 158,
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_40_BIT_RC2_CBC = 159,
SEC_OID_PKCS12_SAFE_CONTENTS_ID = 160,
SEC_OID_PKCS12_PKCS8_SHROUDED_KEY_BAG_ID = 161,
SEC_OID_PKCS12_V1_KEY_BAG_ID = 162,
SEC_OID_PKCS12_V1_PKCS8_SHROUDED_KEY_BAG_ID = 163,
SEC_OID_PKCS12_V1_CERT_BAG_ID = 164,
SEC_OID_PKCS12_V1_CRL_BAG_ID = 165,
SEC_OID_PKCS12_V1_SECRET_BAG_ID = 166,
SEC_OID_PKCS12_V1_SAFE_CONTENTS_BAG_ID = 167,
SEC_OID_PKCS9_X509_CERT = 168,
SEC_OID_PKCS9_SDSI_CERT = 169,
SEC_OID_PKCS9_X509_CRL = 170,
SEC_OID_PKCS9_FRIENDLY_NAME = 171,
SEC_OID_PKCS9_LOCAL_KEY_ID = 172,
SEC_OID_BOGUS_KEY_USAGE = 173,
SEC_OID_X942_DIFFIE_HELMAN_KEY = 174,
SEC_OID_NETSCAPE_NICKNAME = 175,
SEC_OID_NETSCAPE_RECOVERY_REQUEST = 176,
SEC_OID_CERT_RENEWAL_LOCATOR = 177,
SEC_OID_NS_CERT_EXT_SCOPE_OF_USE = 178,
SEC_OID_CMS_EPHEMERAL_STATIC_DIFFIE_HELLMAN = 179,
SEC_OID_CMS_3DES_KEY_WRAP = 180,
SEC_OID_CMS_RC2_KEY_WRAP = 181,
SEC_OID_SMIME_ENCRYPTION_KEY_PREFERENCE = 182,
SEC_OID_AES_128_ECB = 183,
SEC_OID_AES_128_CBC = 184,
SEC_OID_AES_192_ECB = 185,
SEC_OID_AES_192_CBC = 186,
SEC_OID_AES_256_ECB = 187,
SEC_OID_AES_256_CBC = 188,
SEC_OID_SDN702_DSA_SIGNATURE = 189,
SEC_OID_MS_SMIME_ENCRYPTION_KEY_PREFERENCE = 190,
SEC_OID_SHA256 = 191,
SEC_OID_SHA384 = 192,
SEC_OID_SHA512 = 193,
SEC_OID_PKCS1_SHA256_WITH_RSA_ENCRYPTION = 194,
SEC_OID_PKCS1_SHA384_WITH_RSA_ENCRYPTION = 195,
SEC_OID_PKCS1_SHA512_WITH_RSA_ENCRYPTION = 196,
SEC_OID_AES_128_KEY_WRAP = 197,
SEC_OID_AES_192_KEY_WRAP = 198,
SEC_OID_AES_256_KEY_WRAP = 199,
SEC_OID_ANSIX962_EC_PUBLIC_KEY = 200,
SEC_OID_ANSIX962_ECDSA_SHA1_SIGNATURE = 201,
SEC_OID_ANSIX962_EC_PRIME192V1 = 202,
SEC_OID_ANSIX962_EC_PRIME192V2 = 203,
SEC_OID_ANSIX962_EC_PRIME192V3 = 204,
SEC_OID_ANSIX962_EC_PRIME239V1 = 205,
SEC_OID_ANSIX962_EC_PRIME239V2 = 206,
SEC_OID_ANSIX962_EC_PRIME239V3 = 207,
SEC_OID_ANSIX962_EC_PRIME256V1 = 208,
SEC_OID_SECG_EC_SECP112R1 = 209,
SEC_OID_SECG_EC_SECP112R2 = 210,
SEC_OID_SECG_EC_SECP128R1 = 211,
SEC_OID_SECG_EC_SECP128R2 = 212,
SEC_OID_SECG_EC_SECP160K1 = 213,
SEC_OID_SECG_EC_SECP160R1 = 214,
SEC_OID_SECG_EC_SECP160R2 = 215,
SEC_OID_SECG_EC_SECP192K1 = 216,
SEC_OID_SECG_EC_SECP224K1 = 217,
SEC_OID_SECG_EC_SECP224R1 = 218,
SEC_OID_SECG_EC_SECP256K1 = 219,
SEC_OID_SECG_EC_SECP384R1 = 220,
SEC_OID_SECG_EC_SECP521R1 = 221,
SEC_OID_ANSIX962_EC_C2PNB163V1 = 222,
SEC_OID_ANSIX962_EC_C2PNB163V2 = 223,
SEC_OID_ANSIX962_EC_C2PNB163V3 = 224,
SEC_OID_ANSIX962_EC_C2PNB176V1 = 225,
SEC_OID_ANSIX962_EC_C2TNB191V1 = 226,
SEC_OID_ANSIX962_EC_C2TNB191V2 = 227,
SEC_OID_ANSIX962_EC_C2TNB191V3 = 228,
SEC_OID_ANSIX962_EC_C2ONB191V4 = 229,
SEC_OID_ANSIX962_EC_C2ONB191V5 = 230,
SEC_OID_ANSIX962_EC_C2PNB208W1 = 231,
SEC_OID_ANSIX962_EC_C2TNB239V1 = 232,
SEC_OID_ANSIX962_EC_C2TNB239V2 = 233,
SEC_OID_ANSIX962_EC_C2TNB239V3 = 234,
SEC_OID_ANSIX962_EC_C2ONB239V4 = 235,
SEC_OID_ANSIX962_EC_C2ONB239V5 = 236,
SEC_OID_ANSIX962_EC_C2PNB272W1 = 237,
SEC_OID_ANSIX962_EC_C2PNB304W1 = 238,
SEC_OID_ANSIX962_EC_C2TNB359V1 = 239,
SEC_OID_ANSIX962_EC_C2PNB368W1 = 240,
SEC_OID_ANSIX962_EC_C2TNB431R1 = 241,
SEC_OID_SECG_EC_SECT113R1 = 242,
SEC_OID_SECG_EC_SECT113R2 = 243,
SEC_OID_SECG_EC_SECT131R1 = 244,
SEC_OID_SECG_EC_SECT131R2 = 245,
SEC_OID_SECG_EC_SECT163K1 = 246,
SEC_OID_SECG_EC_SECT163R1 = 247,
SEC_OID_SECG_EC_SECT163R2 = 248,
SEC_OID_SECG_EC_SECT193R1 = 249,
SEC_OID_SECG_EC_SECT193R2 = 250,
SEC_OID_SECG_EC_SECT233K1 = 251,
SEC_OID_SECG_EC_SECT233R1 = 252,
SEC_OID_SECG_EC_SECT239K1 = 253,
SEC_OID_SECG_EC_SECT283K1 = 254,
SEC_OID_SECG_EC_SECT283R1 = 255,
SEC_OID_SECG_EC_SECT409K1 = 256,
SEC_OID_SECG_EC_SECT409R1 = 257,
SEC_OID_SECG_EC_SECT571K1 = 258,
SEC_OID_SECG_EC_SECT571R1 = 259,
SEC_OID_NETSCAPE_AOLSCREENNAME = 260,
SEC_OID_AVA_SURNAME = 261,
SEC_OID_AVA_SERIAL_NUMBER = 262,
SEC_OID_AVA_STREET_ADDRESS = 263,
SEC_OID_AVA_TITLE = 264,
SEC_OID_AVA_POSTAL_ADDRESS = 265,
SEC_OID_AVA_POSTAL_CODE = 266,
SEC_OID_AVA_POST_OFFICE_BOX = 267,
SEC_OID_AVA_GIVEN_NAME = 268,
SEC_OID_AVA_INITIALS = 269,
SEC_OID_AVA_GENERATION_QUALIFIER = 270,
SEC_OID_AVA_HOUSE_IDENTIFIER = 271,
SEC_OID_AVA_PSEUDONYM = 272,
SEC_OID_PKIX_CA_ISSUERS = 273,
SEC_OID_PKCS9_EXTENSION_REQUEST = 274,
SEC_OID_ANSIX962_ECDSA_SIGNATURE_RECOMMENDED_DIGEST = 275,
SEC_OID_ANSIX962_ECDSA_SIGNATURE_SPECIFIED_DIGEST = 276,
SEC_OID_ANSIX962_ECDSA_SHA224_SIGNATURE = 277,
SEC_OID_ANSIX962_ECDSA_SHA256_SIGNATURE = 278,
SEC_OID_ANSIX962_ECDSA_SHA384_SIGNATURE = 279,
SEC_OID_ANSIX962_ECDSA_SHA512_SIGNATURE = 280,
SEC_OID_X509_HOLD_INSTRUCTION_CODE = 281,
SEC_OID_X509_DELTA_CRL_INDICATOR = 282,
SEC_OID_X509_ISSUING_DISTRIBUTION_POINT = 283,
SEC_OID_X509_CERT_ISSUER = 284,
SEC_OID_X509_FRESHEST_CRL = 285,
SEC_OID_X509_INHIBIT_ANY_POLICY = 286,
SEC_OID_X509_SUBJECT_INFO_ACCESS = 287,
SEC_OID_CAMELLIA_128_CBC = 288,
SEC_OID_CAMELLIA_192_CBC = 289,
SEC_OID_CAMELLIA_256_CBC = 290,
SEC_OID_PKCS5_PBKDF2 = 291,
SEC_OID_PKCS5_PBES2 = 292,
SEC_OID_PKCS5_PBMAC1 = 293,
SEC_OID_HMAC_SHA1 = 294,
SEC_OID_HMAC_SHA224 = 295,
SEC_OID_HMAC_SHA256 = 296,
SEC_OID_HMAC_SHA384 = 297,
SEC_OID_HMAC_SHA512 = 298,
SEC_OID_PKIX_TIMESTAMPING = 299,
SEC_OID_PKIX_CA_REPOSITORY = 300,
SEC_OID_ISO_SHA1_WITH_RSA_SIGNATURE = 301,
SEC_OID_SEED_CBC = 302,
SEC_OID_X509_ANY_POLICY = 303,
SEC_OID_PKCS1_RSA_OAEP_ENCRYPTION = 304,
SEC_OID_PKCS1_MGF1 = 305,
SEC_OID_PKCS1_PSPECIFIED = 306,
SEC_OID_PKCS1_RSA_PSS_SIGNATURE = 307,
SEC_OID_PKCS1_SHA224_WITH_RSA_ENCRYPTION = 308,
SEC_OID_SHA224 = 309,
SEC_OID_EV_INCORPORATION_LOCALITY = 310,
SEC_OID_EV_INCORPORATION_STATE = 311,
SEC_OID_EV_INCORPORATION_COUNTRY = 312,
SEC_OID_BUSINESS_CATEGORY = 313,
SEC_OID_NIST_DSA_SIGNATURE_WITH_SHA224_DIGEST = 314,
SEC_OID_NIST_DSA_SIGNATURE_WITH_SHA256_DIGEST = 315,
SEC_OID_MS_EXT_KEY_USAGE_CTL_SIGNING = 316,
SEC_OID_AVA_NAME = 317,
SEC_OID_AES_128_GCM = 318,
SEC_OID_AES_192_GCM = 319,
SEC_OID_AES_256_GCM = 320,
SEC_OID_IDEA_CBC = 321,
SEC_OID_RC2_40_CBC = 322,
SEC_OID_DES_40_CBC = 323,
SEC_OID_RC4_40 = 324,
SEC_OID_RC4_56 = 325,
SEC_OID_NULL_CIPHER = 326,
SEC_OID_HMAC_MD5 = 327,
SEC_OID_TLS_RSA = 328,
SEC_OID_TLS_DHE_RSA = 329,
SEC_OID_TLS_DHE_DSS = 330,
SEC_OID_TLS_DH_RSA = 331,
SEC_OID_TLS_DH_DSS = 332,
SEC_OID_TLS_DH_ANON = 333,
SEC_OID_TLS_ECDHE_ECDSA = 334,
SEC_OID_TLS_ECDHE_RSA = 335,
SEC_OID_TLS_ECDH_ECDSA = 336,
SEC_OID_TLS_ECDH_RSA = 337,
SEC_OID_TLS_ECDH_ANON = 338,
SEC_OID_TLS_RSA_EXPORT = 339,
SEC_OID_TLS_DHE_RSA_EXPORT = 340,
SEC_OID_TLS_DHE_DSS_EXPORT = 341,
SEC_OID_TLS_DH_RSA_EXPORT = 342,
SEC_OID_TLS_DH_DSS_EXPORT = 343,
SEC_OID_TLS_DH_ANON_EXPORT = 344,
SEC_OID_APPLY_SSL_POLICY = 345,
SEC_OID_CHACHA20_POLY1305 = 346,
SEC_OID_TLS_ECDHE_PSK = 347,
SEC_OID_TLS_DHE_PSK = 348,
SEC_OID_TLS_FFDHE_2048 = 349,
SEC_OID_TLS_FFDHE_3072 = 350,
SEC_OID_TLS_FFDHE_4096 = 351,
SEC_OID_TLS_FFDHE_6144 = 352,
SEC_OID_TLS_FFDHE_8192 = 353,
SEC_OID_TLS_DHE_CUSTOM = 354,
SEC_OID_CURVE25519 = 355,
SEC_OID_TLS13_KEA_ANY = 356,
SEC_OID_X509_ANY_EXT_KEY_USAGE = 357,
SEC_OID_EXT_KEY_USAGE_IPSEC_IKE = 358,
SEC_OID_IPSEC_IKE_END = 359,
SEC_OID_IPSEC_IKE_INTERMEDIATE = 360,
SEC_OID_EXT_KEY_USAGE_IPSEC_END = 361,
SEC_OID_EXT_KEY_USAGE_IPSEC_TUNNEL = 362,
SEC_OID_EXT_KEY_USAGE_IPSEC_USER = 363,
SEC_OID_TOTAL = 364,
}

Просмотреть файл

@ -0,0 +1,13 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use crate::*;
use std::os::raw::{c_int, c_ulong, c_void};
extern "C" {
pub fn PORT_FreeArena(arena: *mut PLArenaPool, zero: PRBool);
pub fn NSS_SecureMemcmp(a: *const c_void, b: *const c_void, n: size_t) -> c_int;
}
pub type size_t = c_ulong;

Просмотреть файл

@ -6,19 +6,5 @@
#![warn(rust_2018_idioms)]
#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
#[cfg_attr(feature = "cargo-clippy", allow(clippy::all))]
mod bindings;
pub use bindings::*;
// Remap some constants.
pub const SECSuccess: SECStatus = _SECStatus_SECSuccess;
pub const SECFailure: SECStatus = _SECStatus_SECFailure;
pub const PR_FALSE: PRBool = 0;
pub const PR_TRUE: PRBool = 1;
pub const CK_FALSE: CK_BBOOL = 0;
pub const CK_TRUE: CK_BBOOL = 1;
// This is the NSS version that this crate is claiming to be compatible with.
// We check it at runtime using `NSS_VersionCheck`.
pub const COMPATIBLE_NSS_VERSION: &str = "3.26";

Просмотреть файл

@ -36,7 +36,7 @@ pub fn aes_gcm_crypt(
ulTagBits: nss_sys::CK_ULONG::try_from(AES_GCM_TAG_LENGTH * 8)?,
};
let mut params = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: &mut gcm_params as *mut _ as *mut c_uchar,
len: c_uint::try_from(mem::size_of::<nss_sys::CK_GCM_PARAMS>())?,
};
@ -57,7 +57,7 @@ pub fn aes_cbc_crypt(
operation: Operation,
) -> Result<Vec<u8>> {
let mut params = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: nonce.as_ptr() as *mut c_uchar,
len: c_uint::try_from(nonce.len())?,
};

Просмотреть файл

@ -86,7 +86,7 @@ pub fn generate_keypair(curve: Curve) -> Result<(PrivateKey, PublicKey)> {
// 1. Create EC params
let params_buf = create_ec_params_for_curve(curve)?;
let mut params = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: params_buf.as_ptr() as *mut c_uchar,
len: c_uint::try_from(params_buf.len())?,
};
@ -308,27 +308,27 @@ impl PublicKey {
// https://searchfox.org/mozilla-central/rev/ec489aa170b6486891cf3625717d6fa12bcd11c1/dom/crypto/CryptoKey.cpp#1078
check_pub_key_bytes(bytes, curve)?;
let key_data = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: bytes.as_ptr() as *mut c_uchar,
len: c_uint::try_from(bytes.len())?,
};
let params_buf = create_ec_params_for_curve(curve)?;
let params = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: params_buf.as_ptr() as *mut c_uchar,
len: c_uint::try_from(params_buf.len())?,
};
let pub_key = nss_sys::SECKEYPublicKey {
arena: ptr::null_mut(),
keyType: nss_sys::KeyType::ecKey,
keyType: nss_sys::KeyType::ecKey as u32,
pkcs11Slot: ptr::null_mut(),
pkcs11ID: nss_sys::CK_INVALID_HANDLE.into(),
u: nss_sys::SECKEYPublicKeyStr__bindgen_ty_1 {
u: nss_sys::SECKEYPublicKeyStr_u {
ec: nss_sys::SECKEYECPublicKey {
DEREncodedParams: params,
publicValue: key_data,
encoding: nss_sys::ECPointEncoding_ECPoint_Uncompressed,
encoding: nss_sys::ECPointEncoding::ECPoint_Uncompressed as u32,
size: 0,
},
},
@ -362,7 +362,7 @@ fn create_ec_params_for_curve(curve: Curve) -> Result<Vec<u8>> {
Curve::P256 => nss_sys::SECOidTag::SEC_OID_ANSIX962_EC_PRIME256V1,
};
// Retrieve curve data by OID tag.
let oid_data = unsafe { nss_sys::SECOID_FindOIDByTag(curve_oid_tag) };
let oid_data = unsafe { nss_sys::SECOID_FindOIDByTag(curve_oid_tag as u32) };
if oid_data.is_null() {
return Err(ErrorKind::InternalError.into());
}

Просмотреть файл

@ -38,7 +38,7 @@ impl HashAlgorithm {
}
}
impl From<&HashAlgorithm> for nss_sys::SECOidTag::Type {
impl From<&HashAlgorithm> for nss_sys::SECOidTag {
fn from(alg: &HashAlgorithm) -> Self {
match alg {
HashAlgorithm::SHA256 => nss_sys::SECOidTag::SEC_OID_SHA256,
@ -52,7 +52,12 @@ pub fn hash_buf(algorithm: &HashAlgorithm, data: &[u8]) -> Result<Vec<u8>> {
let mut out = vec![0u8; result_len];
let data_len = i32::try_from(data.len())?;
map_nss_secstatus(|| unsafe {
nss_sys::PK11_HashBuf(algorithm.into(), out.as_mut_ptr(), data.as_ptr(), data_len)
nss_sys::PK11_HashBuf(
Into::<nss_sys::SECOidTag>::into(algorithm) as u32,
out.as_mut_ptr(),
data.as_ptr(),
data_len,
)
})?;
Ok(out)
}
@ -98,7 +103,7 @@ pub fn create_context_by_sym_key(
) -> Result<Context> {
ensure_nss_initialized();
let mut param = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: ptr::null_mut(),
len: 0,
};

Просмотреть файл

@ -34,7 +34,7 @@ pub fn hkdf_expand(
ulInfoLen: c_ulong::try_from(info.len())?,
};
let mut params = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: &mut hkdf_params as *mut _ as *mut c_uchar,
len: u32::try_from(mem::size_of::<nss_sys::CK_NSS_HKDFParams>())?,
};
@ -75,7 +75,7 @@ pub(crate) fn import_sym_key(
) -> Result<SymKey> {
ensure_nss_initialized();
let mut item = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: buf.as_ptr() as *mut c_uchar,
len: c_uint::try_from(buf.len())?,
};
@ -84,7 +84,7 @@ pub(crate) fn import_sym_key(
SymKey::from_ptr(nss_sys::PK11_ImportSymKey(
slot.as_mut_ptr(),
mechanism,
nss_sys::PK11Origin::PK11_OriginUnwrap,
nss_sys::PK11Origin::PK11_OriginUnwrap as u32,
operation,
&mut item,
ptr::null_mut(),

Просмотреть файл

@ -41,7 +41,7 @@ unsafe fn pk11_destroy_context_true(context: *mut nss_sys::PK11Context) {
// Trait for types that have PCKS#11 attributes that are readable. See
// https://searchfox.org/mozilla-central/rev/8ed8474757695cdae047150a0eaf94a5f1c96dbe/security/nss/lib/pk11wrap/pk11pub.h#842-864
pub(crate) unsafe trait Pkcs11Object: ScopedPtr {
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType::Type;
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType;
fn read_raw_attribute(
&self,
attribute_type: nss_sys::CK_ATTRIBUTE_TYPE,
@ -49,7 +49,7 @@ pub(crate) unsafe trait Pkcs11Object: ScopedPtr {
let mut out_sec = ScopedSECItem::empty(nss_sys::SECItemType::siBuffer);
map_nss_secstatus(|| unsafe {
nss_sys::PK11_ReadRawAttribute(
Self::PK11_OBJECT_TYPE,
Self::PK11_OBJECT_TYPE as u32,
self.as_mut_ptr() as *mut c_void,
attribute_type,
out_sec.as_mut_ref(),
@ -60,20 +60,16 @@ pub(crate) unsafe trait Pkcs11Object: ScopedPtr {
}
unsafe impl Pkcs11Object for GenericObject {
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType::Type =
nss_sys::PK11ObjectType::PK11_TypeGeneric;
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType = nss_sys::PK11ObjectType::PK11_TypeGeneric;
}
unsafe impl Pkcs11Object for PrivateKey {
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType::Type =
nss_sys::PK11ObjectType::PK11_TypePrivKey;
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType = nss_sys::PK11ObjectType::PK11_TypePrivKey;
}
unsafe impl Pkcs11Object for PublicKey {
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType::Type =
nss_sys::PK11ObjectType::PK11_TypePubKey;
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType = nss_sys::PK11ObjectType::PK11_TypePubKey;
}
unsafe impl Pkcs11Object for SymKey {
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType::Type =
nss_sys::PK11ObjectType::PK11_TypeSymKey;
const PK11_OBJECT_TYPE: nss_sys::PK11ObjectType = nss_sys::PK11ObjectType::PK11_TypeSymKey;
}
// From https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_API_Guidelines#Thread_Safety:
@ -97,7 +93,7 @@ impl PrivateKey {
let mut obj_id_buf = vec![0u8; 160 / 8];
generate_random(&mut obj_id_buf)?;
let mut obj_id = nss_sys::SECItem {
type_: nss_sys::SECItemType::siBuffer,
type_: nss_sys::SECItemType::siBuffer as u32,
data: obj_id_buf.as_ptr() as *mut c_uchar,
len: c_uint::try_from(obj_id_buf.len())?,
};
@ -166,10 +162,10 @@ pub(crate) struct ScopedSECItem {
}
impl ScopedSECItem {
pub(crate) fn empty(r#type: nss_sys::SECItemType::Type) -> Self {
pub(crate) fn empty(r#type: nss_sys::SECItemType) -> Self {
ScopedSECItem {
wrapped: nss_sys::SECItem {
type_: r#type,
type_: r#type as u32,
data: ptr::null_mut(),
len: 0,
},

Просмотреть файл

@ -6,11 +6,15 @@ use crate::error::*;
use nss_sys::*;
use std::{convert::TryFrom, ffi::CString, os::raw::c_char, sync::Once};
// This is the NSS version that this crate is claiming to be compatible with.
// We check it at runtime using `NSS_VersionCheck`.
pub const COMPATIBLE_NSS_VERSION: &str = "3.26";
static NSS_INIT: Once = Once::new();
pub fn ensure_nss_initialized() {
NSS_INIT.call_once(|| {
let version_ptr = CString::new(nss_sys::COMPATIBLE_NSS_VERSION).unwrap();
let version_ptr = CString::new(COMPATIBLE_NSS_VERSION).unwrap();
if unsafe { NSS_VersionCheck(version_ptr.as_ptr()) == PR_FALSE } {
panic!("Incompatible NSS version!")
}
@ -41,7 +45,7 @@ pub fn map_nss_secstatus<F>(callback: F) -> Result<()>
where
F: FnOnce() -> SECStatus,
{
if callback() == SECSuccess {
if callback() == SECStatus::SECSuccess {
return Ok(());
}
Err(get_last_error())

Просмотреть файл

@ -0,0 +1,12 @@
[package]
name = "systest"
version = "0.1.0"
authors = ["Edouard Oger <eoger@fastmail.com>"]
edition = "2018"
[dependencies]
nss_sys = { path = "../nss_sys" }
libc = "0.2"
[build-dependencies]
ctest = "0.2"

Просмотреть файл

@ -0,0 +1,65 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use std::{env, ffi::OsString, path::Path};
fn main() {
// NSS links against SQLite3, so...
println!("cargo:rustc-link-lib=static=sqlcipher");
println!("cargo:rerun-if-env-changed=SQLCIPHER_LIB_DIR");
let sqlcipher_lib_dir: OsString = env::var_os("SQLCIPHER_LIB_DIR").unwrap();
println!(
"cargo:rustc-link-search=native={}",
sqlcipher_lib_dir.to_string_lossy()
);
let mut cfg = ctest::TestGenerator::new();
cfg.header("blapit.h")
.header("keyhi.h")
.header("keythi.h")
.header("nss.h")
.header("pk11pub.h")
.header("pkcs11n.h")
.header("pkcs11t.h")
.header("plarena.h")
.header("prerror.h")
.header("prtypes.h")
.header("secasn1t.h")
.header("seccomon.h")
.header("secitem.h")
.header("secmodt.h")
.header("secoid.h")
.header("secoidt.h")
.header("secport.h");
println!("cargo:rerun-if-env-changed=NSS_DIR");
let nss_dir: OsString = env::var_os("NSS_DIR").unwrap();
let nss_dir = Path::new(&nss_dir);
let include_dir = nss_dir.join("include").join("nss");
// Include the directory where the header files are defined
cfg.include(include_dir);
cfg.field_name(|_s, field| field.replace("type_", "type"));
cfg.skip_type(|s| {
// Opaque types.
s == "PK11SlotInfo"
|| s == "PK11SymKey"
|| s == "PK11Context"
|| s == "NSSInitContext"
|| s == "NSSInitParameters"
|| s == "PK11GenericObject"
});
cfg.skip_field_type(|s, field| {
s == "SECKEYPublicKeyStr" && field == "u" // inline union
});
cfg.skip_struct(|s| {
s == "SECKEYPublicKeyStr_u" // inline union
});
// Generate the tests, passing the path to the `*-sys` library as well as
// the module to generate.
cfg.generate("../nss_sys/src/lib.rs", "all.rs");
}

Просмотреть файл

@ -2,4 +2,8 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "keythi.h"
#![allow(bad_style)]
#![cfg_attr(feature = "cargo-clippy", allow(clippy::all))]
use nss_sys::*;
include!(concat!(env!("OUT_DIR"), "/all.rs"));

Просмотреть файл

@ -6,25 +6,16 @@ the details of which are reproduced below.
* [Mozilla Public License 2.0](#mozilla-public-license-20)
* [Apache License 2.0](#apache-license-20)
* [MIT License: aho-corasick, byteorder, memchr, termcolor](#mit-license-aho-corasick-byteorder-memchr-termcolor)
* [MIT License: ansi_term](#mit-license-ansi_term)
* [MIT License: atty](#mit-license-atty)
* [MIT License: aho-corasick, byteorder, memchr](#mit-license-aho-corasick-byteorder-memchr)
* [MIT License: bincode](#mit-license-bincode)
* [MIT License: bytes](#mit-license-bytes)
* [MIT License: caseless](#mit-license-caseless)
* [MIT License: clap](#mit-license-clap)
* [MIT License: libsqlite3-sys](#mit-license-libsqlite3-sys)
* [MIT License: matches](#mit-license-matches)
* [MIT License: nom](#mit-license-nom)
* [MIT License: rusqlite](#mit-license-rusqlite)
* [MIT License: strsim](#mit-license-strsim)
* [MIT License: synstructure](#mit-license-synstructure)
* [MIT License: textwrap](#mit-license-textwrap)
* [MIT License: which](#mit-license-which)
* [CC0-1.0 License: base16](#cc0-10-license-base16)
* [ISC License: libloading](#isc-license-libloading)
* [ISC License: ring](#isc-license-ring)
* [BSD-3-Clause License: bindgen](#bsd-3-clause-license-bindgen)
* [BSD-3-Clause License: protobuf](#bsd-3-clause-license-protobuf)
* [BSD-3-Clause License: sqlcipher](#bsd-3-clause-license-sqlcipher)
* [Optional Notice: SQLite](#optional-notice-sqlite)
@ -423,40 +414,32 @@ The following text applies to code linked from these dependencies:
[base64](https://github.com/marshallpierce/rust-base64),
[bitflags](https://github.com/bitflags/bitflags),
[cc](https://github.com/alexcrichton/cc-rs),
[cexpr](https://github.com/jethrogb/rust-cexpr),
[cfg-if](https://github.com/alexcrichton/cfg-if),
[clang-sys](https://github.com/KyleMayes/clang-sys),
[dogear](https://github.com/mozilla/dogear),
[either](https://github.com/bluss/either),
[env_logger](https://github.com/sebasmagri/env_logger/),
[failure](https://github.com/rust-lang-nursery/failure),
[failure_derive](https://github.com/rust-lang-nursery/failure),
[fallible-iterator](https://github.com/sfackler/rust-fallible-iterator),
[fallible-streaming-iterator](https://github.com/sfackler/fallible-streaming-iterator),
[ffi-support](https://github.com/mozilla/application-services),
[getrandom](https://github.com/rust-random/getrandom),
[glob](https://github.com/rust-lang/glob),
[hex](https://github.com/KokaKiwi/rust-hex),
[humantime](https://github.com/tailhook/humantime),
[idna](https://github.com/servo/rust-url/),
[itertools](https://github.com/bluss/rust-itertools),
[itoa](https://github.com/dtolnay/itoa),
[jna](https://github.com/java-native-access/jna),
[lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs),
[lazycell](https://github.com/indiv0/lazycell),
[libc](https://github.com/rust-lang/libc),
[linked-hash-map](https://github.com/contain-rs/linked-hash-map),
[log](https://github.com/rust-lang/log),
[lru-cache](https://github.com/contain-rs/lru-cache),
[once_cell](https://github.com/matklad/once_cell),
[peeking_take_while](https://github.com/fitzgen/peeking_take_while),
[percent-encoding](https://github.com/servo/rust-url/),
[pkg-config](https://github.com/rust-lang/pkg-config-rs),
[ppv-lite86](https://github.com/cryptocorrosion/cryptocorrosion),
[proc-macro2](https://github.com/alexcrichton/proc-macro2),
[prost-derive](https://github.com/danburkert/prost),
[prost](https://github.com/danburkert/prost),
[quick-error](http://github.com/tailhook/quick-error),
[quote](https://github.com/dtolnay/quote),
[rand](https://github.com/rust-random/rand),
[rand_chacha](https://github.com/rust-random/rand),
@ -464,25 +447,19 @@ The following text applies to code linked from these dependencies:
[regex-syntax](https://github.com/rust-lang/regex),
[regex](https://github.com/rust-lang/regex),
[rustc-demangle](https://github.com/alexcrichton/rustc-demangle),
[rustc-hash](https://github.com/rust-lang-nursery/rustc-hash),
[ryu](https://github.com/dtolnay/ryu),
[serde](https://github.com/serde-rs/serde),
[serde_derive](https://github.com/serde-rs/serde),
[serde_json](https://github.com/serde-rs/json),
[shlex](https://github.com/comex/rust-shlex),
[smallbitvec](https://github.com/servo/smallbitvec),
[smallvec](https://github.com/servo/rust-smallvec),
[syn](https://github.com/dtolnay/syn),
[thread_local](https://github.com/Amanieu/thread_local-rs),
[time](https://github.com/rust-lang/time),
[toml](https://github.com/alexcrichton/toml-rs),
[unicode-bidi](https://github.com/servo/unicode-bidi),
[unicode-normalization](https://github.com/unicode-rs/unicode-normalization),
[unicode-width](https://github.com/unicode-rs/unicode-width),
[unicode-xid](https://github.com/unicode-rs/unicode-xid),
[url](https://github.com/servo/rust-url),
[vec_map](https://github.com/contain-rs/vec-map),
[version_check](https://github.com/SergioBenitez/version_check),
[winapi-x86_64-pc-windows-gnu](https://github.com/retep998/winapi-rs),
[winapi](https://github.com/retep998/winapi-rs)
@ -691,13 +668,12 @@ limitations under the License.
```
-------------
## MIT License: aho-corasick, byteorder, memchr, termcolor
## MIT License: aho-corasick, byteorder, memchr
The following text applies to code linked from these dependencies:
[aho-corasick](https://github.com/BurntSushi/aho-corasick),
[byteorder](https://github.com/BurntSushi/byteorder),
[memchr](https://github.com/BurntSushi/rust-memchr),
[termcolor](https://github.com/BurntSushi/termcolor)
[memchr](https://github.com/BurntSushi/rust-memchr)
```
The MIT License (MIT)
@ -722,65 +698,6 @@ 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.
```
-------------
## MIT License: ansi_term
The following text applies to code linked from these dependencies:
[ansi_term](https://github.com/ogham/rust-ansi-term)
```
The MIT License (MIT)
Copyright (c) 2014 Benjamin Sago
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.
```
-------------
## MIT License: atty
The following text applies to code linked from these dependencies:
[atty](https://github.com/softprops/atty)
```
Copyright (c) 2015-2019 Doug Tangren
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.
```
-------------
## MIT License: bincode
@ -876,36 +793,6 @@ 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.
```
-------------
## MIT License: clap
The following text applies to code linked from these dependencies:
[clap](https://github.com/clap-rs/clap)
```
The MIT License (MIT)
Copyright (c) 2015-2016 Kevin B. Knapp
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.
```
-------------
## MIT License: libsqlite3-sys
@ -968,35 +855,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
```
-------------
## MIT License: nom
The following text applies to code linked from these dependencies:
[nom](https://github.com/Geal/nom)
```
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:
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.
```
-------------
## MIT License: rusqlite
@ -1025,38 +883,6 @@ 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.
```
-------------
## MIT License: strsim
The following text applies to code linked from these dependencies:
[strsim](https://github.com/dguo/strsim-rs)
```
The MIT License (MIT)
Copyright (c) 2015 Danny Guo
Copyright (c) 2016 Titus Wormer <tituswormer@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.
```
-------------
## MIT License: synstructure
@ -1073,64 +899,6 @@ 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.
```
-------------
## MIT License: textwrap
The following text applies to code linked from these dependencies:
[textwrap](https://github.com/mgeisler/textwrap)
```
MIT License
Copyright (c) 2016 Martin Geisler
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.
```
-------------
## MIT License: which
The following text applies to code linked from these dependencies:
[which](https://github.com/harryfei/which-rs.git)
```
Copyright (c) 2015 fangyuanziti
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.
```
-------------
## CC0-1.0 License: base16
@ -1261,27 +1029,6 @@ express Statement of Purpose.
party to this document and has no duty or obligation with respect to
this CC0 or use of the Work.
```
-------------
## ISC License: libloading
The following text applies to code linked from these dependencies:
[libloading](https://github.com/nagisa/rust_libloading/)
```
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.
```
-------------
## ISC License: ring
@ -1305,44 +1052,6 @@ 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.
```
-------------
## BSD-3-Clause License: bindgen
The following text applies to code linked from these dependencies:
[bindgen](https://github.com/rust-lang/rust-bindgen)
```
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.
```
-------------
## BSD-3-Clause License: protobuf

Просмотреть файл

@ -44,18 +44,10 @@ the details of which are reproduced below.
<name>Apache License 2.0: cc</name>
<url>https://github.com/alexcrichton/cc-rs/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: cexpr</name>
<url>https://github.com/jethrogb/rust-cexpr/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: cfg-if</name>
<url>https://github.com/alexcrichton/cfg-if/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: clang-sys</name>
<url>https://github.com/KyleMayes/clang-sys/blob/master/LICENSE.txt</url>
</license>
<license>
<name>Apache License 2.0: dogear</name>
<url>https://github.com/mozilla/dogear/blob/master/LICENSE</url>
@ -64,10 +56,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: either</name>
<url>https://github.com/bluss/either/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: env_logger</name>
<url>https://github.com/sebasmagri/env_logger/blob//master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: failure</name>
<url>https://github.com/rust-lang-nursery/failure/blob/master/LICENSE-APACHE</url>
@ -92,18 +80,10 @@ the details of which are reproduced below.
<name>Apache License 2.0: getrandom</name>
<url>https://github.com/rust-random/getrandom/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: glob</name>
<url>https://github.com/rust-lang/glob/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: hex</name>
<url>https://github.com/KokaKiwi/rust-hex/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: humantime</name>
<url>https://github.com/tailhook/humantime/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: idna</name>
<url>https://github.com/servo/rust-url/blob//master/LICENSE-APACHE</url>
@ -124,10 +104,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: lazy_static</name>
<url>https://github.com/rust-lang-nursery/lazy-static.rs/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: lazycell</name>
<url>https://github.com/indiv0/lazycell/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: libc</name>
<url>https://github.com/rust-lang/libc/blob/master/LICENSE-APACHE</url>
@ -148,10 +124,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: once_cell</name>
<url>https://github.com/matklad/once_cell/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: peeking_take_while</name>
<url>https://github.com/fitzgen/peeking_take_while/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: percent-encoding</name>
<url>https://github.com/servo/rust-url/blob//master/LICENSE-APACHE</url>
@ -176,10 +148,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: prost-derive</name>
<url>https://github.com/danburkert/prost/blob/master/LICENSE</url>
</license>
<license>
<name>Apache License 2.0: quick-error</name>
<url>https://github.com/tailhook/quick-error/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: quote</name>
<url>https://github.com/dtolnay/quote/blob/master/LICENSE-APACHE</url>
@ -208,10 +176,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: rustc-demangle</name>
<url>https://github.com/alexcrichton/rustc-demangle/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: rustc-hash</name>
<url>https://github.com/rust-lang-nursery/rustc-hash/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: ryu</name>
<url>https://github.com/dtolnay/ryu/blob/master/LICENSE-APACHE</url>
@ -228,10 +192,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: serde_json</name>
<url>https://github.com/serde-rs/json/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: shlex</name>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
<license>
<name>Apache License 2.0: smallbitvec</name>
<url>https://github.com/servo/smallbitvec/blob/master/LICENSE-APACHE</url>
@ -252,10 +212,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: time</name>
<url>https://github.com/time-rs/time/blob/master/LICENSE-Apache</url>
</license>
<license>
<name>Apache License 2.0: toml</name>
<url>https://github.com/alexcrichton/toml-rs/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: unicode-bidi</name>
<url>https://github.com/servo/unicode-bidi/blob/master/LICENSE-APACHE</url>
@ -264,10 +220,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: unicode-normalization</name>
<url>https://github.com/unicode-rs/unicode-normalization/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: unicode-width</name>
<url>https://github.com/unicode-rs/unicode-width/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: unicode-xid</name>
<url>https://github.com/unicode-rs/unicode-xid/blob/master/LICENSE-APACHE</url>
@ -276,14 +228,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: url</name>
<url>https://github.com/servo/rust-url/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: vec_map</name>
<url>https://github.com/contain-rs/vec-map/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: version_check</name>
<url>https://github.com/SergioBenitez/version_check/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: winapi</name>
<url>https://github.com/retep998/winapi-rs/blob/master/LICENSE-MIT</url>
@ -304,18 +248,6 @@ the details of which are reproduced below.
<name>MIT License: memchr</name>
<url>https://github.com/BurntSushi/rust-memchr/blob/master/LICENSE-MIT</url>
</license>
<license>
<name>MIT License: termcolor</name>
<url>https://github.com/BurntSushi/termcolor/blob/master/LICENSE-MIT</url>
</license>
<license>
<name>MIT License: ansi_term</name>
<url>https://github.com/ogham/rust-ansi-term/blob/master/LICENCE</url>
</license>
<license>
<name>MIT License: atty</name>
<url>https://github.com/softprops/atty/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: bincode</name>
<url>https://github.com/servo/bincode/blob/master/LICENSE.md</url>
@ -328,10 +260,6 @@ the details of which are reproduced below.
<name>MIT License: caseless</name>
<url>https://github.com/SimonSapin/rust-caseless/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: clap</name>
<url>https://github.com/clap-rs/clap/blob/master/LICENSE-MIT</url>
</license>
<license>
<name>MIT License: libsqlite3-sys</name>
<url>https://github.com/jgallagher/rusqlite/blob/master/LICENSE</url>
@ -340,46 +268,22 @@ the details of which are reproduced below.
<name>MIT License: matches</name>
<url>https://github.com/SimonSapin/rust-std-candidates/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: nom</name>
<url>https://github.com/Geal/nom/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: rusqlite</name>
<url>https://github.com/jgallagher/rusqlite/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: strsim</name>
<url>https://github.com/dguo/strsim-rs/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: synstructure</name>
<url>https://github.com/mystor/synstructure/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: textwrap</name>
<url>https://github.com/mgeisler/textwrap/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: which</name>
<url>https://github.com/harryfei/which-rs/blob/master/LICENSE.txt</url>
</license>
<license>
<name>CC0-1.0 License: base16</name>
<url>https://github.com/thomcc/rust-base16/blob/master/LICENSE-CC0</url>
</license>
<license>
<name>ISC License: libloading</name>
<url>https://github.com/nagisa/rust_libloading/blob//master/LICENSE</url>
</license>
<license>
<name>ISC License: ring</name>
<url>https://github.com/briansmith/ring/blob/master/LICENSE</url>
</license>
<license>
<name>BSD-3-Clause License: bindgen</name>
<url>https://github.com/rust-lang/rust-bindgen/blob/master/LICENSE</url>
</license>
<license>
<name>BSD-3-Clause License: protobuf</name>
<url>https://github.com/protocolbuffers/protobuf/blob/master/LICENSE</url>

Просмотреть файл

@ -7,12 +7,9 @@ the details of which are reproduced below.
* [Mozilla Public License 2.0](#mozilla-public-license-20)
* [Apache License 2.0](#apache-license-20)
* [MIT License: SwiftKeychainWrapper](#mit-license-swiftkeychainwrapper)
* [MIT License: aho-corasick, byteorder, memchr, termcolor](#mit-license-aho-corasick-byteorder-memchr-termcolor)
* [MIT License: ansi_term](#mit-license-ansi_term)
* [MIT License: atty](#mit-license-atty)
* [MIT License: aho-corasick, byteorder, memchr](#mit-license-aho-corasick-byteorder-memchr)
* [MIT License: bytes](#mit-license-bytes)
* [MIT License: caseless](#mit-license-caseless)
* [MIT License: clap](#mit-license-clap)
* [MIT License: h2](#mit-license-h2)
* [MIT License: http-body](#mit-license-http-body)
* [MIT License: hyper](#mit-license-hyper)
@ -20,21 +17,15 @@ the details of which are reproduced below.
* [MIT License: matches](#mit-license-matches)
* [MIT License: mime_guess](#mit-license-mime_guess)
* [MIT License: mio](#mit-license-mio)
* [MIT License: nom](#mit-license-nom)
* [MIT License: rusqlite](#mit-license-rusqlite)
* [MIT License: slab](#mit-license-slab)
* [MIT License: strsim](#mit-license-strsim)
* [MIT License: synstructure](#mit-license-synstructure)
* [MIT License: textwrap](#mit-license-textwrap)
* [MIT License: tokio, tokio-tls, tokio-util](#mit-license-tokio-tokio-tls-tokio-util)
* [MIT License: tower-service](#mit-license-tower-service)
* [MIT License: try-lock](#mit-license-try-lock)
* [MIT License: want](#mit-license-want)
* [MIT License: which](#mit-license-which)
* [CC0-1.0 License: base16](#cc0-10-license-base16)
* [ISC License: libloading](#isc-license-libloading)
* [ISC License: ring](#isc-license-ring)
* [BSD-3-Clause License: bindgen](#bsd-3-clause-license-bindgen)
* [BSD-3-Clause License: sqlcipher](#bsd-3-clause-license-sqlcipher)
* [Optional Notice: SQLite](#optional-notice-sqlite)
-------------
@ -433,16 +424,13 @@ The following text applies to code linked from these dependencies:
[base64](https://github.com/marshallpierce/rust-base64),
[bitflags](https://github.com/bitflags/bitflags),
[cc](https://github.com/alexcrichton/cc-rs),
[cexpr](https://github.com/jethrogb/rust-cexpr),
[cfg-if](https://github.com/alexcrichton/cfg-if),
[clang-sys](https://github.com/KyleMayes/clang-sys),
[core-foundation-sys](https://github.com/servo/core-foundation-rs),
[core-foundation](https://github.com/servo/core-foundation-rs),
[dogear](https://github.com/mozilla/dogear),
[dtoa](https://github.com/dtolnay/dtoa),
[either](https://github.com/bluss/either),
[encoding_rs](https://github.com/hsivonen/encoding_rs),
[env_logger](https://github.com/sebasmagri/env_logger/),
[failure](https://github.com/rust-lang-nursery/failure),
[failure_derive](https://github.com/rust-lang-nursery/failure),
[fallible-iterator](https://github.com/sfackler/rust-fallible-iterator),
@ -456,11 +444,9 @@ The following text applies to code linked from these dependencies:
[futures-task](https://github.com/rust-lang/futures-rs),
[futures-util](https://github.com/rust-lang/futures-rs),
[getrandom](https://github.com/rust-random/getrandom),
[glob](https://github.com/rust-lang/glob),
[hex](https://github.com/KokaKiwi/rust-hex),
[http](https://github.com/hyperium/http),
[httparse](https://github.com/seanmonstar/httparse),
[humantime](https://github.com/tailhook/humantime),
[hyper-tls](https://github.com/hyperium/hyper-tls),
[idna](https://github.com/servo/rust-url/),
[indexmap](https://github.com/bluss/indexmap),
@ -468,7 +454,6 @@ The following text applies to code linked from these dependencies:
[itertools](https://github.com/bluss/rust-itertools),
[itoa](https://github.com/dtolnay/itoa),
[lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs),
[lazycell](https://github.com/indiv0/lazycell),
[libc](https://github.com/rust-lang/libc),
[linked-hash-map](https://github.com/contain-rs/linked-hash-map),
[log](https://github.com/rust-lang/log),
@ -478,7 +463,6 @@ The following text applies to code linked from these dependencies:
[net2](https://github.com/rust-lang-nursery/net2-rs),
[num_cpus](https://github.com/seanmonstar/num_cpus),
[once_cell](https://github.com/matklad/once_cell),
[peeking_take_while](https://github.com/fitzgen/peeking_take_while),
[percent-encoding](https://github.com/servo/rust-url/),
[pin-project-internal](https://github.com/taiki-e/pin-project),
[pin-project-lite](https://github.com/taiki-e/pin-project-lite),
@ -489,7 +473,6 @@ The following text applies to code linked from these dependencies:
[proc-macro2](https://github.com/alexcrichton/proc-macro2),
[prost-derive](https://github.com/danburkert/prost),
[prost](https://github.com/danburkert/prost),
[quick-error](http://github.com/tailhook/quick-error),
[quote](https://github.com/dtolnay/quote),
[rand](https://github.com/rust-random/rand),
[rand_chacha](https://github.com/rust-random/rand),
@ -499,7 +482,6 @@ The following text applies to code linked from these dependencies:
[remove_dir_all](https://github.com/XAMPPRocky/remove_dir_all.git),
[reqwest](https://github.com/seanmonstar/reqwest),
[rustc-demangle](https://github.com/alexcrichton/rustc-demangle),
[rustc-hash](https://github.com/rust-lang-nursery/rustc-hash),
[ryu](https://github.com/dtolnay/ryu),
[security-framework-sys](https://github.com/kornelski/rust-security-framework),
[security-framework](https://github.com/kornelski/rust-security-framework),
@ -507,7 +489,6 @@ The following text applies to code linked from these dependencies:
[serde_derive](https://github.com/serde-rs/serde),
[serde_json](https://github.com/serde-rs/json),
[serde_urlencoded](https://github.com/nox/serde_urlencoded),
[shlex](https://github.com/comex/rust-shlex),
[smallbitvec](https://github.com/servo/smallbitvec),
[smallvec](https://github.com/servo/rust-smallvec),
[swift-protobuf](https://github.com/apple/swift-protobuf),
@ -515,14 +496,11 @@ The following text applies to code linked from these dependencies:
[tempfile](https://github.com/Stebalien/tempfile),
[thread_local](https://github.com/Amanieu/thread_local-rs),
[time](https://github.com/rust-lang/time),
[toml](https://github.com/alexcrichton/toml-rs),
[unicase](https://github.com/seanmonstar/unicase),
[unicode-bidi](https://github.com/servo/unicode-bidi),
[unicode-normalization](https://github.com/unicode-rs/unicode-normalization),
[unicode-width](https://github.com/unicode-rs/unicode-width),
[unicode-xid](https://github.com/unicode-rs/unicode-xid),
[url](https://github.com/servo/rust-url),
[vec_map](https://github.com/contain-rs/vec-map),
[version_check](https://github.com/SergioBenitez/version_check)
```
@ -761,13 +739,12 @@ SOFTWARE.
```
-------------
## MIT License: aho-corasick, byteorder, memchr, termcolor
## MIT License: aho-corasick, byteorder, memchr
The following text applies to code linked from these dependencies:
[aho-corasick](https://github.com/BurntSushi/aho-corasick),
[byteorder](https://github.com/BurntSushi/byteorder),
[memchr](https://github.com/BurntSushi/rust-memchr),
[termcolor](https://github.com/BurntSushi/termcolor)
[memchr](https://github.com/BurntSushi/rust-memchr)
```
The MIT License (MIT)
@ -792,65 +769,6 @@ 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.
```
-------------
## MIT License: ansi_term
The following text applies to code linked from these dependencies:
[ansi_term](https://github.com/ogham/rust-ansi-term)
```
The MIT License (MIT)
Copyright (c) 2014 Benjamin Sago
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.
```
-------------
## MIT License: atty
The following text applies to code linked from these dependencies:
[atty](https://github.com/softprops/atty)
```
Copyright (c) 2015-2019 Doug Tangren
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.
```
-------------
## MIT License: bytes
@ -916,36 +834,6 @@ 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.
```
-------------
## MIT License: clap
The following text applies to code linked from these dependencies:
[clap](https://github.com/clap-rs/clap)
```
The MIT License (MIT)
Copyright (c) 2015-2016 Kevin B. Knapp
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.
```
-------------
## MIT License: h2
@ -1164,35 +1052,6 @@ 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.
```
-------------
## MIT License: nom
The following text applies to code linked from these dependencies:
[nom](https://github.com/Geal/nom)
```
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:
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.
```
-------------
## MIT License: rusqlite
@ -1255,38 +1114,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
```
-------------
## MIT License: strsim
The following text applies to code linked from these dependencies:
[strsim](https://github.com/dguo/strsim-rs)
```
The MIT License (MIT)
Copyright (c) 2015 Danny Guo
Copyright (c) 2016 Titus Wormer <tituswormer@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.
```
-------------
## MIT License: synstructure
@ -1303,36 +1130,6 @@ 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.
```
-------------
## MIT License: textwrap
The following text applies to code linked from these dependencies:
[textwrap](https://github.com/mgeisler/textwrap)
```
MIT License
Copyright (c) 2016 Martin Geisler
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.
```
-------------
## MIT License: tokio, tokio-tls, tokio-util
@ -1462,34 +1259,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
```
-------------
## MIT License: which
The following text applies to code linked from these dependencies:
[which](https://github.com/harryfei/which-rs.git)
```
Copyright (c) 2015 fangyuanziti
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.
```
-------------
## CC0-1.0 License: base16
@ -1620,27 +1389,6 @@ express Statement of Purpose.
party to this document and has no duty or obligation with respect to
this CC0 or use of the Work.
```
-------------
## ISC License: libloading
The following text applies to code linked from these dependencies:
[libloading](https://github.com/nagisa/rust_libloading/)
```
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.
```
-------------
## ISC License: ring
@ -1664,44 +1412,6 @@ 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.
```
-------------
## BSD-3-Clause License: bindgen
The following text applies to code linked from these dependencies:
[bindgen](https://github.com/rust-lang/rust-bindgen)
```
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.
```
-------------
## BSD-3-Clause License: sqlcipher

Просмотреть файл

@ -6,23 +6,14 @@ the details of which are reproduced below.
* [Mozilla Public License 2.0](#mozilla-public-license-20)
* [Apache License 2.0](#apache-license-20)
* [MIT License: aho-corasick, byteorder, memchr, termcolor](#mit-license-aho-corasick-byteorder-memchr-termcolor)
* [MIT License: ansi_term](#mit-license-ansi_term)
* [MIT License: atty](#mit-license-atty)
* [MIT License: byteorder, memchr](#mit-license-byteorder-memchr)
* [MIT License: bytes](#mit-license-bytes)
* [MIT License: clap](#mit-license-clap)
* [MIT License: libsqlite3-sys](#mit-license-libsqlite3-sys)
* [MIT License: matches](#mit-license-matches)
* [MIT License: nom](#mit-license-nom)
* [MIT License: rusqlite](#mit-license-rusqlite)
* [MIT License: strsim](#mit-license-strsim)
* [MIT License: synstructure](#mit-license-synstructure)
* [MIT License: textwrap](#mit-license-textwrap)
* [MIT License: which](#mit-license-which)
* [CC0-1.0 License: base16](#cc0-10-license-base16)
* [ISC License: libloading](#isc-license-libloading)
* [ISC License: ring](#isc-license-ring)
* [BSD-3-Clause License: bindgen](#bsd-3-clause-license-bindgen)
* [BSD-3-Clause License: protobuf](#bsd-3-clause-license-protobuf)
* [BSD-3-Clause License: sqlcipher](#bsd-3-clause-license-sqlcipher)
* [Optional Notice: SQLite](#optional-notice-sqlite)
@ -421,64 +412,47 @@ The following text applies to code linked from these dependencies:
[base64](https://github.com/marshallpierce/rust-base64),
[bitflags](https://github.com/bitflags/bitflags),
[cc](https://github.com/alexcrichton/cc-rs),
[cexpr](https://github.com/jethrogb/rust-cexpr),
[cfg-if](https://github.com/alexcrichton/cfg-if),
[clang-sys](https://github.com/KyleMayes/clang-sys),
[either](https://github.com/bluss/either),
[env_logger](https://github.com/sebasmagri/env_logger/),
[failure](https://github.com/rust-lang-nursery/failure),
[failure_derive](https://github.com/rust-lang-nursery/failure),
[fallible-iterator](https://github.com/sfackler/rust-fallible-iterator),
[fallible-streaming-iterator](https://github.com/sfackler/fallible-streaming-iterator),
[ffi-support](https://github.com/mozilla/application-services),
[getrandom](https://github.com/rust-random/getrandom),
[glob](https://github.com/rust-lang/glob),
[hex](https://github.com/KokaKiwi/rust-hex),
[humantime](https://github.com/tailhook/humantime),
[idna](https://github.com/servo/rust-url/),
[itertools](https://github.com/bluss/rust-itertools),
[itoa](https://github.com/dtolnay/itoa),
[jna](https://github.com/java-native-access/jna),
[lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs),
[lazycell](https://github.com/indiv0/lazycell),
[libc](https://github.com/rust-lang/libc),
[linked-hash-map](https://github.com/contain-rs/linked-hash-map),
[log](https://github.com/rust-lang/log),
[lru-cache](https://github.com/contain-rs/lru-cache),
[once_cell](https://github.com/matklad/once_cell),
[peeking_take_while](https://github.com/fitzgen/peeking_take_while),
[percent-encoding](https://github.com/servo/rust-url/),
[pkg-config](https://github.com/rust-lang/pkg-config-rs),
[ppv-lite86](https://github.com/cryptocorrosion/cryptocorrosion),
[proc-macro2](https://github.com/alexcrichton/proc-macro2),
[prost-derive](https://github.com/danburkert/prost),
[prost](https://github.com/danburkert/prost),
[quick-error](http://github.com/tailhook/quick-error),
[quote](https://github.com/dtolnay/quote),
[rand](https://github.com/rust-random/rand),
[rand_chacha](https://github.com/rust-random/rand),
[rand_core](https://github.com/rust-random/rand),
[regex-syntax](https://github.com/rust-lang/regex),
[regex](https://github.com/rust-lang/regex),
[rustc-demangle](https://github.com/alexcrichton/rustc-demangle),
[rustc-hash](https://github.com/rust-lang-nursery/rustc-hash),
[ryu](https://github.com/dtolnay/ryu),
[serde](https://github.com/serde-rs/serde),
[serde_derive](https://github.com/serde-rs/serde),
[serde_json](https://github.com/serde-rs/json),
[shlex](https://github.com/comex/rust-shlex),
[smallvec](https://github.com/servo/rust-smallvec),
[syn](https://github.com/dtolnay/syn),
[thread_local](https://github.com/Amanieu/thread_local-rs),
[time](https://github.com/rust-lang/time),
[toml](https://github.com/alexcrichton/toml-rs),
[unicode-bidi](https://github.com/servo/unicode-bidi),
[unicode-normalization](https://github.com/unicode-rs/unicode-normalization),
[unicode-width](https://github.com/unicode-rs/unicode-width),
[unicode-xid](https://github.com/unicode-rs/unicode-xid),
[url](https://github.com/servo/rust-url),
[vec_map](https://github.com/contain-rs/vec-map),
[version_check](https://github.com/SergioBenitez/version_check),
[winapi-x86_64-pc-windows-gnu](https://github.com/retep998/winapi-rs),
[winapi](https://github.com/retep998/winapi-rs)
@ -687,13 +661,11 @@ limitations under the License.
```
-------------
## MIT License: aho-corasick, byteorder, memchr, termcolor
## MIT License: byteorder, memchr
The following text applies to code linked from these dependencies:
[aho-corasick](https://github.com/BurntSushi/aho-corasick),
[byteorder](https://github.com/BurntSushi/byteorder),
[memchr](https://github.com/BurntSushi/rust-memchr),
[termcolor](https://github.com/BurntSushi/termcolor)
[memchr](https://github.com/BurntSushi/rust-memchr)
```
The MIT License (MIT)
@ -718,65 +690,6 @@ 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.
```
-------------
## MIT License: ansi_term
The following text applies to code linked from these dependencies:
[ansi_term](https://github.com/ogham/rust-ansi-term)
```
The MIT License (MIT)
Copyright (c) 2014 Benjamin Sago
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.
```
-------------
## MIT License: atty
The following text applies to code linked from these dependencies:
[atty](https://github.com/softprops/atty)
```
Copyright (c) 2015-2019 Doug Tangren
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.
```
-------------
## MIT License: bytes
@ -811,36 +724,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
```
-------------
## MIT License: clap
The following text applies to code linked from these dependencies:
[clap](https://github.com/clap-rs/clap)
```
The MIT License (MIT)
Copyright (c) 2015-2016 Kevin B. Knapp
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.
```
-------------
## MIT License: libsqlite3-sys
@ -903,35 +786,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
```
-------------
## MIT License: nom
The following text applies to code linked from these dependencies:
[nom](https://github.com/Geal/nom)
```
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:
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.
```
-------------
## MIT License: rusqlite
@ -960,38 +814,6 @@ 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.
```
-------------
## MIT License: strsim
The following text applies to code linked from these dependencies:
[strsim](https://github.com/dguo/strsim-rs)
```
The MIT License (MIT)
Copyright (c) 2015 Danny Guo
Copyright (c) 2016 Titus Wormer <tituswormer@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.
```
-------------
## MIT License: synstructure
@ -1008,64 +830,6 @@ 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.
```
-------------
## MIT License: textwrap
The following text applies to code linked from these dependencies:
[textwrap](https://github.com/mgeisler/textwrap)
```
MIT License
Copyright (c) 2016 Martin Geisler
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.
```
-------------
## MIT License: which
The following text applies to code linked from these dependencies:
[which](https://github.com/harryfei/which-rs.git)
```
Copyright (c) 2015 fangyuanziti
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.
```
-------------
## CC0-1.0 License: base16
@ -1196,27 +960,6 @@ express Statement of Purpose.
party to this document and has no duty or obligation with respect to
this CC0 or use of the Work.
```
-------------
## ISC License: libloading
The following text applies to code linked from these dependencies:
[libloading](https://github.com/nagisa/rust_libloading/)
```
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.
```
-------------
## ISC License: ring
@ -1240,44 +983,6 @@ 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.
```
-------------
## BSD-3-Clause License: bindgen
The following text applies to code linked from these dependencies:
[bindgen](https://github.com/rust-lang/rust-bindgen)
```
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.
```
-------------
## BSD-3-Clause License: protobuf

Просмотреть файл

@ -44,26 +44,14 @@ the details of which are reproduced below.
<name>Apache License 2.0: cc</name>
<url>https://github.com/alexcrichton/cc-rs/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: cexpr</name>
<url>https://github.com/jethrogb/rust-cexpr/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: cfg-if</name>
<url>https://github.com/alexcrichton/cfg-if/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: clang-sys</name>
<url>https://github.com/KyleMayes/clang-sys/blob/master/LICENSE.txt</url>
</license>
<license>
<name>Apache License 2.0: either</name>
<url>https://github.com/bluss/either/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: env_logger</name>
<url>https://github.com/sebasmagri/env_logger/blob//master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: failure</name>
<url>https://github.com/rust-lang-nursery/failure/blob/master/LICENSE-APACHE</url>
@ -88,18 +76,10 @@ the details of which are reproduced below.
<name>Apache License 2.0: getrandom</name>
<url>https://github.com/rust-random/getrandom/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: glob</name>
<url>https://github.com/rust-lang/glob/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: hex</name>
<url>https://github.com/KokaKiwi/rust-hex/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: humantime</name>
<url>https://github.com/tailhook/humantime/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: idna</name>
<url>https://github.com/servo/rust-url/blob//master/LICENSE-APACHE</url>
@ -120,10 +100,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: lazy_static</name>
<url>https://github.com/rust-lang-nursery/lazy-static.rs/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: lazycell</name>
<url>https://github.com/indiv0/lazycell/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: libc</name>
<url>https://github.com/rust-lang/libc/blob/master/LICENSE-APACHE</url>
@ -144,10 +120,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: once_cell</name>
<url>https://github.com/matklad/once_cell/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: peeking_take_while</name>
<url>https://github.com/fitzgen/peeking_take_while/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: percent-encoding</name>
<url>https://github.com/servo/rust-url/blob//master/LICENSE-APACHE</url>
@ -172,10 +144,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: prost-derive</name>
<url>https://github.com/danburkert/prost/blob/master/LICENSE</url>
</license>
<license>
<name>Apache License 2.0: quick-error</name>
<url>https://github.com/tailhook/quick-error/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: quote</name>
<url>https://github.com/dtolnay/quote/blob/master/LICENSE-APACHE</url>
@ -192,22 +160,10 @@ the details of which are reproduced below.
<name>Apache License 2.0: rand_core</name>
<url>https://github.com/rust-random/rand/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: regex</name>
<url>https://github.com/rust-lang/regex/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: regex-syntax</name>
<url>https://github.com/rust-lang/regex/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: rustc-demangle</name>
<url>https://github.com/alexcrichton/rustc-demangle/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: rustc-hash</name>
<url>https://github.com/rust-lang-nursery/rustc-hash/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: ryu</name>
<url>https://github.com/dtolnay/ryu/blob/master/LICENSE-APACHE</url>
@ -224,10 +180,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: serde_json</name>
<url>https://github.com/serde-rs/json/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: shlex</name>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
<license>
<name>Apache License 2.0: smallvec</name>
<url>https://github.com/servo/rust-smallvec/blob/master/LICENSE-APACHE</url>
@ -236,18 +188,10 @@ the details of which are reproduced below.
<name>Apache License 2.0: syn</name>
<url>https://github.com/dtolnay/syn/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: thread_local</name>
<url>https://github.com/Amanieu/thread_local-rs/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: time</name>
<url>https://github.com/time-rs/time/blob/master/LICENSE-Apache</url>
</license>
<license>
<name>Apache License 2.0: toml</name>
<url>https://github.com/alexcrichton/toml-rs/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: unicode-bidi</name>
<url>https://github.com/servo/unicode-bidi/blob/master/LICENSE-APACHE</url>
@ -256,10 +200,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: unicode-normalization</name>
<url>https://github.com/unicode-rs/unicode-normalization/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: unicode-width</name>
<url>https://github.com/unicode-rs/unicode-width/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: unicode-xid</name>
<url>https://github.com/unicode-rs/unicode-xid/blob/master/LICENSE-APACHE</url>
@ -268,14 +208,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: url</name>
<url>https://github.com/servo/rust-url/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: vec_map</name>
<url>https://github.com/contain-rs/vec-map/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: version_check</name>
<url>https://github.com/SergioBenitez/version_check/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>Apache License 2.0: winapi</name>
<url>https://github.com/retep998/winapi-rs/blob/master/LICENSE-MIT</url>
@ -284,10 +216,6 @@ the details of which are reproduced below.
<name>Apache License 2.0: winapi-x86_64-pc-windows-gnu</name>
<url>https://github.com/retep998/winapi-rs/blob/master/LICENSE-APACHE</url>
</license>
<license>
<name>MIT License: aho-corasick</name>
<url>https://github.com/BurntSushi/aho-corasick/blob/master/LICENSE-MIT</url>
</license>
<license>
<name>MIT License: byteorder</name>
<url>https://github.com/BurntSushi/byteorder/blob/master/LICENSE-MIT</url>
@ -296,26 +224,10 @@ the details of which are reproduced below.
<name>MIT License: memchr</name>
<url>https://github.com/BurntSushi/rust-memchr/blob/master/LICENSE-MIT</url>
</license>
<license>
<name>MIT License: termcolor</name>
<url>https://github.com/BurntSushi/termcolor/blob/master/LICENSE-MIT</url>
</license>
<license>
<name>MIT License: ansi_term</name>
<url>https://github.com/ogham/rust-ansi-term/blob/master/LICENCE</url>
</license>
<license>
<name>MIT License: atty</name>
<url>https://github.com/softprops/atty/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: bytes</name>
<url>https://github.com/tokio-rs/bytes/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: clap</name>
<url>https://github.com/clap-rs/clap/blob/master/LICENSE-MIT</url>
</license>
<license>
<name>MIT License: libsqlite3-sys</name>
<url>https://github.com/jgallagher/rusqlite/blob/master/LICENSE</url>
@ -324,46 +236,22 @@ the details of which are reproduced below.
<name>MIT License: matches</name>
<url>https://github.com/SimonSapin/rust-std-candidates/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: nom</name>
<url>https://github.com/Geal/nom/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: rusqlite</name>
<url>https://github.com/jgallagher/rusqlite/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: strsim</name>
<url>https://github.com/dguo/strsim-rs/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: synstructure</name>
<url>https://github.com/mystor/synstructure/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: textwrap</name>
<url>https://github.com/mgeisler/textwrap/blob/master/LICENSE</url>
</license>
<license>
<name>MIT License: which</name>
<url>https://github.com/harryfei/which-rs/blob/master/LICENSE.txt</url>
</license>
<license>
<name>CC0-1.0 License: base16</name>
<url>https://github.com/thomcc/rust-base16/blob/master/LICENSE-CC0</url>
</license>
<license>
<name>ISC License: libloading</name>
<url>https://github.com/nagisa/rust_libloading/blob//master/LICENSE</url>
</license>
<license>
<name>ISC License: ring</name>
<url>https://github.com/briansmith/ring/blob/master/LICENSE</url>
</license>
<license>
<name>BSD-3-Clause License: bindgen</name>
<url>https://github.com/rust-lang/rust-bindgen/blob/master/LICENSE</url>
</license>
<license>
<name>BSD-3-Clause License: protobuf</name>
<url>https://github.com/protocolbuffers/protobuf/blob/master/LICENSE</url>

Просмотреть файл

@ -59,8 +59,6 @@ RUN apt-get update -qq \
# For `cc` crates; see https://github.com/jwilm/alacritty/issues/1440.
# <TODO: Is this still true?>.
g++ \
# <TODO: Explain why we have this dependency>.
clang \
python3 \
python3-pip \
# taskcluster > mohawk > setuptools.