Browse Source

Ooops. Add struct r_debug, from powerpc.

OPENBSD_3_0
art 23 years ago
parent
commit
29cf91ab8b
1 changed files with 35 additions and 1 deletions
  1. +35
    -1
      src/include/link.h

+ 35
- 1
src/include/link.h View File

@ -1,4 +1,4 @@
/* $OpenBSD: link.h,v 1.6 2001/05/31 14:04:52 art Exp $ */
/* $OpenBSD: link.h,v 1.7 2001/06/08 07:00:48 art Exp $ */
/* $NetBSD: link.h,v 1.10 1996/01/09 00:00:11 pk Exp $ */
/*
@ -42,6 +42,8 @@
#ifndef _LINK_H_
#define _LINK_H_
#include <sys/exec_elf.h>
/* XXXART - ? */
#ifndef DT_PROCNUM
#define DT_PROCNUM 0
@ -168,6 +170,38 @@ struct so_debug {
struct rt_symbol *dd_cc; /* Allocated commons/copied data */
};
/*
* Debug rendezvous struct. Pointer to this is set up in the
* target code pointed by the DT_MIPS_RLD_MAP tag. If it is
* defined.
*/
struct r_debug {
int r_version; /* Protocol version. */
struct link_map *r_map; /* Head of list of loaded objects. */
/*
* This is the address of a function internal to the run-time linker,
* that will always be called when the linker begins to map in a
* library or unmap it, and again when the mapping change is complete.
* The debugger can set a breakpoint at this address if it wants to
* notice shared object mapping changes.
*/
Elf_Addr r_brk;
enum {
/*
* This state value describes the mapping change taking place
* when the `r_brk' address is called.
*/
RT_CONSISTENT, /* Mapping change is complete. */
RT_ADD, /* Adding a new object. */
RT_DELETE, /* Removing an object mapping. */
} r_state;
Elf_Addr r_ldbase; /* Base address the linker is loaded at. */
};
/*
* Entry points into ld.so - user interface to the run-time linker.
*/


Loading…
Cancel
Save