main.c 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /* Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
  2. * Use of this source code is governed by a BSD-style license that can be
  3. * found in the LICENSE file.
  4. */
  5. #include "sysincludes.h"
  6. #include "cgptlib.h"
  7. #include "load_kernel_fw.h"
  8. #include "rollback_index.h"
  9. #include "tlcl.h"
  10. #include "vboot_common.h"
  11. #include "vboot_kernel.h"
  12. #include "vboot_nvstorage.h"
  13. int main(void)
  14. {
  15. /* cgptlib.h */
  16. GptInit(0);
  17. GptNextKernelEntry(0, 0, 0);
  18. GptUpdateKernelEntry(0, 0);
  19. /* load_kernel_fw.h */
  20. LoadKernel(0, 0, 0);
  21. /* rollback_index.h */
  22. RollbackKernelRead(0);
  23. RollbackKernelWrite(0);
  24. RollbackKernelLock(0);
  25. /* tlcl.h */
  26. TlclStartup();
  27. TlclResume();
  28. TlclSelfTestFull();
  29. TlclContinueSelfTest();
  30. TlclDefineSpace(0, 0, 0);
  31. TlclWrite(0, 0, 0);
  32. TlclRead(0, 0, 0);
  33. TlclWriteLock(0);
  34. TlclReadLock(0);
  35. TlclIsOwned();
  36. TlclForceClear();
  37. TlclSetEnable();
  38. TlclSetDeactivated(0);
  39. TlclGetFlags(0, 0, 0);
  40. TlclSetGlobalLock();
  41. TlclExtend(0, 0, 0);
  42. TlclGetPermissions(0, 0);
  43. #ifndef TPM2_MODE
  44. TlclAssertPhysicalPresence();
  45. TlclSetNvLocked();
  46. TlclClearEnable();
  47. #endif
  48. /* vboot_api.h - entry points INTO vboot_reference */
  49. VbSelectAndLoadKernel(0, 0);
  50. /* vboot_common.h */
  51. OffsetOf(0, 0);
  52. GetPublicKeyData(0);
  53. GetPublicKeyDataC(0);
  54. GetSignatureData(0);
  55. GetSignatureDataC(0);
  56. VerifyMemberInside(0, 0, 0, 0, 0, 0);
  57. VerifyPublicKeyInside(0, 0, 0);
  58. VerifySignatureInside(0, 0, 0);
  59. PublicKeyInit(0, 0, 0);
  60. PublicKeyCopy(0, 0);
  61. VbSharedDataInit(0, 0);
  62. VbSharedDataReserve(0, 0);
  63. VbSharedDataSetKernelKey(0, 0);
  64. VbNvSetup(0);
  65. VbNvGet(0, 0, 0);
  66. VbNvSet(0, 0, 0);
  67. VbNvTeardown(0);
  68. return 0;
  69. }