X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fgdbserver%2Fserver.h;h=745d7b63f4b85ad0d22f599ffe004e9fa358a665;hb=9b254dd1ce46c19dde1dde5b8d1e22e862dfacce;hp=df676158817b1ea7ca549995134e01f3c88a431a;hpb=bce7165daae97585d93ac28361576feebcc80721;p=deliverable%2Fbinutils-gdb.git
diff --git a/gdb/gdbserver/server.h b/gdb/gdbserver/server.h
index df67615881..745d7b63f4 100644
--- a/gdb/gdbserver/server.h
+++ b/gdb/gdbserver/server.h
@@ -1,12 +1,12 @@
/* Common definitions for remote server for GDB.
Copyright (C) 1993, 1995, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005,
- 2006, 2007 Free Software Foundation, Inc.
+ 2006, 2007, 2008 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,
@@ -15,19 +15,23 @@
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., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA. */
+ along with this program. If not, see . */
#ifndef SERVER_H
#define SERVER_H
#include "config.h"
+#ifdef __MINGW32CE__
+#include "wincecompat.h"
+#endif
+
#include
#include
#include
+#ifdef HAVE_ERRNO_H
#include
+#endif
#include
#ifdef HAVE_STRING_H
@@ -40,6 +44,12 @@ extern char *strerror (int); /* X3.159-1989 4.11.6.2 */
#endif
#endif
+#if !HAVE_DECL_PERROR
+#ifndef perror
+extern void perror (const char *);
+#endif
+#endif
+
#ifndef ATTR_NORETURN
#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7))
#define ATTR_NORETURN __attribute__ ((noreturn))
@@ -79,6 +89,13 @@ struct inferior_list_entry
/* Opaque type for user-visible threads. */
struct thread_info;
+struct dll_info
+{
+ struct inferior_list_entry entry;
+ char *name;
+ CORE_ADDR base_addr;
+};
+
#include "regcache.h"
#include "gdb/signals.h"
@@ -92,6 +109,9 @@ void initialize_low ();
/* From inferiors.c. */
extern struct inferior_list all_threads;
+extern struct inferior_list all_dlls;
+extern int dlls_changed;
+
void add_inferior_to_list (struct inferior_list *list,
struct inferior_list_entry *new_inferior);
void for_each_inferior (struct inferior_list *list,
@@ -117,8 +137,11 @@ void *inferior_target_data (struct thread_info *);
void set_inferior_target_data (struct thread_info *, void *);
void *inferior_regcache_data (struct thread_info *);
void set_inferior_regcache_data (struct thread_info *, void *);
-void change_inferior_id (struct inferior_list *list,
- unsigned long new_id);
+void add_pid_to_list (struct inferior_list *list, unsigned long pid);
+int pull_pid_from_list (struct inferior_list *list, unsigned long pid);
+
+void loaded_dll (const char *name, CORE_ADDR base_addr);
+void unloaded_dll (const char *name, CORE_ADDR base_addr);
/* Public variables in server.c */
@@ -133,6 +156,9 @@ extern int pass_signals[];
extern jmp_buf toplevel;
+/* Functions from hostio.c. */
+extern int handle_vFile (char *, int, int *);
+
/* From remote-utils.c */
extern int remote_debug;
@@ -145,10 +171,10 @@ void remote_open (char *name);
void remote_close (void);
void write_ok (char *buf);
void write_enn (char *buf);
+void initialize_async_io (void);
void enable_async_io (void);
void disable_async_io (void);
-void unblock_async_io (void);
-void block_async_io (void);
+void check_remote_input_interrupt_request (void);
void convert_ascii_to_int (char *from, unsigned char *to, int n);
void convert_int_to_ascii (unsigned char *from, char *to, int n);
void new_thread_notify (int id);
@@ -163,6 +189,9 @@ void decode_M_packet (char *from, CORE_ADDR * mem_addr_ptr,
unsigned int *len_ptr, unsigned char *to);
int decode_X_packet (char *from, int packet_len, CORE_ADDR * mem_addr_ptr,
unsigned int *len_ptr, unsigned char *to);
+int decode_xfer_write (char *buf, int packet_len, char **annex,
+ CORE_ADDR *offset, unsigned int *len,
+ unsigned char *data);
int unhexify (char *bin, const char *hex, int count);
int hexify (char *hex, const char *bin, int count);
@@ -174,6 +203,8 @@ int look_up_one_symbol (const char *name, CORE_ADDR *addrp);
void monitor_output (const char *msg);
+char *xml_escape_text (const char *text);
+
/* Functions from ``signals.c''. */
enum target_signal target_signal_from_host (int hostsig);
int target_signal_to_host_p (enum target_signal oursig);