1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- # SPDX-License-Identifier: BSD-3-Clause
- source helpers.sh
- cleanup() {
- rm -f ek.pub ek.log ek.template ek.nonce ek.ctx
- # Evict persistent handles, we want them to always succeed and never trip
- # the onerror trap.
- tpm2 evictcontrol -Q -C o -c 0x81010005 2>/dev/null || true
- if [ "$1" != "no-shut-down" ]; then
- shut_down
- fi
- }
- trap cleanup EXIT
- start_up
- cleanup "no-shut-down"
- tpm2 createek -c 0x81010005 -G rsa -u ek.pub
- cleanup "no-shut-down"
- tpm2 createek -c - -G rsa -u ek.pub > ek.log
- phandle=`yaml_get_kv ek.log "persistent-handle"`
- tpm2 evictcontrol -Q -C o -c $phandle
- cleanup "no-shut-down"
- tpm2 createek -G rsa -u ek.pub -c ek.ctx
- cleanup "no-shut-down"
- ek_nonce_index=0x01c00003
- ek_template_index=0x01c00004
- # Define RSA EK template
- nbytes=$(wc -c ${abs_srcdir}/test/integration/fixtures/ek-template-default.bin | awk {'print $1'})
- tpm2 nvdefine -Q $ek_template_index -C o -s $nbytes \
- -a "ownerread|policywrite|ownerwrite"
- tpm2 nvwrite -Q $ek_template_index -C o \
- -i ${abs_srcdir}/test/integration/fixtures/ek-template-default.bin
- # Define RSA EK nonce
- echo -n -e '\0' > ek.nonce
- tpm2 nvdefine -Q $ek_nonce_index -C o -s 1 \
- -a "ownerread|policywrite|ownerwrite"
- tpm2 nvwrite -Q $ek_nonce_index -C o -i ek.nonce
- tpm2 createek -t -G rsa -u ek.pub -c ek.ctx
- cleanup "no-shut-down"
- exit 0
|