| Index: gdb/solist.h
|
| diff --git a/gdb/solist.h b/gdb/solist.h
|
| index 7413e3b845d771da877f859e4302d6f1c88a5689..a78e3ea5f87cad7e3689d3f05708f1019804a238 100644
|
| --- a/gdb/solist.h
|
| +++ b/gdb/solist.h
|
| @@ -1,6 +1,5 @@
|
| /* Shared library declarations for GDB, the GNU Debugger.
|
| - Copyright (C) 1990-1996, 1998-2001, 2007-2012 Free Software
|
| - Foundation, Inc.
|
| + Copyright (C) 1990-2013 Free Software Foundation, Inc.
|
|
|
| This file is part of GDB.
|
|
|
| @@ -89,6 +88,11 @@ struct target_so_ops
|
| associated with a so_list entry. */
|
| void (*free_so) (struct so_list *so);
|
|
|
| + /* Reset private data structures associated with SO.
|
| + This is called when SO is about to be reloaded.
|
| + It is also called before free_so when SO is about to be freed. */
|
| + void (*clear_so) (struct so_list *so);
|
| +
|
| /* Reset or free private data structures not associated with
|
| so_list entries. */
|
| void (*clear_solib) (void);
|
| @@ -125,8 +129,10 @@ struct target_so_ops
|
| /* Find and open shared library binary file. */
|
| bfd *(*bfd_open) (char *pathname);
|
|
|
| - /* Extra hook for finding and opening a solib.
|
| - Convenience function for remote debuggers finding host libs. */
|
| + /* Optional extra hook for finding and opening a solib.
|
| + If TEMP_PATHNAME is non-NULL: If the file is successfully opened a
|
| + pointer to a malloc'd and realpath'd copy of SONAME is stored there,
|
| + otherwise NULL is stored there. */
|
| int (*find_and_open_solib) (char *soname,
|
| unsigned o_flags, char **temp_pathname);
|
|
|
| @@ -149,6 +155,19 @@ struct target_so_ops
|
| core file (in particular, for readonly sections). */
|
| int (*keep_data_in_core) (CORE_ADDR vaddr,
|
| unsigned long size);
|
| +
|
| + /* Enable or disable optional solib event breakpoints as
|
| + appropriate. This should be called whenever
|
| + stop_on_solib_events is changed. This pointer can be
|
| + NULL, in which case no enabling or disabling is necessary
|
| + for this target. */
|
| + void (*update_breakpoints) (void);
|
| +
|
| + /* Target-specific processing of solib events that will be
|
| + performed before solib_add is called. This pointer can be
|
| + NULL, in which case no specific preprocessing is necessary
|
| + for this target. */
|
| + void (*handle_event) (void);
|
| };
|
|
|
| /* Free the memory associated with a (so_list *). */
|
|
|