|
|
|
@ -440,21 +440,13 @@ class Aarch64Ops(ArchOps):
|
|
|
|
return int(pwndbg.aglib.regs.SCTLR) & BIT(0) != 0
|
|
|
|
return int(pwndbg.aglib.regs.SCTLR) & BIT(0) != 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_arch_paginginfo: ArchPagingInfo = None
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@pwndbg.lib.cache.cache_until("start")
|
|
|
|
@pwndbg.lib.cache.cache_until("start")
|
|
|
|
def arch_paginginfo() -> ArchPagingInfo:
|
|
|
|
def arch_paginginfo() -> ArchPagingInfo | None:
|
|
|
|
_arch_paginginfo = None
|
|
|
|
if pwndbg.aglib.arch.name == "aarch64":
|
|
|
|
|
|
|
|
return pwndbg.aglib.kernel.paging.Aarch64PagingInfo()
|
|
|
|
if _arch_paginginfo is None:
|
|
|
|
elif pwndbg.aglib.arch.name == "x86-64":
|
|
|
|
if pwndbg.aglib.arch.name == "aarch64":
|
|
|
|
return pwndbg.aglib.kernel.paging.x86_64PagingInfo()
|
|
|
|
_arch_paginginfo = pwndbg.aglib.kernel.paging.Aarch64PagingInfo()
|
|
|
|
return None
|
|
|
|
|
|
|
|
|
|
|
|
elif pwndbg.aglib.arch.name == "x86-64":
|
|
|
|
|
|
|
|
_arch_paginginfo = pwndbg.aglib.kernel.paging.x86_64PagingInfo()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return _arch_paginginfo
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@pwndbg.lib.cache.cache_until("start")
|
|
|
|
@pwndbg.lib.cache.cache_until("start")
|
|
|
|
|