]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/man3/ERR_get_error.pod
Fix a grammar nit in CRYPTO_get_ex_new_index.pod
[thirdparty/openssl.git] / doc / man3 / ERR_get_error.pod
CommitLineData
388f2f56
UM
1=pod
2
3=head1 NAME
4
a14e2d9d
BM
5ERR_get_error, ERR_peek_error, ERR_peek_last_error,
6ERR_get_error_line, ERR_peek_error_line, ERR_peek_last_error_line,
7ERR_get_error_line_data, ERR_peek_error_line_data,
5e4a75e7 8ERR_peek_last_error_line_data - obtain error code and data
388f2f56
UM
9
10=head1 SYNOPSIS
11
12 #include <openssl/err.h>
13
14 unsigned long ERR_get_error(void);
15 unsigned long ERR_peek_error(void);
a14e2d9d 16 unsigned long ERR_peek_last_error(void);
388f2f56
UM
17
18 unsigned long ERR_get_error_line(const char **file, int *line);
19 unsigned long ERR_peek_error_line(const char **file, int *line);
a14e2d9d 20 unsigned long ERR_peek_last_error_line(const char **file, int *line);
388f2f56
UM
21
22 unsigned long ERR_get_error_line_data(const char **file, int *line,
e9b77246 23 const char **data, int *flags);
388f2f56 24 unsigned long ERR_peek_error_line_data(const char **file, int *line,
e9b77246 25 const char **data, int *flags);
a14e2d9d 26 unsigned long ERR_peek_last_error_line_data(const char **file, int *line,
e9b77246 27 const char **data, int *flags);
388f2f56
UM
28
29=head1 DESCRIPTION
30
a14e2d9d 31ERR_get_error() returns the earliest error code from the thread's error
388f2f56
UM
32queue and removes the entry. This function can be called repeatedly
33until there are no more error codes to return.
34
a14e2d9d
BM
35ERR_peek_error() returns the earliest error code from the thread's
36error queue without modifying it.
37
38ERR_peek_last_error() returns the latest error code from the thread's
388f2f56
UM
39error queue without modifying it.
40
9b86974e 41See L<ERR_GET_LIB(3)> for obtaining information about
388f2f56 42location and reason of the error, and
9b86974e 43L<ERR_error_string(3)> for human-readable error
388f2f56
UM
44messages.
45
a14e2d9d
BM
46ERR_get_error_line(), ERR_peek_error_line() and
47ERR_peek_last_error_line() are the same as the above, but they
48additionally store the file name and line number where
388f2f56
UM
49the error occurred in *B<file> and *B<line>, unless these are B<NULL>.
50
a14e2d9d 51ERR_get_error_line_data(), ERR_peek_error_line_data() and
5cc99c6c 52ERR_peek_last_error_line_data() store additional data and flags
a14e2d9d 53associated with the error code in *B<data>
388f2f56 54and *B<flags>, unless these are B<NULL>. *B<data> contains a string
5cc99c6c 55if *B<flags>&B<ERR_TXT_STRING> is true.
30ea570f
DSH
56
57An application B<MUST NOT> free the *B<data> pointer (or any other pointers
58returned by these functions) with OPENSSL_free() as freeing is handled
59automatically by the error library.
388f2f56
UM
60
61=head1 RETURN VALUES
62
63The error code, or 0 if there is no error in the queue.
64
65=head1 SEE ALSO
66
73fb82b7 67L<ERR_error_string(3)>,
9b86974e 68L<ERR_GET_LIB(3)>
388f2f56 69
e2f92610
RS
70=head1 COPYRIGHT
71
73fb82b7 72Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved.
e2f92610 73
4746f25a 74Licensed under the Apache License 2.0 (the "License"). You may not use
e2f92610
RS
75this file except in compliance with the License. You can obtain a copy
76in the file LICENSE in the source distribution or at
77L<https://www.openssl.org/source/license.html>.
78
79=cut