summaryrefslogtreecommitdiff
path: root/linkers/elftoolchain/libelf/gelf.3
diff options
context:
space:
mode:
Diffstat (limited to 'linkers/elftoolchain/libelf/gelf.3')
-rw-r--r--linkers/elftoolchain/libelf/gelf.3201
1 files changed, 0 insertions, 201 deletions
diff --git a/linkers/elftoolchain/libelf/gelf.3 b/linkers/elftoolchain/libelf/gelf.3
deleted file mode 100644
index a5d68ce..0000000
--- a/linkers/elftoolchain/libelf/gelf.3
+++ /dev/null
@@ -1,201 +0,0 @@
-.\" Copyright (c) 2006,2008 Joseph Koshy. All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" This software is provided by Joseph Koshy ``as is'' and
-.\" any express or implied warranties, including, but not limited to, the
-.\" implied warranties of merchantability and fitness for a particular purpose
-.\" are disclaimed. in no event shall Joseph Koshy be liable
-.\" for any direct, indirect, incidental, special, exemplary, or consequential
-.\" damages (including, but not limited to, procurement of substitute goods
-.\" or services; loss of use, data, or profits; or business interruption)
-.\" however caused and on any theory of liability, whether in contract, strict
-.\" liability, or tort (including negligence or otherwise) arising in any way
-.\" out of the use of this software, even if advised of the possibility of
-.\" such damage.
-.\"
-.\" $Id: gelf.3 189 2008-07-20 10:38:08Z jkoshy $
-.\"
-.Dd September 1, 2006
-.Os
-.Dt GELF 3
-.Sh NAME
-.Nm GElf
-.Nd class-independent API for ELF manipulation
-.Sh LIBRARY
-.Lb libelf
-.Sh SYNOPSIS
-.In gelf.h
-.Sh DESCRIPTION
-This manual page describes a class independent API for manipulating
-ELF objects.
-This API allows an application to operate on ELF descriptors without
-needing to the know the ELF class of the descriptor.
-.Pp
-The GElf API may be used alongside the ELF API without restriction.
-.Ss GElf Data Structures
-The GElf API defines the following class-independent data structures:
-.Bl -tag -width GElf_Sxword
-.It Vt GElf_Addr
-A representation of ELF addresses.
-.It Vt GElf_Dyn
-A class-independent representation of ELF
-.Sy .dynamic
-section entries.
-.It Vt GElf_Ehdr
-A class-independent representation of an ELF Executable Header.
-.It Vt GElf_Half
-An unsigned 16 bit quantity.
-.It Vt GElf_Off
-A class-independent representation of a ELF offset.
-.It Vt GElf_Phdr
-A class-independent representation of an ELF Program Header Table
-entry.
-.It Vt GElf_Rel
-A class-independent representation of an ELF relocation entry.
-.It Vt GElf_Rela
-A class-independent representation of an ELF relocation entry with
-addend.
-.It Vt GElf_Shdr
-A class-independent representation of an ELF Section Header Table
-entry.
-.It Vt GElf_Sword
-A signed 32 bit quantity.
-.It Vt GElf_Sxword
-A signed 64 bit quantity.
-.It Vt GElf_Sym
-A class-independent representation of an ELF symbol table entry.
-.It Vt GElf_Word
-An unsigned 32 bit quantity.
-.It Vt GElf_Xword
-An unsigned 64 bit quantity.
-.El
-.Pp
-These data structures are sized to be compatible with the
-corresponding 64 bit ELF structures, and have the same internal
-structure as their 64 bit class-dependent counterparts.
-Class-dependent ELF structures are described in
-.Xr elf 5 .
-.Ss GElf Programming Model
-GElf functions always return a
-.Em copy
-of the underlying (class-dependent) ELF data structure.
-The programming model with GElf is as follows:
-.Bl -enum
-.It
-An application will retrieve data from an ELF descriptor using a
-.Fn gelf_get_*
-function.
-This will copy out data into a private
-.Vt GElf_*
-data structure.
-.It
-The application will work with its private copy of the GElf
-structure.
-.It
-Once done, the application copies the new values back to the
-underlying ELF data structure using the
-.Fn gelf_update_*
-functions.
-.It
-The application will then use the
-.Fn elf_flag*
-APIs to indicate to the ELF library that an ELF data structure is dirty.
-.El
-.Pp
-When updating an underlying 32 bit ELF data structure, the GElf
-routines will signal an error if a GElf value is out of range
-for the underlying ELF data type.
-.Ss Namespace use
-The GElf interface uses the following symbols:
-.Bl -tag
-.It GElf_*
-Class-independent data types.
-.It gelf_*
-For functions defined in the API set.
-.El
-.Ss GElf Programming APIs
-This section provides an overview of the GElf programming APIs.
-Further information is provided in the manual page of each function
-listed here.
-.Bl -tag
-.It "Allocating ELF Data Structures"
-.Bl -tag -compact
-.It Fn gelf_newehdr
-Allocate a new ELF Executable Header.
-.It Fn gelf_newphdr
-Allocate a new ELF Program Header Table.
-.El
-.It "Data Translation"
-.Bl -tag -compact
-.It Fn gelf_xlatetof
-Translate the native representation of an ELF data structure to its
-file representation.
-.It Fn gelf_xlatetom
-Translate from the file representation of an ELF data structure to a
-native representation.
-.El
-.It "Retrieving ELF Data"
-.Bl -tag -compact
-.It Fn gelf_getdyn
-Retrieve an ELF
-.Sy .dynamic
-table entry.
-.It Fn gelf_getehdr
-Retrieve an ELF Executable Header from the underlying ELF descriptor.
-.It Fn gelf_getphdr
-Retrieve an ELF Program Header Table entry from the underlying ELF descriptor.
-.It Fn gelf_getrel
-Retrieve an ELF relocation entry.
-.It Fn gelf_getrela
-Retrieve an ELF relocation entry with addend.
-.It Fn gelf_getshdr
-Retrieve an ELF Section Header Table entry from the underlying ELF descriptor.
-.It Fn gelf_getsym
-Retrieve an ELF symbol table entry.
-.El
-.It Queries
-.Bl -tag -compact
-.It Fn gelf_checksum
-Retrieves the ELF checksum for an ELF descriptor.
-.It Fn gelf_fsize
-Retrieves the size of the file representation of an ELF type.
-.It Fn gelf_getclass
-Retrieves the ELF class of an ELF descriptor.
-.El
-.It "Updating ELF Data"
-.Bl -tag -compact -width ".Fn gelf_update_shdr"
-.It Fn gelf_update_dyn
-Copy back an ELF
-.Sy .dynamic
-Table entry.
-.It Fn gelf_update_phdr
-Copy back an ELF Program Header Table entry.
-.It Fn gelf_update_rel
-Copy back an ELF relocation entry.
-.It Fn gelf_update_rela
-Copy back an ELF relocation with addend entry.
-.It Fn gelf_update_shdr
-Copy back an ELF Section Header Table entry.
-.It Fn gelf_update_sym
-Copy back an ELF symbol table entry.
-.El
-.El
-.Sh SEE ALSO
-.Xr elf 3 ,
-.Xr elf 5
-.Sh HISTORY
-The GELF(3) API first appeared in System V Release 4.
-This implementation of the API first appeared in
-.Fx 7.0 .
-.Sh AUTHORS
-The GElf API was implemented by
-.An "Joseph Koshy"
-.Aq jkoshy@FreeBSD.org .