#!/usr/bin/sh -e

TPM_DIR=/var/lib/tpm

log() {
    echo "${0##*/}: $1" >&2
}

tpm_setup() {
    rm -f "$TPM_DIR"  # symlink
    install -d -m 700 -o tss -g tss "${TPM_DIR}s/$1"
    ln -s "${TPM_DIR##*/}s/$1" "$TPM_DIR"
}


log "identifying TPM"

tpm_id=unknown
tpm_id_script=tpm2_id
tpm_setup "$tpm_id"
if [ "$(cat /sys/class/tpm/tpm0/tpm_version_major)" -eq 1 ]; then
    tpm_id_script=tpm_id

    tcsd
    trap "killall -w tcsd" EXIT
fi
if tpm_id_try="$($tpm_id_script)"; then
    tpm_id=$tpm_id_try
    tpm_setup "$tpm_id"
fi

log "TPM identity: $tpm_id"
