summaryrefslogtreecommitdiff
path: root/linkers/elftoolchain/libelf/gelf_xlatetof.3
diff options
context:
space:
mode:
Diffstat (limited to 'linkers/elftoolchain/libelf/gelf_xlatetof.3')
-rw-r--r--linkers/elftoolchain/libelf/gelf_xlatetof.3247
1 files changed, 0 insertions, 247 deletions
diff --git a/linkers/elftoolchain/libelf/gelf_xlatetof.3 b/linkers/elftoolchain/libelf/gelf_xlatetof.3
deleted file mode 100644
index ca90002..0000000
--- a/linkers/elftoolchain/libelf/gelf_xlatetof.3
+++ /dev/null
@@ -1,247 +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_xlatetof.3 189 2008-07-20 10:38:08Z jkoshy $
-.\"
-.Dd July 24, 2006
-.Os
-.Dt GELF_XLATETOF 3
-.Sh NAME
-.Nm elf32_xlate ,
-.Nm elf64_xlate ,
-.Nm gelf_xlate
-.Nd translate data between files and memory
-.Sh LIBRARY
-.Lb libelf
-.Sh SYNOPSIS
-.In libelf.h
-.Ft "Elf_Data *"
-.Fn elf32_xlatetof "Elf_Data *dst" "Elf_Data *src" "unsigned int encode"
-.Ft "Elf_Data *"
-.Fn elf32_xlatetom "Elf_Data *dst" "Elf_Data *src" "unsigned int encode"
-.Ft "Elf_Data *"
-.Fn elf64_xlatetof "Elf_Data *dst" "Elf_Data *src" "unsigned int encode"
-.Ft "Elf_Data *"
-.Fn elf64_xlatetom "Elf_Data *dst" "Elf_Data *src" "unsigned int encode"
-.In gelf.h
-.Ft "Elf_Data *"
-.Fo gelf_xlatetof
-.Fa "Elf *elf"
-.Fa "Elf_Data *dst"
-.Fa "Elf_Data *src"
-.Fa "unsigned int encode"
-.Fc
-.Ft "Elf_Data *"
-.Fo gelf_xlatetom
-.Fa "Elf *elf"
-.Fa "Elf_Data *dst"
-.Fa "Elf_Data *src"
-.Fa "unsigned int encode"
-.Fc
-.Sh DESCRIPTION
-These functions translate between the file and memory representations
-of ELF data structures.
-The in-memory representation of an ELF data structure would confirm to
-the byte ordering and data alignment restrictions dictated by the host
-processor.
-A file representation of the same data structure could use a non-native byte
-ordering and in addition may be laid out differently with the file.
-.Pp
-Functions
-.Fn elf32_xlatetom ,
-.Fn elf64_xlatetom ,
-and
-.Fn gelf_xlatetom
-translate data from file representations to native, in-memory representations.
-Functions
-.Fn elf32_xlatetof ,
-.Fn elf64_xlatetof ,
-and
-.Fn gelf_xlatetof
-translate data from in-memory representations to file representations.
-.Pp
-Argument
-.Ar src
-denotes an
-.Vt Elf_Data
-descriptor describing the source to be translated.
-The following elements of the descriptor need to be set before
-invoking these functions:
-.Bl -hang -offset indent
-.It Va d_buf
-Set to a valid pointer value denoting the beginning of the data area
-to be translated.
-.It Va d_size
-Set to the total size in bytes of the source data area to be
-translated.
-.It Va d_type
-Set to the type of the source data being translated.
-This value is one of the values defined in the
-.Vt Elf_Type
-enumeration.
-The
-.Vt Elf_Type
-enumeration is described in
-.Xr elf 3 .
-.It Va d_version
-Set to the version number of the ELF data structures being
-translated.
-Currently only version
-.Dv EV_CURRENT
-is supported.
-.El
-.Pp
-Argument
-.Ar dst
-describes the destination buffer.
-The following elements of the
-.Vt Elf_Data
-descriptor need to be set before invoking these functions:
-.Bl -hang -offset indent
-.It Va d_buf
-Set to a valid pointer value that denotes the start of the destination
-buffer that will hold translated data.
-This value may be the same as that of the source buffer, in which case
-an in-place conversion will be attempted.
-.It Va d_size
-Set to the size of the destination buffer in bytes.
-This value will be modified if the function call succeeds.
-.It Va d_version
-Set to the desired version number of the destination.
-Currently only version
-.Dv EV_CURRENT
-is supported.
-.El
-.Pp
-These translations routines allow the source and destination buffers
-to coincide, in which case an in-place translation will be done
-if the destination is large enough to hold the translated data.
-Other kinds of overlap between the source and destination buffers
-are not permitted.
-.Pp
-On successful completion of the translation request the following
-fields of the
-.Ar dst
-descriptor would be modified:
-.Bl -hang -offset indent
-.It Va d_size
-Set to the size in bytes of the translated data.
-.It Va d_type
-Set to the
-.Va d_type
-value of the source data descriptor.
-.El
-.Pp
-Argument
-.Ar encode
-specifies the encoding in which the file objects are represented.
-It must be one of:
-.Bl -hang -offset indent
-.It Dv ELFDATANONE
-File objects use the library's native byte ordering.
-.It Dv ELFDATA2LSB
-File objects use a little-endian ordering.
-.It Dv ELFDATA2MSB
-File objects use a big-endian ordering.
-.El
-.Pp
-The functions
-.Fn gelf_xlatetof
-and
-.Fn gelf_xlatetom
-select the appropriate 32 or 64 bit translations based on the class of argument
-.Ar elf .
-.Sh RETURN VALUES
-These functions return argument
-.Ar dst
-if successful, or NULL in case of an error.
-.Sh EXAMPLES
-TODO
-.Sh ERRORS
-These functions may fail with the following errors:
-.Bl -tag -width "[ELF_E_RESOURCE]"
-.It Bq Er ELF_E_ARGUMENT
-One of arguments
-.Ar src ,
-.Ar dst
-or
-.Ar elf
-was NULL.
-.It Bq Er ELF_E_ARGUMENT
-Arguments
-.Ar src
-and
-.Ar dst
-were equal.
-.It Bq Er ELF_E_ARGUMENT
-The desired encoding parameter was not one of
-.Dv ELFDATANONE ,
-.Dv ELFDATA2LSB
-or
-.Dv ELFDATA2MSB .
-.It Bq Er ELF_E_ARGUMENT
-The
-.Ar d_type
-field of argument
-.Ar src
-specified an unsupported type.
-.It Bq Er ELF_E_DATA
-The
-.Ar src
-argument specified a buffer size that was not an integral multiple of
-its underlying type.
-.It Bq Er ELF_E_DATA
-The
-.Ar dst
-argument specified a buffer size that was too small.
-.It Bq Er ELF_E_DATA
-Argument
-.Ar dst
-specified a destination buffer that overlaps with the source
-buffer.
-.It Bq Er ELF_E_DATA
-The destination buffer for a conversion to memory had an alignment
-inappropriate for the underlying ELF type.
-.It Bq Er ELF_E_DATA
-The source buffer for a conversion to file had an alignment
-inappropriate for the underlying ELF type.
-.It Bq Er ELF_E_UNIMPL
-The version numbers for arguments
-.Ar dst
-and
-.Ar src
-were not identical.
-.It Bq Er ELF_E_UNIMPL
-The argument
-.Ar src
-requested conversion for a type which is not currently
-supported.
-.It Bq Er ELF_E_VERSION
-Argument
-.Ar src
-specified an unsupported version number.
-.El
-.Sh SEE ALSO
-.Xr elf 3 ,
-.Xr elf_getdata 3 ,
-.Xr gelf 3