XenevaOS
Loading...
Searching...
No Matches
XenevaOS
Boot
include
IndustryStandard
PeImage.h
Go to the documentation of this file.
1
22
#ifndef __PE_IMAGE_H__
23
#define __PE_IMAGE_H__
24
25
//
26
// PE32+ Subsystem type for EFI images
27
//
28
#define EFI_IMAGE_SUBSYSTEM_EFI_APPLICATION 10
29
#define EFI_IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER 11
30
#define EFI_IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER 12
31
#define EFI_IMAGE_SUBSYSTEM_SAL_RUNTIME_DRIVER 13
32
33
34
//
35
// PE32+ Machine type for EFI images
36
//
37
#define IMAGE_FILE_MACHINE_I386 0x014c
38
#define IMAGE_FILE_MACHINE_IA64 0x0200
39
#define IMAGE_FILE_MACHINE_EBC 0x0EBC
40
#define IMAGE_FILE_MACHINE_X64 0x8664
41
#define IMAGE_FILE_MACHINE_ARMTHUMB_MIXED 0x01c2
42
#define IMAGE_FILE_MACHINE_ARM64 0xAA64
43
44
//
45
// EXE file formats
46
//
47
#define EFI_IMAGE_DOS_SIGNATURE SIGNATURE_16('M', 'Z')
48
#define EFI_IMAGE_OS2_SIGNATURE SIGNATURE_16('N', 'E')
49
#define EFI_IMAGE_OS2_SIGNATURE_LE SIGNATURE_16('L', 'E')
50
#define EFI_IMAGE_NT_SIGNATURE SIGNATURE_32('P', 'E', '\0', '\0')
51
56
typedef
struct
{
57
UINT16
e_magic
;
58
UINT16
e_cblp
;
59
UINT16
e_cp
;
60
UINT16
e_crlc
;
61
UINT16
e_cparhdr
;
62
UINT16
e_minalloc
;
63
UINT16
e_maxalloc
;
64
UINT16
e_ss
;
65
UINT16
e_sp
;
66
UINT16
e_csum
;
67
UINT16
e_ip
;
68
UINT16
e_cs
;
69
UINT16
e_lfarlc
;
70
UINT16
e_ovno
;
71
UINT16
e_res
[4];
72
UINT16
e_oemid
;
73
UINT16
e_oeminfo
;
74
UINT16
e_res2
[10];
75
UINT32
e_lfanew
;
76
}
EFI_IMAGE_DOS_HEADER
;
77
81
typedef
struct
{
82
UINT16
Machine
;
83
UINT16
NumberOfSections
;
84
UINT32
TimeDateStamp
;
85
UINT32
PointerToSymbolTable
;
86
UINT32
NumberOfSymbols
;
87
UINT16
SizeOfOptionalHeader
;
88
UINT16
Characteristics
;
89
}
EFI_IMAGE_FILE_HEADER
;
90
94
#define EFI_IMAGE_SIZEOF_FILE_HEADER 20
95
96
//
97
// Characteristics
98
//
99
#define EFI_IMAGE_FILE_RELOCS_STRIPPED BIT0
100
#define EFI_IMAGE_FILE_EXECUTABLE_IMAGE BIT1
101
#define EFI_IMAGE_FILE_LINE_NUMS_STRIPPED BIT2
102
#define EFI_IMAGE_FILE_LOCAL_SYMS_STRIPPED BIT3
103
#define EFI_IMAGE_FILE_BYTES_REVERSED_LO BIT7
104
#define EFI_IMAGE_FILE_32BIT_MACHINE BIT8
105
#define EFI_IMAGE_FILE_DEBUG_STRIPPED BIT9
106
#define EFI_IMAGE_FILE_SYSTEM BIT12
107
#define EFI_IMAGE_FILE_DLL BIT13
108
#define EFI_IMAGE_FILE_BYTES_REVERSED_HI BIT15
109
113
typedef
struct
{
114
UINT32
VirtualAddress
;
115
UINT32
Size
;
116
}
EFI_IMAGE_DATA_DIRECTORY
;
117
118
//
119
// Directory Entries
120
//
121
#define EFI_IMAGE_DIRECTORY_ENTRY_EXPORT 0
122
#define EFI_IMAGE_DIRECTORY_ENTRY_IMPORT 1
123
#define EFI_IMAGE_DIRECTORY_ENTRY_RESOURCE 2
124
#define EFI_IMAGE_DIRECTORY_ENTRY_EXCEPTION 3
125
#define EFI_IMAGE_DIRECTORY_ENTRY_SECURITY 4
126
#define EFI_IMAGE_DIRECTORY_ENTRY_BASERELOC 5
127
#define EFI_IMAGE_DIRECTORY_ENTRY_DEBUG 6
128
#define EFI_IMAGE_DIRECTORY_ENTRY_COPYRIGHT 7
129
#define EFI_IMAGE_DIRECTORY_ENTRY_GLOBALPTR 8
130
#define EFI_IMAGE_DIRECTORY_ENTRY_TLS 9
131
#define EFI_IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG 10
132
133
#define EFI_IMAGE_NUMBER_OF_DIRECTORY_ENTRIES 16
134
141
#define EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC 0x10b
142
146
typedef
struct
{
150
UINT16
Magic
;
151
UINT8
MajorLinkerVersion
;
152
UINT8
MinorLinkerVersion
;
153
UINT32
SizeOfCode
;
154
UINT32
SizeOfInitializedData
;
155
UINT32
SizeOfUninitializedData
;
156
UINT32
AddressOfEntryPoint
;
157
UINT32
BaseOfCode
;
158
UINT32
BaseOfData
;
162
UINT32
ImageBase
;
163
UINT32
SectionAlignment
;
164
UINT32
FileAlignment
;
165
UINT16
MajorOperatingSystemVersion
;
166
UINT16
MinorOperatingSystemVersion
;
167
UINT16
MajorImageVersion
;
168
UINT16
MinorImageVersion
;
169
UINT16
MajorSubsystemVersion
;
170
UINT16
MinorSubsystemVersion
;
171
UINT32
Win32VersionValue
;
172
UINT32
SizeOfImage
;
173
UINT32
SizeOfHeaders
;
174
UINT32
CheckSum
;
175
UINT16
Subsystem
;
176
UINT16
DllCharacteristics
;
177
UINT32
SizeOfStackReserve
;
178
UINT32
SizeOfStackCommit
;
179
UINT32
SizeOfHeapReserve
;
180
UINT32
SizeOfHeapCommit
;
181
UINT32
LoaderFlags
;
182
UINT32
NumberOfRvaAndSizes
;
183
EFI_IMAGE_DATA_DIRECTORY
DataDirectory
[
EFI_IMAGE_NUMBER_OF_DIRECTORY_ENTRIES
];
184
}
EFI_IMAGE_OPTIONAL_HEADER32
;
185
192
#define EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC 0x20b
193
197
typedef
struct
{
201
UINT16
Magic
;
202
UINT8
MajorLinkerVersion
;
203
UINT8
MinorLinkerVersion
;
204
UINT32
SizeOfCode
;
205
UINT32
SizeOfInitializedData
;
206
UINT32
SizeOfUninitializedData
;
207
UINT32
AddressOfEntryPoint
;
208
UINT32
BaseOfCode
;
212
UINT64
ImageBase
;
213
UINT32
SectionAlignment
;
214
UINT32
FileAlignment
;
215
UINT16
MajorOperatingSystemVersion
;
216
UINT16
MinorOperatingSystemVersion
;
217
UINT16
MajorImageVersion
;
218
UINT16
MinorImageVersion
;
219
UINT16
MajorSubsystemVersion
;
220
UINT16
MinorSubsystemVersion
;
221
UINT32
Win32VersionValue
;
222
UINT32
SizeOfImage
;
223
UINT32
SizeOfHeaders
;
224
UINT32
CheckSum
;
225
UINT16
Subsystem
;
226
UINT16
DllCharacteristics
;
227
UINT64
SizeOfStackReserve
;
228
UINT64
SizeOfStackCommit
;
229
UINT64
SizeOfHeapReserve
;
230
UINT64
SizeOfHeapCommit
;
231
UINT32
LoaderFlags
;
232
UINT32
NumberOfRvaAndSizes
;
233
EFI_IMAGE_DATA_DIRECTORY
DataDirectory
[
EFI_IMAGE_NUMBER_OF_DIRECTORY_ENTRIES
];
234
}
EFI_IMAGE_OPTIONAL_HEADER64
;
235
236
241
typedef
struct
{
242
UINT32
Signature
;
243
EFI_IMAGE_FILE_HEADER
FileHeader
;
244
EFI_IMAGE_OPTIONAL_HEADER32
OptionalHeader
;
245
}
EFI_IMAGE_NT_HEADERS32
;
246
247
#define EFI_IMAGE_SIZEOF_NT_OPTIONAL32_HEADER sizeof (EFI_IMAGE_NT_HEADERS32)
248
253
typedef
struct
{
254
UINT32
Signature
;
255
EFI_IMAGE_FILE_HEADER
FileHeader
;
256
EFI_IMAGE_OPTIONAL_HEADER64
OptionalHeader
;
257
}
EFI_IMAGE_NT_HEADERS64
;
258
259
#define EFI_IMAGE_SIZEOF_NT_OPTIONAL64_HEADER sizeof (EFI_IMAGE_NT_HEADERS64)
260
261
//
262
// Other Windows Subsystem Values
263
//
264
#define EFI_IMAGE_SUBSYSTEM_UNKNOWN 0
265
#define EFI_IMAGE_SUBSYSTEM_NATIVE 1
266
#define EFI_IMAGE_SUBSYSTEM_WINDOWS_GUI 2
267
#define EFI_IMAGE_SUBSYSTEM_WINDOWS_CUI 3
268
#define EFI_IMAGE_SUBSYSTEM_OS2_CUI 5
269
#define EFI_IMAGE_SUBSYSTEM_POSIX_CUI 7
270
274
#define EFI_IMAGE_SIZEOF_SHORT_NAME 8
275
279
typedef
struct
{
280
UINT8
Name
[
EFI_IMAGE_SIZEOF_SHORT_NAME
];
281
union
{
282
UINT32
PhysicalAddress
;
283
UINT32
VirtualSize
;
284
} Misc;
285
UINT32
VirtualAddress
;
286
UINT32
SizeOfRawData
;
287
UINT32
PointerToRawData
;
288
UINT32
PointerToRelocations
;
289
UINT32
PointerToLinenumbers
;
290
UINT16
NumberOfRelocations
;
291
UINT16
NumberOfLinenumbers
;
292
UINT32
Characteristics
;
293
}
EFI_IMAGE_SECTION_HEADER
;
294
298
#define EFI_IMAGE_SIZEOF_SECTION_HEADER 40
299
300
//
301
// Section Flags Values
302
//
303
#define EFI_IMAGE_SCN_TYPE_NO_PAD BIT3
304
#define EFI_IMAGE_SCN_CNT_CODE BIT5
305
#define EFI_IMAGE_SCN_CNT_INITIALIZED_DATA BIT6
306
#define EFI_IMAGE_SCN_CNT_UNINITIALIZED_DATA BIT7
307
308
#define EFI_IMAGE_SCN_LNK_OTHER BIT8
309
#define EFI_IMAGE_SCN_LNK_INFO BIT9
310
#define EFI_IMAGE_SCN_LNK_REMOVE BIT11
311
#define EFI_IMAGE_SCN_LNK_COMDAT BIT12
312
313
#define EFI_IMAGE_SCN_ALIGN_1BYTES BIT20
314
#define EFI_IMAGE_SCN_ALIGN_2BYTES BIT21
315
#define EFI_IMAGE_SCN_ALIGN_4BYTES (BIT20|BIT21)
316
#define EFI_IMAGE_SCN_ALIGN_8BYTES BIT22
317
#define EFI_IMAGE_SCN_ALIGN_16BYTES (BIT20|BIT22)
318
#define EFI_IMAGE_SCN_ALIGN_32BYTES (BIT21|BIT22)
319
#define EFI_IMAGE_SCN_ALIGN_64BYTES (BIT20|BIT21|BIT22)
320
321
#define EFI_IMAGE_SCN_MEM_DISCARDABLE BIT25
322
#define EFI_IMAGE_SCN_MEM_NOT_CACHED BIT26
323
#define EFI_IMAGE_SCN_MEM_NOT_PAGED BIT27
324
#define EFI_IMAGE_SCN_MEM_SHARED BIT28
325
#define EFI_IMAGE_SCN_MEM_EXECUTE BIT29
326
#define EFI_IMAGE_SCN_MEM_READ BIT30
327
#define EFI_IMAGE_SCN_MEM_WRITE BIT31
328
332
#define EFI_IMAGE_SIZEOF_SYMBOL 18
333
334
//
335
// Symbols have a section number of the section in which they are
336
// defined. Otherwise, section numbers have the following meanings:
337
//
338
#define EFI_IMAGE_SYM_UNDEFINED (UINT16) 0
339
#define EFI_IMAGE_SYM_ABSOLUTE (UINT16) -1
340
#define EFI_IMAGE_SYM_DEBUG (UINT16) -2
341
342
//
343
// Symbol Type (fundamental) values.
344
//
345
#define EFI_IMAGE_SYM_TYPE_NULL 0
346
#define EFI_IMAGE_SYM_TYPE_VOID 1
347
#define EFI_IMAGE_SYM_TYPE_CHAR 2
348
#define EFI_IMAGE_SYM_TYPE_SHORT 3
349
#define EFI_IMAGE_SYM_TYPE_INT 4
350
#define EFI_IMAGE_SYM_TYPE_LONG 5
351
#define EFI_IMAGE_SYM_TYPE_FLOAT 6
352
#define EFI_IMAGE_SYM_TYPE_DOUBLE 7
353
#define EFI_IMAGE_SYM_TYPE_STRUCT 8
354
#define EFI_IMAGE_SYM_TYPE_UNION 9
355
#define EFI_IMAGE_SYM_TYPE_ENUM 10
356
#define EFI_IMAGE_SYM_TYPE_MOE 11
357
#define EFI_IMAGE_SYM_TYPE_BYTE 12
358
#define EFI_IMAGE_SYM_TYPE_WORD 13
359
#define EFI_IMAGE_SYM_TYPE_UINT 14
360
#define EFI_IMAGE_SYM_TYPE_DWORD 15
361
362
//
363
// Symbol Type (derived) values.
364
//
365
#define EFI_IMAGE_SYM_DTYPE_NULL 0
366
#define EFI_IMAGE_SYM_DTYPE_POINTER 1
367
#define EFI_IMAGE_SYM_DTYPE_FUNCTION 2
368
#define EFI_IMAGE_SYM_DTYPE_ARRAY 3
369
370
//
371
// Storage classes.
372
//
373
#define EFI_IMAGE_SYM_CLASS_END_OF_FUNCTION ((UINT8) -1)
374
#define EFI_IMAGE_SYM_CLASS_NULL 0
375
#define EFI_IMAGE_SYM_CLASS_AUTOMATIC 1
376
#define EFI_IMAGE_SYM_CLASS_EXTERNAL 2
377
#define EFI_IMAGE_SYM_CLASS_STATIC 3
378
#define EFI_IMAGE_SYM_CLASS_REGISTER 4
379
#define EFI_IMAGE_SYM_CLASS_EXTERNAL_DEF 5
380
#define EFI_IMAGE_SYM_CLASS_LABEL 6
381
#define EFI_IMAGE_SYM_CLASS_UNDEFINED_LABEL 7
382
#define EFI_IMAGE_SYM_CLASS_MEMBER_OF_STRUCT 8
383
#define EFI_IMAGE_SYM_CLASS_ARGUMENT 9
384
#define EFI_IMAGE_SYM_CLASS_STRUCT_TAG 10
385
#define EFI_IMAGE_SYM_CLASS_MEMBER_OF_UNION 11
386
#define EFI_IMAGE_SYM_CLASS_UNION_TAG 12
387
#define EFI_IMAGE_SYM_CLASS_TYPE_DEFINITION 13
388
#define EFI_IMAGE_SYM_CLASS_UNDEFINED_STATIC 14
389
#define EFI_IMAGE_SYM_CLASS_ENUM_TAG 15
390
#define EFI_IMAGE_SYM_CLASS_MEMBER_OF_ENUM 16
391
#define EFI_IMAGE_SYM_CLASS_REGISTER_PARAM 17
392
#define EFI_IMAGE_SYM_CLASS_BIT_FIELD 18
393
#define EFI_IMAGE_SYM_CLASS_BLOCK 100
394
#define EFI_IMAGE_SYM_CLASS_FUNCTION 101
395
#define EFI_IMAGE_SYM_CLASS_END_OF_STRUCT 102
396
#define EFI_IMAGE_SYM_CLASS_FILE 103
397
#define EFI_IMAGE_SYM_CLASS_SECTION 104
398
#define EFI_IMAGE_SYM_CLASS_WEAK_EXTERNAL 105
399
400
//
401
// type packing constants
402
//
403
#define EFI_IMAGE_N_BTMASK 017
404
#define EFI_IMAGE_N_TMASK 060
405
#define EFI_IMAGE_N_TMASK1 0300
406
#define EFI_IMAGE_N_TMASK2 0360
407
#define EFI_IMAGE_N_BTSHFT 4
408
#define EFI_IMAGE_N_TSHIFT 2
409
410
//
411
// Communal selection types.
412
//
413
#define EFI_IMAGE_COMDAT_SELECT_NODUPLICATES 1
414
#define EFI_IMAGE_COMDAT_SELECT_ANY 2
415
#define EFI_IMAGE_COMDAT_SELECT_SAME_SIZE 3
416
#define EFI_IMAGE_COMDAT_SELECT_EXACT_MATCH 4
417
#define EFI_IMAGE_COMDAT_SELECT_ASSOCIATIVE 5
418
419
//
420
// the following values only be referred in PeCoff, not defined in PECOFF.
421
//
422
#define EFI_IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY 1
423
#define EFI_IMAGE_WEAK_EXTERN_SEARCH_LIBRARY 2
424
#define EFI_IMAGE_WEAK_EXTERN_SEARCH_ALIAS 3
425
429
typedef
struct
{
430
UINT32
VirtualAddress
;
431
UINT32
SymbolTableIndex
;
432
UINT16
Type
;
433
}
EFI_IMAGE_RELOCATION
;
434
438
#define EFI_IMAGE_SIZEOF_RELOCATION 10
439
440
//
441
// I386 relocation types.
442
//
443
#define EFI_IMAGE_REL_I386_ABSOLUTE 0x0000
444
#define EFI_IMAGE_REL_I386_DIR16 0x0001
445
#define EFI_IMAGE_REL_I386_REL16 0x0002
446
#define EFI_IMAGE_REL_I386_DIR32 0x0006
447
#define EFI_IMAGE_REL_I386_DIR32NB 0x0007
448
#define EFI_IMAGE_REL_I386_SEG12 0x0009
449
#define EFI_IMAGE_REL_I386_SECTION 0x000A
450
#define EFI_IMAGE_REL_I386_SECREL 0x000B
451
#define EFI_IMAGE_REL_I386_REL32 0x0014
452
453
//
454
// x64 processor relocation types.
455
//
456
#define IMAGE_REL_AMD64_ABSOLUTE 0x0000
457
#define IMAGE_REL_AMD64_ADDR64 0x0001
458
#define IMAGE_REL_AMD64_ADDR32 0x0002
459
#define IMAGE_REL_AMD64_ADDR32NB 0x0003
460
#define IMAGE_REL_AMD64_REL32 0x0004
461
#define IMAGE_REL_AMD64_REL32_1 0x0005
462
#define IMAGE_REL_AMD64_REL32_2 0x0006
463
#define IMAGE_REL_AMD64_REL32_3 0x0007
464
#define IMAGE_REL_AMD64_REL32_4 0x0008
465
#define IMAGE_REL_AMD64_REL32_5 0x0009
466
#define IMAGE_REL_AMD64_SECTION 0x000A
467
#define IMAGE_REL_AMD64_SECREL 0x000B
468
#define IMAGE_REL_AMD64_SECREL7 0x000C
469
#define IMAGE_REL_AMD64_TOKEN 0x000D
470
#define IMAGE_REL_AMD64_SREL32 0x000E
471
#define IMAGE_REL_AMD64_PAIR 0x000F
472
#define IMAGE_REL_AMD64_SSPAN32 0x0010
473
477
typedef
struct
{
478
UINT32
VirtualAddress
;
479
UINT32
SizeOfBlock
;
480
}
EFI_IMAGE_BASE_RELOCATION
;
481
485
#define EFI_IMAGE_SIZEOF_BASE_RELOCATION 8
486
487
//
488
// Based relocation types.
489
//
490
#define EFI_IMAGE_REL_BASED_ABSOLUTE 0
491
#define EFI_IMAGE_REL_BASED_HIGH 1
492
#define EFI_IMAGE_REL_BASED_LOW 2
493
#define EFI_IMAGE_REL_BASED_HIGHLOW 3
494
#define EFI_IMAGE_REL_BASED_HIGHADJ 4
495
#define EFI_IMAGE_REL_BASED_MIPS_JMPADDR 5
496
#define EFI_IMAGE_REL_BASED_ARM_MOV32A 5
497
#define EFI_IMAGE_REL_BASED_ARM_MOV32T 7
498
#define EFI_IMAGE_REL_BASED_IA64_IMM64 9
499
#define EFI_IMAGE_REL_BASED_MIPS_JMPADDR16 9
500
#define EFI_IMAGE_REL_BASED_DIR64 10
501
505
typedef
struct
{
506
union
{
507
UINT32
SymbolTableIndex
;
508
UINT32
VirtualAddress
;
509
}
Type
;
510
UINT16
Linenumber
;
511
}
EFI_IMAGE_LINENUMBER
;
512
516
#define EFI_IMAGE_SIZEOF_LINENUMBER 6
517
518
//
519
// Archive format.
520
//
521
#define EFI_IMAGE_ARCHIVE_START_SIZE 8
522
#define EFI_IMAGE_ARCHIVE_START "!<arch>\n"
523
#define EFI_IMAGE_ARCHIVE_END "`\n"
524
#define EFI_IMAGE_ARCHIVE_PAD "\n"
525
#define EFI_IMAGE_ARCHIVE_LINKER_MEMBER "/ "
526
#define EFI_IMAGE_ARCHIVE_LONGNAMES_MEMBER "// "
527
531
typedef
struct
{
532
UINT8
Name
[16];
533
UINT8
Date[12];
534
UINT8
UserID[6];
535
UINT8
GroupID[6];
536
UINT8
Mode[8];
537
UINT8
Size
[10];
538
UINT8
EndHeader[2];
539
}
EFI_IMAGE_ARCHIVE_MEMBER_HEADER
;
540
544
#define EFI_IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR 60
545
546
547
//
548
// DLL Support
549
//
550
554
typedef
struct
{
555
UINT32
Characteristics
;
556
UINT32
TimeDateStamp
;
557
UINT16
MajorVersion
;
558
UINT16
MinorVersion
;
559
UINT32
Name
;
560
UINT32
Base
;
561
UINT32
NumberOfFunctions
;
562
UINT32
NumberOfNames
;
563
UINT32
AddressOfFunctions
;
564
UINT32
AddressOfNames
;
565
UINT32
AddressOfNameOrdinals
;
566
}
EFI_IMAGE_EXPORT_DIRECTORY
;
567
571
typedef
struct
{
572
UINT16
Hint
;
573
UINT8
Name
[1];
574
}
EFI_IMAGE_IMPORT_BY_NAME
;
575
579
typedef
struct
{
580
union
{
581
UINT32
Function
;
582
UINT32
Ordinal
;
583
EFI_IMAGE_IMPORT_BY_NAME
*
AddressOfData
;
584
} u1;
585
}
EFI_IMAGE_THUNK_DATA
;
586
587
#define EFI_IMAGE_ORDINAL_FLAG BIT31
588
#define EFI_IMAGE_SNAP_BY_ORDINAL(Ordinal) ((Ordinal & EFI_IMAGE_ORDINAL_FLAG) != 0)
589
#define EFI_IMAGE_ORDINAL(Ordinal) (Ordinal & 0xffff)
590
594
typedef
struct
{
595
UINT32
Characteristics
;
596
UINT32
TimeDateStamp
;
597
UINT32
ForwarderChain
;
598
UINT32
Name
;
599
EFI_IMAGE_THUNK_DATA
*
FirstThunk
;
600
}
EFI_IMAGE_IMPORT_DESCRIPTOR
;
601
602
606
typedef
struct
{
607
UINT32
Characteristics
;
608
UINT32
TimeDateStamp
;
609
UINT16
MajorVersion
;
610
UINT16
MinorVersion
;
611
UINT32
Type
;
612
UINT32
SizeOfData
;
613
UINT32
RVA
;
614
UINT32
FileOffset
;
615
}
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY
;
616
617
#define EFI_IMAGE_DEBUG_TYPE_CODEVIEW 2
618
622
#define CODEVIEW_SIGNATURE_NB10 SIGNATURE_32('N', 'B', '1', '0')
623
typedef
struct
{
624
UINT32
Signature
;
625
UINT32
Unknown
;
626
UINT32
Unknown2
;
627
UINT32
Unknown3
;
628
//
629
// Filename of .PDB goes here
630
//
631
}
EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY
;
632
636
#define CODEVIEW_SIGNATURE_RSDS SIGNATURE_32('R', 'S', 'D', 'S')
637
typedef
struct
{
638
UINT32
Signature
;
639
UINT32
Unknown
;
640
UINT32
Unknown2
;
641
UINT32
Unknown3
;
642
UINT32
Unknown4
;
643
UINT32
Unknown5
;
644
//
645
// Filename of .PDB goes here
646
//
647
}
EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY
;
648
649
653
#define CODEVIEW_SIGNATURE_MTOC SIGNATURE_32('M', 'T', 'O', 'C')
654
typedef
struct
{
655
UINT32
Signature
;
656
GUID
MachOUuid
;
657
//
658
// Filename of .DLL (Mach-O with debug info) goes here
659
//
660
}
EFI_IMAGE_DEBUG_CODEVIEW_MTOC_ENTRY
;
661
665
typedef
struct
{
666
UINT32
Characteristics
;
667
UINT32
TimeDateStamp
;
668
UINT16
MajorVersion
;
669
UINT16
MinorVersion
;
670
UINT16
NumberOfNamedEntries
;
671
UINT16
NumberOfIdEntries
;
672
//
673
// Array of EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY entries goes here.
674
//
675
}
EFI_IMAGE_RESOURCE_DIRECTORY
;
676
680
typedef
struct
{
681
union
{
682
struct
{
683
UINT32
NameOffset
:31;
684
UINT32
NameIsString
:1;
685
} s;
686
UINT32
Id
;
687
} u1;
688
union
{
689
UINT32
OffsetToData
;
690
struct
{
691
UINT32
OffsetToDirectory
:31;
692
UINT32
DataIsDirectory
:1;
693
} s;
694
} u2;
695
}
EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY
;
696
700
typedef
struct
{
701
UINT16
Length
;
702
CHAR16
String[1];
703
}
EFI_IMAGE_RESOURCE_DIRECTORY_STRING
;
704
708
typedef
struct
{
709
UINT32
OffsetToData
;
710
UINT32
Size
;
711
UINT32
CodePage
;
712
UINT32
Reserved
;
713
}
EFI_IMAGE_RESOURCE_DATA_ENTRY
;
714
718
typedef
struct
{
719
UINT16
Signature
;
720
UINT16
Machine
;
721
UINT8
NumberOfSections
;
722
UINT8
Subsystem
;
723
UINT16
StrippedSize
;
724
UINT32
AddressOfEntryPoint
;
725
UINT32
BaseOfCode
;
726
UINT64
ImageBase
;
727
EFI_IMAGE_DATA_DIRECTORY
DataDirectory
[2];
728
}
EFI_TE_IMAGE_HEADER
;
729
730
731
#define EFI_TE_IMAGE_HEADER_SIGNATURE SIGNATURE_16('V', 'Z')
732
733
//
734
// Data directory indexes in our TE image header
735
//
736
#define EFI_TE_IMAGE_DIRECTORY_ENTRY_BASERELOC 0
737
#define EFI_TE_IMAGE_DIRECTORY_ENTRY_DEBUG 1
738
739
743
typedef
union
{
744
EFI_IMAGE_NT_HEADERS32
Pe32
;
745
EFI_IMAGE_NT_HEADERS64
Pe32Plus
;
746
EFI_TE_IMAGE_HEADER
Te
;
747
}
EFI_IMAGE_OPTIONAL_HEADER_UNION
;
748
749
typedef
union
{
750
EFI_IMAGE_NT_HEADERS32
*
Pe32
;
751
EFI_IMAGE_NT_HEADERS64
*
Pe32Plus
;
752
EFI_TE_IMAGE_HEADER
*
Te
;
753
EFI_IMAGE_OPTIONAL_HEADER_UNION
*
Union
;
754
}
EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION
;
755
756
#endif
CHAR16
unsigned short CHAR16
Definition
ProcessorBind.h:105
UINT32
unsigned int UINT32
Definition
ProcessorBind.h:102
DataDirectory
IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]
Definition
pe.h:30
Size
uint32_t Size
Definition
pe.h:1
e_res
uint16_t e_res[4]
Definition
pe.h:14
e_res2
uint16_t e_res2[10]
Definition
pe.h:17
EFI_IMAGE_SIZEOF_SHORT_NAME
#define EFI_IMAGE_SIZEOF_SHORT_NAME
Definition
PeImage.h:274
EFI_IMAGE_NUMBER_OF_DIRECTORY_ENTRIES
#define EFI_IMAGE_NUMBER_OF_DIRECTORY_ENTRIES
Definition
PeImage.h:133
Name
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char * Name
Definition
acpixf.h:1159
Type
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn BOOLEAN Physical UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER void *Data ACPI_OBJECT_HANDLER void **Data ACPI_STRING ACPI_OBJECT_LIST ACPI_BUFFER *ReturnObjectBuffer ACPI_DEVICE_INFO **ReturnBuffer ACPI_HANDLE ACPI_HANDLE ACPI_HANDLE *OutHandle ACPI_HANDLE *OutHandle void *Context void *Context ACPI_EVENT_HANDLER Handler UINT32 UINT32 Type
Definition
acpixf.h:894
UINT16
unsigned short UINT16
Definition
actypes.h:237
UINT8
unsigned char UINT8
Definition
actypes.h:236
UINT64
COMPILER_DEPENDENT_UINT64 UINT64
Definition
actypes.h:239
EFI_IMAGE_ARCHIVE_MEMBER_HEADER
Definition
PeImage.h:531
EFI_IMAGE_BASE_RELOCATION
Definition
PeImage.h:477
EFI_IMAGE_BASE_RELOCATION::SizeOfBlock
UINT32 SizeOfBlock
Definition
PeImage.h:479
EFI_IMAGE_BASE_RELOCATION::VirtualAddress
UINT32 VirtualAddress
Definition
PeImage.h:478
EFI_IMAGE_DATA_DIRECTORY
Definition
PeImage.h:113
EFI_IMAGE_DATA_DIRECTORY::VirtualAddress
UINT32 VirtualAddress
Definition
PeImage.h:114
EFI_IMAGE_DATA_DIRECTORY::Size
UINT32 Size
Definition
PeImage.h:115
EFI_IMAGE_DEBUG_CODEVIEW_MTOC_ENTRY
Definition
PeImage.h:654
EFI_IMAGE_DEBUG_CODEVIEW_MTOC_ENTRY::MachOUuid
GUID MachOUuid
Definition
PeImage.h:656
EFI_IMAGE_DEBUG_CODEVIEW_MTOC_ENTRY::Signature
UINT32 Signature
"MTOC".
Definition
PeImage.h:655
EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY
Definition
PeImage.h:623
EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY::Unknown3
UINT32 Unknown3
Definition
PeImage.h:627
EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY::Unknown
UINT32 Unknown
Definition
PeImage.h:625
EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY::Signature
UINT32 Signature
"NB10"
Definition
PeImage.h:624
EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY::Unknown2
UINT32 Unknown2
Definition
PeImage.h:626
EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY
Definition
PeImage.h:637
EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY::Unknown2
UINT32 Unknown2
Definition
PeImage.h:640
EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY::Unknown4
UINT32 Unknown4
Definition
PeImage.h:642
EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY::Signature
UINT32 Signature
"RSDS".
Definition
PeImage.h:638
EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY::Unknown3
UINT32 Unknown3
Definition
PeImage.h:641
EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY::Unknown
UINT32 Unknown
Definition
PeImage.h:639
EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY::Unknown5
UINT32 Unknown5
Definition
PeImage.h:643
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY
Definition
PeImage.h:606
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY::Type
UINT32 Type
Definition
PeImage.h:611
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY::Characteristics
UINT32 Characteristics
Definition
PeImage.h:607
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY::MajorVersion
UINT16 MajorVersion
Definition
PeImage.h:609
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY::SizeOfData
UINT32 SizeOfData
Definition
PeImage.h:612
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY::TimeDateStamp
UINT32 TimeDateStamp
Definition
PeImage.h:608
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY::MinorVersion
UINT16 MinorVersion
Definition
PeImage.h:610
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY::FileOffset
UINT32 FileOffset
The file pointer to the debug data.
Definition
PeImage.h:614
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY::RVA
UINT32 RVA
The address of the debug data when loaded, relative to the image base.
Definition
PeImage.h:613
EFI_IMAGE_DOS_HEADER
Definition
PeImage.h:56
EFI_IMAGE_DOS_HEADER::e_oemid
UINT16 e_oemid
OEM identifier (for e_oeminfo).
Definition
PeImage.h:72
EFI_IMAGE_DOS_HEADER::e_oeminfo
UINT16 e_oeminfo
OEM information; e_oemid specific.
Definition
PeImage.h:73
EFI_IMAGE_DOS_HEADER::e_maxalloc
UINT16 e_maxalloc
Maximum extra paragraphs needed.
Definition
PeImage.h:63
EFI_IMAGE_DOS_HEADER::e_lfanew
UINT32 e_lfanew
File address of new exe header.
Definition
PeImage.h:75
EFI_IMAGE_DOS_HEADER::e_crlc
UINT16 e_crlc
Relocations.
Definition
PeImage.h:60
EFI_IMAGE_DOS_HEADER::e_ip
UINT16 e_ip
Initial IP value.
Definition
PeImage.h:67
EFI_IMAGE_DOS_HEADER::e_cparhdr
UINT16 e_cparhdr
Size of header in paragraphs.
Definition
PeImage.h:61
EFI_IMAGE_DOS_HEADER::e_magic
UINT16 e_magic
Magic number.
Definition
PeImage.h:57
EFI_IMAGE_DOS_HEADER::e_minalloc
UINT16 e_minalloc
Minimum extra paragraphs needed.
Definition
PeImage.h:62
EFI_IMAGE_DOS_HEADER::e_csum
UINT16 e_csum
Checksum.
Definition
PeImage.h:66
EFI_IMAGE_DOS_HEADER::e_sp
UINT16 e_sp
Initial SP value.
Definition
PeImage.h:65
EFI_IMAGE_DOS_HEADER::e_cblp
UINT16 e_cblp
Bytes on last page of file.
Definition
PeImage.h:58
EFI_IMAGE_DOS_HEADER::e_ss
UINT16 e_ss
Initial (relative) SS value.
Definition
PeImage.h:64
EFI_IMAGE_DOS_HEADER::e_ovno
UINT16 e_ovno
Overlay number.
Definition
PeImage.h:70
EFI_IMAGE_DOS_HEADER::e_cp
UINT16 e_cp
Pages in file.
Definition
PeImage.h:59
EFI_IMAGE_DOS_HEADER::e_lfarlc
UINT16 e_lfarlc
File address of relocation table.
Definition
PeImage.h:69
EFI_IMAGE_DOS_HEADER::e_cs
UINT16 e_cs
Initial (relative) CS value.
Definition
PeImage.h:68
EFI_IMAGE_EXPORT_DIRECTORY
Definition
PeImage.h:554
EFI_IMAGE_EXPORT_DIRECTORY::NumberOfFunctions
UINT32 NumberOfFunctions
Definition
PeImage.h:561
EFI_IMAGE_EXPORT_DIRECTORY::MajorVersion
UINT16 MajorVersion
Definition
PeImage.h:557
EFI_IMAGE_EXPORT_DIRECTORY::Name
UINT32 Name
Definition
PeImage.h:559
EFI_IMAGE_EXPORT_DIRECTORY::Characteristics
UINT32 Characteristics
Definition
PeImage.h:555
EFI_IMAGE_EXPORT_DIRECTORY::MinorVersion
UINT16 MinorVersion
Definition
PeImage.h:558
EFI_IMAGE_EXPORT_DIRECTORY::AddressOfNameOrdinals
UINT32 AddressOfNameOrdinals
Definition
PeImage.h:565
EFI_IMAGE_EXPORT_DIRECTORY::AddressOfFunctions
UINT32 AddressOfFunctions
Definition
PeImage.h:563
EFI_IMAGE_EXPORT_DIRECTORY::TimeDateStamp
UINT32 TimeDateStamp
Definition
PeImage.h:556
EFI_IMAGE_EXPORT_DIRECTORY::Base
UINT32 Base
Definition
PeImage.h:560
EFI_IMAGE_EXPORT_DIRECTORY::AddressOfNames
UINT32 AddressOfNames
Definition
PeImage.h:564
EFI_IMAGE_EXPORT_DIRECTORY::NumberOfNames
UINT32 NumberOfNames
Definition
PeImage.h:562
EFI_IMAGE_FILE_HEADER
Definition
PeImage.h:81
EFI_IMAGE_FILE_HEADER::Characteristics
UINT16 Characteristics
Definition
PeImage.h:88
EFI_IMAGE_FILE_HEADER::TimeDateStamp
UINT32 TimeDateStamp
Definition
PeImage.h:84
EFI_IMAGE_FILE_HEADER::PointerToSymbolTable
UINT32 PointerToSymbolTable
Definition
PeImage.h:85
EFI_IMAGE_FILE_HEADER::NumberOfSymbols
UINT32 NumberOfSymbols
Definition
PeImage.h:86
EFI_IMAGE_FILE_HEADER::SizeOfOptionalHeader
UINT16 SizeOfOptionalHeader
Definition
PeImage.h:87
EFI_IMAGE_FILE_HEADER::Machine
UINT16 Machine
Definition
PeImage.h:82
EFI_IMAGE_FILE_HEADER::NumberOfSections
UINT16 NumberOfSections
Definition
PeImage.h:83
EFI_IMAGE_IMPORT_BY_NAME
Definition
PeImage.h:571
EFI_IMAGE_IMPORT_BY_NAME::Hint
UINT16 Hint
Definition
PeImage.h:572
EFI_IMAGE_IMPORT_DESCRIPTOR
Definition
PeImage.h:594
EFI_IMAGE_IMPORT_DESCRIPTOR::ForwarderChain
UINT32 ForwarderChain
Definition
PeImage.h:597
EFI_IMAGE_IMPORT_DESCRIPTOR::TimeDateStamp
UINT32 TimeDateStamp
Definition
PeImage.h:596
EFI_IMAGE_IMPORT_DESCRIPTOR::FirstThunk
EFI_IMAGE_THUNK_DATA * FirstThunk
Definition
PeImage.h:599
EFI_IMAGE_IMPORT_DESCRIPTOR::Characteristics
UINT32 Characteristics
Definition
PeImage.h:595
EFI_IMAGE_IMPORT_DESCRIPTOR::Name
UINT32 Name
Definition
PeImage.h:598
EFI_IMAGE_LINENUMBER
Definition
PeImage.h:505
EFI_IMAGE_LINENUMBER::SymbolTableIndex
UINT32 SymbolTableIndex
Symbol table index of function name if Linenumber is 0.
Definition
PeImage.h:507
EFI_IMAGE_LINENUMBER::VirtualAddress
UINT32 VirtualAddress
Virtual address of line number.
Definition
PeImage.h:508
EFI_IMAGE_LINENUMBER::Linenumber
UINT16 Linenumber
Line number.
Definition
PeImage.h:510
EFI_IMAGE_NT_HEADERS32
Definition
PeImage.h:241
EFI_IMAGE_NT_HEADERS32::OptionalHeader
EFI_IMAGE_OPTIONAL_HEADER32 OptionalHeader
Definition
PeImage.h:244
EFI_IMAGE_NT_HEADERS32::Signature
UINT32 Signature
Definition
PeImage.h:242
EFI_IMAGE_NT_HEADERS32::FileHeader
EFI_IMAGE_FILE_HEADER FileHeader
Definition
PeImage.h:243
EFI_IMAGE_NT_HEADERS64
Definition
PeImage.h:253
EFI_IMAGE_NT_HEADERS64::FileHeader
EFI_IMAGE_FILE_HEADER FileHeader
Definition
PeImage.h:255
EFI_IMAGE_NT_HEADERS64::OptionalHeader
EFI_IMAGE_OPTIONAL_HEADER64 OptionalHeader
Definition
PeImage.h:256
EFI_IMAGE_NT_HEADERS64::Signature
UINT32 Signature
Definition
PeImage.h:254
EFI_IMAGE_OPTIONAL_HEADER32
Definition
PeImage.h:146
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfStackCommit
UINT32 SizeOfStackCommit
Definition
PeImage.h:178
EFI_IMAGE_OPTIONAL_HEADER32::CheckSum
UINT32 CheckSum
Definition
PeImage.h:174
EFI_IMAGE_OPTIONAL_HEADER32::BaseOfData
UINT32 BaseOfData
Definition
PeImage.h:158
EFI_IMAGE_OPTIONAL_HEADER32::LoaderFlags
UINT32 LoaderFlags
Definition
PeImage.h:181
EFI_IMAGE_OPTIONAL_HEADER32::FileAlignment
UINT32 FileAlignment
Definition
PeImage.h:164
EFI_IMAGE_OPTIONAL_HEADER32::MajorOperatingSystemVersion
UINT16 MajorOperatingSystemVersion
Definition
PeImage.h:165
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfHeaders
UINT32 SizeOfHeaders
Definition
PeImage.h:173
EFI_IMAGE_OPTIONAL_HEADER32::MinorSubsystemVersion
UINT16 MinorSubsystemVersion
Definition
PeImage.h:170
EFI_IMAGE_OPTIONAL_HEADER32::BaseOfCode
UINT32 BaseOfCode
Definition
PeImage.h:157
EFI_IMAGE_OPTIONAL_HEADER32::MinorLinkerVersion
UINT8 MinorLinkerVersion
Definition
PeImage.h:152
EFI_IMAGE_OPTIONAL_HEADER32::SectionAlignment
UINT32 SectionAlignment
Definition
PeImage.h:163
EFI_IMAGE_OPTIONAL_HEADER32::Subsystem
UINT16 Subsystem
Definition
PeImage.h:175
EFI_IMAGE_OPTIONAL_HEADER32::ImageBase
UINT32 ImageBase
Definition
PeImage.h:162
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfInitializedData
UINT32 SizeOfInitializedData
Definition
PeImage.h:154
EFI_IMAGE_OPTIONAL_HEADER32::MajorSubsystemVersion
UINT16 MajorSubsystemVersion
Definition
PeImage.h:169
EFI_IMAGE_OPTIONAL_HEADER32::Magic
UINT16 Magic
Definition
PeImage.h:150
EFI_IMAGE_OPTIONAL_HEADER32::MajorLinkerVersion
UINT8 MajorLinkerVersion
Definition
PeImage.h:151
EFI_IMAGE_OPTIONAL_HEADER32::MajorImageVersion
UINT16 MajorImageVersion
Definition
PeImage.h:167
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfHeapCommit
UINT32 SizeOfHeapCommit
Definition
PeImage.h:180
EFI_IMAGE_OPTIONAL_HEADER32::MinorOperatingSystemVersion
UINT16 MinorOperatingSystemVersion
Definition
PeImage.h:166
EFI_IMAGE_OPTIONAL_HEADER32::AddressOfEntryPoint
UINT32 AddressOfEntryPoint
Definition
PeImage.h:156
EFI_IMAGE_OPTIONAL_HEADER32::NumberOfRvaAndSizes
UINT32 NumberOfRvaAndSizes
Definition
PeImage.h:182
EFI_IMAGE_OPTIONAL_HEADER32::DllCharacteristics
UINT16 DllCharacteristics
Definition
PeImage.h:176
EFI_IMAGE_OPTIONAL_HEADER32::MinorImageVersion
UINT16 MinorImageVersion
Definition
PeImage.h:168
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfHeapReserve
UINT32 SizeOfHeapReserve
Definition
PeImage.h:179
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfCode
UINT32 SizeOfCode
Definition
PeImage.h:153
EFI_IMAGE_OPTIONAL_HEADER32::Win32VersionValue
UINT32 Win32VersionValue
Definition
PeImage.h:171
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfUninitializedData
UINT32 SizeOfUninitializedData
Definition
PeImage.h:155
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfImage
UINT32 SizeOfImage
Definition
PeImage.h:172
EFI_IMAGE_OPTIONAL_HEADER32::SizeOfStackReserve
UINT32 SizeOfStackReserve
Definition
PeImage.h:177
EFI_IMAGE_OPTIONAL_HEADER64
Definition
PeImage.h:197
EFI_IMAGE_OPTIONAL_HEADER64::NumberOfRvaAndSizes
UINT32 NumberOfRvaAndSizes
Definition
PeImage.h:232
EFI_IMAGE_OPTIONAL_HEADER64::MajorLinkerVersion
UINT8 MajorLinkerVersion
Definition
PeImage.h:202
EFI_IMAGE_OPTIONAL_HEADER64::ImageBase
UINT64 ImageBase
Definition
PeImage.h:212
EFI_IMAGE_OPTIONAL_HEADER64::MajorSubsystemVersion
UINT16 MajorSubsystemVersion
Definition
PeImage.h:219
EFI_IMAGE_OPTIONAL_HEADER64::MinorOperatingSystemVersion
UINT16 MinorOperatingSystemVersion
Definition
PeImage.h:216
EFI_IMAGE_OPTIONAL_HEADER64::MinorImageVersion
UINT16 MinorImageVersion
Definition
PeImage.h:218
EFI_IMAGE_OPTIONAL_HEADER64::CheckSum
UINT32 CheckSum
Definition
PeImage.h:224
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfHeapCommit
UINT64 SizeOfHeapCommit
Definition
PeImage.h:230
EFI_IMAGE_OPTIONAL_HEADER64::MinorLinkerVersion
UINT8 MinorLinkerVersion
Definition
PeImage.h:203
EFI_IMAGE_OPTIONAL_HEADER64::SectionAlignment
UINT32 SectionAlignment
Definition
PeImage.h:213
EFI_IMAGE_OPTIONAL_HEADER64::Magic
UINT16 Magic
Definition
PeImage.h:201
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfHeapReserve
UINT64 SizeOfHeapReserve
Definition
PeImage.h:229
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfUninitializedData
UINT32 SizeOfUninitializedData
Definition
PeImage.h:206
EFI_IMAGE_OPTIONAL_HEADER64::MajorImageVersion
UINT16 MajorImageVersion
Definition
PeImage.h:217
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfStackReserve
UINT64 SizeOfStackReserve
Definition
PeImage.h:227
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfHeaders
UINT32 SizeOfHeaders
Definition
PeImage.h:223
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfStackCommit
UINT64 SizeOfStackCommit
Definition
PeImage.h:228
EFI_IMAGE_OPTIONAL_HEADER64::Subsystem
UINT16 Subsystem
Definition
PeImage.h:225
EFI_IMAGE_OPTIONAL_HEADER64::AddressOfEntryPoint
UINT32 AddressOfEntryPoint
Definition
PeImage.h:207
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfCode
UINT32 SizeOfCode
Definition
PeImage.h:204
EFI_IMAGE_OPTIONAL_HEADER64::MinorSubsystemVersion
UINT16 MinorSubsystemVersion
Definition
PeImage.h:220
EFI_IMAGE_OPTIONAL_HEADER64::Win32VersionValue
UINT32 Win32VersionValue
Definition
PeImage.h:221
EFI_IMAGE_OPTIONAL_HEADER64::FileAlignment
UINT32 FileAlignment
Definition
PeImage.h:214
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfImage
UINT32 SizeOfImage
Definition
PeImage.h:222
EFI_IMAGE_OPTIONAL_HEADER64::BaseOfCode
UINT32 BaseOfCode
Definition
PeImage.h:208
EFI_IMAGE_OPTIONAL_HEADER64::SizeOfInitializedData
UINT32 SizeOfInitializedData
Definition
PeImage.h:205
EFI_IMAGE_OPTIONAL_HEADER64::LoaderFlags
UINT32 LoaderFlags
Definition
PeImage.h:231
EFI_IMAGE_OPTIONAL_HEADER64::DllCharacteristics
UINT16 DllCharacteristics
Definition
PeImage.h:226
EFI_IMAGE_OPTIONAL_HEADER64::MajorOperatingSystemVersion
UINT16 MajorOperatingSystemVersion
Definition
PeImage.h:215
EFI_IMAGE_RELOCATION
Definition
PeImage.h:429
EFI_IMAGE_RELOCATION::Type
UINT16 Type
Definition
PeImage.h:432
EFI_IMAGE_RELOCATION::VirtualAddress
UINT32 VirtualAddress
Definition
PeImage.h:430
EFI_IMAGE_RELOCATION::SymbolTableIndex
UINT32 SymbolTableIndex
Definition
PeImage.h:431
EFI_IMAGE_RESOURCE_DATA_ENTRY
Definition
PeImage.h:708
EFI_IMAGE_RESOURCE_DATA_ENTRY::CodePage
UINT32 CodePage
Definition
PeImage.h:711
EFI_IMAGE_RESOURCE_DATA_ENTRY::Reserved
UINT32 Reserved
Definition
PeImage.h:712
EFI_IMAGE_RESOURCE_DATA_ENTRY::Size
UINT32 Size
Definition
PeImage.h:710
EFI_IMAGE_RESOURCE_DATA_ENTRY::OffsetToData
UINT32 OffsetToData
Definition
PeImage.h:709
EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY
Definition
PeImage.h:680
EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY::DataIsDirectory
UINT32 DataIsDirectory
Definition
PeImage.h:692
EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY::OffsetToDirectory
UINT32 OffsetToDirectory
Definition
PeImage.h:691
EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY::NameIsString
UINT32 NameIsString
Definition
PeImage.h:684
EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY::NameOffset
UINT32 NameOffset
Definition
PeImage.h:683
EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY::OffsetToData
UINT32 OffsetToData
Definition
PeImage.h:689
EFI_IMAGE_RESOURCE_DIRECTORY_ENTRY::Id
UINT32 Id
Definition
PeImage.h:686
EFI_IMAGE_RESOURCE_DIRECTORY_STRING
Definition
PeImage.h:700
EFI_IMAGE_RESOURCE_DIRECTORY_STRING::Length
UINT16 Length
Definition
PeImage.h:701
EFI_IMAGE_RESOURCE_DIRECTORY
Definition
PeImage.h:665
EFI_IMAGE_RESOURCE_DIRECTORY::NumberOfIdEntries
UINT16 NumberOfIdEntries
Definition
PeImage.h:671
EFI_IMAGE_RESOURCE_DIRECTORY::MajorVersion
UINT16 MajorVersion
Definition
PeImage.h:668
EFI_IMAGE_RESOURCE_DIRECTORY::Characteristics
UINT32 Characteristics
Definition
PeImage.h:666
EFI_IMAGE_RESOURCE_DIRECTORY::NumberOfNamedEntries
UINT16 NumberOfNamedEntries
Definition
PeImage.h:670
EFI_IMAGE_RESOURCE_DIRECTORY::MinorVersion
UINT16 MinorVersion
Definition
PeImage.h:669
EFI_IMAGE_RESOURCE_DIRECTORY::TimeDateStamp
UINT32 TimeDateStamp
Definition
PeImage.h:667
EFI_IMAGE_SECTION_HEADER
Definition
PeImage.h:279
EFI_IMAGE_SECTION_HEADER::VirtualAddress
UINT32 VirtualAddress
Definition
PeImage.h:285
EFI_IMAGE_SECTION_HEADER::PointerToRawData
UINT32 PointerToRawData
Definition
PeImage.h:287
EFI_IMAGE_SECTION_HEADER::VirtualSize
UINT32 VirtualSize
Definition
PeImage.h:283
EFI_IMAGE_SECTION_HEADER::NumberOfLinenumbers
UINT16 NumberOfLinenumbers
Definition
PeImage.h:291
EFI_IMAGE_SECTION_HEADER::SizeOfRawData
UINT32 SizeOfRawData
Definition
PeImage.h:286
EFI_IMAGE_SECTION_HEADER::PointerToRelocations
UINT32 PointerToRelocations
Definition
PeImage.h:288
EFI_IMAGE_SECTION_HEADER::PointerToLinenumbers
UINT32 PointerToLinenumbers
Definition
PeImage.h:289
EFI_IMAGE_SECTION_HEADER::NumberOfRelocations
UINT16 NumberOfRelocations
Definition
PeImage.h:290
EFI_IMAGE_SECTION_HEADER::PhysicalAddress
UINT32 PhysicalAddress
Definition
PeImage.h:282
EFI_IMAGE_SECTION_HEADER::Characteristics
UINT32 Characteristics
Definition
PeImage.h:292
EFI_IMAGE_THUNK_DATA
Definition
PeImage.h:579
EFI_IMAGE_THUNK_DATA::Ordinal
UINT32 Ordinal
Definition
PeImage.h:582
EFI_IMAGE_THUNK_DATA::Function
UINT32 Function
Definition
PeImage.h:581
EFI_IMAGE_THUNK_DATA::AddressOfData
EFI_IMAGE_IMPORT_BY_NAME * AddressOfData
Definition
PeImage.h:583
EFI_TE_IMAGE_HEADER
Definition
PeImage.h:718
EFI_TE_IMAGE_HEADER::AddressOfEntryPoint
UINT32 AddressOfEntryPoint
Offset to entry point – from original optional header.
Definition
PeImage.h:724
EFI_TE_IMAGE_HEADER::Signature
UINT16 Signature
The signature for TE format = "VZ".
Definition
PeImage.h:719
EFI_TE_IMAGE_HEADER::Subsystem
UINT8 Subsystem
From original optional header.
Definition
PeImage.h:722
EFI_TE_IMAGE_HEADER::ImageBase
UINT64 ImageBase
From original file header.
Definition
PeImage.h:726
EFI_TE_IMAGE_HEADER::BaseOfCode
UINT32 BaseOfCode
From original image – required for ITP debug.
Definition
PeImage.h:725
EFI_TE_IMAGE_HEADER::StrippedSize
UINT16 StrippedSize
Number of bytes we removed from the header.
Definition
PeImage.h:723
EFI_TE_IMAGE_HEADER::NumberOfSections
UINT8 NumberOfSections
From the original file header.
Definition
PeImage.h:721
EFI_TE_IMAGE_HEADER::Machine
UINT16 Machine
From the original file header.
Definition
PeImage.h:720
GUID
Definition
Base.h:281
EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION
Definition
PeImage.h:749
EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION::Te
EFI_TE_IMAGE_HEADER * Te
Definition
PeImage.h:752
EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION::Union
EFI_IMAGE_OPTIONAL_HEADER_UNION * Union
Definition
PeImage.h:753
EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION::Pe32
EFI_IMAGE_NT_HEADERS32 * Pe32
Definition
PeImage.h:750
EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION::Pe32Plus
EFI_IMAGE_NT_HEADERS64 * Pe32Plus
Definition
PeImage.h:751
EFI_IMAGE_OPTIONAL_HEADER_UNION
Definition
PeImage.h:743
EFI_IMAGE_OPTIONAL_HEADER_UNION::Pe32Plus
EFI_IMAGE_NT_HEADERS64 Pe32Plus
Definition
PeImage.h:745
EFI_IMAGE_OPTIONAL_HEADER_UNION::Te
EFI_TE_IMAGE_HEADER Te
Definition
PeImage.h:746
EFI_IMAGE_OPTIONAL_HEADER_UNION::Pe32
EFI_IMAGE_NT_HEADERS32 Pe32
Definition
PeImage.h:744
Generated by
1.9.8