]> git.proxmox.com Git - mirror_edk2.git/blob - CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLib.h
CryptoPkg: Apply uncrustify changes
[mirror_edk2.git] / CryptoPkg / Test / UnitTest / Library / BaseCryptLib / TestBaseCryptLib.h
1 /** @file
2 Application for Cryptographic Primitives Validation.
3
4 Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 **/
8
9 #ifndef __CRYPTEST_H__
10 #define __CRYPTEST_H__
11
12 #include <PiPei.h>
13 #include <Uefi.h>
14 #include <Library/UefiLib.h>
15 #include <Library/DebugLib.h>
16 #include <Library/UnitTestLib.h>
17 #include <Library/PrintLib.h>
18 #include <Library/BaseCryptLib.h>
19 #include <Library/BaseLib.h>
20 #include <Library/BaseMemoryLib.h>
21 #include <Library/MemoryAllocationLib.h>
22 // #include <UnitTestTypes.h>
23 #include <Library/UnitTestLib.h>
24 // #include <Library/UnitTestAssertLib.h>
25
26 #define UNIT_TEST_NAME "BaseCryptLib Unit Test"
27 #define UNIT_TEST_VERSION "1.0"
28
29 typedef struct {
30 CHAR8 *Description;
31 CHAR8 *ClassName;
32 UNIT_TEST_FUNCTION Func;
33 UNIT_TEST_PREREQUISITE PreReq;
34 UNIT_TEST_CLEANUP CleanUp;
35 UNIT_TEST_CONTEXT Context;
36 } TEST_DESC;
37
38 typedef struct {
39 CHAR8 *Title;
40 CHAR8 *Package;
41 UNIT_TEST_SUITE_SETUP Sup;
42 UNIT_TEST_SUITE_TEARDOWN Tdn;
43 UINTN *TestNum;
44 TEST_DESC *TestDesc;
45 } SUITE_DESC;
46
47 extern UINTN mPkcs7EkuTestNum;
48 extern TEST_DESC mPkcs7EkuTest[];
49
50 extern UINTN mHashTestNum;
51 extern TEST_DESC mHashTest[];
52
53 extern UINTN mHmacTestNum;
54 extern TEST_DESC mHmacTest[];
55
56 extern UINTN mBlockCipherTestNum;
57 extern TEST_DESC mBlockCipherTest[];
58
59 extern UINTN mRsaTestNum;
60 extern TEST_DESC mRsaTest[];
61
62 extern UINTN mRsaCertTestNum;
63 extern TEST_DESC mRsaCertTest[];
64
65 extern UINTN mPkcs7TestNum;
66 extern TEST_DESC mPkcs7Test[];
67
68 extern UINTN mPkcs5TestNum;
69 extern TEST_DESC mPkcs5Test[];
70
71 extern UINTN mAuthenticodeTestNum;
72 extern TEST_DESC mAuthenticodeTest[];
73
74 extern UINTN mImageTimestampTestNum;
75 extern TEST_DESC mImageTimestampTest[];
76
77 extern UINTN mDhTestNum;
78 extern TEST_DESC mDhTest[];
79
80 extern UINTN mPrngTestNum;
81 extern TEST_DESC mPrngTest[];
82
83 extern UINTN mOaepTestNum;
84 extern TEST_DESC mOaepTest[];
85
86 extern UINTN mRsaPssTestNum;
87 extern TEST_DESC mRsaPssTest[];
88
89 /** Creates a framework you can use */
90 EFI_STATUS
91 EFIAPI
92 CreateUnitTest (
93 IN CHAR8 *UnitTestName,
94 IN CHAR8 *UnitTestVersion,
95 IN OUT UNIT_TEST_FRAMEWORK_HANDLE *Framework
96 );
97
98 /**
99 Validate UEFI-OpenSSL DH Interfaces.
100
101 @retval EFI_SUCCESS Validation succeeded.
102 @retval EFI_ABORTED Validation failed.
103
104 **/
105 EFI_STATUS
106 ValidateCryptDh (
107 VOID
108 );
109
110 /**
111 Validate UEFI-OpenSSL pseudorandom number generator interfaces.
112
113 @retval EFI_SUCCESS Validation succeeded.
114 @retval EFI_ABORTED Validation failed.
115
116 **/
117 EFI_STATUS
118 ValidateCryptPrng (
119 VOID
120 );
121
122 #endif