blob: 1d40efb5ec82f28a4d00afb9e9332ea7c8f9d15a [file] [log] [blame]
"""Test attaching GDB to a running process.
SPDX-License-Identifier: GPL-2.0-or-later
"""
from test_gdbstub import main, report
def run_test():
"""Run through the tests one by one"""
try:
phase = gdb.parse_and_eval("phase").string()
except gdb.error:
# Assume the guest did not reach main().
phase = "start"
if phase == "start":
gdb.execute("break sigwait")
gdb.execute("continue")
phase = gdb.parse_and_eval("phase").string()
report(phase == "sigwait", "{} == \"sigwait\"".format(phase))
gdb.execute("signal SIGUSR1")
exitcode = int(gdb.parse_and_eval("$_exitcode"))
report(exitcode == 0, "{} == 0".format(exitcode))
main(run_test)