Re: [PATCH v3 2/2] selftests: tpm: add async space test with noneexisting handle

From: Jarkko Sakkinen
Date: Sun Jan 16 2022 - 09:34:42 EST


On Sat, Jan 15, 2022 at 05:26:27PM -0800, Tadeusz Struk wrote:
> Add a test for /dev/tpmrm0 in async mode that checks if
> the code handles invalid handles correctly.
>
> Cc: Jarkko Sakkinen <jarkko@xxxxxxxxxx>
> Cc: Shuah Khan <shuah@xxxxxxxxxx>
> Cc: <linux-integrity@xxxxxxxxxxxxxxx>
> Cc: <linux-kselftest@xxxxxxxxxxxxxxx>
> Cc: <linux-kernel@xxxxxxxxxxxxxxx>
>
> Tested-by: Jarkko Sakkinen<jarkko@xxxxxxxxxx>
> Signed-off-by: Tadeusz Struk <tstruk@xxxxxxxxx>
> ---
> Changed in v2:
> - Updated commit message
> Changed in v3:
> - Fixed typo in the function name
> ---
> tools/testing/selftests/tpm2/tpm2_tests.py | 16 ++++++++++++++++
> 1 file changed, 16 insertions(+)
>
> diff --git a/tools/testing/selftests/tpm2/tpm2_tests.py b/tools/testing/selftests/tpm2/tpm2_tests.py
> index 9d764306887b..340ffef97fb6 100644
> --- a/tools/testing/selftests/tpm2/tpm2_tests.py
> +++ b/tools/testing/selftests/tpm2/tpm2_tests.py
> @@ -302,3 +302,19 @@ class AsyncTest(unittest.TestCase):
> log.debug("Calling get_cap in a NON_BLOCKING mode")
> async_client.get_cap(tpm2.TPM2_CAP_HANDLES, tpm2.HR_LOADED_SESSION)
> async_client.close()
> +
> + def test_flush_invalid_context(self):
> + log = logging.getLogger(__name__)
> + log.debug(sys._getframe().f_code.co_name)
> +
> + async_client = tpm2.Client(tpm2.Client.FLAG_SPACE | tpm2.Client.FLAG_NONBLOCK)
> + log.debug("Calling flush_context passing in an invalid handle ")
> + handle = 0x80123456
> + rc = 0
> + try:
> + async_client.flush_context(handle)
> + except OSError as e:
> + rc = e.errno
> +
> + self.assertEqual(rc, 22)
> + async_client.close()
> --
> 2.30.2
>

Thank you.

Reviewed-by: Jarkko Sakkinen <jarkko@xxxxxxxxxx>

BR, Jarkko