14899432aSab196087 /* 24899432aSab196087 * CDDL HEADER START 34899432aSab196087 * 44899432aSab196087 * The contents of this file are subject to the terms of the 54899432aSab196087 * Common Development and Distribution License (the "License"). 64899432aSab196087 * You may not use this file except in compliance with the License. 74899432aSab196087 * 84899432aSab196087 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 94899432aSab196087 * or http://www.opensolaris.org/os/licensing. 104899432aSab196087 * See the License for the specific language governing permissions 114899432aSab196087 * and limitations under the License. 124899432aSab196087 * 134899432aSab196087 * When distributing Covered Code, include this CDDL HEADER in each 144899432aSab196087 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 154899432aSab196087 * If applicable, add the following below this CDDL HEADER, with the 164899432aSab196087 * fields enclosed by brackets "[]" replaced with your own identifying 174899432aSab196087 * information: Portions Copyright [yyyy] [name of copyright owner] 184899432aSab196087 * 194899432aSab196087 * CDDL HEADER END 204899432aSab196087 */ 214899432aSab196087 224899432aSab196087 /* 232a93c375SAli Bahrami * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. 244899432aSab196087 */ 254899432aSab196087 264899432aSab196087 #ifndef __LIBELF_H 274899432aSab196087 #define __LIBELF_H 284899432aSab196087 294899432aSab196087 /* 304899432aSab196087 * Version of libelf.h that supplies definitions for APIs that 314899432aSab196087 * are private to the linker package. Includes the standard libelf.h 324899432aSab196087 * and then supplements it with the private additions. 334899432aSab196087 */ 344899432aSab196087 354899432aSab196087 #include <libelf.h> 364899432aSab196087 #include <gelf.h> 374899432aSab196087 384899432aSab196087 #ifdef __cplusplus 394899432aSab196087 extern "C" { 404899432aSab196087 #endif 414899432aSab196087 423c573fccSAli Bahrami typedef void _elf_execfill_func_t(void *, off_t, size_t); 433c573fccSAli Bahrami 443c573fccSAli Bahrami extern void _elf_execfill(_elf_execfill_func_t *); 452a93c375SAli Bahrami extern size_t _elf_getnextoff(Elf *); 462a93c375SAli Bahrami extern off_t _elf_getarhdrbase(Elf *); 47*ba7866cdSAli Bahrami extern size_t _elf_getarsymwordsize(Elf *); 484899432aSab196087 extern Elf64_Off _elf_getxoff(Elf_Data *); 493c573fccSAli Bahrami extern GElf_Xword _gelf_getdyndtflags_1(Elf *); 503c573fccSAli Bahrami extern int _elf_swap_wrimage(Elf *); 51f3324781Sab196087 extern uint_t _elf_sys_encoding(void); 524899432aSab196087 534899432aSab196087 #ifdef __cplusplus 544899432aSab196087 } 554899432aSab196087 #endif 564899432aSab196087 574899432aSab196087 #endif /* __LIBELF_H */ 58