Version Tracking Wizard

The version tracking wizard guides you through the process of creating a new version tracking session or adding results to an existing session.

Creating a New Session

To create a new version tracking session you can:

New Version Tracking Session Panel

The new version tracking session panel appears when creating a new session only. On this page you specify the domain folder in your project in which to store the session information, the name of the session domain object, and the source and destination programs. The source program is the existing program that's been analyzed and contains markup to transfer. The destination program is the new program that will receive the markup items.

When dragging two programs from the front-end onto the version tracking tool, the source and destination might not be properly identified. If they are backwards (source is destination, destination is source) simply press the "swap" button () to correct the ordering.

Preconditions Panel

The preconditions panel has a list of mini-analysis routines called "validators". These validators analyze parts of your source and destination programs, looking for potential problems which will adversely affect version tracking success. For instance, a large difference in the number of defined functions between the source and the destination programs could be an indication that they are not ready to be correlated.

Press the button "Run Precondition checks", and then review the results in the panel by clicking on the individual tests in the list.

Click here for a list of known preconditions.

Summary Panel

The summary panel shows a summary of the selections provided to the Version Tracking wizard before it creates the new version tracking session. Selecting the "Finish" button creates the new version tracking session.

Add to an Existing Session

To add to an existing session you can:

The wizard panels that appear can vary depending on which options are selected on prior panels. For example, the correlator options will depend upon which correlation algorithm was chosen. Also the Select Address Ranges panel is only displayed if you choose to Limit Addresses on the Address Set Options panel. The following wizard panels are for adding correlation results to an existing session.

Correlation Algorithm Panel

The correlation algorithm panel lets you choose which program correlator to use. The list is dynamically populated based upon which features you have installed, so the actual list may look different than that above. See the Correlators help page for more information about individual correlators or the Workflow help page for information about which correlators to run first.

Options Panel

The options panel displays correlation algorithm specific options to select. Please see notes on the individual correlator algorithms for more information about their options.

Address Set Options Panel

The address set options panel lets the user add or remove specific address ranges from consideration by the chosen program correlator.

Select Address Range(s) Panel

The select address ranges panel lets the user limit the source and destination address sets that will be used by the chosen program correlator when determining version tracking matches. The left side lets you specify what addresses to use from the Source program and the right side allows you to specify the address ranges to use from the Destination program.

Source

The left side of this panel allows you to specify the address ranges to use from the Source program when adding version tracking matches to a session. Select the appropriate radio button to indicate the addresses that you want the correlator to use.

Destination

The right side of this panel allows you to specify the address ranges to use from the Destination program when adding version tracking matches to a session. Select the appropriate radio button to indicate the addresses that you want the correlator to use from the destination program.

The options within the Destination function in the same manner as they did for the Source, but instead apply to addresses within the destination program.

Summary Panel

The summary panel shows a summary of the selections provided to the Version Tracking wizard before it runs the correlation. Selecting the Finish button will run the correlation and add its results to the current version tracking session.

Open an Existing Session

To open an existing session you can do one of the following:

Sessions in Project Repositories

Sessions can be versioned using Ghidra's Project Repository mechanism mostly in the same way programs or data archives can be with some qualifications:

Provided by: Version Tracking Plugin

Related Topics: