1#!/bin/sh 2 3# 4# Test that the signing crypto didn't change 5# 6 7. "$(cd "$(dirname "$0")" && pwd)/common.sh" 8 9# To create the files for this test, edit 024_metadata_sig.test so 10# that it exits with an error code. This will keep its work directory 11# around. Then run it. 12# 13# After that, base64 encode the public key and signed .fw file: 14# 15# $ base64 work-024_metadata_sig.test/fwup-key.pub 16# $ base64 work-024_metadata_sig.test/fwup.fw 17# 18# Save the results here. 19 20base64_decode >$WORK/fwup-key.pub <<EOF 21oK7j5KVPcYta5rGKrA4x93Gu46n+sIyioXQ1oNJimII= 22EOF 23base64_decode >$WORK/bad-fwup-key.pub <<EOF 24VHKg4Qkcl+P+4SOrVjxGZXKZGDppV/Ncb6/ZAhzoGps= 25EOF 26 27base64_decode >$FWFILE << EOF 28UEsDBBQACAAIAAAAIQAAAAAAAAAAAEAAAAARACAAbWV0YS5jb25mLmVkMjU1MTlVVA0ABwAAAAAA 29AAAAAAAAAHV4CwABBAAAAAAEAAAAAAFAAL//x/el+RHvIm1IHWF1TPCZtPaza1UfiaciIsgf+FR6 301JZiMELfYt14jr8ZPN4wWGUnxNLTgfA1LkIwOTMFjxkvAVBLBwircg+1RQAAAEAAAABQSwMEFAAI 31AAgAAAAhAAAAAAAAAAAA/QAAAAkAIABtZXRhLmNvbmZVVA0ABwAAAAAAAAAAAAAAAHV4CwABBAAA 32AAAEAAAAAE2PzQqDMAyA7z5F6b3SVthA8C122i3UiML6Q0z19adbi96SfF/+PDKoRHHMjgdZAhHA 33o2z8yUZcHS2JlxgufisWbUNaf8oaPYqSFQaZ50h/FEMdnD7AUyQ/SBA1rg3k5oXRcSY8cBD3QnEc 34IZz71Qh8SFabhzJaWfOyXW913z3fxZz2nK77dGt0q4+3Ntl8AVBLBwgOK/Z5kAAAAP0AAABQSwEC 35FAMUAAgACAAAACEAq3IPtUUAAABAAAAAEQANAAAAAAAAAAAApIEAAAAAbWV0YS5jb25mLmVkMjU1 36MTlVVAUABwAAAAB1eAAAUEsBAhQDFAAIAAgAAAAhAA4r9nmQAAAA/QAAAAkADQAAAAAAAAAAAKSB 37pAAAAG1ldGEuY29uZlVUBQAHAAAAAHV4AABQSwUGAAAAAAIAAgCQAAAAiwEAAAAA 38EOF 39 40# This signing check should pass 41$FWUP_APPLY_NO_CHECK -p $WORK/fwup-key.pub -i $FWFILE -m 42 43# Check a failure just in case everything passes 44echo "Verification on next test should fail." 45if $FWUP_APPLY_NO_CHECK -p $WORK/bad-fwup-key.pub -i $FWFILE -m; then 46 echo "Verifying an old bad key was supposed to fail!" 47 exit 1 48fi 49 50