Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


GELF_CHECKSUM(3)           Library Functions Manual           GELF_CHECKSUM(3)

NAME
     elf32_checksum, elf64_checksum, gelf_checksum - return the checksum of an
     ELF object

LIBRARY
     ELF Access Library (libelf, -lelf)

SYNOPSIS
     #include <libelf.h>

     long
     elf32_checksum(Elf *elf);

     long
     elf64_checksum(Elf *elf);

     #include <gelf.h>

     long
     gelf_checksum(Elf *elf);

DESCRIPTION
     These functions return a simple checksum of the ELF object described by
     their argument elf.  The checksum is computed in way that allows its
     value to remain unchanged in presence of modifications to the ELF object
     by utilities like strip(1).

     Function elf32_checksum() returns a checksum for an ELF descriptor elf of
     class ELFCLASS32.

     Function elf64_checksum() returns a checksum for an ELF descriptor elf of
     class ELFCLASS64.

     Function gelf_checksum() provides a class-independent way retrieving the
     checksum for ELF object elf.

RETURN VALUES
     These functions return the checksum of the ELF object, or zero in case an
     error was encountered.

ERRORS
     These functions may fail with the following errors:

     [ELF_E_ARGUMENT]  Argument elf was NULL.

     [ELF_E_ARGUMENT]  Argument elf was not a descriptor for an ELF file.

     [ELF_E_ARGUMENT]  The ELF descriptor elf was not opened for reading or
                       updating.

     [ELF_E_CLASS]     For functions elf32_checksum() and elf64_checksum(),
                       ELF descriptor elf did not match the class of the
                       called function.

     [ELF_E_HEADER]    The ELF object specified by argument elf had a
                       malformed executable header.

     [ELF_E_RESOURCE]  An out of memory condition was detected during
                       processing.

     [ELF_E_SECTION]   The ELF object specified by argument elf contained a
                       section with a malformed section header.

     [ELF_E_VERSION]   The ELF object was of an unsupported version.

SEE ALSO
     strip(1), elf(3), gelf(3)

NetBSD 10.99                    August 29, 2006                   NetBSD 10.99