Merge remote-tracking branch 'origin/patch'

This commit is contained in:
ghidra1
2026-01-16 10:31:39 -05:00
2 changed files with 13 additions and 13 deletions

View File

@@ -4,9 +4,9 @@
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*
* http://www.apache.org/licenses/LICENSE-2.0
*
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -231,7 +231,7 @@ public class PcodeParserTest extends AbstractGhidraHeadlessIntegrationTest {
assertEquals(vec[1].getOpcode(), PcodeOp.INT_EQUAL);
assertTrue(
testVarnode(vec[1].getOutput(), SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x80, 1));
testVarnode(vec[1].getOutput(), SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x100, 1));
assertEquals(vec[1].getInput().length, 2);
assertTrue(testVarnode(vec[1].getInput()[0], "register", 0, 2));
assertTrue(testVarnode(vec[1].getInput()[1], SpaceNames.CONSTANT_SPACE_NAME, 0, 2));
@@ -241,18 +241,18 @@ public class PcodeParserTest extends AbstractGhidraHeadlessIntegrationTest {
assertEquals(vec[2].getInput().length, 2);
assertTrue(testInstNext(vec[2].getInput()[0]));
assertTrue(
testVarnode(vec[2].getInput()[1], SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x80, 1));
testVarnode(vec[2].getInput()[1], SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x100, 1));
// inst_next2
assertEquals(vec[3].getOpcode(), PcodeOp.COPY);
assertTrue(
testVarnode(vec[3].getOutput(), SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x100, 1));
testVarnode(vec[3].getOutput(), SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x200, 1));
assertEquals(vec[3].getInput().length, 1);
assertTrue(testInstNext2Constant(vec[3].getInput()[0], 1));
assertEquals(vec[4].getOpcode(), PcodeOp.INT_EQUAL);
assertTrue(
testVarnode(vec[4].getOutput(), SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x180, 1));
testVarnode(vec[4].getOutput(), SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x300, 1));
assertEquals(vec[4].getInput().length, 2);
assertTrue(testVarnode(vec[4].getInput()[0], "register", 0xc, 2));
assertTrue(testVarnode(vec[4].getInput()[1], SpaceNames.CONSTANT_SPACE_NAME, 0, 2));
@@ -262,7 +262,7 @@ public class PcodeParserTest extends AbstractGhidraHeadlessIntegrationTest {
assertEquals(vec[5].getInput().length, 2);
assertTrue(testInstNext2(vec[5].getInput()[0]));
assertTrue(
testVarnode(vec[5].getInput()[1], SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x180, 1));
testVarnode(vec[5].getInput()[1], SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x300, 1));
// call
assertEquals(vec[6].getOpcode(), PcodeOp.CALLIND);
@@ -272,7 +272,7 @@ public class PcodeParserTest extends AbstractGhidraHeadlessIntegrationTest {
assertEquals(vec[7].getOpcode(), PcodeOp.INT_NOTEQUAL);
assertTrue(
testVarnode(vec[7].getOutput(), SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x200, 1));
testVarnode(vec[7].getOutput(), SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x400, 1));
assertEquals(vec[7].getInput().length, 2);
assertTrue(testVarnode(vec[7].getInput()[0], "register", 0xc, 2));
assertTrue(testVarnode(vec[7].getInput()[1], SpaceNames.CONSTANT_SPACE_NAME, 1, 2));
@@ -282,7 +282,7 @@ public class PcodeParserTest extends AbstractGhidraHeadlessIntegrationTest {
assertEquals(vec[8].getInput().length, 2);
assertTrue(testRelative(vec[8].getInput()[0], 0, 4));
assertTrue(
testVarnode(vec[8].getInput()[1], SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x200, 1));
testVarnode(vec[8].getInput()[1], SpaceNames.UNIQUE_SPACE_NAME, uniqueBase + 0x400, 1));
assertEquals(vec[9].getOpcode(), PcodeOp.COPY);
assertTrue(testVarnode(vec[9].getOutput(), "register", 4, 2));

View File

@@ -56,7 +56,7 @@ a specific need.
* [Adoptium Temurin](https://adoptium.net/temurin/releases)
* [Amazon Corretto](https://docs.aws.amazon.com/corretto/latest/corretto-21-ug/downloads-list.html)
* Python3 (3.9 to 3.13)
* Python 3.7 to 3.13 for [Debugger support](#debugger-notes)
* Python 3.9 to 3.13 for [Debugger support](#debugger-notes)
* Python 3.9 to 3.13 for [PyGhidra support](#pyghidra-mode)
* This is available from [Python.org](https://python.org) or most operating system's app stores or
software repositories. For Linux it is recommended that the system's package repository be used
@@ -161,17 +161,17 @@ __NOTE:__ Do not extract Ghidra on top of an existing installation.
environment variable in order for Ghidra to use the `JAVA_HOME_OVERRIDE` property.
### Debugger Notes
The Debugger now uses Python to connect to the host platform's native debuggers. This requires
The Debugger uses Python to connect to the host platform's native debuggers. This requires
a [supported](#minimum-requirements) version of Python and some additional packages. These packages
are included in the distribution, but you may still install them from PyPI if you prefer:
* psutil
* protobuf>=3.20.3
* Pybag>=2.2.12 (for WinDbg support)
* Pybag>=2.2.16 (for WinDbg support)
Different native debuggers have varying requirements, so you do not necessarily have to install all
of the above packages. Each connector will inform you of its specific requirements and where they
must be installed. In some cases, you may need to install packages on the target system.
For more information, see `<GhidraInstallDir>/docs/GhidraClass/Debugger/A1=GettingStarted.html`
For more information, see `<GhidraInstallDir>/docs/GhidraClass/Debugger/A1-GettingStarted.html`
## Ghidra Installation Directory Layout
When Ghidra is installed, the runnable software gets extracted to a new directory we will refer