diff --git a/Ghidra/Configurations/Public_Release/src/global/docs/WhatsNew.html b/Ghidra/Configurations/Public_Release/src/global/docs/WhatsNew.html index 5f25f61287..b2a3666d49 100644 --- a/Ghidra/Configurations/Public_Release/src/global/docs/WhatsNew.html +++ b/Ghidra/Configurations/Public_Release/src/global/docs/WhatsNew.html @@ -45,12 +45,12 @@


-

What's New in Ghidra 10.4

+

What's New in Ghidra 11.0

The not-so-fine print: Please Read!

-

Ghidra 10.4 is fully backward compatible with project data from previous releases. - However, programs and data type archives which are created or modified in 10.4 will not be useable by an earlier Ghidra version.

+

Ghidra 11.0 is fully backward compatible with project data from previous releases. + However, programs and data type archives which are created or modified in 11.0 will not be useable by an earlier Ghidra version.

This release includes new features and capabilities, performance improvements, quite a few bug fixes, and many pull-request contributions. Thanks to all those who have contributed their time, thoughts, and code. The Ghidra user community thanks you too!

@@ -64,7 +64,7 @@ correctable. Programs imported with previous release versions should upgrade correctly through various automatic upgrade mechanisms. Any program you will continue to reverse engineer should be imported fresh with a release version or a build you trust with the latest code fixes.

-

NOTE: Ghidra Server: The Ghidra 10.4 server is compatible with Ghidra 9.2 and later Ghidra clients. Ghidra 10.4 +

NOTE: Ghidra Server: The Ghidra 11.x server is compatible with Ghidra 9.2 and later Ghidra clients. Ghidra 11.x clients are compatible with all 10.x and 9.x servers. Although, due to potential Java version differences, it is recommended that Ghidra Server installations older than 10.2 be upgraded. Those using 10.2 and newer should not need a server upgrade.

@@ -74,56 +74,10 @@ demangler, and legacy PDB executables for your plaform. Please see the "Building Ghidra Native Components" section in the Ghidra Installation Guide for additional information.

-

Mach-O Improvements

-

Support for the Mach-O binary file format has received many updates, including more complete markup of load command data and Swift type metadata. - Support has also been added for threaded binding (BIND_OPCODE_THREADED). Libraries extracted from the dyld_shared_cache - GFileSystem now contain a packed down __LINKEDIT segment, significantly reducing the size of the resulting binary.

+

--- TBD ---

-

Local symbols within dyld_shared_cache extracted libraries are now included in place of <redacted> symbols.

- -

In addition to searching local filesystem directories, library dependencies can now be loaded from the top-level of any GFileSystem-supported container file. This is allowed for all Import file - formats that support the loading of library dependencies. For example, this enables loading library dependencies directly from within a dyld_shared_cache file without the - need to export them first to the local filesystem.

- -

Accessibility Improvements

- -

Ghidra's Listing, Byte Viewer, and Decompiler components have been updated to provide initial support for screen readers. These are custom Ghidra components - and as such do not have the typical built-in Java Swing support for screen readers. Other Ghidra components use standard Java Swing widgets and work - out of the box with screen readers. -

- -

Instruction Length Override

- -

Added the ability to reduce an instruction's effective code unit length to facilitate overlapping instructions when flows into the middle of - an instruction occur (i.e., offcut flow). This length override does not impact the actual number of bytes parsed. By reducing the first instruction's - effective code unit length, disassembly of the offcut location may be performed utilizing trailing bytes shared with the first instruction. - The first instruction will retain its original fallthrough, therefore overlapping instruction(s) which follow should generally be fully contained - within the first instruction's parsed byte length. The need for this has been observed in the x86 Linux libc library - where there may be a flow around a LOCK prefix byte. -

- -

Analysis

-

Function body creation has been reworked, when code from multiple functions overlap, to favor contiguous functions. There have been instances where compilers - share portions of another functions code, especially common return code. Where previously the jump to the other function would have been turned into a call, and - a portion of the other function split into two, the shared code will now belong to the function that falls into the shared code if possible. - Previously there was also a potential for arbitrary function bodies depending on which function was analzyed first. - These changes could have an affect on version tracking in some instances where the original binary was analyzed with an older version of Ghidra.

- -

Diff Improvement

- -

Diff can now be performed between two open programs which may include files previously opened via a Ghidra-URL. Previously, Diff only allowed - a file from the active project to be selected.

- -

GoLang Version Support

- -

GoLang versions 1.17, 1.19, and 1.20 have been added. Previously only version 1.18 was supported. A bug in the decompiler triggered - by GoLang binaries has also been fixed.

- -

Undo/Redo Change List

-

Undo and Redo now have lists of transactions that can be undone or redone. This change makes it easy to choose a set of transactions to be undone/redone by choosing - an item further down the list instead of pressing undo/redo repeatedly

Additional Bug Fixes and Enhancements

Numerous other bug fixes and improvements are fully listed in the ChangeHistory file.