gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / gdb / remote.h
index 40c55f17a8452dccf57928dfb1c26e7744b1f469..4591f27cd847aeea9e5d3f024040ee3578426cee 100644 (file)
@@ -1,11 +1,11 @@
 /* Remote target communications for serial-line targets in custom GDB protocol
-   Copyright 1999 Free Software Foundation, Inc.
+   Copyright (C) 1999-2020 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
    GNU General Public License for more details.
 
    You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #ifndef REMOTE_H
 #define REMOTE_H
 
-/* FIXME?: move this interface down to tgt vector) */
+#include "remote-notif.h"
+
+struct target_desc;
+struct remote_target;
 
 /* Read a packet from the remote machine, with error checking, and
-   store it in BUF.  BUF is expected to be of size PBUFSIZ.  If
-   FOREVER, wait forever rather than timing out; this is used while
-   the target is executing user code.  */
+   store it in *BUF.  Resize *BUF using xrealloc if necessary to hold
+   the result, and update *SIZEOF_BUF.  If FOREVER, wait forever
+   rather than timing out; this is used (in synchronous mode) to wait
+   for a target that is is executing user code to stop.  */
 
-extern void getpkt (char *buf, long sizeof_buf, int forever);
+extern void getpkt (remote_target *remote,
+                   char **buf, long *sizeof_buf, int forever);
 
 /* Send a packet to the remote machine, with error checking.  The data
    of the packet is in BUF.  The string in BUF can be at most PBUFSIZ
    - 5 to account for the $, # and checksum, and for a possible /0 if
    we are debugging (remote_debug) and want to print the sent packet
-   as a string */
-
-extern int putpkt (char *buf);
-
-/* Send HEX encoded string to the target console. (gdb_stdtarg) */
-
-extern void remote_console_output (char *);
-
-
-/* FIXME: cagney/1999-09-20: The remote cisco stuff in remote.c needs
-   to be broken out into a separate file (remote-cisco.[hc]?).  Before
-   that can happen, a remote protocol stack framework needs to be
-   implemented. */
-
-extern void remote_cisco_objfile_relocate (bfd_signed_vma text_off,
-                                          bfd_signed_vma data_off,
-                                          bfd_signed_vma bss_off);
+   as a string.  */
 
-extern void async_remote_interrupt_twice (void *arg);
+extern int putpkt (remote_target *remote, const char *buf);
 
-extern int remote_write_bytes (CORE_ADDR memaddr, char *myaddr, int len);
+void register_remote_g_packet_guess (struct gdbarch *gdbarch, int bytes,
+                                    const struct target_desc *tdesc);
+void register_remote_support_xml (const char *);
 
-extern int remote_read_bytes (CORE_ADDR memaddr, char *myaddr, int len);
+void remote_file_put (const char *local_file, const char *remote_file,
+                     int from_tty);
+void remote_file_get (const char *remote_file, const char *local_file,
+                     int from_tty);
+void remote_file_delete (const char *remote_file, int from_tty);
 
-extern void (*deprecated_target_resume_hook) (void);
-extern void (*deprecated_target_wait_loop_hook) (void);
+extern int remote_register_number_and_offset (struct gdbarch *gdbarch,
+                                             int regnum, int *pnum,
+                                             int *poffset);
 
+extern void remote_notif_get_pending_events (remote_target *remote,
+                                            struct notif_client *np);
 #endif
This page took 0.024773 seconds and 4 git commands to generate.