diff options
Diffstat (limited to 'secure/lib/libcrypto/man/man3/ERR_get_error.3')
-rw-r--r-- | secure/lib/libcrypto/man/man3/ERR_get_error.3 | 112 |
1 files changed, 88 insertions, 24 deletions
diff --git a/secure/lib/libcrypto/man/man3/ERR_get_error.3 b/secure/lib/libcrypto/man/man3/ERR_get_error.3 index c25331562b34..9d5b89358564 100644 --- a/secure/lib/libcrypto/man/man3/ERR_get_error.3 +++ b/secure/lib/libcrypto/man/man3/ERR_get_error.3 @@ -1,4 +1,4 @@ -.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) +.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== @@ -68,8 +68,6 @@ . \} .\} .rr rF -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ @@ -132,14 +130,20 @@ .rm #[ #] #H #V #F C .\" ======================================================================== .\" -.IX Title "ERR_GET_ERROR 3" -.TH ERR_GET_ERROR 3 "2022-07-05" "1.1.1q" "OpenSSL" +.IX Title "ERR_GET_ERROR 3ossl" +.TH ERR_GET_ERROR 3ossl "2023-09-19" "3.0.11" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" -ERR_get_error, ERR_peek_error, ERR_peek_last_error, ERR_get_error_line, ERR_peek_error_line, ERR_peek_last_error_line, ERR_get_error_line_data, ERR_peek_error_line_data, ERR_peek_last_error_line_data \- obtain error code and data +ERR_get_error, ERR_peek_error, ERR_peek_last_error, +ERR_get_error_line, ERR_peek_error_line, ERR_peek_last_error_line, +ERR_peek_error_func, ERR_peek_last_error_func, +ERR_peek_error_data, ERR_peek_last_error_data, +ERR_get_error_all, ERR_peek_error_all, ERR_peek_last_error_all, +ERR_get_error_line_data, ERR_peek_error_line_data, ERR_peek_last_error_line_data +\&\- obtain error code and data .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 @@ -149,10 +153,32 @@ ERR_get_error, ERR_peek_error, ERR_peek_last_error, ERR_get_error_line, ERR_peek \& unsigned long ERR_peek_error(void); \& unsigned long ERR_peek_last_error(void); \& -\& unsigned long ERR_get_error_line(const char **file, int *line); \& unsigned long ERR_peek_error_line(const char **file, int *line); \& unsigned long ERR_peek_last_error_line(const char **file, int *line); \& +\& unsigned long ERR_peek_error_func(const char **func); +\& unsigned long ERR_peek_last_error_func(const char **func); +\& +\& unsigned long ERR_peek_error_data(const char **data, int *flags); +\& unsigned long ERR_peek_last_error_data(const char **data, int *flags); +\& +\& unsigned long ERR_get_error_all(const char **file, int *line, +\& const char **func, +\& const char **data, int *flags); +\& unsigned long ERR_peek_error_all(const char **file, int *line, +\& const char **func, +\& const char **data, int *flags); +\& unsigned long ERR_peek_last_error_all(const char **file, int *line, +\& const char *func, +\& const char **data, int *flags); +.Ve +.PP +The following functions have been deprecated since OpenSSL 3.0, and can be +hidden entirely by defining \fB\s-1OPENSSL_API_COMPAT\s0\fR with a suitable version value, +see \fBopenssl_user_macros\fR\|(7): +.PP +.Vb 7 +\& unsigned long ERR_get_error_line(const char **file, int *line); \& unsigned long ERR_get_error_line_data(const char **file, int *line, \& const char **data, int *flags); \& unsigned long ERR_peek_error_line_data(const char **file, int *line, @@ -163,7 +189,7 @@ ERR_get_error, ERR_peek_error, ERR_peek_last_error, ERR_get_error_line, ERR_peek .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBERR_get_error()\fR returns the earliest error code from the thread's error -queue and removes the entry. This function can be called repeatedly +queue and removes the entry. This function can be called repeatedly until there are no more error codes to return. .PP \&\fBERR_peek_error()\fR returns the earliest error code from the thread's @@ -172,23 +198,52 @@ error queue without modifying it. \&\fBERR_peek_last_error()\fR returns the latest error code from the thread's error queue without modifying it. .PP -See \s-1\fBERR_GET_LIB\s0\fR\|(3) for obtaining information about -location and reason of the error, and -\&\fBERR_error_string\fR\|(3) for human-readable error -messages. +See \s-1\fBERR_GET_LIB\s0\fR\|(3) for obtaining further specific information +such as the reason of the error, +and \fBERR_error_string\fR\|(3) for human-readable error messages. +.PP +\&\fBERR_get_error_all()\fR is the same as \fBERR_get_error()\fR, but on success it +additionally stores the filename, line number and function where the error +occurred in *\fIfile\fR, *\fIline\fR and *\fIfunc\fR, and also extra text and flags +in *\fIdata\fR, *\fIflags\fR. If any of those parameters are \s-1NULL,\s0 it will not +be changed. +An unset filename is indicated as "\*(L", i.e. an empty string. +An unset line number is indicated as 0. +An unset function name is indicated as \*(R"", i.e. an empty string. +.PP +A pointer returned this way by these functions and the ones below +is valid until the respective entry is overwritten in the error queue. +.PP +\&\fBERR_peek_error_line()\fR and \fBERR_peek_last_error_line()\fR are the same as +\&\fBERR_peek_error()\fR and \fBERR_peek_last_error()\fR, but on success they additionally +store the filename and line number where the error occurred in *\fIfile\fR and +*\fIline\fR, as far as they are not \s-1NULL.\s0 +An unset filename is indicated as "", i.e., an empty string. +An unset line number is indicated as 0. .PP -\&\fBERR_get_error_line()\fR, \fBERR_peek_error_line()\fR and -\&\fBERR_peek_last_error_line()\fR are the same as the above, but they -additionally store the filename and line number where -the error occurred in *\fBfile\fR and *\fBline\fR, unless these are \fB\s-1NULL\s0\fR. +\&\fBERR_peek_error_func()\fR and \fBERR_peek_last_error_func()\fR are the same as +\&\fBERR_peek_error()\fR and \fBERR_peek_last_error()\fR, but on success they additionally +store the name of the function where the error occurred in *\fIfunc\fR, unless +it is \s-1NULL.\s0 +An unset function name is indicated as "". .PP -\&\fBERR_get_error_line_data()\fR, \fBERR_peek_error_line_data()\fR and -\&\fBERR_peek_last_error_line_data()\fR store additional data and flags -associated with the error code in *\fBdata\fR -and *\fBflags\fR, unless these are \fB\s-1NULL\s0\fR. *\fBdata\fR contains a string -if *\fBflags\fR&\fB\s-1ERR_TXT_STRING\s0\fR is true. +\&\fBERR_peek_error_data()\fR and \fBERR_peek_last_error_data()\fR are the same as +\&\fBERR_peek_error()\fR and \fBERR_peek_last_error()\fR, but on success they additionally +store additional data and flags associated with the error code in *\fIdata\fR +and *\fIflags\fR, as far as they are not \s-1NULL.\s0 +Unset data is indicated as "". +In this case the value given for the flag is irrelevant (and equals 0). +*\fIdata\fR contains a string if *\fIflags\fR&\fB\s-1ERR_TXT_STRING\s0\fR is true. .PP -An application \fB\s-1MUST NOT\s0\fR free the *\fBdata\fR pointer (or any other pointers +\&\fBERR_peek_error_all()\fR and \fBERR_peek_last_error_all()\fR are combinations of all +of the above. +.PP +\&\fBERR_get_error_line()\fR, \fBERR_get_error_line_data()\fR, \fBERR_peek_error_line_data()\fR +and \fBERR_peek_last_error_line_data()\fR are older variants of \fBERR_get_error_all()\fR, +\&\fBERR_peek_error_all()\fR and \fBERR_peek_last_error_all()\fR, and may give confusing +results. They should no longer be used and are therefore deprecated. +.PP +An application \fB\s-1MUST NOT\s0\fR free the *\fIdata\fR pointer (or any other pointers returned by these functions) with \fBOPENSSL_free()\fR as freeing is handled automatically by the error library. .SH "RETURN VALUES" @@ -198,11 +253,20 @@ The error code, or 0 if there is no error in the queue. .IX Header "SEE ALSO" \&\fBERR_error_string\fR\|(3), \&\s-1\fBERR_GET_LIB\s0\fR\|(3) +.SH "HISTORY" +.IX Header "HISTORY" +\&\fBERR_peek_error_func()\fR, \fBERR_peek_last_error_func()\fR, +\&\fBERR_peek_error_data()\fR, \fBERR_peek_last_error_data()\fR, +\&\fBERR_peek_error_all()\fR and \fBERR_peek_last_error_all()\fR +were added in OpenSSL 3.0. +.PP +\&\fBERR_get_error_line()\fR, \fBERR_get_error_line_data()\fR, \fBERR_peek_error_line_data()\fR +and \fBERR_peek_last_error_line_data()\fR became deprecated in OpenSSL 3.0. .SH "COPYRIGHT" .IX Header "COPYRIGHT" -Copyright 2000\-2020 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000\-2022 The OpenSSL Project Authors. All Rights Reserved. .PP -Licensed under the OpenSSL license (the \*(L"License\*(R"). You may not use +Licensed under the Apache License 2.0 (the \*(L"License\*(R"). You may not use this file except in compliance with the License. You can obtain a copy in the file \s-1LICENSE\s0 in the source distribution or at <https://www.openssl.org/source/license.html>. |