41 lines
1.1 KiB
Bash
Executable File
41 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd -P)"
|
|
cd "${repo_root}"
|
|
|
|
rsa_count="$(
|
|
awk '$0 == "name = \"rsa\"" { count += 1 } END { print count + 0 }' Cargo.lock
|
|
)"
|
|
|
|
if [[ "${rsa_count}" -ne 1 ]]; then
|
|
echo "RSA advisory exception requires exactly one locked RSA package" >&2
|
|
exit 1
|
|
fi
|
|
|
|
rsa_tree="$(
|
|
cargo tree --locked -p ely_servo_host \
|
|
--features servo-engine,hardware-render \
|
|
-e features \
|
|
-i rsa@0.10.0-rc.18
|
|
)"
|
|
|
|
if [[ "${rsa_tree%%$'\n'*}" != "rsa v0.10.0-rc.18 (${repo_root}/third_party/rsa)" ]]; then
|
|
echo "RSA advisory exception requires the vendored 0.10.0-rc.18 package" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [[ "${rsa_tree}" != *'rsa feature "private-key-operations-disabled"'* ]]; then
|
|
echo "RSA advisory exception requires private-key-operations-disabled" >&2
|
|
exit 1
|
|
fi
|
|
|
|
quick_xml_tree="$(
|
|
cargo tree --workspace --all-features --target all --locked -i quick-xml@0.30.0 2>/dev/null
|
|
)"
|
|
|
|
if [[ -n "${quick_xml_tree}" ]]; then
|
|
echo "quick-xml 0.30.0 advisory exception requires a lock-only dependency" >&2
|
|
exit 1
|
|
fi
|