aboutsummaryrefslogtreecommitdiff
path: root/gdbserver/target.h
diff options
context:
space:
mode:
authorTankut Baris Aktemur <tankut.baris.aktemur@intel.com>2020-02-17 16:11:51 +0100
committerTankut Baris Aktemur <tankut.baris.aktemur@intel.com>2020-02-20 17:35:02 +0100
commitef03dad808f48e8a6014ca7284e4d52a1e22f27c (patch)
tree05334f7d10b509e155ae91ac8930436357e44a5d /gdbserver/target.h
parent6dee9afb0eb280dfe5ffa5418f5fd073f4f2d50a (diff)
downloadgdb-ef03dad808f48e8a6014ca7284e4d52a1e22f27c.zip
gdb-ef03dad808f48e8a6014ca7284e4d52a1e22f27c.tar.gz
gdb-ef03dad808f48e8a6014ca7284e4d52a1e22f27c.tar.bz2
gdbserver: turn target op 'attach' into a method
gdbserver/ChangeLog: 2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com> Turn process_stratum_target's attach op into a method of process_target. * target.h (struct process_stratum_target): Remove the target op. (class process_target): Add the target op. (myattach): Update the macro. Update the derived classes and callers below. * linux-low.cc (linux_target_ops): Update. (linux_attach): Turn into ... (linux_process_target::attach): ... this. * linux-low.h (class linux_process_target): Update. * lynx-low.cc (lynx_target_ops): Update. (lynx_attach): Turn into ... (lynx_process_target::attach): ... this. * lynx-low.h (class lynx_process_target): Update. * nto-low.cc (nto_target_ops): Update. (nto_attach): Turn into ... (nto_process_target::attach): ... this. * nto-low.h (class nto_process_target): Update. * win32-low.cc (win32_target_ops): Update. (win32_attach): Turn into ... (win32_process_target::attach): ... this. * win32-low.h (class win32_process_target): Update.
Diffstat (limited to 'gdbserver/target.h')
-rw-r--r--gdbserver/target.h21
1 files changed, 10 insertions, 11 deletions
diff --git a/gdbserver/target.h b/gdbserver/target.h
index 87036e8..bd99737 100644
--- a/gdbserver/target.h
+++ b/gdbserver/target.h
@@ -70,16 +70,6 @@ class process_target;
shared code. */
struct process_stratum_target
{
- /* Attach to a running process.
-
- PID is the process ID to attach to, specified by the user
- or a higher layer.
-
- Returns -1 if attaching is unsupported, 0 on success, and calls
- error() otherwise. */
-
- int (*attach) (unsigned long pid);
-
/* Kill process PROC. Return -1 on failure, and 0 on success. */
int (*kill) (process_info *proc);
@@ -489,6 +479,15 @@ public:
/* Do additional setup after a new process is created, including
exec-wrapper completion. */
virtual void post_create_inferior ();
+
+ /* Attach to a running process.
+
+ PID is the process ID to attach to, specified by the user
+ or a higher layer.
+
+ Returns -1 if attaching is unsupported, 0 on success, and calls
+ error() otherwise. */
+ virtual int attach (unsigned long pid) = 0;
};
extern process_stratum_target *the_target;
@@ -502,7 +501,7 @@ void set_target_ops (process_stratum_target *);
the_target->pt->post_create_inferior ()
#define myattach(pid) \
- (*the_target->attach) (pid)
+ the_target->pt->attach (pid)
int kill_inferior (process_info *proc);