Automagic: Ensure reserved bits are for valid pages

This commit is contained in:
Mike Auty
2021-09-12 12:55:42 +01:00
parent 807662c41f
commit 48e802e255
+1 -1
View File
@@ -62,7 +62,7 @@ class DtbSelfReferential:
ptr, = struct.unpack(self.ptr_struct, ptr_data)
# For both Intel-32e, bit 7 is reserved (more are reserved in PAE), so if that's ever set,
# we can move on
if ptr & self.reserved_bits:
if (ptr & self.reserved_bits) and (ptr & 0x01):
return None
if ((ptr & self.mask) == (data_offset + page_offset)) and (data_offset + page_offset > 0):
# Pointer must be valid