esys-stir-random.int.c 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /* SPDX-License-Identifier: BSD-2-Clause */
  2. /*******************************************************************************
  3. * Copyright 2017-2018, Fraunhofer SIT sponsored by Infineon Technologies AG
  4. * All rights reserved.
  5. *******************************************************************************/
  6. #ifdef HAVE_CONFIG_H
  7. #include <config.h>
  8. #endif
  9. #include <stdlib.h>
  10. #include "tss2_esys.h"
  11. #include "esys_iutil.h"
  12. #define LOGMODULE test
  13. #include "util/log.h"
  14. #include "util/aux_util.h"
  15. /** Test the ESYS function Esys_StirRandom.
  16. *
  17. * Tested ESYS commands:
  18. * - Esys_StirRandom() (M)
  19. *
  20. * @param[in,out] esys_context The ESYS_CONTEXT.
  21. * @retval EXIT_FAILURE
  22. * @retval EXIT_SUCCESS
  23. */
  24. int
  25. test_esys_stir_random(ESYS_CONTEXT * esys_context)
  26. {
  27. TSS2_RC r;
  28. TPM2B_SENSITIVE_DATA inData = {
  29. .size = 20,
  30. .buffer = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
  31. 11, 12, 13, 14, 15, 16, 17, 18, 19, 20}
  32. };
  33. r = Esys_StirRandom(
  34. esys_context,
  35. ESYS_TR_NONE,
  36. ESYS_TR_NONE,
  37. ESYS_TR_NONE,
  38. &inData);
  39. goto_if_error(r, "Error: StirRandom", error);
  40. return EXIT_SUCCESS;
  41. error:
  42. return EXIT_FAILURE;
  43. }
  44. int
  45. test_invoke_esys(ESYS_CONTEXT * esys_context) {
  46. return test_esys_stir_random(esys_context);
  47. }