mirror of
https://git.code.sf.net/p/linux-ima/ima-evm-utils
synced 2025-07-01 05:11:13 +02:00
Install the swtpm package, if available
The "boot_aggregate.test" requires either a hardware or software TPM. Support using the swtpm, if packaged for the distro, in addition to tpm_server. Note: Some travis/<distro>.sh scripts are links to other scripts. Don't fail the build of the linked script if the swtpm package doesn't exist. Signed-off-by: Mimi Zohar <zohar@linux.ibm.com> Reviewed-by: Petr Vorel <pvorel@suse.cz> Acked-by: Bruno Meneguele <bmeneg@redhat.com>
This commit is contained in:
@ -75,4 +75,4 @@ before_install:
|
|||||||
script:
|
script:
|
||||||
- INSTALL="${DISTRO%%:*}"
|
- INSTALL="${DISTRO%%:*}"
|
||||||
- INSTALL="${INSTALL%%/*}"
|
- INSTALL="${INSTALL%%/*}"
|
||||||
- docker run -t ima-evm-utils /bin/sh -c "cd travis && if [ \"$VARIANT\" ]; then ARCH=\"$ARCH\" ./$INSTALL.$VARIANT.sh; fi && ARCH=\"$ARCH\" CC=\"$CC\" TSS=\"$TSS\" ./$INSTALL.sh && if [ ! \"$VARIANT\" ]; then which tpm_server || ../tests/install-swtpm.sh; fi && CC=\"$CC\" VARIANT=\"$VARIANT\" ../build.sh"
|
- docker run -t ima-evm-utils /bin/sh -c "cd travis && if [ \"$VARIANT\" ]; then ARCH=\"$ARCH\" ./$INSTALL.$VARIANT.sh; fi && ARCH=\"$ARCH\" CC=\"$CC\" TSS=\"$TSS\" ./$INSTALL.sh && if [ ! \"$VARIANT\" ]; then which tpm_server || which swtpm || ../tests/install-swtpm.sh; fi && CC=\"$CC\" VARIANT=\"$VARIANT\" ../build.sh"
|
||||||
|
@ -33,11 +33,15 @@ else
|
|||||||
ASCII_RUNTIME_MEASUREMENTS="./sample-ascii_runtime_measurements-pcrs-8-9"
|
ASCII_RUNTIME_MEASUREMENTS="./sample-ascii_runtime_measurements-pcrs-8-9"
|
||||||
export TPM_INTERFACE_TYPE="socsim"
|
export TPM_INTERFACE_TYPE="socsim"
|
||||||
export TPM_COMMAND_PORT=2321
|
export TPM_COMMAND_PORT=2321
|
||||||
|
export TPM_PLATFORM_PORT=2322
|
||||||
|
export TPM_SERVER_NAME="localhost"
|
||||||
|
export TPM_SERVER_TYPE="raw"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Only stop this test's software TPM. Preferred method: "tsstpmcmd -stop"
|
# Only stop this test's software TPM. Preferred method: "tsstpmcmd -stop"
|
||||||
cleanup() {
|
cleanup() {
|
||||||
if [ ! -z "${SWTPM_PPID}" ]; then
|
if [ -n "${SWTPM_PPID}" ]; then
|
||||||
if [ -f "${TSSDIR}/tsstpmcmd" ]; then
|
if [ -f "${TSSDIR}/tsstpmcmd" ]; then
|
||||||
"${TSSDIR}/tsstpmcmd" -stop
|
"${TSSDIR}/tsstpmcmd" -stop
|
||||||
else
|
else
|
||||||
@ -48,22 +52,36 @@ cleanup() {
|
|||||||
|
|
||||||
# Try to start a software TPM if needed.
|
# Try to start a software TPM if needed.
|
||||||
swtpm_start() {
|
swtpm_start() {
|
||||||
local swtpm
|
local swtpm swtpm1
|
||||||
|
|
||||||
swtpm="$(which tpm_server)"
|
swtpm="$(which tpm_server)"
|
||||||
if [ -z "${swtpm}" ]; then
|
swtpm1="$(which swtpm)"
|
||||||
echo "${CYAN}SKIP: Softare TPM (tpm_server) not found${NORM}"
|
if [ -z "${swtpm}" ] && [ -z "${swtpm1}" ]; then
|
||||||
|
echo "${CYAN}SKIP: Softare TPM (tpm_server and swtpm) not found${NORM}"
|
||||||
return "$SKIP"
|
return "$SKIP"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
pgrep tpm_server
|
if [ -n "${swtpm1}" ]; then
|
||||||
if [ $? -eq 0 ]; then
|
pgrep swtpm1
|
||||||
echo "INFO: Software TPM (tpm_server) already running"
|
if [ $? -eq 0 ]; then
|
||||||
return 114
|
echo "INFO: Software TPM (swtpm) already running"
|
||||||
else
|
return 114
|
||||||
echo "INFO: Starting software TPM: ${swtpm}"
|
else
|
||||||
${swtpm} > /dev/null 2>&1 &
|
echo "INFO: Starting software TPM: ${swtpm1}"
|
||||||
SWTPM_PPID=$!
|
mkdir ./myvtpm
|
||||||
|
${swtpm1} socket --tpmstate dir=./myvtpm --tpm2 --ctrl type=tcp,port=2322 --server type=tcp,port=2321 --flags not-need-init > /dev/null 2>&1 &
|
||||||
|
SWTPM_PPID=$!
|
||||||
|
fi
|
||||||
|
elif [ -n "${swtpm}" ]; then
|
||||||
|
pgrep swtpm
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo "INFO: Software TPM (tpm_server) already running"
|
||||||
|
return 114
|
||||||
|
else
|
||||||
|
echo "INFO: Starting software TPM: ${swtpm}"
|
||||||
|
${swtpm} > /dev/null 2>&1 &
|
||||||
|
SWTPM_PPID=$!
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
@ -41,3 +41,4 @@ yum -y install \
|
|||||||
which
|
which
|
||||||
|
|
||||||
yum -y install docbook5-style-xsl || true
|
yum -y install docbook5-style-xsl || true
|
||||||
|
yum -y install swtpm || true
|
||||||
|
Reference in New Issue
Block a user