15851a365SJohn Polstra /*- 25851a365SJohn Polstra * Copyright (c) 1997 John D. Polstra. 35851a365SJohn Polstra * All rights reserved. 45851a365SJohn Polstra * 55851a365SJohn Polstra * Redistribution and use in source and binary forms, with or without 65851a365SJohn Polstra * modification, are permitted provided that the following conditions 75851a365SJohn Polstra * are met: 85851a365SJohn Polstra * 1. Redistributions of source code must retain the above copyright 95851a365SJohn Polstra * notice, this list of conditions and the following disclaimer. 105851a365SJohn Polstra * 2. Redistributions in binary form must reproduce the above copyright 115851a365SJohn Polstra * notice, this list of conditions and the following disclaimer in the 125851a365SJohn Polstra * documentation and/or other materials provided with the distribution. 135851a365SJohn Polstra * 145851a365SJohn Polstra * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 155851a365SJohn Polstra * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 165851a365SJohn Polstra * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 175851a365SJohn Polstra * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 185851a365SJohn Polstra * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 195851a365SJohn Polstra * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 205851a365SJohn Polstra * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 215851a365SJohn Polstra * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 225851a365SJohn Polstra * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 235851a365SJohn Polstra * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 245851a365SJohn Polstra * SUCH DAMAGE. 255851a365SJohn Polstra * 26512a3bb5SJohn Polstra * $Id: elf.h,v 1.1 1997/05/21 23:07:27 jdp Exp $ 275851a365SJohn Polstra */ 285851a365SJohn Polstra 295851a365SJohn Polstra #ifndef _ELF_H_ 305851a365SJohn Polstra #define _ELF_H_ 315851a365SJohn Polstra 325851a365SJohn Polstra #include <sys/types.h> 335851a365SJohn Polstra #include <machine/elf.h> 345851a365SJohn Polstra 35512a3bb5SJohn Polstra /* 36512a3bb5SJohn Polstra * Hints file produced by ldconfig. 37512a3bb5SJohn Polstra */ 38512a3bb5SJohn Polstra struct elfhints_hdr { 39512a3bb5SJohn Polstra u_int32_t magic; /* Magic number */ 40512a3bb5SJohn Polstra u_int32_t version; /* File version (1) */ 41512a3bb5SJohn Polstra u_int32_t strtab; /* Offset of string table in file */ 42512a3bb5SJohn Polstra u_int32_t strsize; /* Size of string table */ 43512a3bb5SJohn Polstra u_int32_t dirlist; /* Offset of directory list in 44512a3bb5SJohn Polstra string table */ 45512a3bb5SJohn Polstra u_int32_t dirlistlen; /* strlen(dirlist) */ 46512a3bb5SJohn Polstra u_int32_t spare[26]; /* Room for expansion */ 47512a3bb5SJohn Polstra }; 48512a3bb5SJohn Polstra 49512a3bb5SJohn Polstra #define ELFHINTS_MAGIC 0x746e6845 50512a3bb5SJohn Polstra 51512a3bb5SJohn Polstra #define _PATH_ELF_HINTS "/var/run/ld-elf.so.hints" 52512a3bb5SJohn Polstra 535851a365SJohn Polstra #endif /* !_ELF_H_ */ 54