rtld.h (233307) | rtld.h (233361) |
---|---|
1/*- 2 * Copyright 1996, 1997, 1998, 1999, 2000 John D. Polstra. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 8 unchanged lines hidden (view full) --- 17 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 18 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * | 1/*- 2 * Copyright 1996, 1997, 1998, 1999, 2000 John D. Polstra. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 8 unchanged lines hidden (view full) --- 17 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 18 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * |
25 * $FreeBSD: head/libexec/rtld-elf/rtld.h 233307 2012-03-22 14:20:51Z kib $ | 25 * $FreeBSD: head/libexec/rtld-elf/rtld.h 233361 2012-03-23 12:13:31Z kib $ |
26 */ 27 28#ifndef RTLD_H /* { */ 29#define RTLD_H 1 30 31#include <machine/elf.h> 32#include <sys/types.h> 33#include <sys/queue.h> --- 277 unchanged lines hidden (view full) --- 311 unsigned long hash; 312 const Ver_Entry *ventry; 313 int flags; 314 const Obj_Entry *defobj_out; 315 const Elf_Sym *sym_out; 316 struct Struct_RtldLockState *lockstate; 317} SymLook; 318 | 26 */ 27 28#ifndef RTLD_H /* { */ 29#define RTLD_H 1 30 31#include <machine/elf.h> 32#include <sys/types.h> 33#include <sys/queue.h> --- 277 unchanged lines hidden (view full) --- 311 unsigned long hash; 312 const Ver_Entry *ventry; 313 int flags; 314 const Obj_Entry *defobj_out; 315 const Elf_Sym *sym_out; 316 struct Struct_RtldLockState *lockstate; 317} SymLook; 318 |
319extern void _rtld_error(const char *, ...) __printflike(1, 2); 320extern const char *rtld_strerror(int); 321extern Obj_Entry *map_object(int, const char *, const struct stat *); 322extern void *xcalloc(size_t, size_t); 323extern void *xmalloc(size_t); 324extern char *xstrdup(const char *); | 319void _rtld_error(const char *, ...) __printflike(1, 2); 320const char *rtld_strerror(int); 321Obj_Entry *map_object(int, const char *, const struct stat *); 322void *xcalloc(size_t, size_t); 323void *xmalloc(size_t); 324char *xstrdup(const char *); |
325extern Elf_Addr _GLOBAL_OFFSET_TABLE_[]; 326extern Elf_Sym sym_zero; /* For resolving undefined weak refs. */ 327 | 325extern Elf_Addr _GLOBAL_OFFSET_TABLE_[]; 326extern Elf_Sym sym_zero; /* For resolving undefined weak refs. */ 327 |
328extern void dump_relocations (Obj_Entry *); 329extern void dump_obj_relocations (Obj_Entry *); 330extern void dump_Elf_Rel (Obj_Entry *, const Elf_Rel *, u_long); 331extern void dump_Elf_Rela (Obj_Entry *, const Elf_Rela *, u_long); | 328void dump_relocations(Obj_Entry *); 329void dump_obj_relocations(Obj_Entry *); 330void dump_Elf_Rel(Obj_Entry *, const Elf_Rel *, u_long); 331void dump_Elf_Rela(Obj_Entry *, const Elf_Rela *, u_long); |
332 333/* 334 * Function declarations. 335 */ 336unsigned long elf_hash(const char *); 337const Elf_Sym *find_symdef(unsigned long, const Obj_Entry *, 338 const Obj_Entry **, int, SymCache *, struct Struct_RtldLockState *); 339void init_pltgot(Obj_Entry *); --- 29 unchanged lines hidden --- | 332 333/* 334 * Function declarations. 335 */ 336unsigned long elf_hash(const char *); 337const Elf_Sym *find_symdef(unsigned long, const Obj_Entry *, 338 const Obj_Entry **, int, SymCache *, struct Struct_RtldLockState *); 339void init_pltgot(Obj_Entry *); --- 29 unchanged lines hidden --- |