aboutsummaryrefslogtreecommitdiffstats
path: root/README
blob: 4d2422357b61ac4a5111aa30d9a04a5d95a33d76 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
A library that provides a single interface for error handling.
Specifically this is intended for cases where some errors are
errno errors or other libc errors and there are library
specific, maybe multiple library, errors.

The errors are thread-local, support error description, error
source string (which function failed), and error code with
error code group (e.g. "errno", "addrinfo" or a library name),
as well as cause chains, and if linked together with
liberror-backtrace, backtraces.


The important functions are:

	liberror_get_error
		Get error for the calling thread

	liberror_set_error
		Set error for the calling thread

	liberror_set_error_errno
		Wrapper for liberror_set_error for errno errors

	liberror_reset_error
		Remove error for the calling thread, needed
		because `liberror_set_error` otherwise stores
		the error as the cause of the new error

	liberror_print_error
		Print the error for the calling thread, include
		its backtrace if liberror-backtrace is also
		linked, the errors cause, and optionally remove
		the error for the calling thread.