We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent c02405e commit 4cd37f5Copy full SHA for 4cd37f5
qiling/os/uefi/UefiSpec.py
@@ -38,17 +38,19 @@ class EFI_LOCATE_SEARCH_TYPE(ENUM):
38
]
39
40
class EFI_TIME_CAPABILITIES(STRUCT):
41
+ _pack_ = 8
42
+
43
_fields_ = [
44
('Resolution', UINT32),
45
('Accuracy', UINT32),
46
('SetsToZero', BOOLEAN),
- ('PADDING_0', UINT8 * 3)
47
48
49
class EFI_MEMORY_DESCRIPTOR(STRUCT):
50
51
52
53
('Type', UINT32),
- ('PADDING_0', UINT8 * 4),
54
('PhysicalStart', EFI_PHYSICAL_ADDRESS),
55
('VirtualStart', EFI_VIRTUAL_ADDRESS),
56
('NumberOfPages', UINT64),
@@ -223,11 +225,12 @@ class EFI_CONFIGURATION_TABLE(STRUCT):
223
225
EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL = STRUCT
224
226
227
class EFI_SYSTEM_TABLE(STRUCT):
228
229
230
231
('Hdr', EFI_TABLE_HEADER),
232
('FirmwareVendor', PTR(CHAR16)),
233
('FirmwareRevision', UINT32),
234
('ConsoleInHandle', EFI_HANDLE),
235
('ConIn', PTR(EFI_SIMPLE_TEXT_INPUT_PROTOCOL)),
236
('ConsoleOutHandle', EFI_HANDLE),
qiling/os/uefi/ds.py
@@ -25,13 +25,14 @@ class EFI_GCD_MEMORY_TYPE(ENUM):
25
26
27
class EFI_GCD_MEMORY_SPACE_DESCRIPTOR(STRUCT):
28
29
30
31
('BaseAddress', EFI_PHYSICAL_ADDRESS),
32
('Length', UINT64),
33
('Capabilities', UINT64),
34
('Attributes', UINT64),
35
('GcdMemoryType', EFI_GCD_MEMORY_TYPE),
36
('ImageHandle', EFI_HANDLE),
37
('DeviceHandle', EFI_HANDLE)
@@ -45,11 +46,12 @@ class EFI_GCD_IO_TYPE(ENUM):
class EFI_GCD_IO_SPACE_DESCRIPTOR(STRUCT):
('GcdIoType', EFI_GCD_IO_TYPE),
57
qiling/os/uefi/protocols/EfiLoadedImageProtocol.py
@@ -9,16 +9,16 @@
9
from ..UefiMultiPhase import EFI_MEMORY_TYPE
10
11
class EFI_LOADED_IMAGE_PROTOCOL(STRUCT):
12
13
14
15
('Revision', UINT32),
16
('ParentHandle', EFI_HANDLE),
17
('SystemTable', PTR(EFI_SYSTEM_TABLE)),
18
('DeviceHandle', EFI_HANDLE),
19
('FilePath', PTR(EFI_DEVICE_PATH_PROTOCOL)),
20
('Reserved', PTR(VOID)),
21
('LoadOptionsSize', UINT32),
- ('PADDING_1', UINT8 * 4),
22
('LoadOptions', PTR(VOID)),
23
('ImageBase', PTR(VOID)),
24
('ImageSize', UINT64),
qiling/os/uefi/protocols/EfiSmmAccess2Protocol.py
@@ -24,15 +24,15 @@ class EFI_MMRAM_DESCRIPTOR(STRUCT):
# @see: MdePkg\Include\Protocol\MmAccess.h
class EFI_SMM_ACCESS2_PROTOCOL(STRUCT):
EFI_SMM_ACCESS2_PROTOCOL = STRUCT
('Open', FUNCPTR(EFI_STATUS, PTR(EFI_SMM_ACCESS2_PROTOCOL))),
('Close', FUNCPTR(EFI_STATUS, PTR(EFI_SMM_ACCESS2_PROTOCOL))),
('Lock', FUNCPTR(EFI_STATUS, PTR(EFI_SMM_ACCESS2_PROTOCOL))),
('GetCapabilities', FUNCPTR(EFI_STATUS, PTR(EFI_SMM_ACCESS2_PROTOCOL), PTR(UINTN), PTR(EFI_MMRAM_DESCRIPTOR))),
('LockState', BOOLEAN),
- ('OpenState', BOOLEAN),
- ('PADDING_0', CHAR8 * 6)
+ ('OpenState', BOOLEAN)
@dxeapi(params = {
qiling/os/uefi/protocols/EfiSmmSwDispatch2Protocol.py
@@ -14,6 +14,8 @@
MAXIMUM_SWI_VALUE = 0xff
class EFI_SMM_SW_CONTEXT(STRUCT):
('SwSmiCpuIndex', UINTN), # index of the cpu which generated the swsmi
('CommandPort', UINT8), # port number used to trigger the swsmi
qiling/os/uefi/smst.py
@@ -45,12 +45,12 @@ class EFI_SMM_CPU_IO2_PROTOCOL(STRUCT):
class EFI_SMM_SYSTEM_TABLE2(STRUCT):
EFI_SMM_SYSTEM_TABLE2 = STRUCT
('SmmFirmwareVendor', PTR(CHAR16)),
('SmmFirmwareRevision', UINT32),
('SmmInstallConfigurationTable', FUNCPTR(EFI_STATUS, PTR(EFI_SMM_SYSTEM_TABLE2), PTR(EFI_GUID), PTR(VOID), UINTN)),
('SmmIo', EFI_SMM_CPU_IO2_PROTOCOL),
('SmmAllocatePool', FUNCPTR(EFI_STATUS, EFI_MEMORY_TYPE, UINTN, PTR(PTR(VOID)))),
@@ -244,7 +244,6 @@ def initialize(ql: Qiling, context, gSmst: int):
244
('Hdr', None),
245
('SmmFirmwareVendor', None),
246
('SmmFirmwareRevision', None),
247
- ('PADDING_0', None),
248
('SmmInstallConfigurationTable', hook_SmmInstallConfigurationTable),
249
('SmmIo', None),
250
('SmmAllocatePool', hook_SmmAllocatePool),
0 commit comments