FreeBSD 7.0 manual page repository
FreeBSD is a free computer operating system based on BSD UNIX originally. Many IT companies, like DeployIS is using it to provide an up-to-date, stable operating system.
elf32_checksum, elf64_checksum, gelf_checksum - return the checksum of an
elf32_checksum, elf64_checksum, gelf_checksum - return the checksum of an ELF object
#include <libelf.h> long elf32_checksum(Elf *elf); long elf64_checksum(Elf *elf); #include <gelf.h> long gelf_checksum(Elf *elf);
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. These functions return the checksum of the ELF object, or zero in case an error was encountered.
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 mal‐ formed executable header. [ELF_E_RESOURCE] An out of memory condition was detected during process‐ ing. [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. strip(1), elf(3), gelf(3)