mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-04-25 17:25:17 +02:00
Merge remote-tracking branch 'origin/Ghidra_12.1'
This commit is contained in:
@@ -118,6 +118,11 @@ encoded form; thus, using the encoded form can also create bifurcation in the na
|
||||
|
||||
## Processors
|
||||
|
||||
## Jython Extension
|
||||
Jython support is now delivered as a Ghidra Extension, which means an extra step is required to
|
||||
install it. If you require Jython, simply go to `File -> Install Extensions` in the Ghidra
|
||||
Front End GUI and check "Jython". Restart Ghidra and Jython support will be enabled.
|
||||
|
||||
## Additional Bug Fixes and Enhancements
|
||||
Numerous other new features, improvements, and bug fixes are fully listed in the
|
||||
[Change History](ChangeHistory.md) file.
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
apply from: "$rootProject.projectDir/gradle/distributableGhidraModule.gradle"
|
||||
apply from: "$rootProject.projectDir/gradle/distributableGhidraExtension.gradle"
|
||||
apply from: "$rootProject.projectDir/gradle/javaProject.gradle"
|
||||
apply from: "$rootProject.projectDir/gradle/helpProject.gradle"
|
||||
apply from: "$rootProject.projectDir/gradle/jacocoProject.gradle"
|
||||
@@ -21,7 +21,7 @@ apply from: "$rootProject.projectDir/gradle/javaTestProject.gradle"
|
||||
apply from: "$rootProject.projectDir/gradle/javadoc.gradle"
|
||||
apply plugin: 'eclipse'
|
||||
|
||||
eclipse.project.name = 'Features Jython'
|
||||
eclipse.project.name = 'Xtra Jython'
|
||||
|
||||
|
||||
def JYTHON = "org.python:jython-standalone:2.7.4"
|
||||
@@ -4,5 +4,6 @@
|
||||
Module.manifest||GHIDRA||||END|
|
||||
README.md||GHIDRA||||END|
|
||||
data/jython.theme.properties||GHIDRA||||END|
|
||||
extension.properties||GHIDRA||||END|
|
||||
src/main/help/help/TOC_Source.xml||GHIDRA||||END|
|
||||
src/main/help/help/topics/Jython/interpreter.html||GHIDRA||||END|
|
||||
5
Ghidra/Extensions/Jython/extension.properties
Normal file
5
Ghidra/Extensions/Jython/extension.properties
Normal file
@@ -0,0 +1,5 @@
|
||||
name=Jython
|
||||
description=The Jython 2.x GhidraScript engine and interpreter plugin
|
||||
author=Ghidra Team
|
||||
createdOn=pre-4/23/2026
|
||||
version=@extversion@
|
||||
@@ -26,7 +26,7 @@
|
||||
script-specific code.</LI>
|
||||
|
||||
<LI>Of course if you choose Java, the Ghidra script must be written in Java.
|
||||
An implementation for Python (based on Jython) is also provided.</LI>
|
||||
An implementation for Python (based on PyGhidra) is also provided.</LI>
|
||||
</OL>
|
||||
|
||||
<P align="center"><IMG border="0" src="images/New_Script_Editor.png" ></P>
|
||||
@@ -161,8 +161,8 @@
|
||||
uses the same script file extension. If left unspecified, the first Ghidra script runtime
|
||||
environment that matches the script's extension will be used.<BR>
|
||||
<BR>
|
||||
For example, specify <TT>"@runtime Jython"</TT> if the script is targetted for a Jython 2
|
||||
runtime environment rather than a Python 3 runtime environment.
|
||||
For example, specify <TT>"@runtime Jython"</TT> if the script is targeted for a Jython 2
|
||||
runtime environment rather than a CPython 3 (PyGhidra) runtime environment.
|
||||
</P>
|
||||
</BLOCKQUOTE>
|
||||
</BLOCKQUOTE>
|
||||
|
||||
@@ -35,7 +35,6 @@ import ghidra.app.plugin.core.osgi.BundleStatusComponentProvider;
|
||||
import ghidra.app.plugin.core.script.*;
|
||||
import ghidra.app.script.*;
|
||||
import ghidra.app.services.ConsoleService;
|
||||
import ghidra.jython.JythonScriptProvider;
|
||||
import ghidra.util.HelpLocation;
|
||||
import ghidra.util.datastruct.LRUSet;
|
||||
|
||||
@@ -223,7 +222,7 @@ public class GhidraScriptMgrPluginScreenShots extends GhidraScreenShotGenerator
|
||||
List<GhidraScriptProvider> items = new ArrayList<>();
|
||||
JavaScriptProvider javaScriptProvider = new JavaScriptProvider();
|
||||
items.add(javaScriptProvider);
|
||||
items.add(new JythonScriptProvider());
|
||||
//items.add(new JythonScriptProvider());
|
||||
final PickProviderDialog pickDialog = new PickProviderDialog(items, javaScriptProvider);
|
||||
runSwing(() -> tool.showDialog(pickDialog), false);
|
||||
|
||||
|
||||
@@ -22,7 +22,8 @@ import java.util.HexFormat;
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.python.google.common.primitives.Longs;
|
||||
|
||||
import com.google.common.primitives.Longs;
|
||||
|
||||
import ghidra.framework.store.LockException;
|
||||
import ghidra.program.model.address.*;
|
||||
|
||||
@@ -24,7 +24,8 @@ import java.util.*;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.junit.Test;
|
||||
import org.python.google.common.primitives.Longs;
|
||||
|
||||
import com.google.common.primitives.Longs;
|
||||
|
||||
import ghidra.framework.store.LockException;
|
||||
import ghidra.util.SourceFileUtils;
|
||||
|
||||
@@ -22,7 +22,8 @@ import java.util.List;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.python.google.common.primitives.Longs;
|
||||
|
||||
import com.google.common.primitives.Longs;
|
||||
|
||||
import generic.test.AbstractGenericTest;
|
||||
import ghidra.framework.store.LockException;
|
||||
|
||||
Reference in New Issue
Block a user