mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-01-08 21:47:59 -05:00
Merge remote-tracking branch 'origin/GP-6257_d-millar_search_memory'
This commit is contained in:
@@ -39,14 +39,15 @@ public enum DebuggerSearchRegionFactory {
|
|||||||
return set;
|
return set;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
VALID("Valid Addresses", """
|
READABLE("Readable Addresses", """
|
||||||
Searches listed memory regions in the space.""") {
|
Searches listed regions marked as readable in the space.""") {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
AddressSetView getAddresses(AddressSpace space, Program program) {
|
AddressSetView getAddresses(AddressSpace space, Program program) {
|
||||||
AddressSet set = new AddressSet();
|
AddressSet set = new AddressSet();
|
||||||
for (MemoryBlock block : program.getMemory().getBlocks()) {
|
for (MemoryBlock block : program.getMemory().getBlocks()) {
|
||||||
if (space == null || space == block.getStart().getAddressSpace()) {
|
if (block.isRead() &&
|
||||||
|
(space == null || space == block.getStart().getAddressSpace())) {
|
||||||
set.add(block.getAddressRange());
|
set.add(block.getAddressRange());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -72,6 +73,21 @@ public enum DebuggerSearchRegionFactory {
|
|||||||
}
|
}
|
||||||
return set;
|
return set;
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
EXECUTABLE("Executable Addresses", """
|
||||||
|
Searches listed regions marked as executable in the space.""") {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
AddressSetView getAddresses(AddressSpace space, Program program) {
|
||||||
|
AddressSet set = new AddressSet();
|
||||||
|
for (MemoryBlock block : program.getMemory().getBlocks()) {
|
||||||
|
if (block.isExecute() &&
|
||||||
|
(space == null || space == block.getStart().getAddressSpace())) {
|
||||||
|
set.add(block.getAddressRange());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return set;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
public static final List<DebuggerSearchRegionFactory> ALL = List.of(values());
|
public static final List<DebuggerSearchRegionFactory> ALL = List.of(values());
|
||||||
|
|||||||
Reference in New Issue
Block a user