33 lines
1.1 KiB
Bash
33 lines
1.1 KiB
Bash
#!/usr/bin/env bash
|
|||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
adb_bin="${ADB_BIN:-adb}"
|
||
|
|
expected_fingerprint='hp/t7h/pine:4.1.1/JRO03H/v1.05.18_user:user/release-keys'
|
||
|
|
expected_kernel='3.0.8+'
|
||
|
|
serial="${1:-}"
|
||
|
|
|
||
|
|
if ! command -v "$adb_bin" >/dev/null 2>&1; then
|
||
|
|
echo "adb not found. Set ADB_BIN=/absolute/path/to/adb." >&2
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
adb_args=()
|
||
|
|
if [[ -n "$serial" ]]; then
|
||
|
|
adb_args=(-s "$serial")
|
||
|
|
fi
|
||
|
|
|
||
|
|
fingerprint="$($adb_bin "${adb_args[@]}" shell getprop ro.build.fingerprint | tr -d '\r')"
|
||
|
|
kernel="$($adb_bin "${adb_args[@]}" shell cat /proc/sys/kernel/osrelease | tr -d '\r')"
|
||
|
|
model="$($adb_bin "${adb_args[@]}" shell getprop ro.product.model | tr -d '\r')"
|
||
|
|
sdk="$($adb_bin "${adb_args[@]}" shell getprop ro.build.version.sdk | tr -d '\r')"
|
||
|
|
|
||
|
|
printf 'Model: %s\nFingerprint: %s\nKernel: %s\nSDK: %s\n' \
|
||
|
|
"$model" "$fingerprint" "$kernel" "$sdk"
|
||
|
|
|
||
|
|
if [[ "$fingerprint" != "$expected_fingerprint" || "$kernel" != "$expected_kernel" ]]; then
|
||
|
|
echo "REFUSED: this target does not match the verified device." >&2
|
||
|
|
exit 2
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo "Target matches the verified HP Slate 7 2800 firmware."
|