xref: /DragonStub/inc/lib.h (revision 3e6106c4d60a23aae3c0740979c5e6fb728b63c3)
1 /*++
2 
3 Copyright (c) 1998  Intel Corporation
4 
5 Module Name:
6 
7     lib.h
8 
9 Abstract:
10 
11     EFI library header files
12 
13 
14 
15 Revision History
16 
17 --*/
18 
19 #ifdef __GNUC__
20 #pragma GCC visibility push(hidden)
21 #endif
22 
23 #include "efi.h"
24 #include "efilib.h"
25 #include "efirtlib.h"
26 
27 //
28 // Include non architectural protocols
29 //
30 #include "protocol/efivar.h"
31 #include "protocol/legacyboot.h"
32 #include "protocol/intload.h"
33 #include "protocol/vgaclass.h"
34 #include "protocol/eficonsplit.h"
35 #include "protocol/adapterdebug.h"
36 #include "protocol/intload.h"
37 
38 #include "efigpt.h"
39 #include "libsmbios.h"
40 
41 //
42 // Prototypes
43 //
44 
45 VOID
46 InitializeGuid (
47     VOID
48     );
49 
50 INTN EFIAPI
51 LibStubStriCmp (
52     IN EFI_UNICODE_COLLATION_INTERFACE  *This,
53     IN CHAR16                           *S1,
54     IN CHAR16                           *S2
55     );
56 
57 BOOLEAN EFIAPI
58 LibStubMetaiMatch (
59     IN EFI_UNICODE_COLLATION_INTERFACE  *This,
60     IN CHAR16                           *String,
61     IN CHAR16                           *Pattern
62     );
63 
64 VOID EFIAPI
65 LibStubStrLwrUpr (
66     IN EFI_UNICODE_COLLATION_INTERFACE  *This,
67     IN CHAR16                           *Str
68     );
69 
70 BOOLEAN
71 LibMatchDevicePaths (
72     IN  EFI_DEVICE_PATH *Multi,
73     IN  EFI_DEVICE_PATH *Single
74     );
75 
76 EFI_DEVICE_PATH *
77 LibDuplicateDevicePathInstance (
78     IN EFI_DEVICE_PATH  *DevPath
79     );
80 
81 
82 //
83 // Globals
84 //
85 extern BOOLEAN                          LibInitialized;
86 extern BOOLEAN                          LibFwInstance;
87 extern EFI_HANDLE			LibImageHandle;
88 extern SIMPLE_TEXT_OUTPUT_INTERFACE     *LibRuntimeDebugOut;
89 extern EFI_UNICODE_COLLATION_INTERFACE  *UnicodeInterface;
90 extern EFI_UNICODE_COLLATION_INTERFACE  LibStubUnicodeInterface;
91 extern EFI_RAISE_TPL                    LibRuntimeRaiseTPL;
92 extern EFI_RESTORE_TPL                  LibRuntimeRestoreTPL;
93 
94 void *memset(void *s, int c, __SIZE_TYPE__ n);
95 
96 void *memcpy(void *dest, const void *src, __SIZE_TYPE__ n);
97 void *memmove(void *dst, const void *src, uint64_t size);
98 int memcmp(const void *vl, const void *vr, size_t n);
99 void *memchr(const void *src, int c, size_t n);
100 void *memrchr(const void *m, int c, size_t n);
101 size_t strnlen(const char *s, size_t maxlen);
102 char *strrchr(const char *s, int c);