diff options
Diffstat (limited to 'tests/tpm_lite/tpmtest_spaceperm.c')
-rw-r--r-- | tests/tpm_lite/tpmtest_spaceperm.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/tpm_lite/tpmtest_spaceperm.c b/tests/tpm_lite/tpmtest_spaceperm.c new file mode 100644 index 00000000..71a65218 --- /dev/null +++ b/tests/tpm_lite/tpmtest_spaceperm.c @@ -0,0 +1,36 @@ +/* Copyright (c) 2011 The Chromium OS Authors. All rights reserved. + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +/* Test of space permissions retrieval. + */ + +#include <stdint.h> +#include <stdio.h> +#include <stdlib.h> + +#include "host_common.h" +#include "tlcl.h" +#include "tlcl_tests.h" + +#define PERMPPGL (TPM_NV_PER_PPWRITE | TPM_NV_PER_GLOBALLOCK) +#define PERMPP TPM_NV_PER_PPWRITE + +int main(int argc, char** argv) { + uint32_t perm; + + TlclLibInit(); + TPM_CHECK(TlclStartupIfNeeded()); + TPM_CHECK(TlclContinueSelfTest()); + TPM_CHECK(TlclAssertPhysicalPresence()); + + TPM_CHECK(TlclGetPermissions(INDEX0, &perm)); + VbAssert((perm & PERMPPGL) == PERMPPGL); + + TPM_CHECK(TlclGetPermissions(INDEX1, &perm)); + VbAssert((perm & PERMPP) == PERMPP); + + printf("TEST SUCCEEDED\n"); + exit(0); +} |