#!/bin/bash # get tpm simulator code IBMTPM_VERSION=1661 wget --no-check-certificate https://downloads.sourceforge.net/project/ibmswtpm2/ibmtpm$IBMTPM_VERSION.tar.gz res="$?" if [[ "$res" -ne 0 ]]; then echo "wget failed" exit 1 fi # unpackage and build the source mkdir ibmtpm pushd ibmtpm tar xf ../ibmtpm$IBMTPM_VERSION.tar.gz pushd src # fixup for openssl 3 sed -i -e "s|OPENSSL_VERSION_NUMBER >= 0x10200000L|OPENSSL_VERSION_NUMBER > 0x30000000L|" TpmToOsslMath.h sed -i -e "s|CCFLAGS = -Wall|CCFLAGS = -Wall -Wno-error=deprecated-declarations|" makefile make res="$?" if [[ "$res" -ne 0 ]]; then echo "make of ibmtpm failed" popd popd rm -rf ibmtpm ibmtpm$IBMTPM_VERSION.tar.gz exit 1 fi (./tpm_server)& popd popd sleep 10 export TPM_INTERFACE_TYPE=socsim # get tss2 tests TSS2_VERSION=v1.6.0 git clone https://git.code.sf.net/p/ibmtpm20tss/tss pushd tss git checkout -b test $TSS2_VERSION pushd utils # fix python calls to use rhel name for python3 sed -i -e 's/^PREFIX=\.\//PREFIX=tss/g' reg.sh # fix paths in rootcerts.txt c=`pwd` sed -i -e "s|/gsa/yktgsa/home/k/g/kgold/tpm2/utils|${c}|g" certificates/rootcerts.txt # run the tests ./reg.sh -a res="$?" popd popd # clean up pkill tpm_server rm -rf ibmtpm ibmtpm$IBMTPM_VERSION.tar.gz tss exit $res