Remove building with NOCRYPTO option
[minix.git] / external / bsd / elftoolchain / dist / libelf / gelf_checksum.3
blobf1beb63e0d021cf2e18ccbd0c76a9e80646adf82
1 .\"     $NetBSD: gelf_checksum.3,v 1.2 2014/03/09 16:58:04 christos Exp $
2 .\"
3 .\" Copyright (c) 2006,2008 Joseph Koshy.  All rights reserved.
4 .\"
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
7 .\" are met:
8 .\" 1. Redistributions of source code must retain the above copyright
9 .\"    notice, this list of conditions and the following disclaimer.
10 .\" 2. Redistributions in binary form must reproduce the above copyright
11 .\"    notice, this list of conditions and the following disclaimer in the
12 .\"    documentation and/or other materials provided with the distribution.
13 .\"
14 .\" This software is provided by Joseph Koshy ``as is'' and
15 .\" any express or implied warranties, including, but not limited to, the
16 .\" implied warranties of merchantability and fitness for a particular purpose
17 .\" are disclaimed.  in no event shall Joseph Koshy be liable
18 .\" for any direct, indirect, incidental, special, exemplary, or consequential
19 .\" damages (including, but not limited to, procurement of substitute goods
20 .\" or services; loss of use, data, or profits; or business interruption)
21 .\" however caused and on any theory of liability, whether in contract, strict
22 .\" liability, or tort (including negligence or otherwise) arising in any way
23 .\" out of the use of this software, even if advised of the possibility of
24 .\" such damage.
25 .\"
26 .\" Id: gelf_checksum.3 189 2008-07-20 10:38:08Z jkoshy 
27 .\"
28 .Dd August 29, 2006
29 .Os
30 .Dt GELF_CHECKSUM 3
31 .Sh NAME
32 .Nm elf32_checksum ,
33 .Nm elf64_checksum ,
34 .Nm gelf_checksum
35 .Nd return the checksum of an ELF object
36 .Sh LIBRARY
37 .Lb libelf
38 .Sh SYNOPSIS
39 .In libelf.h
40 .Ft long
41 .Fn elf32_checksum "Elf *elf"
42 .Ft long
43 .Fn elf64_checksum "Elf *elf"
44 .In gelf.h
45 .Ft long
46 .Fn gelf_checksum "Elf *elf"
47 .Sh DESCRIPTION
48 These functions return a simple checksum of the ELF object described
49 by their argument
50 .Ar elf .
51 The checksum is computed in way that allows its value to remain
52 unchanged in presence of modifications to the ELF object by utilities
53 like
54 .Xr strip 1 .
55 .Pp
56 Function
57 .Fn elf32_checksum
58 returns a checksum for an ELF descriptor
59 .Ar elf
60 of class
61 .Dv ELFCLASS32 .
62 .Pp
63 Function
64 .Fn elf64_checksum
65 returns a checksum for an ELF descriptor
66 .Ar elf
67 of class
68 .Dv ELFCLASS64 .
69 .Pp
70 Function
71 .Fn gelf_checksum
72 provides a class-independent way retrieving the checksum
73 for ELF object
74 .Ar elf .
75 .Sh RETURN VALUES
76 These functions return the checksum of the ELF object, or zero in case
77 an error was encountered.
78 .Sh ERRORS
79 These functions may fail with the following errors:
80 .Bl -tag -width "[ELF_E_RESOURCE]"
81 .It Bq Er ELF_E_ARGUMENT
82 Argument
83 .Ar elf
84 was NULL.
85 .It Bq Er ELF_E_ARGUMENT
86 Argument
87 .Ar elf
88 was not a descriptor for an ELF file.
89 .It Bq Er ELF_E_ARGUMENT
90 The ELF descriptor
91 .Ar elf
92 was not opened for reading or updating.
93 .It Bq Er ELF_E_CLASS
94 For functions
95 .Fn elf32_checksum
96 and
97 .Fn elf64_checksum ,
98 ELF descriptor
99 .Ar elf
100 did not match the class of the called function.
101 .It Bq Er ELF_E_HEADER
102 The ELF object specified by argument
103 .Ar elf
104 had a malformed executable header.
105 .It Bq Er ELF_E_RESOURCE
106 An out of memory condition was detected during processing.
107 .It Bq Er ELF_E_SECTION
108 The ELF object specified by argument
109 .Ar elf
110 contained a section with a malformed section header.
111 .It Bq Er ELF_E_VERSION
112 The ELF object was of an unsupported version.
114 .Sh SEE ALSO
115 .Xr strip 1 ,
116 .Xr elf 3 ,
117 .Xr gelf 3