diff options
| author | Lena <lena@omega> | 2026-08-01 00:00:00 +0000 |
|---|---|---|
| committer | Lena <lena@omega> | 2026-08-01 00:00:00 +0000 |
| commit | 827653aa291e37ae63c0cfa1eee4fbaa20cea122 (patch) | |
| tree | 20f874004e1676b055bc695d3b1483bef9932fe7 /scripts/check-wrapper | |
| parent | dcda3f64e0822554f647ec73fa8b0252268b87a0 (diff) | |
| download | scrcpy-android-827653aa291e37ae63c0cfa1eee4fbaa20cea122.tar.gz | |
build: pin and verify release inputs
Diffstat (limited to 'scripts/check-wrapper')
| -rwxr-xr-x | scripts/check-wrapper | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/scripts/check-wrapper b/scripts/check-wrapper index 3997bed..c56b935 100755 --- a/scripts/check-wrapper +++ b/scripts/check-wrapper @@ -18,7 +18,25 @@ if [ ! -f "$EXPECTED_FILE" ]; then exit 1 fi -# sha256sum reads its first column from the .sha256 sidecar; the second -# column ('gradle-wrapper.jar') is informational. -( cd "$(dirname "$WRAPPER")" && sha256sum -c "$(basename "$EXPECTED_FILE")" >/dev/null ) +line=$(cat "$EXPECTED_FILE") +expected=${line% gradle-wrapper.jar} +if [ "$line" != "$expected gradle-wrapper.jar" ]; then + echo "check-wrapper: malformed $EXPECTED_FILE" >&2 + exit 1 +fi +case "$expected" in + *[!0-9a-f]*|'') + echo "check-wrapper: invalid SHA-256 in $EXPECTED_FILE" >&2 + exit 1 + ;; +esac +if [ "${#expected}" -ne 64 ]; then + echo "check-wrapper: invalid SHA-256 length in $EXPECTED_FILE" >&2 + exit 1 +fi +actual=$(sha256sum "$WRAPPER" | awk '{ print $1 }') +if [ "$actual" != "$expected" ]; then + echo "check-wrapper: gradle-wrapper.jar checksum mismatch" >&2 + exit 1 +fi echo "check-wrapper: ok" |