Home | History | Annotate | Download | only in vboot_signer
      1 #!/bin/sh
      2 
      3 usage()
      4 {
      5 	echo usage: $0 futility input.img key.vbpubk key.vbprivk output.keyblock output.img
      6 }
      7 
      8 cleanup()
      9 {
     10 	rm -f ${EMPTY}
     11 }
     12 
     13 if [ "$#" -ne 6 ]; then
     14 	echo ERROR: invalid number of arguments
     15 	usage
     16 	exit 1
     17 fi
     18 
     19 futility=$1
     20 input=$2
     21 pubkey=$3
     22 privkey=$4
     23 keyblock=$5
     24 output=$6
     25 
     26 EMPTY=$(mktemp /tmp/tmp.XXXXXXXX)
     27 trap cleanup EXIT
     28 echo " " > ${EMPTY}
     29 
     30 echo signing ${input} with ${privkey} to generate ${output}
     31 ${futility} vbutil_keyblock --pack ${keyblock} --datapubkey ${pubkey} --signprivate ${privkey}
     32 if [ $? -ne 0 ]; then
     33 	echo ERROR: unable to generate keyblock
     34 	exit $?
     35 fi
     36 
     37 ${futility} vbutil_kernel --pack ${output} --keyblock ${keyblock} --signprivate ${privkey} --version 1 --vmlinuz ${input} --config ${EMPTY} --arch arm --bootloader ${EMPTY} --flags 0x1
     38 if [ $? -ne 0 ]; then
     39 	echo ERROR: unable to sign image
     40 	exit $?
     41 fi
     42 
     43