On Tue, Sep 16, 2025 at 04:48:22PM +0300, Jarkko Sakkinen wrote:
Hi,
The pre-existing kselftest for TPM2 is derived works of my earlier Python based rudimentary TPM2 stack called 'tpm2-scripts'.
In order to get more coverage and more mainintainable and extensible test suite I'd like to eventually rewrite the tests with bash and tpm2sh, which is a TPM2 cli written with Rust and based on my new TPM2 stack [1] [2].
Given linux-rust work, would it be acceptable to require cargo to install a runner for kselftest? I'm finishing off now 0.11 version of the tool, which will take some time (versions before that are honestly quite bad, don't try them) but after that this would be something I'd like to put together.
NOTE: while tpm2-protocol itself is Apache/MIT, tpm2sh is GPL3 licensed command-line program (for what it is worth).
Also tpm2-protocol is dependencyless, no crazy corporate TPM2 shenanigans and daemons involved etc., meaning that overall tpm2sh is quite self-contained and good fit but 8 KSLOC not really to be imported (the size comes from built-in TPM2 emulator, policy expression language and advanced import functionality that directly converts PKCS#8 to TPM2 Key ASN.1 DEr/PEM all super useful for all sorts of testing purposes).
[1] https://github.com/puavo-org/tpm2sh [2] https://git.kernel.org/pub/scm/linux/kernel/git/jarkko/tpm2-protocol.git/abo...
BR, Jarkko