mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-03 09:49:23 +02:00

GP-326: recompiling to htmnl GP-326: recompiling to htmnl GP-326: last? GP-326: getting there GP-326: roll along GP-326: rolling along GP-326: test fix GP-326: miscellaneous post-review fixes GP-326: complicated stuff GP-326: more simple stuff GP-326: navhead fix GP-326: better docs GP-326: html for md GP-326: html for md GP-326: tutorial edits GP-326: tutorial edits GP-326: re-arranging docs GP-326: from review GP-326: adding a debugger GP-326: docs GP-326: using TestResources - tests pass GP-326: working tests GP-326: most cmd/meth tests working GP-326: cmd tests pass GP-326: passes thru putmem GP-326: one test running GP-326: better startup logic GP-326: first pass tests GP-326: misc cleanup GP-326: cleaner startup GP-326: cleanup GP-326: fixes for crash dump GP-326: util cleanup GP-326: objects cont. GP-326: first pass at objects GP-326: some cleanup GP-326: regions GP-326: sections GP-326: modules GP-326: alt launchers GP-326: symbols GP-326: memory GP-326: stack frame - regs + locals GP-326: frames GP-326: threads GP-326: better start sequence GP-326: working launcher GP-326: util.version GP-326: arch
57 lines
1.7 KiB
Python
57 lines
1.7 KiB
Python
## ###
|
|
# IP: GHIDRA
|
|
#
|
|
# 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.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
##
|
|
|
|
# From drgn:
|
|
# EASY-INSTALL-ENTRY-SCRIPT: 'drgn==0.0.24','console_scripts','drgn'
|
|
import os
|
|
import re
|
|
import sys
|
|
|
|
import drgn.cli
|
|
|
|
home = os.getenv('GHIDRA_HOME')
|
|
|
|
if os.path.isdir(f'{home}/ghidra/.git'):
|
|
sys.path.append(
|
|
f'{home}/ghidra/Ghidra/Debug/Debugger-agent-drgn/build/pypkg/src')
|
|
sys.path.append(
|
|
f'{home}/ghidra/Ghidra/Debug/Debugger-rmi-trace/build/pypkg/src')
|
|
elif os.path.isdir(f'{home}/.git'):
|
|
sys.path.append(
|
|
f'{home}/Ghidra/Debug/Debugger-agent-drgn/build/pypkg/src')
|
|
sys.path.append(
|
|
f'{home}/Ghidra/Debug/Debugger-rmi-trace/build/pypkg/src')
|
|
else:
|
|
sys.path.append(
|
|
f'{home}/Ghidra/Debug/Debugger-agent-drgn/pypkg/src')
|
|
sys.path.append(f'{home}/Ghidra/Debug/Debugger-rmi-trace/pypkg/src')
|
|
|
|
|
|
def main():
|
|
from ghidradrgn import commands as cmd
|
|
cmd.ghidra_trace_connect(address=os.getenv('GHIDRA_TRACE_RMI_ADDR'))
|
|
cmd.ghidra_trace_create(start_trace=True)
|
|
cmd.ghidra_trace_txstart()
|
|
cmd.ghidra_trace_put_all()
|
|
cmd.ghidra_trace_txcommit()
|
|
cmd.ghidra_trace_activate()
|
|
drgn.cli.run_interactive(cmd.prog)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|
|
|
|
|